软件工程选择题

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第一章初认软件工程1.下面的()说法是正确的。A.由于软件是产品,因此可以应用其他工程制品所用的技术进行生产B.购买大多数计算机系统所需的硬件比软件更昂贵C.大多数软件系统是不容易修改的,除非它们在设计时考虑了变D.一般来说,软件只有在其行为与开发者的目标一致的情况下才能成功2.造成大型软件开发困难的根本原因在于()。A.开发人员缺乏足够的开发经验B.对软件开发的资金投入不足C.项目开发进度不合理D.软件系统的复杂性3.软件会逐渐退化而不会磨损,其原因在于()。A.软件通常暴露在恶劣的环境下B.软件错误在经常使用之后会逐渐增加C.不断的变更使组件接口之间引起错误D.软件备件很难订购4.“软件工程”术语是在()被首次提出。A.FredBrooks的《没有银弹:软件工程中的根本和次要问题》B.1968年NATO会议C.IEEE的软件工程知识体系指南(SWEBOK)D.美国卡内基·梅隆大学的软件工程研究所5.Ariane5火箭发射失败的事例告诉我们()。A.系统环境的变化可能影响软件采集数据的精度、范围和对系统的控制B.软件后备系统可以通过复制生成C.软件重用必须重新进行系统论证和系统测试D.选项A和CE.选项A、B和C6.软件工程的基本目标是()。A.开发足够好的软件B.消除软件固有的复杂性C.努力发挥开发人员的创造性潜能D.更好地维护正在使用的软件产品7.软件工程方法是()。A.为了获得高质量软件而实施的一系列活动B.为开发软件提供技术上的解决方法C.为支持软件开发、维护、管理而研制的计算机程序系统D.为了理解问题和确定需求而采取的一些技术和方法8.下面的()是正确的。A.运行正确的软件就是高质量的软件。B.软件质量是在开发过程中逐渐构建起来的。C.软件产品质量越高越好,最理想的情况是达到“零缺陷”。D.软件质量是由产品的功能、性能、易用性等外在特性决定的。9.在Garvin多维度模型中,可靠性是指()。A.软件产品提供了让用户产生惊喜的特性B.软件实现了用户需要的功能和性能C.软件在规定时间和条件下无故障持续运行D.软件符合国家或行业的相关标准10.()是软件从一个硬件或软件环境转换到另一环境的容易程度。A.易用性B.可维护性C.可移植性D.性能第二章软件开发过程1.下面的()决策是在需求分析时做出的。A.自动售票机系统的开发时间预计是6个月B.自动售票机系统由用户界面子系统、价格计算子系统以及与中心计算机通信的网络子系统组成C.自动售票机系统已经达到交付的要求D.自动售票机系统将为使用者提供在线帮助2.下面的()决策是在系统设计时做出的。A.自动售票机系统的开发时间预计是6个月B.自动售票机系统由用户界面子系统、价格计算子系统以及与中心计算机通信的网络子系统组成C.自动售票机系统已经达到交付的要求D.自动售票机系统将为使用者提供在线帮助3.下面的()是软件构造活动的任务。A.构建软件组件B.设计用户界面C.实施组件的单元测试D.评估组件的质量E.选项A和CF.选项A、B、C和D4.瀑布模型是()。A.适用于需求被清晰定义的情况B.一种需要快速构造可运行程序的好方法C.一种不适用于商业产品的创新模型D.目前业界最流行的过程模型5.增量模型是()。A.适用于需求被清晰定义的情况B.一种需要快速构造核心产品的好方法C.一种不适用于商业产品的创新模型D.已不能用于现代环境的过时模型6.原型化模型是()。A.适用于客户需求被明确定义的情况B.适用于客户需求难以清楚定义的情况C.提供一个精确表述的形式化规格说明D.很难产生有意义产品的一种冒险模型7.开发一个支持3D打印的操作系统最适合采用()。A.瀑布模型B.原型化模型C.增量开发D.可转换模型8.开发一个铁路信号控制系统最适合采用()。A.瀑布模型B.原型化模型C.增量开发D.可转换模型9.下面的()不是敏捷开发方法的特点。A.软件开发应该遵循严格受控的过程和详细的项目规划B.客户应该和开发团队在一起密切地工作C.通过高度迭代和增量式的软件开发过程响应变化D.通过频繁地提供可以工作的软件来搜集人们对产品的反馈10.关于Scrum的每一次冲刺(Sprint),下面的()是正确的。A.Sprint是一个不超过4周的迭代,其长度一旦确定,将保持不变。B.Sprint的产出是一个可用的、潜在可发布的产品增量。C.Sprint在进行过程中,其开发目标、质量验收标准和团队组成不能发生变化。D.以上所有选项第三章编写高质量代码1.下面的()不是良好编码的原则。A.在开始编码之前建立单元测试B.建立一种有助于理解的直观布局C.确保注释与代码完全一致D.保持变量名简短以便代码紧凑2.下面的()是错误的。A.在程序设计中使用括号以改善表达式的清晰性B.不要修补不好的程序,要重新写C.在程序设计中应尽可能对程序代码进行优化D.不要在注释中重复描述代码3.为了保证软件的质量,使其具有较好的可维护性,关键在于()。A.选择合适的程序设计语言B.选择好的程序设计风格C.具有好的数据结构D.选择好的运行环境4.下面的()是对提高程序编码效率没有影响的。A.变量名的使用B.选择良好的设计方法C.选择良好的算法D.选择良好的数据结构5.下面的()不是一种好的做法。A.好的注释应解释为什么,而不是怎么样。B.好的命名应一目了然,不需要读者去猜,甚至不需要注释。C.如果项目中原有代码不符合新的规范,应允许其存在,同时在新的代码中要延续原有的风格。D.如果项目中原有代码不符合新的规范,应允许其存在,但不应在新的代码中延续旧的风格。6.下面的()不是模块化设计的目的。A.降低程序设计的复杂性B.清楚地描述系统的功能和性能C.易于维护和功能扩展D.提高模块的可靠性和复用性7.下面的()说法是错误的。A.代码审查用于检查源代码是否达到模块设计的要求B.代码在审查之前必须要成功地编译通过C.代码审查比运行程序进行测试的效率低D.代码审查可以发现不符合团队代码规范的地方8.关于代码性能优化,下面()是错误的。A.任何优化都不能破坏代码的正确性B.应以提高程序的全局效率为主,局部效率为辅C.应先通过测试找出限制效率的真正瓶颈D.要优先改进耗时最多的部分9.下面的Python语句中,()是没有错误且写得最规范的。Aimportos,sys,random,mathBn+=1;m+=n;print(m)Cclass=Class()Deturn[i**2foriinrange(n)]10.下面的()语句风格是最不利于维护的。Areturns['name']ifs['age']=18elses['nickname']ifs['age']14else'anonymous'Bmain(sys.argv[1:])Cfrommy_moduleimport(Class1,Class2,Class3,Class4)Da,b=b,a第四章单元测试1.单元测试内容不包括()。A.出错处理B.全局数据结构C.独立路径D.模块接口2.下面的()是错误的。A.静态测试是不运行被测程序,仅通过检查和阅读等手段来发现程序中的错误B.动态测试是实际运行被测程序,通过检查运行的结果来发现程序中的错误C.动态测试可能是黑盒测试,也可能是白盒测试D.白盒测试是静态测试,黑盒测试是动态测试3.关于等价类划分,下面的()说法是正确的。A.等价类划分是将输入域划分成尽可能少的若干子域B.同一输入域的等价类划分是唯一的C.用同一等价类中的任意输入对软件进行测试,软件都输出相同的结果D.对于相同的等价类划分,不同测试人员选取的测试用例集是一样的4.白盒测试是根据程序的()来设计测试用例。A.功能B.性能C.内部逻辑D.内部数据5.关于测试覆盖率,下面的()说法是错误的。A.测试覆盖率是度量代码质量的一种手段B.测试覆盖率是度量测试完整性的一种手段C.测试覆盖率意味着有多少代码经过测试D.不要盲目地追求100%测试覆盖率6.在单元测试中,()是用来代替被测模块的子模块的。A.驱动模块B.桩模块C.通讯模块D.代理模块7.在下面列举的测试覆盖中,()是最强的逻辑覆盖准则。A.语句覆盖B.条件覆盖C.判定覆盖D.条件组合覆盖8.一个判定中的复合条件表达式为(A2)or(B≤1),为了达到100%条件覆盖率,至少需要设计()测试用例。A.1B.2C.3D.49.条件覆盖要求()。A.每个判定中每个条件的所有取值至少满足一次B.每个判定至少取得一次“真”值和一次“假”值C.每个判定中每个条件的所有可能取值组合至少满足一次D.每个可执行语句至少执行一次10.()要求每个判定中所有条件的可能取值至少执行一次,而且每个判定的可能结果也至少执行一次。A.判定覆盖B.条件覆盖C.判定条件覆盖D.条件组合覆盖第五章团队开发管理1.在攻克技术难题时,最佳的开发团队组织模型是()。A.民主式结构B.主程序员式结构C.矩阵式结构D.以上所有选项都不是2.下面的()很有可能会促进高效项目团队的建设。A.团队成员超过20人B.团队成员部分时间参与项目C.团队成员向多个经理汇报D.团队成员被指派到项目中E.以上选项都不是3.下面的()沟通方式最利于协助解决复杂的问题。A.口头B.书面C.电子邮件D.即时通讯工具4.软件开发团队的每一个成员都应该参与计划活动,以便()。A.降低计划的粒度B.深入地分析需求C.所有成员同意该计划D.开始设计5.某大型化工产品公司计划开发一个新的计算机应用,用以跟踪原材料的使用情况。这个应用由公司内部组成的开发团队进行开发,已有多年开发类似应用的经验。假设初始估计的程序规模是32000行源代码,使用基本COCOMO模型进行估算,开发工作量大约是()人月。A.32B.91C.230D.1466.敏捷开发方法通过()管理不可预测性。A.非常仔细地收集和定义需求B.制定详细的开发计划C.软件增量必须在较短周期内发布D.软件过程必须逐渐适应变化E.选项A和BF.选项C和D7.关于Sprint,下面的()是错误的。A.一个Sprint通常是一个1-4周的迭代B.Sprint长度在开发过程中是可以调整的C.需求在一个Sprint中是不允许变化的D.sprint的产出是“完成”的、可用的、潜在可发布的产品增量8.在每日站立会议上,下面()不是每个团队成员需要回答的主要问题。A.从上次Scrum站立会议后你做了什么?B.你遇到哪些障碍或困难?C.你所遇到问题的原因是什么?D.你打算到下次Scrum站立会议完成什么?9.下面的()不属于产品负责人(ProductOwner)的职责范围。A.组织每日站立会议B.定义产品需求C.确定需求优先级D.验收迭代结果E.负责产品的投资回报10.软件配置管理的目的是()。A.降低开发成本B.控制软件修改C.减少混乱D.提高软件开发效率E.提高正确率第六章需求获取与文档化1.下列哪项需求描述属于业务需求描述?A.我们的任务是无缝集成有竞争力的软件信息服务来解决商业问题B.我们的目标是让客户将我们的品牌和高质量联系在一起C.我们公司的主营业务是销售飞机票D.公司网站上销售的产品必须满足所有食品药品监管需求2.下面哪项是百货店收银系统的非功能性需求?A.提供新鲜的蔬菜和水果B.买10个或10个以下商品的客户可以走特殊通道C.设有存包处D.为雇员发工资3.以下哪种方法最适用于身处多个不同地点的人在各自方便的时间参与并围绕同一个主题表达自己的观点?A.问卷调查B.面谈C.群体诱导D.文档分析4.在一个列车控制软件的需求文档中,我们发现了以下两条需求描述:“列车车门在两个停靠站之间要保持关闭”;“列车发生紧急停车时,要打开车门”。这里出现的需求问题是什么?A.无法测试的需求B.不完整的需求C.含糊的需求D.矛盾与不一致的需求5.获取软件系统需求不包括以下的哪个来源?A.系统相关领域的法律法规B.系统的质量控制团队C.系统的业务流程描述D.其他类似系统产品6.软件需求工程师的职责不包括以下的哪一项?A.撰写需求规格说明书B.与用户持续沟通,了解用户对产品的期望C.控

1 / 15
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功