欢迎来到天天文库
浏览记录
ID:33580653
大小:635.01 KB
页数:39页
时间:2018-05-21
《软件工程导论复习》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、一、总体设计基本任务(过程)1、软件结构设计=模块设计+接口设计(5)软件结构设计是以模块为基础,以需求分析的结果为依据,从实现的角度进一步划分模块,并组成模块的层次结构(接口)。(1)采用某种方法,将一个复杂的系统按功能划分成模块;(2)确定每个模块的功能;(3)确定模块之间的调用关系;(4)确定模块之间的接口(传递的信息);(5)评价模块结构的质量。CH5总体设计3、书写文档(8)总体设计说明书、数据库设计说明书、详细的实现计划4、评审(9)总体设计评价是对设计部分是否完整地实现了需求中规定的功能、性能等要求,设计方案的可行性,关键的处理及内外部接口定义正确性、有效性,各
2、部分之间的一致性等都一一进行评审。2、数据设计=数据结构设计+数据库设计设计(6)(1)根据需求分析阶段对系统数据的组成、操作约束和数据间关系的描述,确定数据结构特性。(2)一般软件系统都有数据存储,存储要借助数据库技术。数据库的设计包括:概念设计、逻辑设计和物理设计。二、软件设计的基本原理1、抽象:是认识复杂过程中使用的思维工具,即抽象出事物的本质共同特征而暂不考虑它的细节,不考虑其它因素。2、逐步求精:是在原始说明的基础上进行详细说明,随着不断细化给出更多的细节。3、模块化:模块是可组合、分解和更换的单元,具有:接口、功能、状态、逻辑4大特征。4、信息隐藏:指设计模块时,
3、使一个模块内包含的信息,对不需要这些的其它模块来说,是不能访问的。通过信息隐藏可以定义和实施对模块的过程细节和局部数据结构的存取权限。5、模块独立性:指完成系统要求的独立的子功能,并且与其它模块的联系最少且接口简单。衡量独立性的标准:内聚性、耦合性。(1)模块间耦合的类型两个模块没有直接关系一模块调用另一模块时,被调用模块的输入、输出都是简单的数据如两个模块通过传递数据结构一模块通过开关量、标志、名字等控制信息,明显地控制另一模块的功能一组模块引用同一个公用数据区一模块直接访问另一模块的内部信息(2)模块的内聚性类型模块内各部分间无联系把几种相关功能(逻辑上相似的功能)组合在
4、一模块内,每次调用由传给模块的参数确定执行哪种功能。功能只因时间因素关联在一起模块内各处理成分相关,且必须以特定次序执行模块内各部分使用相同的输入数据,或产生相同的输出结果模块内各部分使用相同的输入数据,或产生相同的输出结果模块仅包括为完成某个功能所必须的所有成分三、软件结构图软件结构往往用树状和网状结构的图形来表示。结构图主要内容有:模块、模块的控制关、模块间的信息传递。具有如下形态特征:深度、宽度、扇入、扇出。选择调用数据流循环调用控制流四、软件结构设计优化标准1、模块独立性标准。高内聚、低耦合2、控制与作用范围之间的标准。一个模块的作用范围应在其控制范围之内。3、结构特
5、征标准。从形态上看,应是顶层扇出较高一些,中间层扇出较低一些,底层扇入数较高一些。4、模块接口标注。模块的接口要简单、清晰及含义明确,便于理解,易于实现、维护与测试。五、面向数据流的设计方法DFD软件结构1、变换型数据流图:由输入、变换、输出三部分组成。形成顺序结构。2、事务型数据流图:若某个加工将它的数据流分离成许多发散的数据流,并根据输入的值选择其中一个路径来执行,这个加工称为“事务处理中心”。六、填空题1、在软件的体系结构中,模块是可组合、分解和更换的单元。模块具有、、、和等属性。接口、功能、逻辑、状态2、总体设计的文档主要有:和。总体设计说明书、数据库设计说明书3、
6、数据库设计指的设计,主要进行一下几方面的设计、、。数据存储设计概念设计、逻辑设计、物理设计4、软件设计的基本任务包括:、、和4个方面设计软件结构、数据结构和数据库设计、编写设计文档、评审5、抽象是认识复杂现象过程中使用的思维工具,即抽出事物的、的特性而暂不考虑它的,不考虑其它因素。本质、共同、细节6、软件结构设计是以为基础,以需求分析的结果为依据,从实现的角度进一步划分,并组成模块的。模块模块层次结构7、软件设计是一个把转换为软件表示的过程,包括总体设计和。需求分析8、进入了设计阶段,要把软件“做什么”的模型变换为“怎么做”的模型,即着手实现软件需求,并将设计的结果反映在文档
7、中。详细设计9、总体设计评价是对设计部分是否完整地实现了需求中规定的、等要求,设计方案的,关键的处理及内外部接口定义有效性,各部分之间的等都一一进行评审。逻辑设计10、在一个模块中,、和反映模块外部特征,反映它的内部特性。功能、性能11、是指在设计和确定模块时,使得一个模块的内包含的信息对于不需要遮羞信息的其它模块来说是不能的。可行性12、设计软件结构,具体为:(1)采用某种方法将一个复杂系统按功能划分为(2)确定每个模块的(3)确定模块之间的(4)确定模块之间的,即模块之间传递的信息。(5)评价模块结
此文档下载收益归作者所有