软件工程(第5版课后答案)
软件工程(第五版)--习题及答案---第九章
一、判断题1、(×)测试是为了验证该软件以正确地实现了用户的需求。
2、(√)发现错误多的程序模块,残留在模块中的错误也多。
3、(×)白盒测试法是根据程序的功能来设计测试用例的。
4、(×)黑盒法是根据程序的内部逻辑来设计测试用例的。
5、(√)确定测试计划是在需求分析阶段制定的。
6、(√)集成测试计划是在概要设计阶段制定的。
7、(√)单元测试是在编码阶段完成的。
8、(√)集成测试工作最好由不属于该软件开发组的软件设计人员承担。
9、(√)为了提高软件的测试效率,测试工作需要有测试工具的支持。
10、(×)在做程序的单元测试时,桩模块比驱动模块容易编写。
二、选择题1、测试用例是专门为了发现软件错误而设计的一组或多组数据,它由(C)组成。
A、测试输入数据B、预期的测试输出数据C、测试输入与预期的输出数据D、按照测试用例设计方法设计出的数据2、测试和调试最大的不同在于(A)。
A、操作者的心理状态不同B、它们的行为取向不同C、使用的工具不同D、运用的方法不同3、一个成功的测试是(B)。
A、发现错误B、发现至今尚未发现的错误C、没有发现错误D、证明发现不了错误4、白盒法和黑盒法最大的不同在于(A)。
A、测试用例设计方法不同B、测试的任务不同C、应用的测试阶段不同D、基于的知识集不同5、单元测试阶段主要涉及(D)的文档。
A、需求设计B、编码和详细设计C、详细设计D、概要设计6、检查软件产品是否符合需求定义的过程称为(A)。
A、确认测试B、集成测试C、验证测试D、验收测试7、软件调试的目的是(B)。
A、发现错误B、改正错误C、改善软件的性能D、挖掘软件的潜能8、进行软件测试的目的是(A)。
A、尽可能多地找出软件中的错误B、缩短软件的开发时间C、减少软件的维护成本D、证明程序没有缺陷9、选择一个适当的测试用例,用于测试下面的程序,能达到判定覆盖的是(C)。
A、B、C、D、10、在进行单元测试时,常用的方法是(A)。
软件工程课后习题答案第五版
软件工程课后习题答案第五版《软件工程导论》课后习题答案第一章软件工程概论1.什么是软件危机?软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。
这些问题表现在以下几个方面:(1)用户对开发出的软件很难满意。
(2)软件产品的质量往往靠不住。
(3)一般软件很难维护。
(4)软件生产效率很低。
(5)软件开发成本越来越大。
(6)软件成本与开发进度难以估计。
- (7)软件技术的发展远远满足不了计算机应用的普及与深入的需要。
2.为什么会产生软件危机?(1) 开发人员方面,对软件产品缺乏正确认识,没有真正理解软件产品是一个完整的配置组成。
造成开发中制定计划盲目、编程草率,不考虑维护工作的必要性。
(2) 软件本身方面,对于计算机系统来说,软件是逻辑部件,软件开发过程没有统一的、公认的方法论和规范指导,造成软件维护困难。
(3) 尤其是随着软件规模越来越大,复杂程度越来越高,原有软件开发方式效率不高、质量不能保证、成本过高、研制周期不易估计、维护困难等一系列问题更为突出,技术的发展已经远远不能适应社会需求。
3.怎样克服软件危机?(1) 充分吸收和借鉴人类长期以来从事各种工程项目中积累的行之有效的有效原理、概念、技术与方法,特别是吸取几十年来人类从事计算机硬件研究和开发的经验教训。
在开发软件的过程中努力作到良好的组织,严格的管理,相互友好的协作。
(2) 推广在实践中总结出来的开发软件的成功的技术和方法,并研究更好、更有效的技术和方法,尽快克服在计算机系统早期发展阶段形成的一些错误概念和作法。
(3) 根据不同的应用领域,开发更好的软件工具并使用这些工具。
将软件开发各个阶段使用的软件工具集合成一个整体,形成一个很好的软件开发支环环境。
- 总之为了解决软件危机,既要有技术措施(方法和工具),又要有必要的组织管理措施。
4.构成软件项目的最终产品:应用程序、系统程序、面向用户的文档资料和面向开发者的文档资料。
5.什么是软件生存周期?软件生存周期是指从软件定义、开发、使用、维护到淘汰的全过程。
软件工程第五版课后习题答案第五章
习题5
3(1)数据流图如下:
对数据流图划分边界,如下所示:
按照以上数据流图设计软件结构,如下所示:
4(1)数据流图如下:
(2)需求说明:
功能需求:系统需要能查出教师的原有工资,计算出教师的现有工资,并打印相关信息。
数据需求:教师的原有工资信息,教师赡养的人数,教师的工龄
行为需求:系统要能判断原有工资是否符合涨工资要求,要精确计算现有工资,要提供给用户调查信息的借口与界面。
(3)用a 算法的HIPO 图:
教师档案
办公室磁带 打印原有工资和新工资信息 提取原工资
信息
计算新工资 办公室磁带
年工资大于等于$26000 年工资小于$26000
用b算法的HIPO图:
对于算法(a):优点:这样设置符合常规思路,容易让人理解
缺点:计算的次数较多。
检索效率低。
对于算法(b):优点:计算的次数较少,效率高
缺点:该算法不易于理解。
涉及到排序算法的设计。
(4)所画的数据流图更符合a算法。
5.答:需求分析:要实现三大功能,发牌;确定获胜方和牌型;模拟多次游戏,计算牌型的获胜和平局的概率。
分析后,设计的HIPO图如下:流程图在下页:
控制流程图如下:。
软件工程(第5版课后答案)
f(作者姓名)
系统搜索指定的作者姓名,并在屏幕上显示该作者的著作的索引号,同时把这些索引存入文件。
设计测试数据以全面测试系统正常操作。 设计测试数据以测试系统的非正常操作。
P175 5
P175 5 参考答案
划分等价类(略) 全面测试系统正常操作 B BS BSD F FD
B:输入关键字,看是否输出约20个加了行号的字,是否与关键字完全相同的字约在屏幕中央。 输入:“计算机” 预期输出:约20个加行号的字 BS:输入关键字,选取屏幕上行号,是否生成包含索引号的文件。 输入:“计算机”;12 预期输出:约20个加行号的字;文件 BSD:输入关键字,选取屏幕上行号,检索索引号有关信息,是否显示文件中索引信息。 输入:“计算机”;12;3 预期输出:约20个加行号的字;文 件;文件中索引信息。 F:输入作者姓名,是否在屏幕上显示该作者的著作的索引号,是否将这些索引存入文件。 输入:“金庸” 预期输出:该作者著作的索引号 FD:输入作者姓名,检索索引号有关信息,是否现实文件中索引信息。 输入:“金庸”;3 预期输出:该作者著作索引号;文件中 索引信息
单击此处可添加副标题
P23 7参考答案
增量模型 缺点: 至始至终开发者和客户纠缠在一起,直到完全版本出来。 优点: 人员分配灵活,刚开始不用投入大量人力资源,当核心产品很受欢迎时,可增加人力实现下一个增量。 当配备的人员不能在设定的期限内完成产品时,它提供了一种先推出核心产品的途径,这样就可以先发布部分功能给客户,对客户起到镇静剂的作用。 具有一定的市场。 适合于软件需求不明确、设计方案有一定风险的软件项目。
习题1第6题
什么是软件过程?它与软件工程方法学有何关系?
P23 6
P23 6参考答案
软件工程(第五版)--习题及答案--第三章
(6)系统向考生提供按准考证号、考生姓名的考生成绩查询,将按科目的历年考试成绩统计分析和评分标准提供给考试中心。
(7)考生对考试成绩质疑时,系统根据准考证号、姓名可以查询考生某科目的各分项成绩,必要时可查阅阅卷站的试卷。
(8)系统保存并可查询历年每门科目的评分标准。
解:设汇款金额为W元。判定树如下:
汇额本埠/外埠汇费
<=200 ----------------------- 2元
>200且<=5000元----------- W*0.01元
>5000 --------------------- 50元
判定表如下:三种汇额分别用符号L、M、H表示,汇款额用W表示。
解:数据流图如下:
3、某考务中心准备开发一个考务管理系统,其需求如下:
(1)考生填写考试报名表,经检查合格后在系统中登记注册,并发给学生准考证。
(2)学生按照准考证要求进入考场考试。考试完后将试卷交给阅卷站。
(3)阅卷站阅卷后把成绩表(包括每个考试科目、每个考生的分项分数)交给本系统并输入计算机。
(4)考试中心负责管理成绩评定标准,并将其交给阅卷站。
9、结构化分析的核心是(A)。
A、自顶向下的分解B、用DFD建模
C、用DD描述数据需求D、自底向上的抽象
10、需求分析的任务是(A)。
A、正确说明让软件“做什么”B、用DFD建模
C、用DD建立数学模型D、给出需求规格说明书
11、对于分层的DFD,父图与子图的平衡是指(B)。
A、父图与子图的输入输出数据流必须相同
M
M
M
M
M
M
软件工程(第五版)-习题及答案---第六章
软件工程(第五版)-习题及答案---第六章-标准化文件发布号:(9456-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII一、选择题1、UML的主要特点不正确的是(C)。
A、面对对象,表达能力强B、可视化建模C、面对过程,表达能力强D、统一标准2、静态建模图不包括(B)。
A、用例图B、协作图C、类图D、对象图3、用例图的模型元素不包括(D)。
A、用例B、系统C、行为者D、软件开发者4、类图的要素不包括(D)。
A、类名称B、操作C、属性D、对象5、时序图中的要素不包括(A)。
A、执行者B、对象C、对象生命线D、消息6、对象模型的描述工具是(C)。
A、状态图B、数据流图C、对象图D、结构图7、协作图的要素不包括(A)。
A、用例B、对象C、链D、消息8、类图反映了系统中对象之间的抽象关系,不包括(D)。
A、关联B、聚合C、泛化D、内聚9、下面(D)不是状态图的图符。
A、圆角的矩形B、实心圆点C、实心圆环D、椭圆10、描述类中某个对象的行为,反映了状态与事件关系的是(A)。
A、状态图B、数据流图C、对象图D、结构图11、动态模型的描述工具(C)。
A、对象图B、设计图C、状态图D、结构图12、表示对象的相互行为的模型是(A)模型。
A、对象B、动态C、结构D、静态13、有关类和对象的描述中,错误的是(A)。
A、一个类只能有一个对象B、对象是类的具体实例C、类是某一类对象的抽象D、类和对象的关系是一种数据类型和变量的关系14、用例图中用例之间的关系通常有关联关系、依赖关系和(C)关系。
A、协作B、聚合C、泛化D、内聚15、动态模型图包括:时序图、协作图、状态图和(C)图。
A、对象图B、设计图C、活动图D、结构图二、简答题1.简要介绍用例图的三个要素。
答:用例图主要包括以下三个元素:①用例(Use Case):用例是系统的使用过程或要执行的动作序列,用来描述某个参与者使用系统所完成的功能。
在图中用椭圆来表示,用例名称可写在椭圆中或椭圆下面。
软件工程导论(第五版)_(张海藩_著)_清华大学出版社_课后习题答案
来; (3) 它强调使用生存周期方法学和结构分析和结构技术; (4) 经过人们长期的努力和探索,围绕着实现软件优质高产这个目标,从技术
的单位面积及房租等信息。房产科可以要求系统打印住房情况的统计表,或更改某 类房屋的居住条件、单位面积和房租等。
用数据流图描绘该系统的功能需求;在数据字典中给出主要的数据流、文件和 加工说明。
参考第四章 4.5 应用举例教案之二分析。
第四章 总体设计 习题答案
1. 系统设计包括哪两个阶段? 系统设计包括总体设计与详细设计两个阶段。
(2) 在渐增型开发下的软件是随软件开发的过程而逐渐形成的。 (3) 渐增型开发方法适合于知识型软件的开发,设计系统时对用户需求的认 识开始不是很清楚的,需要在开发过程中不断认识、不断获得新的知识去丰富和完 善系统。多数研究性质的试验软件,一般采用此方法。 变换型开发方法及特点: (1)从软件需求的形式化规格说明出发,经过一系列的程序变换,得到最终的 程序系统。 (2)该方法必须有严格的数学理论和形式化技术的支持。
算出的房租写到房租文件中。 (2) 如果是退房申请,则从住房文件和房租文件中删除有关信息,再把此房号
的信息写到空房文件中。 (3) 如果是调房申请,则根据申请者的情况确定其住房等级,然后在空房文件
中查找属于该等级的空房,退掉原住房,再进行与分房类似的处理。 (4) 住户可以向系统查询目前分房的阀值分数,居住某类房屋的条件,某房号
图:
4.什么是结构化分析?它的结构化体现在哪里? 结构化分析:使用数据流程图、数据字典、结构化英语、判定表和判定树等工具,
软件工程概论(第5版)课后习题解答
(4)找出并改正程序中逻辑中的错误。
COMMENT:PROGRAM SEARCHES FOR FIRST N REFERENCES TO A TOPIC IN AN INFORMATION RETRIEVAL SYSTEM WITH T TOTAL ENTRIES INPUT N IF N>0 THEN INPUT KEYWORD(S) FOR TOPIC I=0 MATCH=0 DO WHILE I<T I=I+1 IF WORD=KEYWORD THEN MATCH=MATCH+1 STORE IN BUFFER END IF MATCH=N
√ √ √ √
待维修人员来排除故障,故障排除后回到闲置状态。 请用状态转换图描绘复印机的行为。 解: 从问题陈述可知,复印机的状态主要有“闲置”、“复印”、“缺 纸”和“卡纸”。引起状态转换的事件主要是“复印命令”、“完成复印命 令”、“发现缺纸”、“装满纸”、“发生卡纸故障”和“排除了卡纸故障”。
软件工程(第五版)--习题及答案---第九章
一、判断题1、(×)测试是为了验证该软件以正确地实现了用户的需求。
2、(√)发现错误多的程序模块,残留在模块中的错误也多。
3、(×)白盒测试法是根据程序的功能来设计测试用例的。
4、(×)黑盒法是根据程序的内部逻辑来设计测试用例的。
5、(√)确定测试计划是在需求分析阶段制定的。
6、(√)集成测试计划是在概要设计阶段制定的。
7、(√)单元测试是在编码阶段完成的。
8、(√)集成测试工作最好由不属于该软件开发组的软件设计人员承担。
9、(√)为了提高软件的测试效率,测试工作需要有测试工具的支持。
10、(×)在做程序的单元测试时,桩模块比驱动模块容易编写。
二、选择题1、测试用例是专门为了发现软件错误而设计的一组或多组数据,它由(C)组成。
A、测试输入数据B、预期的测试输出数据C、测试输入与预期的输出数据D、按照测试用例设计方法设计出的数据2、测试和调试最大的不同在于(A)。
A、操作者的心理状态不同B、它们的行为取向不同C、使用的工具不同D、运用的方法不同3、一个成功的测试是(B)。
A、发现错误B、发现至今尚未发现的错误C、没有发现错误D、证明发现不了错误4、白盒法和黑盒法最大的不同在于(A)。
A、测试用例设计方法不同B、测试的任务不同C、应用的测试阶段不同D、基于的知识集不同5、单元测试阶段主要涉及(D)的文档。
A、需求设计B、编码和详细设计C、详细设计D、概要设计6、检查软件产品是否符合需求定义的过程称为(A)。
A、确认测试B、集成测试C、验证测试D、验收测试7、软件调试的目的是(B)。
A、发现错误B、改正错误C、改善软件的性能D、挖掘软件的潜能8、进行软件测试的目的是(A)。
A、尽可能多地找出软件中的错误B、缩短软件的开发时间C、减少软件的维护成本D、证明程序没有缺陷9、选择一个适当的测试用例,用于测试下面的程序,能达到判定覆盖的是(C)。
A、B、D 、10、在进行单元测试时,常用的方法是(A )。
软件工程(第五版)--习题及答案---第九章
软件工程(第五版)--习题及答案---第九章本页仅作为文档页封面,使用时可以删除This document is for reference only-rar21year.March一、判断题1、(×)测试是为了验证该软件以正确地实现了用户的需求。
2、(√)发现错误多的程序模块,残留在模块中的错误也多。
3、(×)白盒测试法是根据程序的功能来设计测试用例的。
4、(×)黑盒法是根据程序的内部逻辑来设计测试用例的。
5、(√)确定测试计划是在需求分析阶段制定的。
6、(√)集成测试计划是在概要设计阶段制定的。
7、(√)单元测试是在编码阶段完成的。
8、(√)集成测试工作最好由不属于该软件开发组的软件设计人员承担。
9、(√)为了提高软件的测试效率,测试工作需要有测试工具的支持。
10、(×)在做程序的单元测试时,桩模块比驱动模块容易编写。
二、选择题1、测试用例是专门为了发现软件错误而设计的一组或多组数据,它由(C)组成。
A、测试输入数据B、预期的测试输出数据C、测试输入与预期的输出数据D、按照测试用例设计方法设计出的数据2、测试和调试最大的不同在于(A)。
A、操作者的心理状态不同B、它们的行为取向不同C、使用的工具不同D、运用的方法不同3、一个成功的测试是(B)。
A、发现错误B、发现至今尚未发现的错误C、没有发现错误D、证明发现不了错误4、白盒法和黑盒法最大的不同在于(A)。
A、测试用例设计方法不同B、测试的任务不同C、应用的测试阶段不同D、基于的知识集不同5、单元测试阶段主要涉及(D)的文档。
A、需求设计B、编码和详细设计C、详细设计D、概要设计6、检查软件产品是否符合需求定义的过程称为(A)。
A、确认测试B、集成测试C、验证测试D、验收测试7、软件调试的目的是(B)。
A、发现错误B、改正错误C、改善软件的性能D、挖掘软件的潜能8、进行软件测试的目的是(A)。
A、尽可能多地找出软件中的错误B、缩短软件的开发时间C、减少软件的维护成本D、证明程序没有缺陷9、选择一个适当的测试用例,用于测试下面的程序,能达到判定覆盖的是(C)。
软件工程第5版课后答案28页PPT
60、生活的道路一旦选定,就要勇敢地 走到底 ,决不 回头1、获得的成功越大,就越令人高兴 。野心 是使人 勤奋的 原因, 节制使 人枯萎 。 12、不问收获,只问耕耘。如同种树 ,先有 根茎, 再有枝 叶,尔 后花实 ,好好 劳动, 不要想 太多, 那样只 会使人 胆孝懒 惰,因 为不实 践,甚 至不接 触社会 ,难道 你是野 人。(名 言网) 13、不怕,不悔(虽然只有四个字,但 常看常 新。 14、我在心里默默地为每一个人祝福 。我爱 自己, 我用清 洁与节 制来珍 惜我的 身体, 我用智 慧和知 识充实 我的头 脑。 15、这世上的一切都借希望而完成。 农夫不 会播下 一粒玉 米,如 果他不 曾希望 它长成 种籽; 单身汉 不会娶 妻,如 果他不 曾希望 有小孩 ;商人 或手艺 人不会 工作, 如果他 不曾希 望因此 而有收 益。-- 马钉路 德。
56、书不仅是生活,而且是现在、过 去和未 来文化 生活的 源泉。 ——库 法耶夫 57、生命不可能有两次,但许多人连一 次也不 善于度 过。— —吕凯 特 58、问渠哪得清如许,为有源头活水来 。—— 朱熹 59、我的努力求学没有得到别的好处, 只不过 是愈来 愈发觉 自己的 无知。 ——笛 卡儿
软件工程导论第五版课后答案
软件工程导论第五版课后答案【篇一:软件工程答案第五版答案】方法学(3个要素):通常把软件生命周期全过程中使用的一整套技术方法的集合称为方法学,也称范型。
三要素:方法、工具和过程。
? 软件生命周期模型–瀑布模型:优点:1.可强迫开发员采用规范的方法2.严格地规定了每个阶段必须提交的文件3.要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证。
–缺点:传统的瀑布模型过于理想化,是由文档驱动的。
–快速原型模型:通过快速构建起一个可在计算机上运行的原型系统,让用户试用原型并收集用户反馈意见的方法,获取用户真正的需要。
–增量模型:优点:能在较短时间内向用户提交可完成部分工作的产品;逐步增加产品功能可以使用户有较充实的时间学习和适应新产品,从而减少一个全新的软件可能给客户组织带来的冲击。
–螺旋模型:优点:对可选方案和约束条件的强调有利于已有软件的重用;减少了过多测试;维护只是螺旋模型中另一个周期。
1-1 什么是软件危机? 是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。
1-2 什么是软件工程? 是指导计算机软件开发和维护的一门工程学科。
1-3 简述结构化范型和面向对象范型的要点,并分析它们的优缺点。
目前使用得最广泛的软件工程方法学(2种):1. 传统方法学:也称为生命周期方法学或结构化范型。
优点:把软件生命周期划分成基干个阶段,每个阶段的任务相对独立,而且比较简单,便于不同人员分工协作,从而降低了整个软件开发过程的困难程度。
缺点:当软件规模庞大时,或者对软件的需求是模糊的或会承受时间而变化的时候,开发出的软件往往不成功;而且维护起来仍然很困难。
2. 面向对象方法学:优点:降低了软件产品的复杂性;提高了软件的可理解性;简化了软件的开发和维护工作;促进了软件重用。
1-4 软件生命周期划分成哪些阶段? 软件生命周期(各阶段)软件生命周期由软件定义、软件开发和运行维护三个时期组成。
1. 软件定义时期划分为三个阶段:问题定义、可行性研究和需求分析 2. 开发时期:总体设计、详细设计、编码和单元测试、综合测试。
最新软件工程(第五版)--习题及答案---第九章
一、判断题1、(×)测试是为了验证该软件以正确地实现了用户的需求。
2、(√)发现错误多的程序模块,残留在模块中的错误也多。
3、(×)白盒测试法是根据程序的功能来设计测试用例的。
4、(×)黑盒法是根据程序的内部逻辑来设计测试用例的。
5、(√)确定测试计划是在需求分析阶段制定的。
6、(√)集成测试计划是在概要设计阶段制定的。
7、(√)单元测试是在编码阶段完成的。
8、(√)集成测试工作最好由不属于该软件开发组的软件设计人员承担。
9、(√)为了提高软件的测试效率,测试工作需要有测试工具的支持。
10、(×)在做程序的单元测试时,桩模块比驱动模块容易编写。
二、选择题1、测试用例是专门为了发现软件错误而设计的一组或多组数据,它由(C)组成。
A、测试输入数据B、预期的测试输出数据C、测试输入与预期的输出数据D、按照测试用例设计方法设计出的数据2、测试和调试最大的不同在于(A)。
A、操作者的心理状态不同B、它们的行为取向不同C、使用的工具不同D、运用的方法不同3、一个成功的测试是(B)。
A、发现错误B、发现至今尚未发现的错误C、没有发现错误D、证明发现不了错误4、白盒法和黑盒法最大的不同在于(A)。
A、测试用例设计方法不同B、测试的任务不同C、应用的测试阶段不同D、基于的知识集不同5、单元测试阶段主要涉及(D)的文档。
A、需求设计B、编码和详细设计C、详细设计D、概要设计6、检查软件产品是否符合需求定义的过程称为(A)。
A、确认测试B、集成测试C、验证测试D、验收测试7、软件调试的目的是(B)。
A、发现错误B、改正错误C、改善软件的性能D、挖掘软件的潜能8、进行软件测试的目的是(A)。
A、尽可能多地找出软件中的错误B、缩短软件的开发时间C、减少软件的维护成本D、证明程序没有缺陷9、选择一个适当的测试用例,用于测试下面的程序,能达到判定覆盖的是(C)。
A、B、D 、10、在进行单元测试时,常用的方法是(A )。
《软件工程》(第五版)习题参考答案
《软件工程》(第五版)习题参考答案
第1章 一、判断题 1、(×)软件的维护与硬件维护本质上是相同的。 2、(√)软件在运行和使用中也存在退化问题。 3、(×)软件危机的产生主要是因为程序设计人员使用了不适 当的程序设计语言。 4、(√)软件同其他事物一样,有孕育、诞生、成长、成熟和 衰亡的生存过程。 5、(×)文字处理软件 Word 属于系统软件。应用软件 6、(√)原型是软件的一个早期可运行的版本,它反映最终系 统的部分重要特性。 7、(√)软件开发过程中,一个错误发现得越晚,为改正它所 付出的代价就越大。 8、(×)快速原型模型对软件开发人员的水平要求不高。 9、(√)喷泉模型适合于面向对象的软件开发。 10、(×)面向对象开发方法的主要缺点是在适应需求变化方面 不够灵活。 二、选择题 1、软件是一种(C)。 A、程序 B、数据
D、合同文档 14、结构化分析方法是以数据流图、(D)和加工说明等描述工 具,即用直观的图和简洁的语言来描述软件系统模型。 A、DFD 图 B、PAD 图 C、IPO 图 D、DD 15、软件需求分析阶段的工作,可以分为四个方面:需求获取、 需求分析、编写需求规格说明书以及(B)。 A、阶段性报告 B、需求评估 C、总结 D、都不正确 16、数据流图用于抽象描述一个软件的逻辑模型,数据流图由一 些特定的图符构成。下面图符名称标识的图符不属于数据流图合 法图符的是(A)。 A、控制流 B、加工 C、数据存储 D、源点和终点 17、DFD 用于描述系统的(D)。 A、数据结构
软件工程第五版课后全答案准确对应书山
软件工程第五版课后全答案准确对应书山答案一:软件工程概述软件工程是一门研究如何以系统化、规范化、可定量化的方法开发和维护软件的学科。
它包括软件开发的理论、方法和工具,以及软件工程实践中的管理过程。
答案二:软件工程的原则和概念1. 软件工程的原则:- 适应性原则:软件工程应适应不断变化的需求和环境。
- 开发可验证性:软件开发过程应可验证和检验。
- 风险管理:软件开发中应采取风险管理策略。
- 可扩展性:软件应具备可扩展性,以适应未来的发展和变化。
2. 软件工程的概念:- 软件生命周期:指软件从提出需求到废弃的整个过程。
- 开发过程模型:指将软件开发过程分为一系列可管理的阶段和活动。
- 软件需求:用户对软件的功能、质量和性能等方面的要求和期望。
- 软件设计:确定软件系统的体系结构和组件之间的关系,并编写详细的规格说明。
- 软件测试:验证软件是否符合需求,并发现和修复软件中的缺陷。
- 软件维护:对已经交付使用的软件进行错误修复、性能优化等活动。
答案三:软件过程和项目管理1. 软件过程:- 软件过程定义:软件过程是指为实现软件的开发和维护需要采取的一系列方法和活动。
- 软件过程模型:包括瀑布模型、迭代模型、增量模型等。
- 软件过程改进:通过评估现有过程并采取相应的改进措施,提高软件开发效率和质量。
2. 项目管理:- 项目管理概述:项目管理是指将规划、组织、指导、控制和评估项目活动的过程。
- 项目管理知识体系:包括项目范围管理、项目时间管理、项目成本管理等多个方面。
- 项目管理过程:包括项目启动、规划、执行、监控和收尾等阶段。
答案四:需求分析与规格说明1. 需求工程:需求分析是软件开发的重要阶段,它涉及对用户需求的收集、分析和规格说明等活动。
- 需求获取:通过面谈、问卷调查等方式,从用户和相关人员中获取需求。
- 需求分类和排序:将获取的需求进行分类和排序,以便进一步分析和规格说明。
2. 需求分析模型:在需求分析过程中,可以使用不同的模型来表示需求,常用的模型有数据流图、用例图等。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
适合于软件需求不明确,设计方案有一定风险的软件项目.
P23 7参考答案
螺旋模型 缺点: 需要相当的风险分析评估的专门技术,且成功依赖于这 种技术. 很明显一个大的没有被发现的风险问题,将会导致问题 的发生,可能导致演化的方法失去控制. 这种模型相对比较新,应用不广泛,其功效需要进一步 的验证. 优点: 对于大型系统及软件的开发,这种模型是一个很好的方 法.开发者和客户能够较好地对待和理解每一个演化级 别上的风险. 适合于大型软件的开发
P22 3
习题1第3题 什么是软件工程?它有哪些本质特性?怎样用软件工程消 除软件危机?
P22 3参考答案
软件工程是:
① 把系统的,规范的,可度量的途径应用于软件开发,运行和 维护过程,也就是把工程应用于软件; ② 研究①中提到的途径
软件工程的本质特性:
软件工程关注于大型程序的构造 软件工程的中心课题是控制复杂性 软件经常变化 开发软件的效率非常重要 和谐地合作是开发软件的关键 软件必须有效地支持它的用户 在软件工程领域中是由具有一种文化背景的人替具有另一种 文化背景的人创造产品
P23 7参考答案
优点:
它提供了一个模板,这个模板使得分析,设计,编码,测试 和支持的方法可以在该模板下有一个共同的指导. 虽然有不少缺陷但比在软件开发中随意的状态要好得多. 软件工程中应用最广泛的过程模型,在软件工程中占有肯定和重 要的位置.
P23 7参考答案
快速原型模型 在进行了基本需求分析之后,快速开发出产品的原型,然 后基于这个原型,同客户沟通,交流,更好地了解客户需 求,不断修改这个原型,到了双方认可的程度,再做详细 地分析,设计和编程,最终开发出令客户满意的产品. 优点: 使用户能够感受到实际的系统,使开发者能够快速地构 造出系统的框架. 缺点: 产品的先天性不足,因为开发者常常需要做实现上的折 中,可能采用不合适的操作系统或程序设计语言,以使 原型能够尽快工作.
P22 3参考答案
软件危机解决途径 技术措施
使用更好的软件开发方法和开发工具
组织管理措施
软件开发不是某种个体劳动的神秘技巧,而应该是一种组织 良好,管理严密,各类人员协同配合,共同完成的工程项目
软件工程采用工程的概念,原理,技术和方法来开发与维 护软件,把经过时间考验而证明正确的管理技术和当前能 够得到的最好的技术方法结合起来 软件工程正是从管理和技术两方面研究如何更好地开发和 维护计算机软件的一门新兴学科
补充习题二
比较传统和现代开发方法中基于约束的覆盖率的区别
补充习题二参考答案
在传统方法测试中:
单元测试集中检测软件,设计的最小单元为模块,可独立测 试单个操作; 集成测试存在层次的控制结构,依自顶向下或自底向上策略; 确认测试集中检查用户可见的动作和可识别的输出
传统方法的约束覆盖针对软件设计模块,孤立测试单个操 作.
B:搜索关键字为空字串,是否提示关键字不能为空串.
输入:"" 空串 输入:"计算机";80 预期输出:关键字不能为
BS:选取行的行号超过屏幕行号,是否提示行号超界.
预期输出:行号超界 预期输出:索引号不合法
BSD:检索的索引号不合法,是否提示索引号不合法.
输入:"计算机";12;-1 输入:1
P278 5 参考答案
需求描述(参照课本P227ATM系统需求描述)
定义系统边界
确定类与对象
储户,银行,储蓄系统,存款单,取款单,业务员,系统, 存款人,姓名,住址,存款类型,存款日期,利率,信息, 利息,利息清单,帐户,事务日志.
确定关联,属性
P278 5 参考答案
静态结构
P278 5 参考答案
�
补充习题二参考答案
在现代方法测试中:
单元测试中单元的概念改变了,它的"封装"导致类和对象 的定义,从而使最小的可测试单元变为封装起来的类和对象; 集成测试不存在层次的控制结构,采用基于线程或使用的测 试; 确认测试不再考虑类之间的连接细节
在现代方法的约束覆盖率中,要测试封装的类和对象,而 不能孤立地仅对个体模块测试 在传统和现代设计中,针对不同对象,其覆盖程度也有所 不同
建立动态模型
事件跟踪图(正常,异常) 状态图
以正常存款为例说明事件跟 踪图画法
业务人员键入系统 记录存款信息存款入账户 打印存款单
(作业中,请包含所有正常和异常情况) 作业中,请包含所有正常和异常情况)
P278 5 参考答案
建立动态模型
事件跟踪图(正常,异常) 状态图 若某个类的状态较多,变化较复杂,则应当画出该类的状态 图,说明该类状态改变的条件等.
输入:"计算机" 输入:"计算机";12 预期输出:约20个加行号的字 预期输出:约20个加行号的字;文件
BS:输入关键字,选取屏幕上行号,是否生成包含索引号的文件. BSD:输入关键字,选取屏幕上行号,检索索引号有关信息,是 否显示文件中索引信息.
输入:"计算机";12;3 预期输出:约20个加行号的字;文 件;文件中索引信息.
软件工程习题课
P175 5
某图书馆有一个使用CRT终端的信息检索系统,该系统有 下列4个基本检索命令:
名称 BROWSE (浏览) SELECT (选取) DISPLAY (显示) 语法 b(关键字) 操作 系统搜索给出的关键字,找出字母排列与此关键字最相近 的字.然后在屏幕上显示约20个加了行号的字,与给出的 关键字完全相同的字约在中央. 系统创建一个文件保存含有由行号制定的关键字的全部图 书的索引,这些索引都有编号(第一个索引的编号为1,第 二个为2……依此类推). 系统在屏幕上显示与给定的索引号有关的信息,这些信息 与通常在图书馆的目录卡片上给出的信息相同.这条命令 接在BROWSE/SELECT或FIND命令后面用,以显示文件 中的索引信息. 系统搜索指定的作者姓名,并在屏幕上显示该作者的著作 的索引号,同时把这些索引存入文件.
P23 7参考答案
增量模型 缺点:
至始至终开发者和客户纠缠在一起,直到完全版本出来.
优点:
人员分配灵活,刚开始不用投入大量人力资源,当核心产品 很受欢迎时,可增加人力实现下一个增量. 当配备的人员不能在设定的期限内完成产品时,它提供了一 种先推出核心产品的途径,这样就可以先发布部分功能给客 户,对客户起到镇静剂的作用. 具有一定的市场.
s(屏幕上的行 号) d(索引号)
FIND (查找)
f(作者姓名)
1. 设计测试数据以全面测试系统正常操作. 2. 设计测试数据以测试系统的非正常操作.
P175 5 参考答案
划分等价类(略) 全面测试系统正常操作
B BS BSD F FD
P175 5 参考答案
B:输入关键字,看是否输出约20个加了行号的字,是否与关键 字完全相同的字约在屏幕中央.
补充习题一
为什么基于约束覆盖率作为测试软件充分性的一个指标?
类测试: 那 与验证类 实现 该类 说 关联 动组 类测试后,测试程度用测试充分性表示,即测试多少类实现 和多少类说明包括三个标准即基于类状态的覆盖率,基于约 束的覆盖率和基于代码的覆盖率. 基于约束的覆盖率以测试用例覆盖状态转换图中多少个约束 为依据.如对于状态的边界值,取决于状态相关属性范围, 对于状态的每一个转换所应满足的条件,以及转换后应满足 何种条件,根据属性来定义每一个状态等.这些测试展现了 类测试系列充分性.
F:输入作者姓名,是否在屏幕上显示该作者的著作的索引号, 是否将这些索引存入文件.
输入:"金庸" 预期输出:该作者著作的索引号
FD:输入作者姓名,检索索引号有关信息,是否现实文件中索引 信息.
输入:"金庸";3 预期输出:该作者著作索引号;文件中 索引信息
P175 5 参考答案
测试系统的非正常操作
直接调用DISPLAY,是否提示非法操作
预期输出:非法操作
……
P278 5
试用面向对象方法,设计本书习题2第2题中描述的储蓄系 统. 习题2第2题 为方便储户,某银行拟开发计算机储蓄系统.储户填写的 存款单或取款单由业务员键入系统,如果是存款,系统记 录存款人姓名,住址,存款类型,存款日期,利率等信息, 并印出存款单给储户;如果是取款,系统计算利息并印出 利息清单给储户.
P23 6
习题1第6题 什么是软件过程?它与软件工程方法学有何关系?
P23 6参考答案
软件过程是为了获得高质量软件所需要完成的一系列任务 的框架,它规定了完成各项任务的工作步骤. 软件工程方法学包含三个要素:方法,工具和过程.
方法是完成软件开发的各项任务的技术方法,回答"怎样做" 的问题 工具是为运用方法而提供的自动的或半自动的软件工程支撑 环境 过程是为了获得高质量软件所需要完成的一系列任务的框架, 它规定了完成各项任务的工作步骤
P23 7
习题1第7题 什么是软件生命周期模型?试比较瀑布模型,快速原型模 型,增量模型和螺旋模型的优缺点,说明每种模型的适用 范围
P23 7参考答案
软件生命周期模型是跨越整个生存期的系统开发,运作和 维护所实施的全部过程,活动和任务的结构框架.
P23 7参考答案
瀑布模型 缺点: 实际的项目大部分情况难以按照该模型给出的顺序进行, 而且这种模型的迭代是间接的,这很容易由微小的变化 而造成大的混乱. 经常情况下客户难以表达真正的需求,而这种模型却要 求如此,这种模型是不欢迎具有二义性问题存在的. 客户要等到开发周期的晚期才能看到程序运行的测试版 本,而在这时发现大的错误时,可能引起客户的惊慌, 而后果也可能是灾难性的. 会经常在过程的开始和结束时碰到等待其他成员完成其 所依赖的任务才能进行下去,有可能花在等待的时间比 开发的时间要长.称之为"堵塞状态".