第8讲设计概念与原理数据设计体系结构设计接口设计需求模型翻译到软件设计需求分析模型设计模型数据对象描述处理规格说明控制规格说明E-RDFDSTDDD过程设计翻译分析模型到软件设计数据设计将分析时创建的信息域模型变换为软件所需的数据结构,侧重于数据结构的定义。体系结构设计定义软件系统各主要结构构件之间的关系。过程设计则是把结构构件转换成软件的过程性描述。在编码步骤,根据这种过程性描述,生成源程序代码,然后通过测试最终得到完整有效的软件。接口设计是建立软件内部的关系以及软件人-机之间的交互机制。,软件设计分两步完成。概要设计,将软件需求转化为数据结构和软件体系结构。详细设计,即过程设计。通过对体系结构表示进行细化,得到软件的详细的数据结构和算法。概要设计从回答“做什么”到回答“怎样做”划分出组成系统的物理元素——程序、文件、数据库、过程和文档等等每个元素还是黑盒子---“全局高度,抽象层次”体系结构设计体系结构设计文学中有科学,音乐中有数学,漫画中有现代数学的拓扑学。漫画家可以“几笔”就把一个人画出来,不管怎么美化或丑化,就是活像。为什么?因为那“几笔”不是别的,而是拓扑学中的特征不变量,这是事物最本质的东西。——杨叔子(1)体系结构是对复杂事物的一种抽象。(2)体系结构在一定的时间内保持稳定。:Modularity模块是数据说明、可执行语句等程序对象的集合,是单独命名的并且可以通过名字来访问,例如过程、函数、子程序、宏、modula等。软件被划分成独立命名和可独立访问的被称作模块的构件,每个构件完成一个子功能,它们集成到一起满足问题需求。easiertobuild,easiertochange,easiertofix...模块化模块化论据:C(x)定义为问题x的复杂性E(x)定义为解决问题x所需要的工作量对p1和p2两个问题,若C(p1)>C(p2),则E(p1)>E(p2)C(p1+p2)>C(p1)+C(p2)E(p1+p2)>E(p1)+E(p2)不要过度模块化!每个模块的简单性将被集成的复杂性所掩盖。模块化模块化和软件本如何确定地预测最小成本区?成本/模块最小成本区接口成本软件总成本成本模块数目
赵良《软件工程》结构化设计概念和原理 来自淘豆网m.daumloan.com转载请标明出处.