软件工程导论复习134164.pptx
《软件工程导论复习134164.pptx》由会员分享,可在线阅读,更多相关《软件工程导论复习134164.pptx(39页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、软件工程一、总体设计基本任务(过程)1、软件结构设计=模块设计+接口设计(5)软件结构设计是以软件结构设计是以模块模块为基础,以为基础,以需求分析需求分析的结果为依据,从实现的的结果为依据,从实现的角度进一步划分模块,并组成模块的层次结构角度进一步划分模块,并组成模块的层次结构(接口接口)。)。(1)采用某种方法,将一个复杂的系统按功能划分成模块;(2)确定每个模块的功能;(3)确定模块之间的调用关系;(4)确定模块之间的接口(传递的信息);(5)评价模块结构的质量。CH5 CH5 总体设计总体设计计算机导论软件工程3 3、书写文档(、书写文档(8 8)总体设计说明书、数据库设计说明书、详细的
2、实现计划总体设计说明书、数据库设计说明书、详细的实现计划4 4、评审(、评审(9 9)总体设计评价是对设计部分是否完整地实现了总体设计评价是对设计部分是否完整地实现了需求需求中规定的功能、中规定的功能、性能等要求,性能等要求,设计方案设计方案的可行性的可行性 ,关键的处理关键的处理及内外部及内外部接口接口定义正确定义正确性性 、有效性,各部分之间的一致性等都一一进行评审。、有效性,各部分之间的一致性等都一一进行评审。2 2、数据设计、数据设计=数据结构设计数据结构设计+数据库设计设计(数据库设计设计(6 6)(1)(1)根据需求分析阶段对系统数据的组成、操作约束和数据间关系根据需求分析阶段对系
3、统数据的组成、操作约束和数据间关系的描述,确定数据结构特性。的描述,确定数据结构特性。(2)(2)一般软件系统都有数据存储,存储要借助数据库技术。数据库一般软件系统都有数据存储,存储要借助数据库技术。数据库的设计包括:概念设计、逻辑设计和物理设计。的设计包括:概念设计、逻辑设计和物理设计。计算机导论软件工程二、软件设计的基本原理二、软件设计的基本原理 1、抽象:抽象:是认识复杂过程中使用的思维工具,即抽象出事物的本质共同特征是认识复杂过程中使用的思维工具,即抽象出事物的本质共同特征而暂不考虑它的细节,不考虑其它因素。而暂不考虑它的细节,不考虑其它因素。2、逐步求精逐步求精:是在原始说明的基础上
4、进行详细说明,随着不断细化给出更多的细是在原始说明的基础上进行详细说明,随着不断细化给出更多的细节。节。3、模块化模块化:模块是可组合、分解和更换的单元,具有:接口、功能、状态、逻模块是可组合、分解和更换的单元,具有:接口、功能、状态、逻辑辑4大特征。大特征。4、信息隐藏信息隐藏:指设计模块时,使一个模块内包含的信息,对不需要这些的其它模指设计模块时,使一个模块内包含的信息,对不需要这些的其它模块来说,是不能访问的。通过信息隐藏可以定义和实施对模块的过程细块来说,是不能访问的。通过信息隐藏可以定义和实施对模块的过程细节和局部数据结构的存取权限。节和局部数据结构的存取权限。5、模块独立性模块独立
5、性:指完成系统要求的独立的子功能,并且与其它模块的联系最少且接指完成系统要求的独立的子功能,并且与其它模块的联系最少且接口简单。衡量独立性的标准:内聚性、耦合性。口简单。衡量独立性的标准:内聚性、耦合性。计算机导论软件工程(1)(1)模块间耦合的类型模块间耦合的类型模块间耦合的类型模块间耦合的类型两两个个模模块块没没有有直接关系直接关系一模块调用另一模块时,被调用模块的输入、输出都是简单的数据如如两两个个模模块块通通过过传传递递数据结构数据结构一一模模块块通通过过开开关关量量、标标志志、名名字字等等控控制制信信息息,明明显显地地控制另一模块的功能控制另一模块的功能一一组组模模块块引引用用同同一
6、一个个公用数据区公用数据区一一模模块块直直接接访访问问另另一一模块的内部信息模块的内部信息计算机导论软件工程(2)模块的内聚性类型模块的内聚性类型模块内各部分间无模块内各部分间无联系联系把把几几种种相相关关功功能能(逻逻辑辑上上相相似似的的功功能能)组组合合在在一一模模块块内内,每每次次调调用用由由传传给给模模块块的的参参数数确确定定执执行行哪哪种种功能。功能。功功能能只只因因时时间间因因素素关联在一起关联在一起模模块块内内各各处处理理成成分分相相关关,且且必必须须以以特特定次序执行定次序执行模模块块内内各各部部分分使使用用相相同同的的输输入入数数据据,或或产产生生相相同同的的输输出出结果结果
7、模模块块内内各各部部分分使使用用相相同同的的输输入入数数据据,或或产产生生相相同同的的输输出出结果结果模模块块仅仅包包括括为为完完成成某某个个功功能能所所必必须须的的所有成分所有成分计算机导论软件工程三、软件结构图三、软件结构图 软件结构往往用树状和网状结构的图形来表示。结构图主要内容有:模软件结构往往用树状和网状结构的图形来表示。结构图主要内容有:模块、模块的控制关、模块间的信息传递。具有如下形态特征:深度、宽度、块、模块的控制关、模块间的信息传递。具有如下形态特征:深度、宽度、扇入、扇出。扇入、扇出。选择调选择调用用数据流数据流循环调循环调用用控制流控制流计算机导论软件工程四、软件结构设计
8、优化标准四、软件结构设计优化标准 1 1、模块独立性标准。高内聚、低耦合、模块独立性标准。高内聚、低耦合 2 2、控制与作用范围之间的标准。一个模块的作用范围应在其控制范围之、控制与作用范围之间的标准。一个模块的作用范围应在其控制范围之内。内。3 3、结构特征标准。从形态上看,应是顶层扇出较高一些,中间层扇出、结构特征标准。从形态上看,应是顶层扇出较高一些,中间层扇出较低一些,底层扇入数较高一些。较低一些,底层扇入数较高一些。4 4、模块接口标注。模块的接口要简单、清晰及含义明确,便于理解,、模块接口标注。模块的接口要简单、清晰及含义明确,便于理解,易于实现、维护与测试。易于实现、维护与测试。
9、计算机导论软件工程五、面向数据流的设计方法五、面向数据流的设计方法 DFD DFD软件结构软件结构 1 1、变换型数据流图:由输入、变换、输出三部分组成。形成顺序结构。、变换型数据流图:由输入、变换、输出三部分组成。形成顺序结构。2 2、事事务务型型数数据据流流图图:若若某某个个加加工工将将它它的的数数据据流流分分离离成成许许多多发发散散的的数数据据流流,并并根根据据输输入入的的值值选选择择其其中中一一个个路路径径来来执执行行,这这个个加加工工称称为为“事事务务处处理理中心中心”。计算机导论软件工程六、填空题六、填空题 1 1、在在软软件件的的体体系系结结构构中中,模模块块是是可可组组合合、分
10、分解解和和更更换换的的单单元元。模模块块具具有有 、和、和 等属性。等属性。接口、功能、逻辑、状态接口、功能、逻辑、状态 2 2、总体设计的文档主要有:、总体设计的文档主要有:和和 。总体设计说明书、总体设计说明书、数据库设计说明书数据库设计说明书 3 3、数数据据库库设设计计指指 的的设设计计,主主要要进进行行一一下下几几方方面面的的设设计计 、。数据存储设计数据存储设计 概念设计、逻辑设概念设计、逻辑设计、物理设计计、物理设计 4 4、软件设计的基本任务包括:、软件设计的基本任务包括:、和和 4 4个方面个方面 设计软件结构、数据结构和数设计软件结构、数据结构和数据库设计、编写设计文档、评
11、据库设计、编写设计文档、评审审 5 5、抽抽象象是是认认识识复复杂杂现现象象过过程程中中使使用用的的思思维维工工具具,即即抽抽出出事事物物 的的、的的特性而暂不考虑它的特性而暂不考虑它的 ,不考虑其它因素。,不考虑其它因素。本质、共同、细节本质、共同、细节 6 6、软软件件结结构构设设计计是是以以 为为基基础础,以以需需求求分分析析的的结结果果为为依依据据,从从实实现现的的角角度进一步划分度进一步划分 ,并组成模块的,并组成模块的 。模块模块模块模块层次结构层次结构计算机导论软件工程 7 7、软件设计是一个把、软件设计是一个把 转换为软件表示的过程,包括总体设计和转换为软件表示的过程,包括总体
12、设计和 。需求分析需求分析 8 8、进入了设计阶段,要把软件、进入了设计阶段,要把软件“做什么做什么”的的 模型变换为模型变换为“怎么做怎么做”的的 模型,即着手实现软件需求,并将设计的结果反映在模型,即着手实现软件需求,并将设计的结果反映在 文档中。文档中。详细设计详细设计 9 9、总总体体设设计计评评价价是是对对设设计计部部分分是是否否完完整整地地实实现现了了需需求求中中规规定定的的 、等等要要求求,设设计计方方案案的的 ,关关键键的的处处理理及及内内外外部部接接口口定定义义 有有效效性性,各各部部分之间的分之间的 等都一一进行评审。等都一一进行评审。逻辑逻辑 设计设计 1010、在在一一
13、个个模模块块中中,、和和 反反映映模模块块外外部部特特征征,反反映映它它的的内内部特性。部特性。功能、性能功能、性能 1111、是是指指在在设设计计和和确确定定模模块块时时,使使得得一一个个模模块块的的内内包包含含的的信信息息对对于于不不需需要遮羞信息的其它模块来说是不能要遮羞信息的其它模块来说是不能 的。的。可行性可行性 1212、设设计计软软件件结结构构,具具体体为为:(1)(1)采采用用某某种种方方法法将将一一个个复复杂杂系系统统按按功功能能划划分分为为 (2)(2)确确定定每每个个模模块块的的 (3)(3)确确定定模模块块之之间间的的 (4)(4)确确定定模模块块之之间间的的 ,即模块
14、之间传递的信息。,即模块之间传递的信息。(5)(5)评价模块结构的质量。评价模块结构的质量。正确性正确性一致性一致性功能、状态、接口功能、状态、接口 物理物理 逻辑逻辑 信息隐藏信息隐藏 访问访问 模块模块 功能功能 调用关系调用关系 接口接口 计算机导论软件工程 13 13、模块间耦合高低取决与模块间、模块间耦合高低取决与模块间 、及及 。接口的复杂性、调用方式、传递信息接口的复杂性、调用方式、传递信息 14 14、耦合性分、耦合性分 种类型,最强耦合种类型,最强耦合 ,最弱耦合,最弱耦合 。1515、模模块块独独立立性性中中每每个个模模块块只只完完成成问问题题要要求求的的 子子功功能能,并
15、并且且与与其其它它模模块块的联系的联系 。6 6、内容耦合、无、内容耦合、无直接耦合直接耦合 16 16、内聚性分、内聚性分 种类型,最强内聚种类型,最强内聚 ,最弱内聚,最弱内聚 。独立的、最少且接口简单独立的、最少且接口简单 1717、耦耦合合性性指指软软件件结结构构中中 相相互互联联系系紧紧密密程程度度的的一一种种度度量量。模模块块之之间间联联系系越越 ,其耦合性就越强,模块的,其耦合性就越强,模块的 则越差。则越差。1818、是是指指两两个个模模块块之之间间有有调调用用关关系系,传传递递的的是是简简单单的的数数据据值值,相相当当于于高高级语言中的级语言中的 。7 7、偶然内聚、功能内聚
16、、偶然内聚、功能内聚 各模块间、紧密、独立性各模块间、紧密、独立性 数据耦合、值传递数据耦合、值传递 计算机导论软件工程 1919、指指两两个个模模块块之之间间传传递递的的是是数数据据结结构构,如如高高级级语语言言中中的的数数据据名名、记录名、文件名等,其实传递的是记录名、文件名等,其实传递的是 。标记耦合、这个数据结构的地址标记耦合、这个数据结构的地址 2020、功功能能内内聚聚是是内内聚聚程程度度最最 的的内内聚聚,指指模模块块内内所所有有元元素素共共同同完完成成 ,缺一不可。功能内聚的模块与其它模块的耦合是,缺一不可。功能内聚的模块与其它模块的耦合是 的。的。21 21、结构图主要内容有
17、、结构图主要内容有 、。强、一个功能、弱强、一个功能、弱 22 22、变换型、变换型DFDDFD由由 、和和 三部分组成。三部分组成。模块、模块的控制关系、模块、模块的控制关系、模块的信息传递模块的信息传递 2323、软软件件结结构构从从形形态态上上总总的的考考虑虑是是:顶顶层层扇扇出出数数较较 一一些些,中中间间层层扇扇出出数数较较 一些,底层一些,底层 数较高一些。数较高一些。2424、软软件件结结构构设设计计是是以以 为为基基础础,在在需需求求分分析析阶阶段段,已已经经把把系系统统分分解解成成层层次次结结构构。设设计计阶阶段段以以需需求求分分析析的的结结果果为为根根据据,从从实实现现的的
18、角角度度进进一一步步划划分为模块,并组成模块的层次结构。分为模块,并组成模块的层次结构。输入、变换、输出输入、变换、输出 扇入扇入 模块模块高高低低 计算机导论软件工程选择题选择题1 1、软件设计一般分为总体设计和详细设计,它们之间的关系是(、软件设计一般分为总体设计和详细设计,它们之间的关系是()。A.A.全局和局部全局和局部 B.B.抽象和具体抽象和具体 C.C.总体和层次总体和层次 D.D.功能和结构功能和结构A A2 2、软件结构使用的图形工具,一般采用(、软件结构使用的图形工具,一般采用()图。图。A.DFD B.PAD C.SC D.E-RA.DFD B.PAD C.SC D.E-
19、RC C3 3、下列中属于软件设计的基本原理的是(、下列中属于软件设计的基本原理的是()。A.A.数据流分析数据流分析 B.B.变换流分析变换流分析 C.C.事务流分析事务流分析 D.D.模块化模块化4 4、将几个逻辑上相似的成分放在一个模块中,该模块属于(、将几个逻辑上相似的成分放在一个模块中,该模块属于()内聚。)内聚。A.A.逻辑逻辑 B.B.时间时间 C.C.功能功能 D.D.通信通信5 5、模块内的某成分的输出是另一成分的输入,该模块属于(、模块内的某成分的输出是另一成分的输入,该模块属于()内聚。)内聚。A.A.功能功能 B.B.顺序顺序 C.C.逻辑逻辑 D.D.时间时间D DA
20、 AB B6 6、结构图中不是主要成分的是(、结构图中不是主要成分的是()。)。A.A.模块模块 B.B.模块间传递数据模块间传递数据 C.C.模块内部数据模块内部数据 D.D.模块的控制关系模块的控制关系C C计算机导论软件工程7 7、模块中的所有成分结合起来完成一项任务,该模块属于(、模块中的所有成分结合起来完成一项任务,该模块属于()内)内聚,它具有简明的外部界面,由它构成的软件易于理解、测试和聚,它具有简明的外部界面,由它构成的软件易于理解、测试和维护。维护。A.A.偶然偶然 B.B.顺序顺序 C.C.通信通信 D.D.功能功能D D8 8、软件设计中模块间的耦合性尽可能(、软件设计中
21、模块间的耦合性尽可能()。)。A.A.强强 B.B.弱弱 C.C.较强较强 D.D.适中适中B B9 9、一个模块把一个数值量作为参数传递给另一模块。这两个模块之间、一个模块把一个数值量作为参数传递给另一模块。这两个模块之间的耦合是(的耦合是()。)。A.A.逻辑耦合逻辑耦合 B.B.数据耦合数据耦合 C.C.控制耦合控制耦合 D.D.内容耦合内容耦合1010、一个模块把开关量作为参数传递给另一模块。这两个模块之间的耦合、一个模块把开关量作为参数传递给另一模块。这两个模块之间的耦合是(是()。)。A.A.外部耦合外部耦合 B.B.数据耦合数据耦合 C.C.控制耦合控制耦合 D.D.内容耦合内容
22、耦合1111、在面向数据流的软件设计方法中,一般将信息流分为(、在面向数据流的软件设计方法中,一般将信息流分为()。)。A.A.变换流和数据流变换流和数据流 B.B.变换流和控制流变换流和控制流 C.C.事务流和控制流事务流和控制流 D.D.数据流和控制流数据流和控制流B BC CD D计算机导论软件工程1212、(、()着重反映的是模块间的隶属关系,即模块间的调用关系和)着重反映的是模块间的隶属关系,即模块间的调用关系和层次关系。层次关系。A.A.程序流程图程序流程图 B.B.数据流图数据流图 C.E-R C.E-R图图 D.D.结构图结构图D D1313、首先将系统中的关键部分设计出来,再
23、让系统的其余部分的设计、首先将系统中的关键部分设计出来,再让系统的其余部分的设计去适应它们,这称为(去适应它们,这称为()。)。A.A.模块化模块化 B.B.逐步求精逐步求精 C.C.抽象抽象 D.D.信息隐藏信息隐藏C C1414、模块(、模块(),则说明模块的独立性越强。),则说明模块的独立性越强。A.A.耦合越强耦合越强 B.B.扇入数越多扇入数越多 C.C.耦合越弱耦合越弱 D.D.扇出数越多扇出数越多1515、为了提高模块(、为了提高模块(),当修改和维护模块时减少把一个模块的错误),当修改和维护模块时减少把一个模块的错误扩散到其它模块中去的机会。扩散到其它模块中去的机会。A.A.耦
24、合性耦合性 B.B.独立性独立性 C.C.内聚性内聚性 D.D.共享性共享性3030、(、()把已确定的软件需求转换成特定形式的设计表示,使其得以)把已确定的软件需求转换成特定形式的设计表示,使其得以实现。实现。A.A.系统设计系统设计 B.B.详细设计详细设计 C.C.逻辑设计逻辑设计 D.D.总体设计总体设计C CB BD D计算机导论软件工程作业作业一、填空题:一、填空题:25-5025-50二、选择题:二、选择题:7-127-12、16-1716-17、1919、2121、2626、31-3331-33计算机导论软件工程CH3 CH3 需求分析需求分析一、需求分析概念一、需求分析概念
25、需求分析是发现、求精、建模、规格说明和复审的过程,回答需求分析是发现、求精、建模、规格说明和复审的过程,回答“做什么做什么”的问题。的问题。为最终用户所看到的系统建立一个软件的逻辑模型(为最终用户所看到的系统建立一个软件的逻辑模型(将用户将用户非形非形式的需求式的需求陈述转化为陈述转化为完整的需求定义完整的需求定义)。二、需求分析的基本原则二、需求分析的基本原则 (1)(1)可以把一个复杂问题按功能进行分解并可逐层细化;可以把一个复杂问题按功能进行分解并可逐层细化;(2)(2)必须能够表达和理解问题的数据域和功能域;必须能够表达和理解问题的数据域和功能域;(3)(3)建立软件的逻辑模型;建立软
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 导论 复习 134164
限制150内