软件工程案例教程答案
《软件工程案例教程》李军国主编习题答案
第1章习题答案一、判断题二、填空题三、简答题1.软件的特点:①软件具有抽象性。
②软件与硬件的生产方式不同。
③软件与硬件的维护方式不同。
④软件具有复杂的逻辑性。
⑤软件的成本较高。
⑥软件的使用和社会因素有关。
2.软件危机产生的原因:①用户需求不明确。
②缺乏正确的理论指导。
③软件开发规模越来越大。
④软件开发复杂度越来越高。
3.软件危机的主要表现:①软件开发进度难以预测。
②软件开发成本难以控制。
③用户对产品功能难以满足。
④软件产品质量无法保证。
⑤软件产品难以维护。
⑥软件缺少适当的文档资料。
4.软件工程学的基本原则有哪些:①抽象。
②信息隐蔽。
③模块化。
④局部化。
⑤确定性。
⑥一致性。
⑦完备性。
⑧可验证性。
5 什么是软件的生命周期?答案:软件与任何一个事物一样,有它的孕育、诞生、成长、成熟、衰亡的生存过程。
这就是软件的生存周期。
6 软件工程过程有哪几个基本过程活动?试说明之。
答案:软件工程过程的基本过程活动有4步:①软件规格说明(需求定义)。
规定软件的功能及其运行的限制;②软件设计与开发(设计开发)。
产生满足规格说明的软件;③软件确认(测试)。
确认软件能够完成客户提出的要求;④软件演进(维护)。
为满足客户的变更要求,软件必须在使用的过程中演进。
四、综合题1.详细说明软件生命周期分哪几个阶段?答案:软件生命周期主要分为6个阶段:软件项目计划、软件需求分析和定义、软件设计、程序编码、软件测试,以及运行维护。
(1)软件项目计划:在这一步要确定软件工作范围,进行软件风险分析,预计软件开发所需要的资源,建立成本与进度的估算。
根据有关成本与进度的限制分析项目的可行性。
(2)软件需求分析和定义:在这一步详细定义分配给软件的系统元素。
可以用以下两种方式中的一种对需求进行分析和定义。
一种是正式的信息域分析,可用于建立信息流和信息结构的模型,然后逐渐扩充这些模型成为软件的规格说明。
另一种是软件原型化方法,即建立软件原型,并由用户进行评价,从而确定软件需求。
软件工程实用案例教程(梁洁、金兰)参考答案 (9)[3页]
习题四参考答案
1. 选择题
DCABC ADDDB
2. 应用题
1、
E1:考试委员会;E2:教师;E3:学生;E4:教务处。
D1:学生信息文件;D2:课程信息文件;D3:班级信息文件;D4:课程成绩文件;D5:无效成绩文件。
2、
①上下文图
②0层数据流图
(1)这里有两个条件:
旅游时间t :t1{7-9,12};t2{1-6,10,11} 订票量a :a1{≤20};a2{>20}
(2)根据旅游时间、订票量的条件组合,以及折扣率画出判定表。
(3)根据旅游时间、订票量和折扣率画出判定树。
4、
电话号码 = [ 校内电话号码 | 校外电话号码 ] 校内电话号码 = 非零数字 + 3位数字 校外电话号码 = [ 本市号码 | 外地号码 ] 本市号码 = 0+ 8位数字
外地号码 = 0 + 3位数字 + 8位数字 非零数字 = [1|2|3|4|5|6|7|8|9] (1分) 3位数字 = 3{数字}3
8位数字 = 非零数字 + 7位数字 7位数字 = 7{数字}7
旅游优惠
旅游时间t1
旅游时间t2
订票量a1
订票量a2
折扣率=5%
折扣率=15%
折扣率=20%折扣率=30%
订票量a1订票量a2
工程项目
零件
供应商项目名称
项目编号
开工日期
供应商名称
供应商编号
地址
供应量
定购量
零件编号
零件名称
颜色重量
向...供应
向...定购
M
M N
N。
软件工程管理分析案例教程(第三版)课后习题-答案
第一章二、判断题1、搬家属于项目。
(√)2、项目是为了创造一个唯一的产品或提供一个唯一的服务而进行的永久性的努力。
(×)3、过程管理就是对过程进行管理,目的是要让过程能够被共享、复用,并得到持续的改进。
(√)4、项目具有临时性的特征。
(√)5、日常运作存在大量的变更管理,而项目基本保持连贯性的。
(×)6、项目开发过程中可以无限制地使用资源。
(×)三、选择题1、下列选项中不是项目与日常运作的区别的是(C)A. 项目是以目标为导向的,日常运作是通过效率和有效性体现的。
B. 项目是通过项目经理及其团队工作完成的,而日常运作是职能式的线性管理。
C.项目需要有专业知识的人来完成,而日常运作的完成无需特定专业知识。
D.项目是一次性的,日常运作是重复性的。
2、下列选项中最能体现项目的特征(C)A.运用进度计划技巧 B.整合范围与成本 C.确定期限 D.利用网络进行跟踪3、以下都是日常运作和项目的共同之处,除了(D)A.由人来做 B.受限于有限的资源 C.需要规划、执行和控制 D.都是重复性工作4、项目经理的职责不包括(D)A.开发计划 B.组织实施 C.项目控制 D.提供资金5、下列选项中属于项目的是(C)A.上课 B.社区保安 C.野餐活动 D.每天的卫生保洁6、下列选项中正确的是(C)A.一个项目具有明确的目标而且周期不限B.一个项目一旦确定就不会发生变更C.每个项目都有自己的独特性D.项目都是一次性的并由项目经理独自完成7、(B)是为了创造一个唯一的产品或提供一个唯一的服务而进行的临时性的努力。
A.过程 B.项目 C.项目群 D.组合8、(B)是一系列伴随着项目的进行而进行,目的是确保项目能够达到期望结果的一系列管理行为。
A.人力资源管理 B.项目管理 C.软件项目管理 D.需求管理9、下列活动中不是项目的是(C)A.野餐活动 B.集体婚礼 C.上课 D.开发操作系统10、下列选项中不是项目的特征的是(C)A.项目具有明确的目标B.项目具有限定的周期C.项目可以重复进行D.项目对资源成本具有约束性第二章二、判断题1、项目初始阶段甲方为软件开发方,乙方为顾客。
软件工程案例教程答案
第一章1.下列所述不是软件特点的是(A)A.软件是有形的B.软件不存在磨损和消耗问题C.软件开发成本高D.软件没有明显的制作过程 C)2.软件工程的出现主要是由于(计算机的D.C.B.其他工程学科的影响软件危机的出现 A.程序设计方法学的影响发展)不是软件危机的表现形式3.以下(C开发的软件价格便宜C.A.开发的软件不满足用户的需要 B.开发的软件可维护性差D.开发的软件可靠性差4.软件工程的目的是(C)A.建造大型的软件系统B.开发的软件可维护性差C.软泥吉安质量的保证D.研究软件开发的远离)5.下列所述不是软件组成的是(D 文档界面 D. A.程序B.数据 C. 下列对“计算机软件”描述正确的是(A)6.是在计算机硬件设备生产过 C.是计算机系统的组成部分A. B.不能作为商品参加交易程中生产出来的 D.之存在语计算机系统工作时7.软件工程的方法的产生源于软件危机,下列(D)是产生软件危机的内在原因A.软件的复杂性B.软件维护困难 C软件成本太高. D.软件质量难保证8.软件工程方法的提出源于软件危机,其目的应该是最终解决软件的(D)问题A.软件危机B.质量保证C.开发效率D.生产工程化9.软件工程学中除重视软件开发的研究外,另以重要组成内容是软件的(A)和过程改进A.项目管理B.成本核算C.人员培训D.工具开发10.软件工程设计软件开发技术和项目管理等方面内容,下述内容中(D)不属于开发技术的范畴软件工程经济D. 软件工程环境C. 软件开发工具B. 软件开发方法A.二、填空题1.软件工程的目的是成功的建造大型的软件系统,主要内容是开打软件开发技术、软件项目管理和软件质量管理。
2.螺旋式开发模型主要是针对风险比较大的项目而设计的3.由于软件产生的复杂性和高成本,使大型软件产生出了很多问题,即出现软件危机,软件工程正是为了克服它而提出的一种概念及相关方法和技术。
4.增量模型假设需求可以分段,成为一系列增量产品,每一增量可以分别开发。
软件工程案例教程答案
1.下列所述不是软件特点的是(A)A.软件是有形的B.软件不存在磨损和消耗问题C.软件开发成本高D.软件没有明显的制作过程2.软件工程的出现主要是由于(C)A.程序设计方法学的影响B.其他工程学科的影响C.软件危机的出现D.计算机的发展3.以下(C)不是软件危机的表现形式A.开发的软件不满足用户的需要B.开发的软件可维护性差C.开发的软件价格便宜D.开发的软件可靠性差4.软件工程的目的是(C)A.建造大型的软件系统B.开发的软件可维护性差C.软泥吉安质量的保证D.研究软件开发的远离5.下列所述不是软件组成的是(D)A.程序B.数据C.界面D.文档6.下列对“计算机软件”描述正确的是(A)A.是计算机系统的组成部分B.不能作为商品参加交易C.是在计算机硬件设备生产过程中生产出来的D.之存在语计算机系统工作时7.软件工程的方法的产生源于软件危机,下列(D)是产生软件危机的内在原因A.软件的复杂性B.软件维护困难C软件成本太高. D.软件质量难保证8.软件工程方法的提出源于软件危机,其目的应该是最终解决软件的(D)问题A.软件危机B.质量保证C.开发效率D.生产工程化9.软件工程学中除重视软件开发的研究外,另以重要组成内容是软件的(A)和过程改进A.项目管理B.成本核算C.人员培训D.工具开发10.软件工程设计软件开发技术和项目管理等方面内容,下述内容中(D)不属于开发技术的范畴A.软件开发方法B.软件开发工具C.软件工程环境D.软件工程经济二、填空题1.软件工程的目的是成功的建造大型的软件系统,主要内容是开打软件开发技术、软件项目管理和软件质量管理。
2.螺旋式开发模型主要是针对风险比较大的项目而设计的3.由于软件产生的复杂性和高成本,使大型软件产生出了很多问题,即出现软件危机,软件工程正是为了克服它而提出的一种概念及相关方法和技术。
4.增量模型假设需求可以分段,成为一系列增量产品,每一增量可以分别开发。
软件工程课后习题答案2-12章
书状态为S2&终端 输入“H=”加书名 管理员设置状 态 管理员删除 管理员添加
预约
书出库(删除) 书入库
图4.4.2
(三)图书馆终端用户模式的有穷状态机描述 • 状态机J:{读者查询状态,查询结果} • 输入集K:{终端输入用户查询命令,书的各种 状态(S1,S2,S3)} • 转换函数T:如图4.4.3所示 • 初始态S:{读者查询状态} • 终态集F:{查询结果}
取票通知 账单 机票 账单
P3.1 核对取票凭证 顾客 取票通知 P3.2 交款 机票 P3.3 打印机票
机票预定系 统
信 息 通 知 单 机 票
账
单
信息
机票
通
预定信息处 理
信息
知
账
通
单
有
单
取票凭证处 理
通知 账单 单
账单
信 息 定 预 航班信
息
机票预定子 系统
单 知
机票发放子 系统
效 通 知
机
票
取款单
P3.1输入取款 信息
取款信息 E1储 户 密码 P3.2 密码校验
P4 计算利息
利息 利息 P5 打印利息 清单
密码正确信息
E2业 务员
利率
P6设置利 率
利率
不能是两个分开的子系统,是相同的前台单个处理
银行储蓄系 统
存 款 单 款
率 利
利 存单 息清单
密 码
业务单据录 入
利 率
存款单
取
单
储蓄业务处理
(一)图书状态的有穷状态机描述 • 状态机J:{书在图书馆S1,书被借出S2, 书被预约S3} • 输入集K:{书上条形码,借阅卡条形码, 终端输入各种命令} • 转换函数T:如图4.4.1所示 • 初始态S:{书在图书馆S1,书被借出S2} • 终态集F:{书被借出S2,书被预约S3}
软件工程(第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参考答案
软件工程课后参考答案完整版
软件工程课后参考答案 HEN system office room 【HEN16H-HENS2AHENS8Q8-HENH1688】第一章课后参考答案1.什么是软件危机它们有哪些典型表现为什么会出现软件危机“软件危机”是指计算机软件的“开发”和“维护”过程中所遇到的一系列“严重问题”。
这些问题决不仅仅是不能正常运行的软件才具有的,实际上,几乎“所有软件”都不同程度地存在这些问题。
它们有以下表现:(1)对软件开发成本和进度的估计常常很不准确;(2)用户对“已完成的”软件系统不满意的现象经常发生;(3)软件产品的质量往往靠不住;(4)软件常常是不可维护的;(5)软件通常没有适当的文档资料;(6)软件成本在计算机系统总成本中所占的比例逐年上升;(7)软件开发生产率提高的速度,远远跟不上计算机应用普及深入的趋势。
出现软件危机的主要原因(1)与软件本身的特点有关(2)与软件开发和维护过程中使用的方法不正确有关2.假设自己是一家软件公司的总工程师,当把图给手下的软件工程师们观看,告诉他们及时发现并改正错误的重要性时,有人不同意这个观点,认为要求在错误进入软件之前就清楚它们是不现实的,并举例说:“如果一个故障是编码错误造成的,那么,一个人怎么能在设计阶段清除它呢?”应该怎么反驳他?答:在软件开发的不同阶段进行修改付出的代价是很不相同的,在早期引入变动,涉及的面较少,因而代价也比较低;在开发的中期,软件配置的许多成分已经完成,引入一个变动要对所有已完成的配置成分都做相应的修改,不仅工作量大,而且逻辑上也更复杂,因此付出的代价剧增;在软件“已经完成”时在引入变动,当然付出的代价更高。
一个故障是代码错误造成的,有时这种错误是不可避免的,但要修改的成本是很小的,因为这不是整体构架的错误。
3.什么是软件工程它有哪些本质特征怎么用软件工程消除软件危机软件工程是指导知道计算机软件开发和维护的一门工程学科。
采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好技术方法结合起来,以经济地开发出高质量的软件并有效地维护它,这就是软件工程。
软件工程实用案例教程(梁洁、金兰)参考答案
习题一参考答案1. 选择题DDBBA DBD2. 简答题(1) 通用软件产品开发和定制软件开发之间有什么不同?这在实际应用中对通用软件产品用户意味着什么?答:这两类产品的一个重要区别在于:在通用软件产品中,软件描述由开发人员自己完成,而在定制软件产品中,软件描述通常是由客户给出,开发人员必须按客户要求进行开发。
在实际应用中通用软件满足的是绝大部分用户的共同需求,而对于特殊的个人需求无法涉及到。
(2) 什么是软件危机?产生的原因有哪些?它和软件工程有什么关系?答:在软件开发中经常会出现时间延迟、预算超支、质量得不到保证、移植性差等问题,甚至有的项目在耗费了大量人力、财力后,由于离目标相差甚远而宣布失败。
这种现象称为“软件危机”。
产生的原因有:(1) 软件独有的特点给开发和维护带来困难。
(2) 软件人员的错误认识。
忽视软件需求分析的重要性,轻视文档的作用,轻视软件维护等。
(3) 软件开发工具自动化程度低。
此外,软件生产工程化管理程度低,致使软件项目管理混乱,难以保障软件项目成本、开发进度按计划执行。
由于软件危机的出现,人们一直在努力探索克服软件危机的途径。
因此提出“软件工程”的概念,试图用工程的方法和管理手段,将软件开发纳入工程化的轨道,以便开发出成本低、功能强、可靠性高的软件产品。
(3) 简述软件工程的定义和软件工程的目标?答:在NATO会议上,Fritz Bauer对于软件工程的定义是:“为了经济地获得可靠的、能在实际机器上高效运行的软件,而建立和使用的健全的工程原则。
”对于软件工程,美国电气与电子工程师学会(IEEE)给出了如下定义。
软件工程是:①将系统化的、规范化的、可量化的方法应用于软件的开发、运行和维护中,即将工程化方法应用于软件;②对于①中所述方法的研究。
软件工程的目标:①软件开发成本较低。
②软件功能能够满足用户的需求。
③软件性能较好。
④软件可靠性高。
⑤软件易于使用、维护和意志。
⑥能够按时完成开发任务,并及时交付使用。
软件工程案例教程答案
软件工程案例教程答案软件工程案例教程答案一、引言软件工程案例教程是为了帮助学习者更好地理解和应用软件工程的理论知识而编写的。
本文档将详细介绍一个软件工程案例的答案,包括项目计划、需求分析、设计、实施、测试、部署等各个阶段的具体内容。
二、项目计划2.1 项目背景在这一部分,我们将介绍该软件工程案例的背景,包括项目的目标、范围、参与人员等信息。
2.2 项目计划在这一部分,我们将详细描述项目计划的制定过程,包括里程碑、进度安排、资源分配等内容。
三、需求分析3.1 功能需求在这一部分,我们将列出该软件案例的功能需求清单,包括用户提交订单、管理员管理订单、支付功能等。
3.2 非功能需求在这一部分,我们将列出该软件案例的非功能需求,如性能要求、可用性要求等。
四、设计4.1 系统架构设计在这一部分,我们将详细描述系统的整体架构设计,包括前端与后端的交互方式、数据流等。
4.2 数据库设计在这一部分,我们将详细描述数据库的设计,包括表结构、关系等。
五、实施5.1 编码实现在这一部分,我们将详细描述编码实现的过程,包括选择开发工具、编码规范等。
5.2 单元测试在这一部分,我们将介绍单元测试的方法和步骤,以保证代码的质量。
5.3 集成测试在这一部分,我们将介绍集成测试的方法和步骤,以保证各个模块的正确集成。
六、测试6.1 功能测试在这一部分,我们将详细描述功能测试的内容和步骤,以确保软件功能的正确性。
6.2 性能测试在这一部分,我们将详细描述性能测试的内容和步骤,以评估软件的性能指标。
七、部署在这一部分,我们将介绍软件部署的步骤和流程,以确保软件能够正常运行。
八、附件本文档涉及的附件包括项目计划表、数据库设计文档、测试报告等,详见附件部分。
九、法律名词及注释9.1 法律名词1注释:相关解释和法规说明。
9.2 法律名词2注释:相关解释和法规说明。
软件工程管理分析案例教程(第三版)课后习题-答案
第一章二、判断题1、搬家属于项目。
(√)2、项目是为了创造一个唯一的产品或提供一个唯一的服务而进行的永久性的努力。
(×)3、过程管理就是对过程进行管理,目的是要让过程能够被共享、复用,并得到持续的改进。
(√)4、项目具有临时性的特征。
(√)5、日常运作存在大量的变更管理,而项目基本保持连贯性的。
(×)6、项目开发过程中可以无限制地使用资源。
(×)三、选择题1、下列选项中不是项目与日常运作的区别的是(C)A. 项目是以目标为导向的,日常运作是通过效率和有效性体现的。
B. 项目是通过项目经理及其团队工作完成的,而日常运作是职能式的线性管理。
C.项目需要有专业知识的人来完成,而日常运作的完成无需特定专业知识。
D.项目是一次性的,日常运作是重复性的。
2、下列选项中最能体现项目的特征(C)A.运用进度计划技巧 B.整合范围与成本 C.确定期限 D.利用网络进行跟踪3、以下都是日常运作和项目的共同之处,除了(D)A.由人来做 B.受限于有限的资源 C.需要规划、执行和控制 D.都是重复性工作4、项目经理的职责不包括(D)A.开发计划 B.组织实施 C.项目控制 D.提供资金5、下列选项中属于项目的是(C)A.上课 B.社区保安 C.野餐活动 D.每天的卫生保洁6、下列选项中正确的是(C)A.一个项目具有明确的目标而且周期不限B.一个项目一旦确定就不会发生变更C.每个项目都有自己的独特性D.项目都是一次性的并由项目经理独自完成7、(B)是为了创造一个唯一的产品或提供一个唯一的服务而进行的临时性的努力。
A.过程 B.项目 C.项目群 D.组合8、(B)是一系列伴随着项目的进行而进行,目的是确保项目能够达到期望结果的一系列管理行为。
A.人力资源管理 B.项目管理 C.软件项目管理 D.需求管理9、下列活动中不是项目的是(C)A.野餐活动 B.集体婚礼 C.上课 D.开发操作系统10、下列选项中不是项目的特征的是(C)A.项目具有明确的目标B.项目具有限定的周期C.项目可以重复进行D.项目对资源成本具有约束性第二章二、判断题1、项目初始阶段甲方为软件开发方,乙方为顾客。
软件工程实用案例教程参考答案
软件工程实用案例教程参考答案1. 软件工程实用案例教程参考答案解析软件工程实用案例教程是帮助软件工程师提高技能并实战应用的重要资源。
通过提供参考答案的解析,可以帮助学习者更好地理解案例的解决方法和思路。
以下是对一些常见案例的参考答案解析。
一、敏捷开发案例敏捷开发是一种迭代、自组织的开发方法,通过反复迭代开发和快速响应变化的需求,实现高质量的软件交付。
下面是一个敏捷开发案例的参考答案解析。
案例:开发一个网上购物系统,用户可以注册账号、浏览商品、添加购物车、下单付款等。
解析:敏捷开发的核心是通过迭代的方式,快速交付高质量的软件。
在这个案例中,可以通过以下步骤进行开发:1. 第一轮迭代:实现用户注册功能。
确定用户注册的必要信息,设计用户注册界面,实现用户注册的验证逻辑和数据库存储功能。
2. 第二轮迭代:实现商品浏览功能。
设计商品列表界面,实现商品的展示和筛选功能,确保用户可以浏览到所有的商品信息。
3. 第三轮迭代:实现购物车功能。
设计购物车界面,实现商品加入购物车的逻辑和购物车商品数量的管理功能。
4. 第四轮迭代:实现下单付款功能。
设计下单界面,实现下单的逻辑和相关支付接口的调用。
通过不断的迭代开发,逐步完善系统的各个模块,最终实现一个完整的网上购物系统。
二、需求分析案例需求分析是软件工程中非常重要的环节,它确定了软件开发的目标和范围。
以下是一个需求分析案例的参考答案解析。
案例:开发一个学生信息管理系统,实现学生信息的录入、查询、修改和删除等功能。
解析:需求分析时需要明确系统的功能需求和非功能需求。
在这个案例中,可以通过以下步骤进行需求分析:1. 功能需求:确定系统的主要功能,包括学生信息的录入、查询、修改和删除等功能。
2. 非功能需求:确定系统的性能、安全和可靠性等非功能需求。
比如系统的响应时间应在2秒以内,数据的安全性需要保证等。
3. 需求获取:通过访谈、问卷调查等方式,获取用户对系统的需求和期望。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第一章1.下列所述不是软件特点的是(A)A.软件是有形的B.软件不存在磨损和消耗问题C.软件开发成本高D.软件没有明显的制作过程2.软件工程的出现主要是由于(C)A.程序设计方法学的影响B.其他工程学科的影响C.软件危机的出现D.计算机的发展3.以下(C)不是软件危机的表现形式A.开发的软件不满足用户的需要B.开发的软件可维护性差C.开发的软件价格便宜D.开发的软件可靠性差4.软件工程的目的是(C)A.建造大型的软件系统B.开发的软件可维护性差C.软泥吉安质量的保证D.研究软件开发的远离5.下列所述不是软件组成的是(D)A.程序B.数据C.界面D.文档6.下列对“计算机软件”描述正确的是(A)A.是计算机系统的组成部分B.不能作为商品参加交易C.是在计算机硬件设备生产过程中生产出来的D.之存在语计算机系统工作时7.软件工程的方法的产生源于软件危机,下列(D)是产生软件危机的内在原因A.软件的复杂性B.软件维护困难C软件成本太高. D.软件质量难保证8.软件工程方法的提出源于软件危机,其目的应该是最终解决软件的(D)问题A.软件危机B.质量保证C.开发效率D.生产工程化9.软件工程学中除重视软件开发的研究外,另以重要组成内容是软件的(A)和过程改进A.项目管理B.成本核算C.人员培训D.工具开发10.软件工程设计软件开发技术和项目管理等方面内容,下述内容中(D)不属于开发技术的范畴A.软件开发方法B.软件开发工具C.软件工程环境D.软件工程经济二、填空题1.软件工程的目的是成功的建造大型的软件系统,主要内容是开打软件开发技术、软件项目管理和软件质量管理。
2.螺旋式开发模型主要是针对风险比较大的项目而设计的3.由于软件产生的复杂性和高成本,使大型软件产生出了很多问题,即出现软件危机,软件工程正是为了克服它而提出的一种概念及相关方法和技术。
4.增量模型假设需求可以分段,成为一系列增量产品,每一增量可以分别开发。
5.喷泉模型比较适合用于面向对象的开发方法。
三、判断题1.软件开发方法的主要目的是克服软件手工生产带来的问题,使软件开发能进入工程化和规范化的环境(Y)2.软件工程的提出起源于软件危机,其目的书最终解决软件的生产工程化(Y)3.软件工程改进也是软件工程的范畴(Y)第二章一、选择题1.结构化分析方法是面向(B)的自顶向下逐步求精的分析方法。
A.目标B.数据流C功能. D.对象2.在进行软件设计时应该遵循的最主要的原理是(C)A.抽象B模块化. C.模块独立D信息屏蔽.3.在结构化分析方法中,常用的描述软件功能需求的工具是(C)A.业务流程图、处理说明B软件流程图、模块说明. C.数据流程图、数据字典 D.系统流程图、程序编码二、填空题1.结构化分析方法是(面向数据流)进行分析的方法。
2.在软件开发的结构化方法中,构成系统逻辑的模型的是(数据流图(DFD))和数字字典。
3.数据流图是描述数据在软件中流动和被处理的过程,是软件模型的一种图示,它一般包括4种图形符号:变换/加工、外部实体、数据流向和(数据储存)。
4.(面向对象)是将数据和对数据的操作紧密结合起来的方法,这是与传统结构化方法的主要区别三、判断题1.面向对象开发过程是多次重复和迭代的演化过程,(面向对象开发方法是)在概念和表示方法是的一致性保证了各项开发活动之间的平滑过渡(N)2.软件逆向工程是根据对软件需求的分析恢复其设计和软件代码的过程(N)第三章一、选择题1、软件开发过程中,需求活动的主要任务是(B)A给出软件解决方案B定义需求并建立系统模型C定义模块算法D给出系统模块结构2、软件需求规格说明文档中包括多方面的内容,下述(D)不是软件需求规格说明文档中应包括的内容A安全描述B功能描述C性能描述D软件代码3.软件需求分析一般应确定的是用户对软件的(D)A功能需求B非功能需求C性能需求D功能需求和非功能需求4.结构化分析方法中,描述软件功能需求的常用工具有(C)同第二章5.软件需求分析阶段建立原型的主要目的是(D)A确定系统的功能和性能要求B确定系统的性能要求C确定系统是否满足用户要求D确定系统是否满足开发人员需要6.在需求分析阶段,需求分析人员需要了解用户的需求,认真仔细地调研、分析,最终应建立目标系统的逻辑模型并写出(B)A模块说明书B需求规格说明书C项目开发设计D合同文档7.如见需求阶段要解决的问题(A)A软件做什么B软件提供哪些信息C软件采用什么结构D软件怎样做8.软件需求管理过程包括需求获取、需求分析、编写需求规格说明书、需求评审以及(D)A用户参加B需求变更C总结D都不正确9.在原型法中开发人员根据(A)需求不断修改原型,直到满足用户需求为止。
A用户B开发人员C系统分析员D程序员10.结构化分析方法以数据流图、(D)和加工说明等描述工具,即用直观的图和简介的怨言来描述软件系统模型。
A、DFD图B、PAD图C、HIPO图D数据字典二.填空题1.面向数据流的软件设计中,一般将数据流图的数据流划分为变换流和(事物流)。
2.分析模型在系统级描述和(软件设计的差距)之间建立了桥梁。
最常见的实体关系图的表示法是(E-R图)表示法和()三.判断题1.系统流程图表达了系统中各个袁术之间信息的流动情况(Y)2.用例需求分析方法采用的是一种结构化的情景分析方法,即是一种基于场景建模的方法(N)3.面向对象的分析方法认为系统是对象的集合,是以功能和数据为基础的(Y)第四章一、选择题1、内聚是从功能角度来度量模块内的凉席,按照特定次序执行元素的模块属于(C)A逻辑内聚B时间内聚C过程内聚D顺序内聚2、软件的结构化设计方法中,一般分为概要设计和详细设计两个阶段,其中概要设计主要是要建立(A)A软泥吉安结构B软件流程C软件模型D软件模块3.概要设计是软件工程中很重要的技术活动,下列不是概要设计任务的是(B)A设计软件系统的结构B编写测试报告C数据结构和数据库设计D编写概要设计文档4.软件结构图能描述软件系统的总体结构设计,它应在软件开发的(B)阶段提出A需求分析B概要设计C详细设计D代码编写5.软件的(A)设计也称为总体结构设计,其主要人物是建立软件的总体结构A概要B抽象C逻辑D规划6.数据字典是定义(A)中的数据的工具A数据流图B系统流程图C程序流程图D软件结构图7.耦合是软件各个模块间连接的一种度量。
一组模块都访问同意数据结构应属于(B)A内容耦合B公共耦合C外部耦合D控制耦合8.面向数据流的软件设计方法中,一般是把数据流图中的数据流分为(B)两种流,在将数据流图映射为软件结构A数据流与事物流B交换流和事务流C信息流与控制流D交换流和数据流9.(C)是指让一些关系密切的软件元素在物理上彼此靠近A信息隐蔽B内聚C局部化D模块独立10.软件设计是一个将(B)转换为软件表示的过程A代码设计B软件需求C详细设计D系统分析11.数据储存和数据流都是(D),仅仅是所处的状态不同A分析结果B事件C动作D数据12.在结构化方法中,软件功能分解属于软件开发中的(C)阶段的任务A详细设计B需求分析C概要设计D编程调试13.数据字典是数据定义信息的集合,它所定义的对象都包括在(A)A数据流图B程序框图C软件结构D方框图14.模块本身的内聚是模块独立性的重要度量因素之一,在7类内聚中,具有最强内聚的一类是(D)A顺序性内聚B过程性内聚C逻辑性内聚D功能性内聚15.面向数据流的设计方法把(A)映射城软件结构A数据流B系统结构C控制结构D信息流16.数据流图和(数据字典)共同组成系统逻辑模型17.下列关于软件设计准则的描述,错误速度是(C)A提高模块的独立性B体现统一的风格C是模块结构的作用语在该模块的控制域外D结构应该尽可能满足变更的要求二、填空题1、数据字包括(数据流)、(实体)、(数据储存)和基本加工2、软件设计把一确定的软件需求转换成特定的设计表示,使其得以实现3、设计模型是从分析模型转化而来的,主要包括四类模型:(体系结构设计模型)、数据设计模型、接口设计模型、模块化4、面向兑现设计的主要特点是建立了四个非常重要的软件设计概念:抽象性、隐蔽性、功能独立性和、模块化5、构建(模块)设计的最终目的是将数据模型、体系结构模型、接口模型变为(运行软件)三、判断题1、软件设计是软件工程的重要阶段,是一个把软件需求转换为软件代码的过程(N)2、软件设计说明书是软件概要设计的主要成果(Y)3、软件设计中设计复审和设计本身一样重要,其主要作用是避免后期付出高代价(Y)4、模式是针对特定问题的解决方案,好的模式采用成熟和成功的方法,比重新设计要好很多。
框架是特定应用领域的数据结构模式(N)第五章一、选择题1、(D)是数据说明、可执行语句等程序对象的集合,它是单独命名的,而且可以通过名字来访问A模块化B抽象C精化D模块2、面向数据结构的设计方法是进行(c)的一种方法A系统设计B详细设计C软件设计D编码3.Jackson设计方法是由Jackson所提出的,它是一种面向(C)的软件设计方法A对象B数据流C数据结构D控制结构4.数据元素组成数据的方式基本类型是(D)A顺序的B选择的C循环的D以上全部5.程序流程图中的箭头代表的是(B)A数据流B控制流C调用关系D组成关系6.伪码又称为过程设计语言PDL,一种典型的PDL是仿照(C)编写的A、FORTRAN B汇编语言C、PASCAL语言DCOBOL语言7.伪码作为详细设计的工具,缺点在于(B)A每个符号对应与源程序的一行代码,对于提高系统的可理解性作用很小B不如其他图形工具直观,描述复杂的条件组合与动作间的对应关系不够明了C容易使程序不受任何约束,随意转移控制D不支持逐步求精,是程序员不去烤炉系统的全局结构8.结构化程序流程图中一般包括3种基本结构,下述结构中(D)不属于其基本解结构。
A顺序结构B条件结构C选择结构D嵌套结构9.软件设计模块化的目的是(B)A提高易读性B降低复杂性C怎家内聚性D降低耦合性二.填空题1、PDL又称(伪码),它是一种非形式的比较灵活的语言2、软件店详细设计可采用图形、(表格)和过程设计语言等形式的描述工具表示模块的处理过程3、软件的详细设计需要设计人员对每个设计模块进行描述,确定所使用的(数据结构)接口细节和输入、输出数据等4、结构化设计方法语结构化分析方法一样,采用(逐步求精)技术、结构化设计方法与结构化分析方法相结合,依数据流图设计程序的结构5、软件中详细设计一般是在(需求分析)基础上才能实施,它们一起构成了软件设计的全部内容6、在Warnier方法中,采用(树形结构)表示数据结构和程序结构7、面向数据结构的设计方法主要包括(Jackson)和(Warnier)三.判断题1、Jackson方法的原理与Warnier方法的原理类似,也是从数据结构出发设计程序,但后者的逻辑要求更严格(Y)2、软件的详细设计也称模块设计,他要求设计人员为每一个程序模块确定所使用的算法、数据结构、接口细节和输入输出数据等(Y)3、伪代码可以被直接编译,它体现了设计的程序的框架或者代表了一个程序流程图。