软件工程(第五版)-习题与答案---第四章

合集下载

《软件工程》各章课后习题答案

《软件工程》各章课后习题答案

《软件工程》各章课后习题答案软件工程是计算机科学与技术的一门重要学科,旨在研究和应用工程原则和方法来开发高质量的软件系统。

课程中的习题对于加深学生对软件工程理论和实践的理解至关重要。

下面是对《软件工程》各章课后习题的答案,希望能够帮助你更好地掌握软件工程的知识。

第一章:软件工程导论1. 软件工程的定义:答:软件工程是通过应用系统化、规范化和可量化的方法进行软件开发、运行和维护的学科。

2. 软件工程的目标:答:软件工程的目标是提高软件开发的质量、效率和可靠性,使得软件能够满足用户的需求和期望。

3. 软件生命周期模型:答:常见的软件生命周期模型包括瀑布模型、迭代模型、敏捷模型等。

每个模型都有其独特的特点和适用场景。

4. 软件过程模型:答:软件过程模型描述了软件开发过程中的一系列活动和阶段,常见的软件过程模型包括瀑布模型、迭代模型、敏捷模型等。

5. 软件工程的基本原则:答:常见的软件工程基本原则包括分阶段、逐步求精、持续集成、迭代开发、需求优先等。

第二章:软件项目管理1. 软件项目管理的定义:答:软件项目管理是指对软件开发过程中的资源、进度、质量等进行有效管理,以确保软件项目能够按时、按质地完成。

2. 软件项目管理的内容:答:软件项目管理包括项目计划、需求管理、项目进度管理、资源管理、风险管理等方面。

3. 软件项目管理的方法:答:常见的软件项目管理方法包括敏捷项目管理、水平项目管理、里程碑项目管理等。

4. 软件项目管理的工具:答:常用的软件项目管理工具包括甘特图、PERT/CPM网络图、项目管理软件等。

第三章:软件需求分析与规格说明1. 软件需求的定义:答:软件需求是指用户对软件系统的要求和期望,包括功能需求、性能需求、接口需求等方面。

2. 软件需求分析的方法:答:常用的软件需求分析方法包括面向对象分析法、数据流图法、用例分析法等。

3. 软件需求规格说明的格式:答:常见的软件需求规格说明的格式包括自然语言描述、结构化描述、图形描述等。

软件工程(第五版)--习题及答案

软件工程(第五版)--习题及答案

《软件工程》(第五版)习题参照答案第 1 章一、判断题1、(×)软件的保护与硬件保护本质上是同样的。

2、(√)软件在运转和使用中也存在退化问题。

3、(× )软件危机的产生主假如因为程序设计人员使用了不适合的程序设计语言。

4、(√)软件同其余事物同样,有孕育、出生、成长、成熟和衰灭的生计过程。

5、(×)文字办理软件 Word 属于系统软件。

应用软件6、(√)原型是软件的一个初期可运转的版本,它反应最后系统的部分重要特征。

7、(√)软件开发过程中,一个错误发现得越晚,为改正它所付出的代价就越大。

8、(×)快速原型模型对软件开发人员的水平要求不高。

9、(√)喷泉模型适合于面向对象的软件开发。

10、(×)面向对象开发方法的主要弊端是在适应需求变化方面不够灵巧。

二、选择题1、软件是一种( C)。

A、程序B、数据C、逻辑产品D、物理产品2、软件开发方法是( A)。

A、指导软件开发的一系列规则和商定B、软件开发的步骤C、软件开发的技术D、软件开发的思想3、软件生计周期中花销最多的阶段是( D)。

A、详尽设计B、软件编码(最少)C、软件测试D、软件保护4、软件工程的三因素不包含( D)。

A、工具B、过程C、方法D、环境5、在软件生计周期中,能正确地确立“软件系统一定做什么”的阶段是(D)。

A、整体设计B、详尽设计(怎么做)C、可行性研究(能不可以做)D、需求剖析6、瀑布模型本质上是一种( A)模型。

A、线性次序B、次序迭代C、线性迭代D、能提早见到产品的7、瀑布模型突出的弊端是不适应(D)的改动。

A、算法B、程序语言C、平台D、用户需求8、在软件开发模型中,提出最早、应用最宽泛的模型是(A)。

A、瀑布模型B、喷泉模型C、快速原型模型D、螺旋模型9、瀑布模型不适合用于( A)的软件开发。

A、需求模糊不清B、用户不可以参加开发C、用户对计算机不认识D、开发人员对业务知识不熟习10、快速原型的主要长处不包含(D)。

软件工程第五版课后全答案准确对应书山

软件工程第五版课后全答案准确对应书山

软件工程第五版课后全答案准确对应书山第一章软件工程概论1.什么是软件危机,它们有哪些典型表现,为什么会出现软件危机,“软件危机”是指计算机软件的“开发”和“维护”过程中所遇到的一系列“严重问题”。

这些问题决不仅仅是不能正常运行的软件才具有的,实际上,几乎“所有软件”都不同程度地存在这些问题。

‚软件危机?包含两方面的问题:(1)如何开发软件,以满足对软件日益增长的需求;(2)如何维护数量不断膨胀的已有软件。

它们有以下表现:(1)对软件开发成本和进度的估计常常很不准确;(2)用户对“已完成的”软件系统不满意的现象经常发生;(3)软件产品的质量往往靠不住;(4)软件常常是不可维护的;(5)软件通常没有适当的文档资料;(6)软件成本在计算机系统总成本中所占的比例逐年上升;(7)软件开发生产率提高的速度,远远跟不上计算机应用普及深入的趋势。

出现软件危机的原因:(1)开发人员与客户认识之间的矛盾(2)开发人员能力与开发目标之间的矛盾(3)预估与实际工作量之间的矛盾(4)客户认识的提高与软件维护之间的矛盾(5)遗产系统与实施软件之间的矛盾 2.假设自己是一家软件公司的总工程师~当把图1.1给手下的软件工程师们观看~告诉他们及时发现并改正错误的重要性时~有人不同意这个观点~认为要求在错误进入软件之前就清楚它们是不现实的~并举例说:‚如果一个故障是编码错误造成的~那么~一个人怎么能在设计阶段清除它呢,?应该怎么反驳他,答:在软件开发的不同阶段进行修改付出的代价是很不相同的,在早期引入变动,涉及的面较少,因而代价也比较低;在开发的中期,软件配置的许多成分已经完成,引入一个变动要对所有已完成的配置成分都做相应的修改,不仅工作量大,而且逻辑上也更复杂,因此付出的代价剧增;在软件“已经完成”是在引入变动,当然付出的代价更高。

一个故障是代码错误造成的,有时这种错误是不可避免的,但要修改的成本是很小的,因为这不是整体构架的错误。

软件工程课后作业第四章

软件工程课后作业第四章

软件工程课后作业第四章第四章.简述软件设计阶段的基本任务。

答:(1)数据/类设计数据/类设计将分析类模型变换成类的实现和软件实现所需要的数据结构。

(2)体系结构设计体系结构设计定义了软件的整体结构,由软件部件、外部可见的属性和他们之间的关系组成。

(3)接口设计接口设计描述了软件内部、软件和协作系统之间以及软件同人之间的通信方式。

(4)部件级设计部件级设计将软件体系结构的结构性元素变换为对软件部件的过过程性描述。

.软件设计与软件质量的关系是怎么样的答:设计是在软件开发中形成质量的阶段,设计提供了可以用于质量评估的软件表示,是将用户需求准确地转化为完整的软件产品或系统的主要途径。

.简述模块、模块化及模块化设计的概念。

答:模块:具有名字、参数、功能等外部特征以及完场模块功能的程序代码和模块内部数据等特征。

模块化:把软件按照规定原则,划分为一个个较小的,相互独立的但又相互关联的部件。

模块化设计:简单地说就是程序的编写不是开始就逐条录入计算机语句和指令,而是首先用主程序、子程序、子过程等框架把软件的主要结构和流程描述出来,并定义和调试好各个框架之间的输入、输出链接关系。

.举例说明每种类型的模块耦合度和每种类型的模块内聚度。

答:1、巧合内聚:讲几个模块中没有明确表现出独立功能的相同程序代码段独立出来建立的模块称巧合内聚模块。

2、逻辑内聚:逻辑内聚是指完成一组逻辑相关任务的模块,调用该模块时,由传送给模块的控制性参数来确定该模块应执行哪一种功能。

3、时间内聚:时间内聚是指一个模块中的所有任务必须在同一时间段内执行。

4、过程内聚:过程内聚是指一个模块完成多个任务,这些任务必须指定的过程执行。

5、通信内聚:通信内聚是指一个模块内所有处理元素都集中在某个数据结构的一块区域中。

6、顺序内聚:顺序内聚是指一个模块完成多个功能,这些功能又必须顺序执行7、功能内聚:功能内聚是指一个模块中各个部分都是为完成一项具体功能而协同工作,紧密联系,不可分割。

最新软件工程(第五版)-习题及答案---第四章资料

最新软件工程(第五版)-习题及答案---第四章资料
6、(√)软件结构图可以利用数据流图映射出来。
7、(×)结构化设计是一种面向数据结构的设计方法。
8、(√)在结构化设计过程中首先要确认DFD。
二、选择题
1、软件结构图的形态特征能反映程序重用率的是(C)。
A、深度B、宽度C、扇入D、扇出
2、概要设计的目的是确定整个系统的(B)。
A、规模B、功能及模块结构
……
feturn fee;

答:模块A和B是数据耦合,模块B是功能内聚。
2、
模块A:
……
flag=1;
The鏁inch Lu?max=max_avg(flag);
……
The Cha撻€?鏈?模块B:
The鑷姩鍖栦粨Qian?int max_avg(int flag)
The鎷呬繚鐗╂潈Suo堢伃{
闆嗚Chuai……
C、数据库D、软件代码
11、概要设计的主要成果是(C)。
A、用户的界面需求B、用户的分析方案
C、概要设计说明书D、系统总体方案
12、数据结构设计也是概要设计的重要内容,主要是进行数据的(A)设计。
A、逻辑B、存取C、用户视图D、索引
13、概要设计与详细设计衔接的图形工具是(B)。
A、DFD图B、SC图C、程序流程图PFDD、PAD图
一、判断题
1、(√)如果在需求分析阶段采用了结构化分析方法,则软件设计阶段就应采用结构化设计方法。
2、(√)概要设计与详细设计之间的关系是全局和局部的关系。
3、(×)一个模块的作用范围应该大于该模块的控制范围。
4、(√)模块间的耦合性越强,则模块的独立性越弱。
5、(×)在设计模块时,应使一个模块尽量包括多个功能。
A、数据耦合B、公共耦合C、标记耦合D、内容耦合

最新软件工程导论第五版习题答案教学讲义PPT

最新软件工程导论第五版习题答案教学讲义PPT

D3生理信息
F4警告信息
F2生理信号
P1 接收信号
定时的生理信号
P5 更新日志
F2生理信号 定时的 生理信号
E1 护士
E3 时钟
F3日前、时间
P4 定时取样 生理信号
F6日志
F6日志
D1患者日志
E1
护士
F1要求报告
P6
13:07:42
重庆工学产院生计病算情机报科告学与工程学院 李梁(liliang@)
从问题陈述可知,本系统数据源点是“病人”和“护士” ,他们分别提供生理信号和要求病情报告的信息。进一步 分析问题陈述,从系统应该“定时记录病人情况以形成患 者日志”这项要求可以想到,还应该有一个提供日期和时 间信息的“时钟”作为数据源点。
从问题陈述容易看出,本系统的数据终点是接收警告信息 和病情报告的护士。
F6日志
D1患者日志
E1
护士
F1要求报告
P6
13:07:42
重庆工学产院生计病算情机报科告学与工程学院 李梁(liliang@)
13
作业及解答(第3章)
2-5 北京某高校可用的电话号码有以下几类:校内电话号码 由4位数字组成,第1位数字不是0;校外电话又分为本市 电话和外地电话两类,拨校外电话需先拨0,若是本市电 话则再接着拨8位数字(第1位不是0),若是外地电话则拨3 位区码再拨8位电话号码(第1位不是0)。
8
作业及解答(第3章)
E1 护士
F4警告信息、病情报告 F1要求报告
E1 护士
E2 病人
F2生理信号
P0 患者监护系统
F6日志
D1患者日志
F5安全范围
D2患者安全范围
E3 时钟

软件工程(第五版)--习题及答案

软件工程(第五版)--习题及答案

一、判断题1、(√)详细设计也称模块设计。

2、(×)在数据代码设计时,应尽量让一条代码代表多个信息。

3、(×)在数据代码设计时,应可能设计字母和数字混合代码。

4、(×)在输出界面设计时,要尽可能使用代码或缩写,以求简洁。

5、(×)详细设计评审应尽可能和概要设计评审一同进行。

二、选择题1、软件详细设计的主要任务是确定每个模块的(A )。

A 、算法和使用的数据结构、算法和使用的数据结构 B 、外部接口、外部接口 C 、功能、功能 D 、程序、程序2、借助于软件工具,可将(C )容易地转换为高级语言源程序。

)容易地转换为高级语言源程序。

A 、程序流程图、程序流程图 B 、N-S 图 C 、PAD 图 D 、判定表、判定表3、不属于详细设计工具的是(A )。

A 、DFD 图B 、PAD 图C 、PDlD 、N-S 图 4、程序的三种基本结构是(C )。

A 、过程、子过程和子程序、过程、子过程和子程序 B 、递归、堆栈和队列、递归、堆栈和队列 C 、顺序、选择和重复、顺序、选择和重复 D 、调用、返回和转移、调用、返回和转移 5、下面描述中,符合结构化程序设计风格的是(A )。

A 、使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑B 、模块只有一个入口,可以有多个出口C 、注重提高程序的执行效率、注重提高程序的执行效率D 、不使用goto 语句 三、简答题1、软件的详细设计阶段完成的主要任务是什么? 答:(1)算法设计;(2)数据结构设计;(3)模块接口细节设计;(4)测试用例设计;(5)数据库物理设计;(6)数据代码设计;(7)其他设计;(8)编写详细设计说明书并进行评审。

编写详细设计说明书并进行评审。

2、数据输入界面设计的主要原则有哪些?答:在设计数据输入界面时应做到:尽量简化用户的工作、减少输入的出错率;减轻用户的记忆负担、尽可能减少输入量并实现自动输入;尽可能减少输入量并实现自动输入; 对共同的输入设置默认值;对共同的输入设置默认值; 使用代码或缩写;缩写; 自动填入已输入过的内容;列表式输入; 数据分组输入。

《软件工程导论》张海潘 第五版 清华 课后答案

《软件工程导论》张海潘 第五版 清华 课后答案
学会倾听与表达 在团队中,要学会倾听他人的意 见和建议,清晰表达自己的观点 和想法。 注重团队协作与分工 积极参与团队协作,明确分工与 责任,共同完成项目任务。 建立有效沟通机制 建立有效的沟通机制,如定期会 议、在线协作工具等,以便团队 成员之间的信息交流与共享。
WATCHING
THANKS FOR
实践应用:软件测试与质量保证
测试计划制定
根据软件需求和测试目标,制定详 细的测试计划,包括测试范围、测 试方法、测试资源以及测试进度等 方面的内容。
测试用例设计与执行
根据测试计划设计有效的测试用例, 并严格按照测试用例执行测试过程, 以确保软件的质量和稳定性。
缺陷管理与回归测试
建立缺陷管理机制,对测试过程中 发现的缺陷进行跟踪和管理,并进 行回归测试以确保缺陷得到修复并
软件工程的概念及基本原则
软件工程是一门研究计算机软件开发、维护和管理的科学。其基本原则包括强调需求分析、采用合 适的设计方法、实行严格的测试和维护等。
软件生命周期及各阶段任务
软件生命周期包括需求分析、设计、编码、测试和维护等阶段。各阶段的主要任务分别是明确用户 需求、设计系统结构、编写程序代码、测试软件功能和修复漏洞等。
案例分析三
某移动APP产品的敏捷开发实践。该案例以 敏捷开发方法为基础,介绍了产品迭代规划、 用户故事编写、任务分解以及站会等敏捷实 践活动的应用,对于理解敏捷开发方法的精 髓和实施具有很好的启示作用。
实践应用:软件开发项目管理
项目计划制定
根据项目需求和目标,制定详细的项目计划,包括任务分解、 资源分配、进度安排以及风险管理等方面的内容。
不再出现。
质量评估与改进
通过质量评估活动对软件的质量进 行全面评估,并根据评估结果制定 相应的质量改进措施,以提高软件
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、判断题
1、(√)如果在需求分析阶段采用了结构化分析方法,则软件设计阶段就应采用
结构化设计方法。

2、(√)概要设计与详细设计之间的关系是全局和局部的关系。

3、(×)一个模块的作用范围应该大于该模块的控制范围。

4、(√)模块间的耦合性越强,则模块的独立性越弱。

5、(×)在设计模块时,应使一个模块尽量包括多个功能。

6、(√)软件结构图可以利用数据流图映射出来。

7、(×)结构化设计是一种面向数据结构的设计方法。

8、(√)在结构化设计过程中首先要确认DFD。

二、选择题
1、软件结构图的形态特征能反映程序重用率的是(C)。

A、深度
B、宽度
C、扇入
D、扇出
2、概要设计的目的是确定整个系统的(B)。

A、规模
B、功能及模块结构
C、费用
D、测试方案
3、耦合是对软件不同模块之间互连程度的度量。

各种耦合从强到弱的排列为(C)。

A、内容耦合,控制耦合,数据耦合,公共环境耦合
B、内容耦合,控制耦合,公共环境耦合,数据耦合
C、内容耦合,公共环境耦合,控制耦合,数据耦合
D、控制耦合,内容耦合,数据耦合,公共环境耦合
4、当一个模块直接使用另一个模块的内部数据时, 这种模块之间的耦合为(D)。

A、数据耦合
B、公共耦合
C、标记耦合
D、内容耦合
5、数据耦合和控制耦合相比, 则(B)成立。

A、数据耦合的耦合性强
B、控制耦合的耦合性强
C、两者的耦合性相当
D、两者的耦合性需要根据具体情况分析
6、衡量模块独立性的标准是(D)。

A、耦合的类型
B、内聚的类型
C、模块信息的隐藏性
D、耦合性和内聚性
7、如果某种内聚要求一个模块中包含的任务必须在同一段时间内执行, 则这种内聚为(A)。

A、时间内聚
B、逻辑内聚
C、通信内聚
D、信息内聚
8、为了提高模块的独立性, 模块内部最好是(C)。

A、逻辑内聚
B、时间内聚
C、功能内聚
D、通信内聚
9、在结构化设计方法中, 下面哪种内聚的内聚性最弱(C)。

A、逻辑内聚
B、时间内聚
C、偶然内聚
D、过程内聚
10、软件设计是把(A)转换为软件表示的过程。

A、软件需要
B、系统分析
C、数据库
D、软件代码
11、概要设计的主要成果是(C)。

A、用户的界面需求
B、用户的分析方案
C、概要设计说明书
D、系统总体方案
12、数据结构设计也是概要设计的重要内容, 主要是进行数据的(A)设计。

A、逻辑
B、存取
C、用户视图
D、索引
13、概要设计与详细设计衔接的图形工具是(B)。

A、DFD图
B、SC图
C、程序流程图PFD
D、PAD图
14、在软件开发中, 下面任务不属于设计阶段的是(D)。

A、数据结构设计
B、给出系统模块结构
C、定义模块算法
D、定义需求并建立系统模型
15、下面不属于软件设计原则的是(C)。

A、抽象
B、模块化
C、自底向下
D、信息隐藏
三、简答题
1、软件设计应遵循的原则是什么?
答: 软件设计中一般应遵循以下原则:模块化、抽象、信息隐蔽与局部化、一致
性、完整性和可验证性。

2、什么是软件的概要设计?概要设计阶段完成的主要任务是什么?
答: 总体设计又称概要设计,是将软件需求转化为软件体系结构、确定系统级接
口、全局数据结构和数据库模式。

3、启发设计规则有哪些?
答:(1)模块功能的完善化;(2)消除重复功能,改善软件结构;(3)模块规模
应该适中;(4)模块的深度、宽度、扇出和扇入都应适当;(5)模块的作用范围
应该在控制范围之内;(6)力争降低模块接口的复杂程度;(7)设计单入口、单
出口的模块;(8)模块功能应该可以预测。

四、应用题
根据以下的C语言程序段判断模块A和B之间属于哪一种耦合,模块B是哪一种内聚。

1、
模块 A “开发票”:
,,
water_fee= calc_waterfee (12.5,3.0);
模块B“计算水费”:
float calc_waterfee (float mount ,float price );

float fee;
,,
feturn fee;

答:模块A 和B 是数据耦合,模块 B 是功能内聚。

2、
模块 A :
,,
flag=1 ;
max=max_avg(flag);
,,
模块B:
int max_avg (int flag )

,,
if (flag= =1 )
,,
else if(flag= =0 )
,,

答:模块A 和B 是控制耦合,模块 B 是逻辑内聚。

相关文档
最新文档