结构化的软件开发方法

结构化的软件开发
目前在软件来发领域有两种主流的李开发方法;结构化开发和面向对象开发,今天主要说一下结构化软件的开发过程。
1978年,E.Yourdon 和L.L.Constan-tine提出了结构化开发方法,即SASD方法。1979年,Tom DeMarco对此方法做了进一步的完善。 SASD方法是20世纪80年代使用最广泛的软件开发方法。它首先用结构化分析(SA, Structure Analysis)对软件进行需求分析,然后用结构化设计(Structure Design, SD)方法进行总体设计,最后是结构化编程(Structure Programming, SP)。 这种开发方法使得开发步骤明确,SA、 SD和SP相辅相成,一气呵成。
结构化开发方法主要是按照功能来划分软件结构的,它把软件系统的功能看作是根据给定的输入数据,进行相应的运算,然后输出结果。

进行结构化设计时,首先考虑整个软件系统的功能,然后按照模块划分的些基本原则(比如内聚性和松耦合)等,对功能进行分解,把整个软件系统划分成多个模块,每个模块实现特定的子功能。为了提高软件的内聚性,在模块中还会把功能分解到更小的子模块中。在完成所有的模块设计后,把这些模块拼装起来,就构成了整个软件系统。软件系统可看作是多个子系统的集合,每个子系统都是具有输入/输出功能的模块。
结构化的设计属于自顶向下的设计,就是在设计阶段就要考虑如何实现系统的功能,因为在分解功能的过程实际就是是按功能的过程。当然,结构画设计也是有局限性的:比如不能灵活的适应用户变化的需求,在用户有了新的需求发生变化时,要改变方法的实现或者实现新的功能是,还是需要自顶向下的修改模块的结构。有的时候甚至整个系统的设计都要被推翻。
再说一下,进行结构性编程的时候 程序的主体是方法,而方法是最小的执行模块。每个方法都是具有输出/输入的子系统。方法的输入数据来自于方法的参数、全局变量和常量,方法的输出包括方法的返回值和指针类型的方法参数 。————一组相关的方法组成强大的功能块。
综上所述,结构化开发方法制约了软件的可维护性和课拓展性,修改或增加模块可能会影响到其他模块,有这种缺陷是因为:
1、自定向下的设计按功能区划软件模块,但是软件的功能不是一成不变的,会实时的在变化,这样在软件设计阶段就很难设计出稳定的系统结构。
2、软件中最小的子系统是方法,方法于一部分相关的变量分离全局变量数据和变量数据分散在系统的各个角落,这削弱了各个系统之间的相对独立性 ,从而影响了软件的可维护性。

文章知识点与官方知识档案匹配,可进一步学习相关知识Java技能树首页概览92351 人正在系统学习中

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年2月21日
下一篇 2021年2月21日

相关推荐