(一)系统分析与设计概述
1、系统设计的基本原理
(1)抽象
重点说明一个实体的本质方面,忽略或掩盖不太重要或非本质的方面。
抽象的最底层就是实现该软件的源程序代码。
较低抽象层次的模块是较高抽象层次模块对问题解法描述的细化。
(2)模块化
在程序中是数据说明、可执行语句等程序对象的集合,或者是单独命名和编制的元素,模块是可以组合分解和更换的单元。
【目的】使程序的结构清晰、容易阅读、理解、测试和修改
(3)信息隐蔽
开发整体程序结构时使用的法则,即将每个程序的成分隐蔽或封装在一个单一的设计模块中,在定义每一个模块时,尽可能少地显露其内部的处理。
【目的】提供软件的可修改性、可测试性、可移植性。
(4)模块独立
每个模块完成一个相对独立的特定子功能,并且与其他模块联系简单。
【衡量标准】:耦合性和内聚性。
2.【耦合】
(1)无直接耦合:两个模块之间【没有】直接关系,【不传递】任何信息。耦合性【最弱】,独立性最高。
(2)数据耦合:两个模块间【有调用】关系,传递的是【简单的数据值】。
(3)标记耦合:两个模块之间传递的是【数据结构】。
(4)控制耦合:一个模块【调用】另一个模块时,传递的是【控制变量】,被调用模块通过控制变量的【值】有选择地执行模块内的某一功能。
(5)外部耦合:通过【软件之外】的环境联结(如I/O将模块耦合到特定的设备、格式、通信协议上)。
(6)公共耦合:通过一个【公共数据】环境相互作用的那些模块的耦合
(7)内容耦合:一个模块调用另一个模块的【内部数据】,或通过非正常入口转入另一个模块内部。
3.【内聚】
(1)偶然内聚:一个模块内各处理元素【没有任何关系】
(2)逻辑内聚:执行若