- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2012年北京交通大学901软件工程考研真题答案
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模型。
单元测试所检测代码的开发是否符合详细设计的要求。集成测试所检测此前测试过的各组成部分是否能完好地结合到一起。系统测试所检测已集成在一起的产品是否符合系统规格说明书的要求。而验收测试则检测产品是否符合最终用户的需求。仅仅把测试过程作为在需求分析、系统设计及编码之后的一个阶段
忽视了测试对需求分析,系统设计的验证,一直到后期的验收测试才被发现。
(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)可行,在进度赶不上的情况下适当的延长工期以保证质量是可行的。
开放性试题没有标准答案,按照自己的理解回答,只要言之有理即可。
文档评论(0)