软件设计常用的工具:
系统结构图、程序流程图、N-S图、PAD图、HIPO图、判定表、PDL<DFP图即数据流程图,是需求分析时使用的工具>
详细设计的任务是为软件结构图中的每一个模块确定实现算法和局部数据结构,用某种选定的表达工具表示算法和数据结构的细节
耦合用于衡量不同模块彼此间相互依赖(连接)的紧密程度;
软件设计中模块划分时应每个模块完成一个相对独立的特定子功能,并且和其他模块之间的关系很简单,即高内聚低耦合
模块独立性的概念是抽象、模块化、信息隐蔽和局部化的直接结果
软件设计阶段从工程管理角度分为概要设计和详细设计两个阶段:
①概要设计(又称结构设计)将软件需求转化为软件体系结构、确定系统级接口、全局数据结构或数据库模式
②详细设计确立每个模块的实现算法和局部数据结构,用适当方法表示算法和数据结构的细节
从技术观点来看,软件设计包括软件总体结构设计、数据设计、接口设计、过程设计4个步骤
软件设计准则:
⑥设计单入口和单出口的模块,不要使模块间出现内容耦合;
软件系统总体结构图是描述软件系统结构的图形工具,描述软件系统的层次和分块结构关系,它反映了整个系统功能实现以及模块与模块之间的联系和通信,是未来程序中的控制层次体系