- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
《软件工程》练习题及答案
一、选择题
1.软件开发的结构化生命周期方法将软件生命周期划分成()。
A.计划阶段、开发阶段、运行阶段
B.计划阶段、编程阶段、测试阶段
C.总体设计、详细设计、编程调试
D.需求分析、功能定义、系统设计
答案:A
解析:结构化生命周期方法将软件生命周期划分为计划阶段、开发阶段和运行阶段。计划阶段包括问题定义、可行性研究;开发阶段包含需求分析、总体设计、详细设计、编码、测试;运行阶段主要是软件维护。选项B中编程阶段和测试阶段只是开发阶段的部分内容;选项C总体设计、详细设计、编程调试也只是开发阶段的部分环节;选项D需求分析属于开发阶段,功能定义不是标准的生命周期阶段划分内容。
2.需求分析阶段的任务是确定()。
A.软件开发方法
B.软件开发工具
C.软件开发费用
D.软件系统的功能
答案:D
解析:需求分析的主要任务是准确地定义未来系统的目标,确定为了满足用户的需求系统必须做什么,也就是确定软件系统的功能。软件开发方法是在设计阶段考虑如何进行软件设计的方式;软件开发工具是辅助开发的手段;软件开发费用是在项目计划阶段需要估算的内容。
3.数据字典是用来定义()中的各个成分的具体含义的。
A.流程图
B.功能结构图
C.系统结构图
D.数据流图
答案:D
解析:数据字典是对数据流图中出现的被命名的图形元素的确切解释,它和数据流图共同构成系统的逻辑模型。流程图主要用于描述算法的执行流程;功能结构图用于表示系统的功能层次关系;系统结构图主要描述软件系统的模块划分及其调用关系。
4.软件设计中划分模块的一个准则是()。
A.低内聚低耦合
B.低内聚高耦合
C.高内聚低耦合
D.高内聚高耦合
答案:C
解析:模块独立性是衡量软件设计好坏的重要标准,而衡量模块独立性的两个定性指标是内聚和耦合。内聚是指模块内部各元素之间联系的紧密程度,高内聚表示模块内部的元素联系紧密,功能单一;耦合是指模块之间的相互连接的紧密程度,低耦合表示模块之间的联系少,独立性强。所以软件设计中划分模块的准则是高内聚低耦合。
5.软件测试的目的是()。
A.发现软件中的错误
B.证明软件是正确的
C.提高软件的性能
D.改善软件的功能
答案:A
解析:软件测试的目的是尽可能多地发现软件中的错误。软件测试不能证明软件是正确的,因为穷举测试是不可能的,只能通过测试发现已知的错误。提高软件性能和改善软件功能是软件优化和维护阶段的任务,不是测试的主要目的。
6.为了提高测试的效率,应该()。
A.随机地选取测试数据
B.取一切可能的输入数据作为测试数据
C.在完成编码以后制定软件的测试计划
D.选择发现错误可能性大的数据作为测试数据
答案:D
解析:为了提高测试效率,应该选择发现错误可能性大的数据作为测试数据。随机选取测试数据可能无法有效发现软件中的错误;取一切可能的输入数据进行测试是不现实的,因为测试数据量可能是无限的;测试计划应该在需求分析或设计阶段就开始制定,而不是在完成编码以后。
7.软件维护的类型有()。
A.改正性维护、适应性维护、完善性维护和预防性维护
B.纠错性维护、适应性维护、改善性维护和预防性维护
C.纠错性维护、适应性维护、完善性维护和改正性维护
D.改正性维护、适应性维护、改善性维护和预防性维护
答案:A
解析:软件维护主要分为四种类型:改正性维护是为了改正软件在开发过程中遗留的错误;适应性维护是为了使软件适应外部环境的变化;完善性维护是为了增强软件的功能和性能;预防性维护是为了提高软件的可维护性和可靠性,为未来的修改和扩展做准备。
8.面向对象的主要特征除对象唯一性、封装、继承外,还有()。
A.多态性
B.完整性
C.可移植性
D.兼容性
答案:A
解析:面向对象的主要特征包括对象唯一性、封装性、继承性和多态性。对象唯一性指每个对象都有唯一的标识;封装是将数据和操作封装在一起,对外提供统一的接口;继承是子类可以继承父类的属性和方法;多态性是指同一个操作可以作用于不同的对象,产生不同的结果。完整性、可移植性和兼容性不是面向对象的主要特征。
9.在面向对象方法中,一个对象请求另一个对象为其服务的方式是通过发送()。
A.调用语句
B.命令
C.口令
D.消息
答案:D
解析:在面向对象方法中,对象之间通过发送消息来进行通信和请求服务。消息是一个对象向另一个对象发出的请求,包含了调用的方法名和必要的参数等信息。调用语句是在传统的过程式编程中使用的;命令和口令通常用于系统的交互控制,不是面向对象中对象之间请求服务的方式。
10.软件生命周期中所花费用最多的阶段是()。
A.详细设计
B.软件编码
文档评论(0)