软件工程 导论 第五版 课后习题 答案详解

合集下载

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

《软件工程导论》张海潘第五版清华课后答案
第四章答案
了解结构化开发方法的核心概念和工具,提供 对练习问题的参考答案。
面向对象开发方法
第五章
深入探讨面向对象开发方法的理论和实践,学习如何设计和构建强大的面向 对象软件系统。
课后答案
第一章答案
掌握软件工程概述的关键知识点,提供练习题 的答案以加深理解。
第三章答案
学习需求分析和建模的实际应用,提供对课后 习题的详细解答。
第二章答案
了解软件生命周期的各个阶段,掌握解决实践 问题的方法和技巧。
《软件工程导论》张海潘 第五版清华课后答案
欢迎来到《软件工程导论》张海潘第五版清华课后答案的世界。让我们一起 探索这门令人兴奋的学科,并发现其中的奥秘和乐趣。
课本信息
书名:《软件工程导论》
作者:张海潘
版本:第五版
出版社:清华大学出版社
作者简介
张海潘
张海潘是一位资深的软件工程教授,拥有丰富的教学和研究经验。他对软件 开发过程和方法论有着深入的研究,并致力于培养下一代的软件工程师。
章节导引Biblioteka 1第二章:软件生命周期
2
深入研究软件项目的整个生命周期,了
解每个阶段的任务和活动。
3
第四章:结构化开发方法
4
介绍结构化开发方法的基本原理和技术, 帮助开发人员构建可靠和易维护的软件。
第一章:软件工程概述
了解软件工程的基本概念和原理,掌握 软件工程的核心思想和目标。
第三章:需求分析与建模
学习如何捕捉用户需求并进行有效的需 求分析和建模。

最新软件工程导论第五版习题答案教学讲义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 时钟

软件工程导论(第五版)张海藩课后答案.doc

软件工程导论(第五版)张海藩课后答案.doc

第一章软件工程概论1.什么是软件危机?软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。

这些问题表现在以下几个方面:(1)用户对开发出的软件很难满意。

(2)软件产品的质量往往靠不住。

(3)一般软件很难维护。

(4)软件生产效率很低。

(5)软件开发成本越来越大。

(6)软件成本与开发进度难以估计。

(7)软件技术的发展远远满足不了计算机应用的普及与深入的需要。

2.为什么会产生软件危机?(1) 开发人员方面,对软件产品缺乏正确认识,没有真正理解软件产品是一个完整的配置组成。

造成开发中制定计划盲目、编程草率,不考虑维护工作的必要性。

(2) 软件本身方面,对于计算机系统来说,软件是逻辑部件,软件开发过程没有统一的、公认的方法论和规范指导,造成软件维护困难。

(3) 尤其是随着软件规模越来越大,复杂程度越来越高,原有软件开发方式效率不高、质量不能保证、成本过高、研制周期不易估计、维护困难等一系列问题更为突出,技术的发展已经远远不能适应社会需求。

3.怎样克服软件危机?(1) 充分吸收和借鉴人类长期以来从事各种工程项目中积累的行之有效的有效原理、概念、技术与方法,特别是吸取几十年来人类从事计算机硬件研究和开发的经验教训。

在开发软件的过程中努力作到良好的组织,严格的管理,相互友好的协作。

(2) 推广在实践中总结出来的开发软件的成功的技术和方法,并研究更好、更有效的技术和方法,尽快克服在计算机系统早期发展阶段形成的一些错误概念和作法。

(3) 根据不同的应用领域,开发更好的软件工具并使用这些工具。

将软件开发各个阶段使用的软件工具集合成一个整体,形成一个很好的软件开发支环环境。

总之为了解决软件危机,既要有技术措施(方法和工具),又要有必要的组织管理措施。

4.构成软件项目的最终产品:应用程序、系统程序、面向用户的文档资料和面向开发者的文档资料。

5.什么是软件生存周期?软件生存周期是指从软件定义、开发、使用、维护到淘汰的全过程。

软件工程导论张海藩(第五版)课后习题答案

软件工程导论张海藩(第五版)课后习题答案

软件⼯程导论张海藩(第五版)课后习题答案《软件⼯程导论》课后习题答案第⼀章软件⼯程概论1.什么是软件危机?软件危机是指在计算机软件的开发和维护过程中所遇到的⼀系列严重问题。

这些问题表现在以下⼏个⽅⾯:(1)⽤户对开发出的软件很难满意。

(2)软件产品的质量往往靠不住。

(3)⼀般软件很难维护。

(4)软件⽣产效率很低。

(5)软件开发成本越来越⼤。

(6)软件成本与开发进度难以估计。

(7)软件技术的发展远远满⾜不了计算机应⽤的普及与深⼊的需要。

2.为什么会产⽣软件危机?(1) 开发⼈员⽅⾯,对软件产品缺乏正确认识,没有真正理解软件产品是⼀个完整的配置组成。

造成开发中制定计划盲⽬、编程草率,不考虑维护⼯作的必要性。

(2) 软件本⾝⽅⾯,对于计算机系统来说,软件是逻辑部件,软件开发过程没有统⼀的、公认的⽅法论和规范指导,造成软件维护困难。

(3) 尤其是随着软件规模越来越⼤,复杂程度越来越⾼,原有软件开发⽅式效率不⾼、质量不能保证、成本过⾼、研制周期不易估计、维护困难等⼀系列问题更为突出,技术的发展已经远远不能适应社会需求。

3.怎样克服软件危机?(1) 充分吸收和借鉴⼈类长期以来从事各种⼯程项⽬中积累的⾏之有效的有效原理、概念、技术与⽅法,特别是吸取⼏⼗年来⼈类从事计算机硬件研究和开发的经验教训。

在开发软件的过程中努⼒作到良好的组织,严格的管理,相互友好的协作。

(2) 推⼴在实践中总结出来的开发软件的成功的技术和⽅法,并研究更好、更有效的技术和⽅法,尽快克服在计算机系统早期发展阶段形成的⼀些错误概念和作法。

(3) 根据不同的应⽤领域,开发更好的软件⼯具并使⽤这些⼯具。

将软件开发各个阶段使⽤的软件⼯具集合成⼀个整体,形成⼀个很好的软件开发⽀环环境。

总之为了解决软件危机,既要有技术措施(⽅法和⼯具),⼜要有必要的组织管理措施。

4.构成软件项⽬的最终产品:应⽤程序、系统程序、⾯向⽤户的⽂档资料和⾯向开发者的⽂档资料。

软件工程导论 张海藩(第五版)课后习题答案

软件工程导论 张海藩(第五版)课后习题答案

《软件工程导论》课后习题答案第一章软件工程概论1.什么是软件危机?软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。

这些问题表现在以下几个方面:(1)用户对开发出的软件很难满意。

(2)软件产品的质量往往靠不住。

(3)一般软件很难维护。

(4)软件生产效率很低。

(5)软件开发成本越来越大。

(6)软件成本与开发进度难以估计。

(7)软件技术的发展远远满足不了计算机应用的普及与深入的需要。

2.为什么会产生软件危机?(1) 开发人员方面,对软件产品缺乏正确认识,没有真正理解软件产品是一个完整的配置组成。

造成开发中制定计划盲目、编程草率,不考虑维护工作的必要性。

(2) 软件本身方面,对于计算机系统来说,软件是逻辑部件,软件开发过程没有统一的、公认的方法论和规范指导,造成软件维护困难。

(3) 尤其是随着软件规模越来越大,复杂程度越来越高,原有软件开发方式效率不高、质量不能保证、成本过高、研制周期不易估计、维护困难等一系列问题更为突出,技术的发展已经远远不能适应社会需求。

3.怎样克服软件危机?(1) 充分吸收和借鉴人类长期以来从事各种工程项目中积累的行之有效的有效原理、概念、技术与方法,特别是吸取几十年来人类从事计算机硬件研究和开发的经验教训。

在开发软件的过程中努力作到良好的组织,严格的管理,相互友好的协作。

(2) 推广在实践中总结出来的开发软件的成功的技术和方法,并研究更好、更有效的技术和方法,尽快克服在计算机系统早期发展阶段形成的一些错误概念和作法。

(3) 根据不同的应用领域,开发更好的软件工具并使用这些工具。

将软件开发各个阶段使用的软件工具集合成一个整体,形成一个很好的软件开发支环环境。

总之为了解决软件危机,既要有技术措施(方法和工具),又要有必要的组织管理措施。

4.构成软件项目的最终产品:应用程序、系统程序、面向用户的文档资料和面向开发者的文档资料。

5.什么是软件生存周期?软件生存周期是指从软件定义、开发、使用、维护到淘汰的全过程。

软件工程导论-张海藩-第五版课后习题答案

软件工程导论-张海藩-第五版课后习题答案

多态
多态是指同一个操作作用于不 同的对象,可以产生不同的结 果。
UML建模语言简介
UML是一种用于对软件密集系统进行可视化建模 的统一建模语言。
UML通过统一的符号和工具,为软件开发人员提 供了一种通用的建模语言。
UML可以描述软件系统的静态结构和动态行为, 包括类图、时序图、用例图等。
面向对象分析、设计和实现过程
列表。
与用户确认需求列表,确保对用户需求有准确的理解。
03
需求规格说明书编写
01
编写详细的需求规格说明书,包括功能需求、性能需求、接 口需求等。
02
使用清晰、准确的语言描述需求,避免歧义和模糊性。
03
提供必要的图表、示例和数据,以便更好地理解和实现需求 。
需求变更管理
建立需求变更管理流 程,确保所有变更都 经过评估和批准。
及时通知相关干系人, 协商并处理变更请求, 确保项目顺利进行。
对变更进行影响分析, 评估变更对项目进度、 成本和质量的影响。
03 系统设计
总体设计原则与方法
模块化
将系统划分为若干个相对独立的模块, 每个模块具有特定的功能,模块之间 通过接口进行通信。
高内聚、低耦合
模块内部的功能应该高度相关,而模 块之间的依赖关系应该尽量减少。
要点二
软件评估技术
软件评估技术包括代码审查、走查、桌面检查等。代码审 查是一种正式的评估技术,由一组开发人员对源代码进行 详细检查以发现错误;走查是一种轻量级的评估技术,由 开发人员自行检查代码并记录下潜在的问题;桌面检查则 是一种非正式的评估技术,由评估人员通过查看文档和演 示来评价软件产品的质量。
THANKS FOR WATCHING
感谢您的观看

软件工程导论第五版答案

软件工程导论第五版答案

13:07:42
软件工程导论第五版答案
•作业及解答(第4章)
仔细研究图示的有穷状态机可以发现,它还有不够严格的地 方。有兴趣的同学请进一步改进它,画出更严格的、与浮 点二进制数定义完全一致的有穷状态机。
13:07:42
软件工程导论第五版答案
•作业及解答(第5章)
补充1:请为某仓库的管理设计一个ER模型。该仓库主要管 理零件的订购和供应等事项。仓库向工程项目供应零件, 并且根据需要向供应商订购零件。
〈floating point binary〉∷=[〈sign〉]〈bitstring
〉E[〈sign〉]〈bitstring〉
〈sign〉∷=+|-
〈bitstring〉∷=〈bit〉[〈bitstring〉]
〈bit〉∷=0|1
13:07:42
软件工程导论第五版答案
•作业及解答(第4章)
其中, ✓符号∷=表示定义为; ✓符号[...]表示可选项; ✓符号a|b表示a或b。 假设有这样一个有穷状态机:以一串字符为输入,判断字符 串中是否含有合法的浮点二进制数。试对这个有穷状态机进 行规格说明。
(3)在1995年对存储容量的需求估计为:
如果字长为32位,则这个存储器的价格是:
如果一条指令为一个字长,则为使存储器装满程序共需 73,577,679条指令。
在1995年一名程序员每天可开发出30条指令,每月可开 发出600条指令,为了开发出可装满整个存储器的程序, 需要的工作量为
13:07:42
软件工程导论第五版答 案
2020/12/19
软件工程导论第五版答案
•作业及解答
作业一 基本概念(第1-2章) 作业二 需求分析(第3章) 作业三 系统设计(第5章) 作业四 详细设计(第6章) 作业五 系统实现(第7章) 作业六 系统维护(第8章) 作业七 面向对象方法学引论(第9章) 作业八 面向对象分析(第10章) 作业九 面向对象设计(第11章) 作业十 面向对象实现(第12章) 作业十一 软件项目管理(第13章)

软件工程导论----张海藩(第五版)课后习题答案

软件工程导论----张海藩(第五版)课后习题答案

《软件工程导论》课后习题答案第三章需求分析习题答案1.需求分析的描述工具有哪些?有数据流图、数据字典、判定表、判定树、结构化自然语言、层次方框图、Warnier 图、IPO图和需求描述语言等。

2.需求分析的基本任务是什么?准确定义未来系统的目标,确定为了满足用户的需要系统必须做什么。

3.怎样建立目标系统的逻辑模型?要经过哪些步骤?建立目标系统的逻辑模型的过程也就是数据流图的分解过程。

它的导出过程如图:10.某单位拟开发一个计算机房产管理系统,要求系统具有分房、调房、退房和查询统计等功能。

房产科将用户申请表输入系统后,系统首先检查申请表的合法性,对不合法的申请表,系统拒绝接收;对合法的申请表根据类型分别进行处理。

(1) 如果是分房申请,则根据申请者的情况(年龄、工龄、职称、职务、家庭人口等)计算其分数,当分数高于阀值分数时,按分数高低将申请单插到分房队列的适当位置。

在进行分房时,从空房文件中读出空房信息,如房号、面积、等级、单位面积房租等,把好房优先分给排在分房队列前面的符合该等级房条件的申请者;从空房文件中删掉这个房号的信息,并从分房队列中删掉该申请单,再把此房号的信息和住户信息一起写到住房文件中,输出住房分配单给住户,同时计算房租,并将算出的房租写到房租文件中。

(2) 如果是退房申请,则从住房文件和房租文件中删除有关信息,再把此房号的信息写到空房文件中。

(3) 如果是调房申请,则根据申请者的情况确定其住房等级,然后在空房文件中查找属于该等级的空房,退掉原住房,再进行与分房类似的处理。

(4) 住户可以向系统查询目前分房的阀值分数,居住某类房屋的条件,某房号的单位面积及房租等信息。

房产科可以要求系统打印住房情况的统计表,或更改某类房屋的居住条件、单位面积和房租等。

用数据流图描绘该系统的功能需求;在数据字典中给出主要的数据流、文件和加工说明。

第四章总体设计习题答案9. 比较层次方框图与结构图是的异同?(1) 层次方框图描绘数据的层次结构, 结构图描绘的是软件结构。

软件工程导论(第五版)_(张海藩_著)_清华大学出版社_课后习题答案

软件工程导论(第五版)_(张海藩_著)_清华大学出版社_课后习题答案
9.什么是软件工程? 软件工程是指导计算机软件开发和维护的工程学科。 (1) 它采用工程的概念、原理、技术和方法来开发和维护软件; (2) 它将管理技术与当前经过时间考验的而证明是正确的技术方法结合起
来; (3) 它强调使用生存周期方法学和结构分析和结构技术; (4) 经过人们长期的努力和探索,围绕着实现软件优质高产这个目标,从技术
的单位面积及房租等信息。房产科可以要求系统打印住房情况的统计表,或更改某 类房屋的居住条件、单位面积和房租等。
用数据流图描绘该系统的功能需求;在数据字典中给出主要的数据流、文件和 加工说明。
参考第四章 4.5 应用举例教案之二分析。
第四章 总体设计 习题答案
1. 系统设计包括哪两个阶段? 系统设计包括总体设计与详细设计两个阶段。
(2) 在渐增型开发下的软件是随软件开发的过程而逐渐形成的。 (3) 渐增型开发方法适合于知识型软件的开发,设计系统时对用户需求的认 识开始不是很清楚的,需要在开发过程中不断认识、不断获得新的知识去丰富和完 善系统。多数研究性质的试验软件,一般采用此方法。 变换型开发方法及特点: (1)从软件需求的形式化规格说明出发,经过一系列的程序变换,得到最终的 程序系统。 (2)该方法必须有严格的数学理论和形式化技术的支持。
算出的房租写到房租文件中。 (2) 如果是退房申请,则从住房文件和房租文件中删除有关信息,再把此房号
的信息写到空房文件中。 (3) 如果是调房申请,则根据申请者的情况确定其住房等级,然后在空房文件
中查找属于该等级的空房,退掉原住房,再进行与分房类似的处理。 (4) 住户可以向系统查询目前分房的阀值分数,居住某类房屋的条件,某房号
图:
4.什么是结构化分析?它的结构化体现在哪里? 结构化分析:使用数据流程图、数据字典、结构化英语、判定表和判定树等工具,

软件工程导论 张海藩(第五版)课后习题答案

软件工程导论 张海藩(第五版)课后习题答案

《软件工程导论》课后习题答案第一章软件工程概论1.什么是软件危机?软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。

这些问题表现在以下几个方面:(1)用户对开发出的软件很难满意。

(2)软件产品的质量往往靠不住。

(3)一般软件很难维护。

(4)软件生产效率很低。

(5)软件开发成本越来越大。

(6)软件成本与开发进度难以估计。

(7)软件技术的发展远远满足不了计算机应用的普及与深入的需要。

2.为什么会产生软件危机?(1) 开发人员方面,对软件产品缺乏正确认识,没有真正理解软件产品是一个完整的配置组成。

造成开发中制定计划盲目、编程草率,不考虑维护工作的必要性。

(2) 软件本身方面,对于计算机系统来说,软件是逻辑部件,软件开发过程没有统一的、公认的方法论和规范指导,造成软件维护困难。

(3) 尤其是随着软件规模越来越大,复杂程度越来越高,原有软件开发方式效率不高、质量不能保证、成本过高、研制周期不易估计、维护困难等一系列问题更为突出,技术的发展已经远远不能适应社会需求。

3.怎样克服软件危机?(1) 充分吸收和借鉴人类长期以来从事各种工程项目中积累的行之有效的有效原理、概念、技术与方法,特别是吸取几十年来人类从事计算机硬件研究和开发的经验教训。

在开发软件的过程中努力作到良好的组织,严格的管理,相互友好的协作。

(2) 推广在实践中总结出来的开发软件的成功的技术和方法,并研究更好、更有效的技术和方法,尽快克服在计算机系统早期发展阶段形成的一些错误概念和作法。

(3) 根据不同的应用领域,开发更好的软件工具并使用这些工具。

将软件开发各个阶段使用的软件工具集合成一个整体,形成一个很好的软件开发支环环境。

总之为了解决软件危机,既要有技术措施(方法和工具),又要有必要的组织管理措施。

4.构成软件项目的最终产品:应用程序、系统程序、面向用户的文档资料和面向开发者的文档资料。

5.什么是软件生存周期?软件生存周期是指从软件定义、开发、使用、维护到淘汰的全过程。

软件工程导论(第五版)张海藩课后答案(2021修订版)(2021整理)

软件工程导论(第五版)张海藩课后答案(2021修订版)(2021整理)

第一章软件工程概论1.什么是软件危机?软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。

这些问题暗示在以下几个方面:(1)用户对开发出的软件很难对劲。

(2)软件产物的质量往往靠不住。

(3)一般软件很难维护。

(4)软件出产效率很低。

(5)软件开发成本越来越大。

(6)软件成本与开发进度难以估计。

(7)软件技术的开展远远满足不了计算机应用的普及与深入的需要。

2.为什么会发生软件危机?(1) 开发人员方面,对软件产物缺乏正确认识,没有真正理解软件产物是一个完整的配置组成。

造成开发中制定方案盲目、编程草率,不考虑维护工作的必要性。

(2) 软件本身方面,对于计算机系统来说,软件是逻辑部件,软件开发过程没有统一的、公认的方法论和尺度指导,造成软件维护困难。

(3) 尤其是随着软件规模越来越大,复杂程度越来越高,原有软件开发方式效率不高、质量不克不及包管、成本过高、研制周期不易估计、维护困难等一系列问题更为突出,技术的开展已经远远不克不及适应社会需求。

3.怎样克服软件危机?(1) 充实吸收和借鉴人类持久以来从事各种工程工程中堆集的行之有效的有效道理、概念、技术与方法,出格是吸取几十年来人类从事计算机硬件研究和开发的经验教训。

在开发软件的过程中努力作到良好的组织,严格的办理,彼此友好的协作。

(2) 推广在实践中总结出来的开发软件的成功的技术和方法,并研究更好、更有效的技术和方法,尽快克服在计算机系统早期开展阶段形成的一些错误概念和作法。

(3) 按照不同的应用领域,开发更好的软件东西并使用这些东西。

将软件开发各个阶段使用的软件东西调集成一个整体,形成一个很好的软件开发支环环境。

总之为了解决软件危机,既要有技术办法(方法和东西),又要有必要的组织办理办法。

工程的最终产物:应用程序、系统程序、面向用户的文档资料和面向开发者的文档资料。

5.什么是软件保存周期?软件保存周期是指从软件定义、开发、使用、维护到裁减的全过程。

软件工程导论课后习题答案(第五版)

软件工程导论课后习题答案(第五版)

排除卡纸故障 发生卡纸故障 复印命令 闲置 完成复印命令 do/复印 发现缺纸 装满纸 复印
卡纸 do/警告
缺纸 do/警告
练习题:习题4.3
一个浮点二进制数的构成是:一个可选的符号(+或),后跟一个或多个二进制位,再跟上一个字符E, 再加上另一个可选符号(+或-)及一个或多个二进 制位。例如,下列的字符串都是浮点二进制数: 110101E-101 -100111E11101 +1E0 更形式化地,浮点二进制数定义如下: 〈floatingpoint binary〉∷=[〈sign〉] 〈bitstring〉E[〈sign〉]〈bitstring〉 〈sign〉∷=+|〈bitstring〉∷=〈bit〉[〈bitstring〉] 〈bit〉∷=0|1
状态图练习题:习题3.6 复印机的工作过程大致如下: • 未接到复印命令时处于闲置状态,一旦接 到复印命令则进入复印状态,完成一个复 印命令规定的工作后又回到闲置状态,等 待下一个复印命令; • 如果执行复印命令时发现没纸,则进入缺 纸状态,发出警告,等待装纸,装满纸后 进入闲置状态,准备接收复印命令; • 如果复印时发生卡纸故障,则进入卡纸状 态,发出警告等待维修人员来排除故障, 故障排除后回到闲置状态。
习题答案
练习题:习题2.5 北京某高校可用的电话号码有以下几类: • 校内电话号码由4位数字组成,第1位数字 不是0; • 校外电话又分为本市电话和外地电话两类; • 拨校外电话需先拨0; • 若是本市电话则再接着拨8位数字(第1位不 是0); • 若是外地电话则拨3位区码再拨8位电话号 码(第1位不是0)。
C
P1 . P3
P2 R P2
.
P1
还书R 借书C

软件工程导论第五版课后答案

软件工程导论第五版课后答案

软件工程导论第五版课后答案【篇一:软件工程答案第五版答案】方法学(3个要素):通常把软件生命周期全过程中使用的一整套技术方法的集合称为方法学,也称范型。

三要素:方法、工具和过程。

? 软件生命周期模型–瀑布模型:优点:1.可强迫开发员采用规范的方法2.严格地规定了每个阶段必须提交的文件3.要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证。

–缺点:传统的瀑布模型过于理想化,是由文档驱动的。

–快速原型模型:通过快速构建起一个可在计算机上运行的原型系统,让用户试用原型并收集用户反馈意见的方法,获取用户真正的需要。

–增量模型:优点:能在较短时间内向用户提交可完成部分工作的产品;逐步增加产品功能可以使用户有较充实的时间学习和适应新产品,从而减少一个全新的软件可能给客户组织带来的冲击。

–螺旋模型:优点:对可选方案和约束条件的强调有利于已有软件的重用;减少了过多测试;维护只是螺旋模型中另一个周期。

1-1 什么是软件危机? 是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。

1-2 什么是软件工程? 是指导计算机软件开发和维护的一门工程学科。

1-3 简述结构化范型和面向对象范型的要点,并分析它们的优缺点。

目前使用得最广泛的软件工程方法学(2种):1. 传统方法学:也称为生命周期方法学或结构化范型。

优点:把软件生命周期划分成基干个阶段,每个阶段的任务相对独立,而且比较简单,便于不同人员分工协作,从而降低了整个软件开发过程的困难程度。

缺点:当软件规模庞大时,或者对软件的需求是模糊的或会承受时间而变化的时候,开发出的软件往往不成功;而且维护起来仍然很困难。

2. 面向对象方法学:优点:降低了软件产品的复杂性;提高了软件的可理解性;简化了软件的开发和维护工作;促进了软件重用。

1-4 软件生命周期划分成哪些阶段? 软件生命周期(各阶段)软件生命周期由软件定义、软件开发和运行维护三个时期组成。

1. 软件定义时期划分为三个阶段:问题定义、可行性研究和需求分析 2. 开发时期:总体设计、详细设计、编码和单元测试、综合测试。

软件工程课后习题答案第五版

软件工程课后习题答案第五版

软件工程课后习题答案第五版软件工程课后习题答案第五版《软件工程导论》课后习题答案第一章软件工程概论1.什么是软件危机?软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。

这些问题表现在以下几个方面:(1)用户对开发出的软件很难满意。

(2)软件产品的质量往往靠不住。

(3)一般软件很难维护。

(4)软件生产效率很低。

(5)软件开发成本越来越大。

(6)软件成本与开发进度难以估计。

- (7)软件技术的发展远远满足不了计算机应用的普及与深入的需要。

2.为什么会产生软件危机?(1) 开发人员方面,对软件产品缺乏正确认识,没有真正理解软件产品是一个完整的配置组成。

造成开发中制定计划盲目、编程草率,不考虑维护工作的必要性。

(2) 软件本身方面,对于计算机系统来说,软件是逻辑部件,软件开发过程没有统一的、公认的方法论和规范指导,造成软件维护困难。

(3) 尤其是随着软件规模越来越大,复杂程度越来越高,原有软件开发方式效率不高、质量不能保证、成本过高、研制周期不易估计、维护困难等一系列问题更为突出,技术的发展已经远远不能适应社会需求。

3.怎样克服软件危机?(1) 充分吸收和借鉴人类长期以来从事各种工程项目中积累的行之有效的有效原理、概念、技术与方法,特别是吸取几十年来人类从事计算机硬件研究和开发的经验教训。

在开发软件的过程中努力作到良好的组织,严格的管理,相互友好的协作。

(2) 推广在实践中总结出来的开发软件的成功的技术和方法,并研究更好、更有效的技术和方法,尽快克服在计算机系统早期发展阶段形成的一些错误概念和作法。

(3) 根据不同的应用领域,开发更好的软件工具并使用这些工具。

将软件开发各个阶段使用的软件工具集合成一个整体,形成一个很好的软件开发支环环境。

- 总之为了解决软件危机,既要有技术措施(方法和工具),又要有必要的组织管理措施。

4.构成软件项目的最终产品:应用程序、系统程序、面向用户的文档资料和面向开发者的文档资料。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

19:50:09
作业及解答(第3 作业及解答(第3章)
• 从问题陈述可知,复印机的状态主要有“闲置”、 “复印”、“缺纸”和“卡纸”。引起状态转换的事 件主要是“复印命令”、“完成复印命令”、“发现 缺纸”、“装满纸”、“发生卡纸故障”和“排除了 卡纸故障”。
19:50:09
作业及解答(第4 作业及解答(第4章)
作业及解答(第1 作业及解答(第1-2章)
1-5 根据历史数据可以做出如下的假设 : 对计算机存储容量的需求大致按下面公式描述的趋势逐 年增加:M=4080e0.28(Y-1960) 存储器的价格按下面公式描述的趋势逐年下降: P1=0.3×0.72Y-1974(美分/位) 如果计算机字长为16位,则存储器价格下降的趋势为: P2=0.048×0.72Y-1974(美元/字) 在上列公式中Y代表年份,M是存储容量(字数),P1和P2 代表价格。 基于上述假设可以比较计算机硬件和软件成本的变化趋 19:50:09 势。要求计算:
作业及解答(第3 作业及解答(第3章)
3-3 银行计算机储蓄系统的工作过程大致如下:储户填 写的存款单或取款单由业务员键入系统,如果是存款 则系统记录存款人姓名、住址(或电话号码)、身份证 号码、存款类型、存款日期、到期日期、利率及密码 (可选)等信息,并印出存单给储户;如果是取款而且 存款时留有密码,则系统首先核对储户密码,若密码 正确或存款时未留密码,则系统计算利息并印出利息 清单给储户。 请用数据流图描绘本系统的功能,并用实体-联系图 描绘系统中的数据对象。
作业及解答(第4 作业及解答(第4章)
其中, –符号∷=表示定义为; –符号[...]表示可选项; –符号a|b表示a或b。 假设有这样一个有穷状态机:以一串字符为输入,判断字 符串中是否含有合法的浮点二进制数。试对这个有穷状态机 进行规格说明。
19:50:09
作业及解答(第4 作业及解答(第4章)
19:50:09
作业及解答(第1 作业及解答(第1-2章)
• 程序员的月平均工资是4000美元, 开发出4474263 22371 484 000 条指令的成本是 × 4000 = 89, , (美元) • (3)在1995年对存储容量的需求估计为:
M = 4080e 0.28(1995−1960) = 73,577,679(字) = 4080e 9.8 • 如果字长为32位,则这个存储器的价格是: P = 0.003 × 32 × 0.721995−1974 × 73577679 = 7,127(美元)
E1 护士
19:50:09
19:50:09
作业及解答(第3 作业及解答(第3章)
2-5 北京某高校可用的电话号码有以下几类:校内电话 号码由4位数字组成,第1位数字不是0;校外电话又 分为本市电话和外地电话两类,拨校外电话需先拨0, 若是本市电话则再接着拨8位数字(第1位不是0),若 是外地电话则拨3位区码再拨8位电话号码(第1位不是 0)。 请用定义数据字典的方法,定义上述的电话号码。
• 如果一条指令为一个字长,则为使存储器装满程序共 需73,577,679条指令。 • 在1995年一名程序员每天可开发出30条指令,每月 可开发出600条指令,为了开发出可装满整个存储器 73577679 629 的程序,需要的工作量为≈ 122, ( 人月) 600
19:50:09
作业及解答(第1 作业及解答(第1-2章)
软件工程 作业解答
19:50:09
作业及解答
作业一 基本概念(第1-2章) 作业二 需求分析(第3章) 作业三 系统设计(第5章) 作业四 详细设计(第6章) 作业五 系统实现(第7章) 作业六 系统维护(第8章) 作业七 面向对象方法学引论(第9章) 作业八 面向对象分析(第10章) 作业九 面向对象设计(第11章) 作业十 面向对象实现(第12章) 19:50:09 作业十一 软件项目管理(第13章)
122629 × 6000 ≈ 735,776,790(美元) • 开发上述程序的成本为: 1-6 什么是软件过程?它与软件工程方法学有何关系?
– 软件过程是为了开发出高质量的软件产品所需完成的一系 列任务的框架,它规定了完成各项任务的工作步骤。 – 软件过程定义了运用技术方法的顺序、应该交付的文档资 料、为保证软件质量和协调软件变化必须采取的管理措施, 以及标志完成了相应开发活动的里程碑。 – 软件过程是软件工程方法学的3个重要组成部分之一。
作业及解答(第3 作业及解答(第3章)
• • • • • • • • • • • 电话号码=[校内电话号码|校外电话号码] 校内电话号码=非零数字+ 3 位数字 //后面继续定义 校外电话号码=[本市号码|外地号码] 本市号码=数字零+8位数字 外地号码=数字零+3位数字+8位数字 非零数字=[1|2|3|4|5|6|7|8|9] 数字零=0 3位数字=3{数字}3 //3至3个数字 8位数字=非零数字+7位数字 7位数字=7{数字}7 19:50:09 数字=[0|1|2|3|4|5|6|7|8|9]
19:50:09
作业及解答(第1 作业及解答(第1-2章)
• (1)在1985年对计算机存储容量的需求,估计是
0.28(1985−1960 )
= 4080e = 4,474,263(字) M = 4080e • 如果字长为16位,则这个存储器的价格是
7
P = 0.048 × 0.72
1985−1974
F5安全范围 E2 病人 P2 分析信号 F2生理信号 F2生理信号 P1 接收信号 F2生理信号 E3 时钟 P4 定时取样 生理信号
D2患者安全范围 P3 产生警告信息
危及病人信息
F4警告信息 E1 护士
F3日前、时间
定时的生理信号 F6日志
P5 更新日志
D1患者日志 F6日志 P6 产生病情报告
19:50:09
作业及解答(第3 作业及解答(第3章)
19:50:09
作业及解答(第3 作业及解答(第3章)
• 从问题陈述可知,本系统数据源点是“病人”和“护 士”,他们分别提供生理信号和要求病情报告的信息。 进一步分析问题陈述,从系统应该“定时记录病人情 况以形成患者日志”这项要求可以想到,还应该有一 个提供日期和时间信息的“时钟”作为数据源点。 • 从问题陈述容易看出,本系统的数据终点是接收警告 信息和病情报告的护士。 • 系统对病人生理信号的处理功能主要是“接收信号”、 “分析信号”和“产生警告信息”。 • 此外,系统还应该具有“定时取样生理信号”、“更 新日志”和“产生病情报告”的功能。 • 为了分析病人生理信号是否超出了医生规定的安全范 围,应该存储“患者安全范围”信息。此外,定时记 19:50:09 录病人生理信号所形成的“患者日志”,显然也是一 个数据存储。
4-3 一个浮点二进制数的构成是:一个可选的符号(+或-),后 跟一个或多个二进制位,再跟上一个字符E,再加上另一个 可选符号(+或-)及一个或多个二进制位。例如,下列的字符 串都是浮点二进制数: 110101E-101 -100111E11101 +1E0 更形式化地,浮点二进制数定义如下: 〈floatingpoint binary〉∷=[〈sign〉]〈bitstring〉 E[〈sign〉]〈bitstring〉 〈sign〉∷=+|〈bitstring〉∷=〈bit〉[〈bitstring〉] 〈bit〉∷=0|1 19:50:09
19:50:09
作业及解答(第3 作业及解答(第3章)
19:50:09
E1 储户
F1存款单 F7密码
P1 记录存款信息 F5存款信息 D1存款信息
P2 打印存单 F5存款信息 F3存单 E1 储户 F4利息 P5 打印利息清单 F8储蓄利率
F7密码 F2取款单
F5存款信息 P3 核算密码
F4利息 F4利息 F6取款信息 P6 设置利率 P4 计算利息 F8储蓄利率
作业及解答(第1 作业及解答(第1-2章)
(1) 在1985年对计算机存储容量的需求估计是多少?如 果字长为16位,这个存储器的价格是多少? (2) 假设在1985年一名程序员每天可开发出10条指令, 程序员的平均工资是每月4000美元。如果一条指令为 一个字长,计算使存储器装满程序所需用的成本。 (3) 假设在1995年存储器字长为32位,一名程序员每天 可开发出30条指令,程序员的月平均工资为6000美元, 重复(1)、(2)题。
19:50:09
E1 护士F1要求Fra bibliotek告P2 分析信号 E2 病人 F2生理信号 F2生理信号 F5安全范围
危及病人信息 D2患者安全范围
P3 产生警告信息 F4警告信息
D3生理信息 定时的生理信号 P5 更新日志
F2生理信号
P1 接收信号
E1 护士
F2生理信号 定时的 生理信号
F6日志 E3 时钟 F3日前、时间 P4 定时取样 生理信号 F6日志 F1要求报告 P6 产生病情报告 D1患者日志
19:50:09
作业及解答(第3 作业及解答(第3章)
2-4 目前住院病人主要由护士护理,这样做不仅需要大 量护士,而且由于不能随时观察危重病人的病情变化, 还会延误抢救时机。某医院打算开发一个以计算机为 中心的患者监护系统,请分层次地画出描述本系统功 能的数据流图。 医院对患者8监护系统的基本要求是随时接收每个病 人的生理信号(脉搏、体温、血压、心电图等),定时 记录病人情况以形成患者日志,当某个病人的生理信 号超出医生规定的安全范围时向值班护士发出警告信 息,此外,护士在需要时还可以要求系统印出某个指 定病人的病情报告。
该有穷状态机的初态是“等待字符串输人”。在初态若 接收到字符十、或字符一、或二进制位,则进人“输 人尾数”状态;在初态若接收到其他字符,则进人终 态“非浮点二进制数”。在“输人尾数”状态若接收 到二进制位,则保持该状态不变;若接收到字符 E , 则进人“等待输人指数”状态;若接收到其他字符, 则进人终态“非浮点二进制数”。在“等待输人指数” 状态若接收到字符+、或字符一、或二进制位,则进 人“输人指数”状态;若接收到其他字符,则进人终 态“非浮点二进制数”。在“输人指数”状态若接收 到二进制位,则保持该状态不变;若输人其他字符, 则进人终态“非浮点二进制数”;若输人结束,则进 19:50:09 人终态“浮点二进制数”。
相关文档
最新文档