软件工程案例教程李军国主编复习题答案

上传人:l**** 文档编号:133287712 上传时间:2020-05-25 格式:DOCX 页数:41 大小:168KB
返回 下载 相关 举报
软件工程案例教程李军国主编复习题答案_第1页
第1页 / 共41页
软件工程案例教程李军国主编复习题答案_第2页
第2页 / 共41页
软件工程案例教程李军国主编复习题答案_第3页
第3页 / 共41页
软件工程案例教程李军国主编复习题答案_第4页
第4页 / 共41页
软件工程案例教程李军国主编复习题答案_第5页
第5页 / 共41页
点击查看更多>>
资源描述

《软件工程案例教程李军国主编复习题答案》由会员分享,可在线阅读,更多相关《软件工程案例教程李军国主编复习题答案(41页珍藏版)》请在金锄头文库上搜索。

1、第1章习题答案一、判断题题号12345678910111213答案YYYYNYYNNNNYY二、填空题题号ABCD1方法工具过程2程序数据文档3程序开发环境需求分析概要设计详细设计4汇编语言高级语言5汇编语言高级语言6结构式模块化7需求定义设计使用和维护8系统界面原型运行用户界面原型同意什么和不同意什么自外向9需求分析概要设计详细设计三、简答题1. 软件的特点: 软件具有抽象性。 软件与硬件的生产方式不同。 软件与硬件的维护方式不同。 软件具有复杂的逻辑性。 软件的成本较高。 软件的使用和社会因素有关。2. 软件危机产生的原因:用户需求不明确。缺乏正确的理论指导。软件开发规模越来越大。软件开发

2、复杂度越来越高。3. 软件危机的主要表现:软件开发进度难以预测。软件开发成本难以控制。用户对产品功能难以满足。软件产品质量无法保证。软件产品难以维护。软件缺少适当的文档资料。4. 软件工程学的基本原则有哪些: 抽象。 信息隐蔽。 模块化。 局部化。 确定性。 一致性。 完备性。 可验证性。5 什么是软件的生命周期?答案:软件与任何一个事物一样,有它的孕育、诞生、成长、成熟、衰亡的生存过程。这就是软件的生存周期。6 软件工程过程有哪几个基本过程活动?试说明之。答案:软件工程过程的基本过程活动有4步: 软件规格说明(需求定义)。规定软件的功能及其运行的限制; 软件设计与开发(设计开发)。产生满足规

3、格说明的软件; 软件确认(测试)。确认软件能够完成客户提出的要求; 软件演进(维护)。为满足客户的变更要求,软件必须在使用的过程中演进。四、综合题1. 详细说明软件生命周期分哪几个阶段?答案:软件生命周期主要分为6个阶段:软件项目计划、软件需求分析和定义、软件设计、程序编码、软件测试,以及运行维护。(1) 软件项目计划 :在这一步要确定软件工作围,进行软件风险分析,预计软件开发所需要的资源,建立成本与进度的估算。根据有关成本与进度的限制分析项目的可行性。(2) 软件需求分析和定义 :在这一步详细定义分配给软件的系统元素。可以用以下两种方式中的一种对需求进行分析和定义。一种是正式的信息域分析,可

4、用于建立信息流和信息结构的模型,然后逐渐扩充这些模型成为软件的规格说明。另一种是软件原型化方法,即建立软件原型,并由用户进行评价,从而确定软件需求。(3) 软件设计 :软件的设计过程分两步走。第一步进行概要设计,以结构设计和数据设计开始,建立程序的模块结构,定义接口并建立数据结构。此外,要使用一些设计准则来判断软件的质量。第二步做详细设计,考虑设计每一个模块部件的过程描述。经过评审后,把每一个加细的过程性描述加到设计规格说明中去。(4) 程序编码 :在设计完成之后,用一种适当的程序设计语言或CASE工具生成源程序。应当就风格及清晰性对代码进行评审,而且反过来应能直接追溯到详细设计描述。(5)

5、软件测试 :单元测试检查每一单独的模块部件的功能和性能。组装测试提供了构造软件模块结构的手段,同时测试其功能和接口。确认测试检查所有的需否都得到满足。在每一个测试步骤之后,要进行调试,以诊断和纠正软件的故障。(6) 软件维护 :为改正错误,适应环境变化及功能增强而进行的一系列修改活动。与软件维护相关联的那些任务依赖于所要实施的维护的类型。2. 试论述瀑布模型软件开发方法的基本过程。答案:瀑布模型规定了各项软件工程活动,包括:制定软件项目计划,进行需求分析和定义,软件设计,程序编码,测试及运行维护。并且规定了它们自上而下,相互衔接的固定次序,如同瀑布流水,逐级下落。然而软件开发的实践表明,上述各

6、项活动之间并非完全是自上而下,呈线性图式。实际情况是,每项开发活动均应具有以下特征:(1) 从上一项活动接受本项活动的工作对象,做为输入;(2) 利用这一输入实施本项活动应完成的容;(3) 给出本项活动的工作成果,做为输出传给下一项活动;(4) 对本项活动实施的工作进行评审。若其工作得到确认,则继续进行下一项活动,否则返回前项,甚至更前项的活动进行返工。第2章习题答案一、判断题题号12345678910111213答案NYNNNYYYYYYNY二、选择题题号123456789答案CDACCCABD三、填空题题号ABCDE1多对一一对多2业务模型功能模型性能模型接口模型3访谈问卷调查情景分析构造

7、原型4加工数据的原点或终点数据流.数据存储文件5名称别名或编号分类描述何处使用四、简答题1 可行性研究主要做4个方面的研究: 经济可行性:进行成本效益分析。从经济角度判断系统开发是否“合算”。 技术可行性:进行技术风险评价。从开发者的技术实力、以往工作基础、问题的复杂性等出发,判断系统开发在时间、费用等限制条件下成功的可能性。 法律可行性:确定系统开发可能导致的任何侵权、妨碍和责任。 方案的选择:评价系统或产品开发的几个可能的候选方案。最后给出结论意见。2 需求获取难的原因是: 用户需求具有动态性(不稳定性)。 用户需求具有模糊性(不准确性)。 对需求达成一致的艰难性。 管理体制、机构设置处在

8、变革中。 软件书籍没有将需求分析讲清楚。3. 需求分析的原则: 解决逻辑问题:需求分析是对问题的识别和说明,要回答“做什么”,而不是“怎么做”。 以运行环境为基础:需求分析工作应以具体的运行环境为基础,实事。 用户参与的原则:需求分析工作是系统分析人员同用户不断交互的过程。 构造高质量的需求规格说明:需求规格说明是需求分析工作重要的完成标志。4. 需求分析的任务有: 画出目标系统的组织机构模型。 画出目标系统业务操作流程图。 画出目标系统的数据流图。 列出目标系统的功能点列表,即功能模型。 列出系统的性能点列表,即性能模型。 列出目标系统的接口列表,即接口模型。 确定目标系统的运行环境,即环境

9、模型。 目标系统的界面约定,即界面模型。 分析与评估开发工期、费用、进度、风险等。5 数据流图的作用:数据流图可以用来抽象地表示系统或软件。它从信息传递和加工的角度,以图形的方式刻画数据流从输入到输出的移动变换过程,同时可以按自顶向下、逐步分解的方法表示容不断增加的数据流和功能细节。因此,数据流图既提供了功能建模的机制,也提供了信息流建模的机制,从而可以建立起系统或软件的功能模型。6 数据词典的作用:分析模型中包含了对数据对象、功能和控制的表示。在每一种表示中,数据对象和控制项都扮演一定的角色。为表示每个数据对象和控制项的特性,建立了数据词典。数据词典精确地、严格地定义了每一个与系统相关的数据

10、元素,并以字典式顺序将它们组织起来,使得用户和分析员对所有的输入、输出、存储成分和中间计算有共同的理解。第3章习题答案一、判断题题号12345678910111213141516答案NNNYYYYYYYNYYYYY二、选择题题号12345678答案BCDADABC三、填空题题号ABCD1SD方法Jackson方法OOD方法2耦合聚3一个数据型标准调用少4DDL DMLDCL5基本表代码表中间表临时表6原子性原始性演绎性稳定性7SA SP8图示语言表格9PDL 人10防卫性一致性冗余性11客户层应用层数据层12高聚低耦合作用围控制围四、简答题1. 模块的基本属性: 功能:描述该模块做什么? 逻辑

11、:描述模块部怎么做? 状态:模块使用时的环境和条件。 接口:指模块的输入与输出。2. 软件设计的具体任务: 制定规 结构设计 处理方式结构设计 数据结构及数据库设计 可靠性设计(质量设计) 编写软件设计文档 设计审查和复审 详细设计3. 模块化的特征: 抽象:用层次的方式构造和分析复杂系统。 逐步求精:帮助开发人员把精力集中在与当前开发阶段最相关的那些问题上。 信息隐蔽:如果一个模块包含的信息(过程和数据) 不允许外部的模块访问的话,其它模块不能对其访问。 局部化:把一些关系密切的软件元素物理地放得彼此靠近。4. 软件设计优化的准则: 划分模块时,尽量做到高聚、低耦合,保持模块相对独立性。模块

12、划分的准则:“将相关的各部分放在一起,无关的东西不要放在一起。” 模块的大小要适中。 模块的接口要简单、清晰、含义明确,便于理解,易于实现、易于测试和维护。 一个模块的作用围应在其控制围之,且判定所在的模块,应与受其影响的模块在层次上尽量靠近。 软件结构的深度、宽度、扇入、扇出应适当。 力求设计单入口和单出口的模块,避免“病态连接”,以防止容耦合。 设计功能可预测模块的划分,应防止功能过分局限。 5. 结构化设计的优点: 减少设计复杂性。将大化小,使复杂问题简单化。 结构独立。将程序划分成多个相对独立的模块。 模块功能单一化,可使软件设计获得最大的益处。 易于进行软件修改。 易于开发和维护。

13、加强了代码的可重用性。五、综合题1. 、2. 、第4章习题答案一、填空题题号ABCD1类对象2子类操作3封装性多态4对象模型动态模型功能模型5分析模型 设计模型测试模型6视图 图通用机制二、简答题1. 面向对象是:Coad和 Yourdon给出的定义:“面向对象(Object Oriented,OO)=对象(Object)+类(Classification)+继承(Inheritance)+通信(Communication with Messages)”。2. 面向对象基本特征是:面向对象技术的基本特征主要是抽象性、封装性、继承性和多态性。3. 软件开发过程指:软件开发过程就是将软件系统所涉及到的应用领域和业务围(现实世界)的问题空间和用于解决某些问题的软件系统的解空间之间的映射。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 工作范文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号