软件工程 知识要点北外.docx
《软件工程 知识要点北外.docx》由会员分享,可在线阅读,更多相关《软件工程 知识要点北外.docx(84页珍藏版)》请在冰点文库上搜索。
软件工程知识要点北外
1.1.以下各种维护中,占用维护比例最小的是( )
∙A改正性维护
∙B适应性维护
∙C预防性维护
∙D完善性维护
答案与解析:
C
2.2.软件工程的三要素不包括( )
∙A规模
∙B方法
∙C工具
∙D过程
答案与解析:
A
3.3.以软件设计文档为基础,由软件工程师执行白盒测试法,针对接口和逻辑通路进行的测试属于( )阶段。
∙A单元测试
∙B集成测试
∙C系统测试
∙D确认测试
答案与解析:
A
4.4.代码复查,通过阅读代码来检查源代码是否符合编码标准及代码质量的活动,以下说法中,( )存在错误。
∙A代码复查应选择较轻松的环境,进行小组审查;
∙B进行代码复查,能为复查的测试人员提高技能、统一风格;
∙C代码审查容易发现和架构、时序相关等较难发现的问题;
∙D代码审查过程中,审查者应该带着问题去审查,让审查者有代入感,从而真正沉浸在代码中、提高效率;
答案与解析:
B
5.5.微软的创建者比尔.盖茨在几个月内设计并实现了最初的Basic编程平台,那么该软件属于( )。
∙A微型软件
∙B小型软件
∙C中型软件
∙D大型软件
答案与解析:
B
6.6.软件开发过程中,测试阶段的工作采用的方式是( )
∙A自底向上、逐步集成
∙B自底向上、逐步细化
∙C自顶向下、逐步细化
∙D自顶向下、逐步集成
答案与解析:
A
7.7.软件开发模型( )是一种将高度消耗人力物力的软件开发模型,需要的资源最多。
∙A快速原型模型
∙B螺旋模型
∙C喷泉模型
∙D瀑布模型
答案与解析:
C
8.8.设计一个合适的软件结构,对软件的实现和测试应用具有不可取代的指导性作用,以下构成形状中( )作为软件体系结构形状最佳。
∙A层次构型
∙B倒三角型
∙C金字塔型
∙D清真寺型
答案与解析:
D
9.9.以下关于公共耦合的说法中,不正确的是( )。
∙A公共耦合的模块在公共数据环境中,相互作用;
∙B随耦合模块的个数增加,程序公共耦合的复杂随之增加;
∙C公共耦合随耦合模块的个数减少而增大;
∙D公共耦合越大,模块独立性就更低;
答案与解析:
C
10.10.模块通过输入参数,确定该模块内执行几个逻辑上相似的功能其中哪一个,这种内聚属于( )。
∙A功能内聚
∙B逻辑内聚
∙C偶然内聚
∙D时间内聚
答案与解析:
B
11.11.结构化软件工程中,通过分析来建立( )。
∙A目标系统的逻辑模型
∙B目标系统的物理模型
∙C当前系统的逻辑模型
∙D当前系统的物理模型
答案与解析:
A
12.12.软件结构图模块框之间的直线连接,表示( )关系。
∙A控制
∙B调用
∙C数据流动
∙D隶属
答案与解析:
B
13.13.程序流程图连线代表( )
∙A调用关系
∙B数据流
∙C资金流
∙D控制流
答案与解析:
D
14.14.代码质量从根本上而言,( )阶段就被决定了质量高低大概。
∙A概要设计
∙B详细设计
∙C编码实现
∙D测试
答案与解析:
B
15.15.以下关于PAD的说法中,不正确的是( )。
∙APAD支持结构化程序设计原理
∙BPAD能清晰地反映程序层次结构
∙CPAD足够结构化以至于它支持自动生成程序代码
∙DPAD支持逐步求精的程序设计方法
答案与解析:
C
16.16.需求分析要开发人员使用形式化的建模方式,形成的输出文档中包括( )。
∙A《程序流程图》
∙B《系统流程图》
∙C《分层数据流图》
∙D《系统结构图》
答案与解析:
C
17.17.假设作为一家大型软件公司的系统分析员,你需要为北京稻香村食品集团开发一个软件,该产品将监控食品原料存货,跟踪从购买各种食品原材料开始,到生产,发货给各个连锁店,直至保存和卖给顾客的全过程。
为这个项目选择( )生命周期模型更合适?
∙A瀑布模型
∙B快速原型模型
∙C螺旋模型
∙D增量模型
答案与解析:
B
18.18.章奉贤是一所高校的教务处管理人员,他的工作之一就是为来访的同学打印带红色印章的合法标准成绩单,系统需要章老师输入学生类型来判断打印哪种红章,例如普通本科使用教育部规定的红章,培训生使用北外教务处红章,委托培养生使用委托单位和教务处两个红章……用来实现上述工作的软件模块属于( )。
∙A功能内聚
∙B通信内聚
∙C时间内聚
∙D逻辑内聚
答案与解析:
D
19.19.运行被测程序,设计若干个测试用例执行( )测试标准,被称为判定覆盖测试。
∙A使每条件的每种可能的自由组合,都至少要执行一次
∙B使每个判断取真和取假分支至少要执行一次
∙C使每条可执行路径至少要执行一次
∙D使每个可执行语句至少要执行一次
答案与解析:
B
20.20.一个模块调用另一个模块时,传递变量用于选择被调用模块内执行那一条路径的耦合属于( )
∙A数据耦合
∙B控制耦合
∙C标记耦合
∙D公共耦合
答案与解析:
B
21.21.单元测试和集成测试共同特质是,以下特征中,( )并非二者共同点。
∙A以系统设计文档为依据
∙B测试人员为开发小组
∙C适用白盒测试法和黑盒测试法
∙D测试内容包括接口测试、路径测试
答案与解析:
C
22.22.不利于模块独立性的软件设计原则是( )
∙A单入口单出口
∙B自顶而下逐步细化
∙C高内聚低耦合
∙D多入口多出口
答案与解析:
D
23.23.程序功能、性能、输入、输出、算法、流程逻辑、接口等内容,编写在软件工程( )文档之中。
∙A《需求规格说明书》
∙B《概要设计说明书》
∙C《详细设计说明书》
∙D《软件测试计划》
答案与解析:
C
24.24.白盒测试法的覆盖标准中,测试用例最详尽的是( )
∙A语句覆盖
∙B条件覆盖
∙C条件组合覆盖
∙D判定覆盖
答案与解析:
C
25.25.概要设计不能确定( )选项的设计方案。
∙A系统总体结构
∙B各模块功能概述
∙C模块间关系及其接口
∙D模块内部逻辑结构
答案与解析:
D
26.26.软件维护阶段的维护事件中,处于末尾的是( )
∙A错误严重程度的评价
∙B问题分析
∙C维护
∙D复审
答案与解析:
D
27.27.以下关于模块的控制范围的叙述中,正确的是( )。
∙A是指受该模块内一个判定影响的所有模块的集合
∙B是指模块本身以及其所有同级模块的集合
∙C是指模块本身以及其所有下属模块的集合
∙D是指模块本身以及其所有直接相关模块的集合
答案与解析:
C
28.28.在数据流程图中,既有名称,又存在方向的成分一定是( )
∙A信息流
∙B控制流
∙C数据流
∙D信号流
答案与解析:
C
29.29.软件的复杂性是( ),会引起人员通信困难、开发费用超支、开发时间超时等问题。
∙A不可降低的
∙B可消除的
∙C人为的
∙D固有的
答案与解析:
D
30.30.软件需求分析的主要任务是准确地定义出要开发的软件系统是( )的。
∙A做什么
∙B如何做
∙C对谁做
∙D怎么做
答案与解析:
A
31.31.软件研发所需的高成本和软件产品的低质量间,存在极尖锐的矛盾的现象被称为( )
∙A软件研发
∙B软件工程
∙C软件开发周期
∙D软件危机
答案与解析:
D
32.32.以下关于模块之间接口的设计中,( )是不可取的。
∙A接口传递信息应简单
∙B接口应该和模块功能一致
∙C降低模块接口的复杂性,以实现更低的耦合设计
∙D模块之间的接口传递信息结构越复杂,模块独立性越高
答案与解析:
D
33.33.软件测试和软件调试在研发中都不可或缺,以下分析中,不正确的是( )。
∙A测试是为发现错误;测试后才能针对漏洞展开调试,而调试的任务是修正错误,并复查软件的正确性;
∙B独立测试组展开测试工作;联合测试组展开调试工作;
∙C从已知条件开始测试,其结果是可预知的,但测试是否能通过则不可预见;调试结果同样是不可预见的。
∙D测试有计划、要设计的,是发现错误、改正错误后再重新测试的受控过程;调试要推理也要思维飞跃,它不受时间约束,整个软件开发过程都必须调试;
答案与解析:
B
34.34.在白盒法技术测试用例的设计标准中,( )覆盖最弱。
∙A语句
∙B判定
∙C条件组合
∙D路径
答案与解析:
A
35.35.软件测试方案的指定,开始于需求分析阶段,完成于( )阶段。
∙A需求分析
∙B软件设计
∙C软件实现
∙D软件测试
答案与解析:
B
36.36. 内聚和耦合在模块设计中很关键, 设计下层模块时应充分考虑以提高设计质量,以下选项中,( )可能获得较高的程序质量。
∙A信息内聚
∙B过程内聚
∙C功能内聚
∙D逻辑内聚
答案与解析:
C
37.37.以下特性中,能够形成软件工程中结构化程序设计的是( )选项。
∙A程序中包括顺序结构、选择结构和循环结构;
∙B程序运行效率最高;
∙C控制结构都遵守单入和单出原则,来保持控制流直线性;
∙D程序遵循高内聚、低耦合原则
答案与解析:
C
38.38.《模块设计规格说明》中不包括( )
∙A模块所用算法
∙B公共数据结构
∙C模块外部接口
∙D模块设计用例
答案与解析:
B
39.39.( )是软件生存期中的一系列相关软件工程活动的集合,它由软件规格说明、软件设计与开发、软件确认、软件改进等活动组成。
∙A软件过程
∙B软件工具
∙C质量保证
∙D软件工程
答案与解析:
A
40.40.( )是软件生存期中的一系列相关软件工程活动的集合,它由软件规格说明、软件设计与开发、软件确认、软件改进等活动组成。
∙A软件过程
∙B软件工具
∙C质量保证
∙D软件工程
答案与解析:
A
二、多项选择题(每题2分,共40分)
二、多项选择题(每题2分,共40分)
41.1.软件计划时期需要调研人员包括( )
∙A系统分析员
∙B软件开发技术支持人员
∙C软件用户
∙D软件使用部门的负责人
答案与解析:
A B C D
42.2.软件维护阶段的任务的执行可以分为三部分,包括( )。
∙A理解修改部分
∙B理解现有系统
∙C修改现有系统
∙D重新确认修改部分
答案与解析:
B C D
43.3.程序结构复杂程度,可以通过( )来计量。
∙A程序结构度量法
∙B计算程序路径法
∙C代码行度量法
∙DMcCabe环路复杂度计量法
答案与解析:
B C D
44.4.
∙A把与该循环变量无关的运算移到循环之外
∙B交换内、外循环,将循环次数大的循环放在嵌套的内层
∙C交换内、外循环,将循环次数小的循环放在嵌套的内层
∙D把与该循环变量无关的运算移到循环之内
答案与解析:
A B
45.5.黑盒测试方法很多,但不包括( )测试方法。
∙A等价分类
∙B边界值分析
∙C路径覆盖
∙D错误推测
答案与解析:
A B D
46.6.属于适应性维护的变化是( )。
∙A操作人员的更新和更换
∙B操作系统的更新换代
∙C多核处理器等硬件的淘汰和升
∙D数据库更新换代
答案与解析:
B C D
47.7.软件需要维护原因包括( )
∙A软件需要增加新的应用范围
∙B改正程序中的错误和缺陷
∙C用户要求升级软件抵御病毒或木马
∙D改进设计以适应新的软、硬件环境
答案与解析:
A B D
48.8.计算结果出现错误,该软件缺陷级别属于( )。
∙A致命缺陷
∙B严重缺陷
∙C建议性缺陷
∙D轻微缺陷
答案与解析:
A
49.9.详细设计模型能够保证( )
∙A逻辑上正确地实现每个模块功能
∙B处理逻辑的设计方案应尽可能简明易懂
∙C代码实现严格执行设计模型
∙D遵循结构化程序设计原则
答案与解析:
A B D
50.10.依据是系统设计文档和需求文档,通过测试小组针对接口测试、路径测试、功能测试、性能测试等方面,执行( )实现集成测试。
∙A白盒测试法
∙B黑盒测试法
∙C验收测试法
∙D图灵测试法
答案与解析:
A B
51.11.软件详细设计任务包括( )。
∙A模块算法设计
∙B框架设计
∙C用户界面设计
∙D数据库设计
答案与解析:
A B D
52.12.当沿着螺旋模型的过程流路径向外移时,( )描述正在开发或维护的软件发生的变化是正确的。
∙A第二个螺旋可能用于开发原型,随后将跳过风险评估直接提供软件的更完善的版本。
∙B经过计划区域的每一圈是为了调整项目计划,基于用户评估所得反馈,调整费用和进度。
∙C沿螺旋线自外向内每旋转一圈,便开发出一个更为完善的、新的软件版本。
∙D在使用螺旋模型开发软件的过程中,从核心开始,螺旋的第一圈可能产生软件的规格说明;如果风险评估通过,那么才会进入下一圈螺旋。
答案与解析:
B D
53.13.软件可维护性受到以下( )因素的制约。
∙A可理解性
∙B可测试性
∙C可修改性
∙D可移植性
答案与解析:
A B C D
54.14.数据流图能被计算机处理的元素是( )。
∙A数据源点
∙B数据处理
∙C数据文件
∙D数据终点
答案与解析:
B C
55.15.以下关于软件维护说法中,正确的是( )
∙A在软件开发中,增加人员的方法可以缩短软件开发时间;
∙B向一个已经延迟的项目追加开发人员,可能使软件完成时间推迟得更晚。
∙C软件设计时期的设计方案,对软件可维护性不会产生影响
∙D因为当开发人员以算术级数增长时,而人员之间的通信将以几何级数增长,往往"得不偿失"。
答案与解析:
B D
56.16.软件设计阶段包括( )。
∙A用户交互界面设计
∙B数据库设计
∙C软件高层框架设计
∙D模块详细设计
答案与解析:
C D
57.17.以下关于软件编码正确的是( )
∙A程序代码结构的分支增加,会导致环路复杂度随之增加;
∙B过深的嵌套结构会降低程序可读性,使程序变得更难以理解;
∙C因为对代码结构复杂性进行度量,需要研究的就只有程序流程,程序流程图框内细节其实是不被关心的;
∙D应该将程序的效率放在编码的首要考虑位置;编码可读性在其次,提高程序可读性、使程序结构更清晰的重要性,排在程序优化之后;
答案与解析:
A B C
58.18.程序结构形成程序流程图,经过退化形成退化图,下图所示的退化图所具备的McCabe环路复杂度为( )
∙A3
∙B2
∙C1
∙D4
答案与解析:
D
59.19.精化软件模块设计,以下说法正确的是( )。
∙A模块大小控制在100~500行左右;
∙B模块功能可预测,并完善化模块功能;
∙C消除重复功能,降低软件复杂度,生成公共调用模块,提高软件接口的复杂性;
∙D降低模块接口的复杂性,减少高扇出争取高扇入;
答案与解析:
A B D
60.20.在软件生产过程中,人工、时间等成本导致软件价格居高不下,但开放源代码软件却解决了这一问题,以下关于开放软件源代码产生的问题说法中,正确的是( )
∙A在盗版泛滥的时代,拥有源代码的公司如何得到回报,没有回报就没有进一步研发资金,软件的发展从何而来。
∙B开放源代码对促进软件和信息技术业的快速发展全无益处。
∙C开放软件源代码一定比不支持开放源代码好。
∙D开放软件源代码不一定好,开放源代码对一个软件系统的完善有很好的促进作用,因为这样可以集合很多人的智慧,但这种观点并不完全正确。
答案与解析:
A D
三、是非题(每题2分,共20分)
三、是非题(每题2分,共20分)
61.1.
白盒测试仅与程序的内部结构有关,完全可以不考虑程序的功能要求。
( )
∙A是
∙B否
答案与解析:
A
62.2.
面向对象的分析是面向计算机系统建立软件系统的对象模型。
( )
∙A是
∙B否
答案与解析:
B
63.3.
许多模块中重复使用没有任何联系的语句,为节省存储,抽出重复语句而组成新模块,则该模块属于偶然性内聚。
( )
∙A是
∙B否
答案与解析:
A
64.4.在软件开发中,若能推迟暴露其中错误,则为修复和改正漏洞花费代价会降低。
( )
∙A是
∙B否
答案与解析:
B
65.5.
下划线法选择逻辑断点初以下划线来连接前后字符,形成命名的方式是c出现后开始流行的,许多旧程序和UNIX环境中使用非常普遍。
( )
∙A是
∙B否
答案与解析:
A
66.6.
软件维护只要足够小心,就可以避免引入新错误。
( )
∙A是
∙B否
答案与解析:
B
67.7.
好的测试是用少量的测试用例运行程序,发现被测程序尽可能多的错误。
( )
∙A是
∙B否
答案与解析:
A
68.8.
程序调试活动从确定程序中可疑错误的确切性质和位置开始,来修改程序、排除错误的。
( )
∙A是
∙B否
答案与解析:
A
69.9.
软件调试从已知条件开始,受时间约束,结果可预知,调试是否能通过不可预见。
( )
∙A是
∙B否
答案与解析:
B
70.10.
边界值分析方法是取输入、输出等价类的边界值作为测试用例。
( )
∙A是
∙B否
答案与解析:
A
1.1.
代码检查通常以小组为单位阅读代码,使用一系列规程和错误检查技术的集合实现静态软件测试,下列选项中,( )不能作为代码检查的组织方式。
∙A审查会议
∙B白盒测试
∙C代码走查
∙D同行复审
答案与解析:
B
2.2.运行被测程序,设计若干个测试用例执行( )测试标准,被称为条件覆盖测试。
∙A使每条件的每种可能,都至少要执行一次
∙B使每个测试分支至少要执行一次
∙C使每条可执行路径至少要执行一次
∙D使每个可执行语句至少要执行一次
答案与解析:
A
3.3.北京外国语大学教务在线需要增加一系列网络办事平台,经过调研和专家咨询,最终雇佣1位高级程序员、3位程序员、1名测试员,来开发基于JavaScript的在线处理系统,开发周期为15个月,代码量将会达到数万行,该系统属于( )
∙A微型软件
∙B小型软件
∙C中型软件
∙D大型软件
答案与解析:
C
4.4.概要设计阶段涉及的逻辑设计工具是( )
∙ASC
∙BPDL
∙CDFD
∙DPAD
答案与解析:
A
5.5.软件调试的主要目的是为( )而执行程序。
∙A避免错误
∙B发现错误
∙C纠正错误
∙D证明正确
答案与解析:
C
6.6.调试工作的技术人员应该是( )。
∙A软件研发工程师
∙B软件测试工程师
∙C系统设计者
∙D维护人员
答案与解析:
A
7.7.( )软件开发模型开发出一部分界面、向用户展示一部分,可让用户及早看到部分软件交付使用的样式,及早发现问题、修正漏洞。
∙A螺旋模型
∙B增量模型
∙C面向对象模型
∙D快速原型模型
答案与解析:
D
8.8.软件静态测试包括非正式审核和证实审核两种方式,正式的审核通过会议组织形式完成;而非正式审核不包括( )方式。
∙A代码走读
∙B白盒测试
∙C程序互审
∙D代码走查
答案与解析:
B
9.9.人们将计算机程序功能、设计、编制、使用的文字或图形资料,称为( )。
∙A文件
∙B文档
∙C程序
∙D档案
答案与解析:
B
10.10.某模块扇入越大,其结果不包括以下( )选项。
∙A共享该模块的上级模块就越多
∙B重复次数越多,软件系统复用程度就越高
∙C该模块调用的下级模块越多,软件系统复用程度就越高
∙D改善系统结构的尺度更大
答案与解析:
C
11.11.软件早期漏洞筛查方式中,( )是效果最差的一个。
∙A审查会议
∙B桌面检查
∙C程序互审
∙D代码走查
答案与解析:
B
12.12.能结合喷泉模型的软件开发平台为( )
∙ACobol开发平台;
∙BPDL;
∙CVisual C+;
∙DPython平台
答案与解析:
C
13.13.以下关于可行性研究阶段说法中,不正确的是( )
∙A研究软硬件资源的有效性是进行操作可行性研究的一方面。
∙B可行性研究要进行的需求分析和设计应是简化、压缩的。
∙C可行性分析中,程序流程图用于描述当前运行系统。
∙D系统定义明确之后,应对系统研究包括经济可行性、技术可行性、法律可行性等可行性进行研究。
答案与解析:
C
14.14.需求分析的结果中最主要的逻辑设计结果不包括( )
∙ADFD图
∙B数据字典
∙CSC图
∙D《需求规格说明》
答案与解析:
C
15.15.问题分析图是种详细设计图形表示工具,以下说法中,正确的是( )。
∙APAD清晰表现程序结构,纵线是程序流程线,几条竖线对应几层嵌套结构;
∙BPAD二维网状结构,用于表示程序控制流;
∙CPAD图容易转换成高级程序语言源程序,避免人工编码、实现编程自动化;
∙DPAD图受到程序约束,在一个方框内表现程序结构;
答案与解析:
A
16.16.
∙A
∙
∙B
∙
∙C
∙
∙D
∙
答案与解析:
B
17.17.( )是指程序从一个计算机环境移植到另一个计算机环境的容易程度。
∙A鲁棒性
∙B可预见性
∙C可移植性
∙D可维护性
答案与解析:
C
18.18.模块内各部分之间没有联系,或即使有联系,也很松散,是内聚程序最低的模块内举行是,该模块属于( )内聚。
∙A逻辑内聚
∙B通信内聚
∙C功能内聚
∙D巧合内聚
答案与解析:
D
19.19.螺旋模型要用于描述( )的软件开发过程。
∙A线性过程
∙B循环反馈
∙C风险评估
∙D面向对象
答案与解析:
C
20.20. 把需要同时执行的动作组合在一起形成的模块内聚方式称为( )。
∙A偶然内聚
∙B时间内聚
∙C功能内聚
∙D通信内聚
答案与解析:
B
21.21.以下程序测试路径中,检测程序路径多少最详尽的是( )
∙A点覆盖
∙B判定覆盖
∙C边覆盖
∙D路径覆盖
答案与解析:
D
22.22.软件维护工作展开的时间是( )
∙A软件设计方案定稿之后
∙B软件编码完成后
∙C软件投入使用前
∙D软件投入使用之后
答案与解析:
D
23.23.设计一个合适的软件结构,对软件的实现和测试应用具有不可取代的指导性作用,以下构成形状中不适合作为软件模块调用的构成结构形状的是( )
∙A层次构型
∙B倒三角型
∙C清真寺型
∙D金字塔型
答案与解析:
C