2012年北京交通大学901软件工程考研真题答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2012年901软件工程参考答案
一.hao单项选择题
C A C
D C B A D C C
C D A D C B C D B A
二.正误判断(W表示错误,T表示正确)
W T T T W W W W T W
三.简答题
1. 软件工程是指导计算机软件开发和维护的一门工程学科,该学科的目的是生产出能
按期交付的、在预算范围内的、满足用户需求的、质量合格的软件产品。
软件工程的出现是为了解决软件危机。
为了消除软件危机既要有技术措施(方法和工具),又要有必要的组织管理措施。软件工程正是从技术和管理两方面研究如何更好地开发和维护软件的一门新兴的工程学科。2. 螺旋模型的基本思想是,使用原型及其他方法尽量降低风险。理解这种模型的一个简便方法,是把它看作在每个阶段之前都增加了风险分析过程的快速原型模型。螺旋模型所描述的软件过程主要适用于内部开发的大型软件项目。
螺旋模型主要有下述优点:
有利于已有软件的重用;
有助于把软件质量作为软件开发的一个重要目标;
减少了过多测试或测试不足所带来的风险;
软件维护与软件开发没有本质区别。
使用螺旋模型开发软件,要求软件开发人员具有丰富的风险评估知识和经验。
3. 在面向对象的程序中,把数据和实现操作的代码集中起来放在对象内部。一个对象好像是一个黑盒子,表示对象状态的数据和实现各个操作代码与局部数据,都被封装在黑盒子里面,从外面是看不见的,更不能从外面直接访问或修改这些数据及代码。
使用一个对象的时候,只需要知道它向外界提供的接口形式,而无需知道它的数据结构细节和实现操作的算法。
封装也就是信息隐藏,通过封装对外界隐藏了对象的实现细节。
4. 源程序代码的逻辑简明清晰、易读易懂,是好程序的一个重要标准。为了写出好程
序,应该遵循下述规则:
(1)程序内部应该有很好的文档。所谓程序内部的文档,包括恰当的标识符、适当的注解和程序的视觉组织等。
(2)数据说明应该易于理解便于查阅。
(3)语句构造应该尽可能简单直观。
(4)输入输出风格遵守人机界面设计准则。
(5)效率满足用户需求即可。
5. 图中所示是一个测试V模型。
单元测试所检测代码的开发是否符合详细设计的要求。集成测试所检测此前测试过的各组成部分是否能完好地结合到一起。系统测试所检测已集成在一起的产品是否符合系统规格说明书的要求。而验收测试则检测产品是否符合最终用户的需求。
V模型的缺陷是:仅仅把测试过程作为在需求分析、系统设计及编码之后的一个阶段忽视了测试对需求分析,系统设计的验证,一直到后期的验收测试才被发现。
6.软件维护就是在软件已经交付用户使用之后,为了改正软件中的错误或使软件满足新的需求而修改软件的过程。更具体地说,软件维护包括下述4项活动。
(1)改正性维护
诊断和改正用户使用软件时所发现的软件错误的过程。
(2)适应性维护
为了使软件和变化了的环境适当地配合而进行的修改软件的活动。
(3)完善性维护
用户在使用软件的过程中,往往提出增加新功能或改变某些已有功能的要求,还可能要求进一步提高程序的性能。为了满足这类要求而修改软件的活动,称为完善性维护。
(4)预防性维护
为了提高未来的可维护性或可靠性,而主动地修改软件。目前,完善性维护占全部维护活动的一多半,预防性维护占的比例很小。
四.应用题
1.
顶层数据流图
0层数据流图
1层数据流图
2.
3.
4. A = 2,B = 0, X = 1
A = 1,
B = 0,X = 1
5. 1)鼓励员工争取时间是可行的,因为有了一定激励措施后,员工积极性提高,会使得工作效率也有一定程度上的提升。
2)重新规划是可行的,因为重新规划剩余时间可以使得时间的利用率更充分。
3)采用新方法不可行,因为采用新方法时,员工还需要时间去熟悉新的方法和技术,会导致开发时间后延。
4)省去编码之外的其他工作不可行,因为软件开发不仅仅只是编码,还有一系列的设计和测试任务,如果仅仅只是编码,到最后验收的时候,很可能会出现这样那样的问题,导致
工期拖后。
5)软件开发不是机械的劳动,加班加点的策略是不可行的,需要保证每天高效的工作就可以了
6)不能再招聘新的开发人员,新的开发人员不熟悉系统和业务流程,招进来会影响整个团队的开发效率。
7)可行,购买已有的模块,会导致需要开发的工作量大大减少。
8)可行,在进度赶不上的情况下适当的延长工期以保证质量是可行的。
开放性试题没有标准答案,按照自己的理解回答,只要言之有理即可。