耦合
1.抽象
2.模块化:使程序的结构清晰,容易阅读、理解、测试和修改
3.信息隐蔽
4.模块独立
衡量模块独立程度的标准有两个:耦合性和内聚性

无直接耦合:两个模块之间没有直接的关系
数据耦合:两个模块之间有调用关系,传递的是简单的数据值
标记耦合:两个模块之间传递的是数据结构
控制耦合:一个模块调用另一个模块时,传递的是控制变量
外部耦合:通过软件之外的环境联结
公共耦合:一个公共数据环境相互作用的那些模块间的耦合
内容耦合:一个模块之间用另一个模块的内部数据



内聚

偶然内聚(巧合内聚):一个模块内各处理元素没有任何联系
逻辑内聚:模块内执行若干个逻辑上相似的功能,通过参数确定该模块完成哪一个功能
时间内聚:需要同时执行的动作组合在一起形成的模块
过程内聚:一个模块完成多个任务,这些任务必须按指定的过程执行
通信内聚:模块内的所有处理元素都在同一个数据结构上操作,或各处理使用相同的输入输出数据
顺序内聚:一个模块中的各个处理元素都密切相关于同一功能且必须顺序执行
功能内聚:模块内所有的元素共同作用完成一个功能
高内聚、低耦合


设计原则
应遵循的原则:
1.分解协调原则:分解成多个小问题,总体协调各部门关系
2.自顶向下原则:先确定上层模块的功能,再确定下层模块的功能
3.信息隐蔽、抽象的原则:上层只规定下层模块做什么和所属模块间的协调关系,但不规定怎么做
4.一致性原则:统一规范、标准、文件模式等
5.明确性原则:功能明确、接口明确,消除多重功能和无用接口
6.高内聚、低耦合
7.模块的扇入扇出系数合理
8.模块规模适当
9.模块的作用范围应该在控制范围之内

系统文档
信息系统文档是开发人员与用户交流的工具
- 用户与系统分析人员在系统规划和系统分析阶段通过文档进行沟通。文档主要包括可行性研究报告、总体规划报告、系统开发合同和系统方案说明书等
- 系统开发人员与项目管理人员通过文档在项目期内进行沟通。文档主要包括系统开发计划(包括工作任务分解表、PERT图、甘特图和预算分配表等)、系统开发月报以及系统开发总结报告等
- 系统测试人员与系统开发人员通过文档进行沟通。文档包括系统方案说明书、系统开发合同、系统设计说明书和测试计划等
- 系统开发人员与用户在系统运行期间进行沟通。文档主要包括用户手册和操作指南
- 系统开发人员与系统维护人员通过文档沟通。文档主要有系统设计说明书和系统开发总结报告
- 用户与维修人员在运行维护期间进行沟通。用户将问题反馈给维护人员,维护人员进行维护和升级

数据流图(DFD)
外部实体:矩形(一般里面会有字母E,认准E就行)
数据存储:(一般里面会有字母D)
加工:圆角矩形(一般里面会有字母P)
数据流:箭头

外部实体:当前系统之外的人、物、外部系统

数据存储:存储数据和提供数据

加工:将输入数据处理后得到输出数据
一个加工至少有一个输入数据和一个输出数据
加工只有输入没有输出称为黑洞
加工只有输出没有输入称为白洞
加工输入数据不足以产生输出数据:灰洞

数据流:表示数据流向

父图子图平衡(比较两个图)
加工既有输入数据流也有输出数据流(看加工是否有输入输出)
数据守恒(看描述和图)
顶层数据流图描述了系统的输入与输出
子图描述了系统的处理过程




数据字典(DD)
数据字典有以下4类条目:数据流、数据项(组成数据流和数据存储的最小元素)、数据存储和基本加工
常用的加工逻辑描述方法有结构化语言、判定表和判定树3种

数据流图中的元素在数据字典中进行定义



数据流图建模应遵循自顶向下、抽象到具体的原则
本文探讨了软件工程中的模块化设计,强调了耦合度和内聚度的重要性,介绍了不同类型的耦合(如数据、控制、外部等)和内聚(如逻辑、功能等),并概述了遵循的设计原则和文档管理,如数据流图和数据字典的使用方法。
704

被折叠的 条评论
为什么被折叠?



