软工课后选择题
- 格式:docx
- 大小:22.60 KB
- 文档页数:6
软件工程导论(第六版)部分课后习题-答案软件工程导论(第六版)部分课后习题-答案一、选择题1. 答案:B解析:选择题解析2. 答案:A解析:选择题解析二、判断题1. 答案:对解析:判断题解析2. 答案:错解析:判断题解析三、填空题1. 答案:软件工程解析:填空题解析2. 答案:开发、维护解析:填空题解析四、简答题1. 答案:软件需求分析是软件工程的第一步,它主要是通过对用户需求的调查和分析,确定软件系统需要具备的功能和性能以及相关约束条件。
解析:简答题解析2. 答案:软件开发过程中的质量保证主要包括软件测试和代码评审两个方面。
软件测试是通过运行和验证软件系统的过程,以确定其是否满足预期的需求和标准。
代码评审则是对软件代码进行审查和评估,在开发过程中发现和修复潜在的问题和错误。
解析:简答题解析五、计算题1. 答案:20解析:计算题解析2. 答案:1000解析:计算题解析六、案例分析题1. 答案:软件项目管理是指对软件项目进行规划、组织、分配和控制的过程。
它包括项目范围管理、时间管理、成本管理、质量管理、风险管理等方面。
在一个项目中,软件项目经理负责整体的项目管理工作,包括资源的分配、进度的控制、风险的管理等。
解析:案例分析题解析2. 答案:敏捷开发是一种迭代、逐步增量的软件开发方法。
它强调快速、灵活地响应用户需求的变化,通过频繁的迭代和持续的反馈来逐步完善软件系统。
敏捷开发方法注重团队合作、交流和高效的沟通,通过直接面对面的沟通取代冗长的文档和繁琐的流程,提高软件开发的效率和质量。
解析:案例分析题解析总结:本文主要针对《软件工程导论(第六版)》部分课后习题提供了答案和解析。
其中包括选择题、判断题、填空题、简答题、计算题和案例分析题等多个题型。
通过解答这些习题,读者可以进一步加深对软件工程的理解和掌握。
希望本文对读者有所帮助,谢谢阅读。
软件工程选择题A. 1988B. 1968C. 1948D. 19282. 瀑布模型的关键不足在于( )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. 一个项目是否开发,从经济上来说是否可行,归根结底是取决于( )A. 成本估算B. 项目计划C. 工程管理D. 工程网络图10. 在面向对象的设计中,我们应遵循的设计准则除了模块化、抽象、低耦合、高内聚以外,还有( )A. 隐藏复杂性B. 信息隐蔽C. 经常类的复用D. 类的开发11. 面向对象的主要特征除对象惟一性、封装、继承外,还有( )A. 多态性B. 完整性C. 可移植性D. 兼容性12. 在考察系统的一些涉及时序和改变的状况时,要用动态模型来表示。
动态模型着重于系统的控制逻辑,它包括两个图:一个是事件追踪图,另一个是( )A. 数据流图B. 状态图C. 系统结构图D. 用例图13. 面说法正确的是( )A. 经过测试没有发现错误说明程序正确B. 测试的目标是为了证明程序没有错误C. 成功的测试是发现了迄今尚未发现的错误的测试D. 成功的测试是没有发现错误的测试14. ( )能够有效地检测输入条件的各种组合可能会引起的错误A. 等价类划分B. 边界值分析C. 错误推测D. 因果图15 火车是一种陆上交通工具。
软件工程选择题大全(修改) 软件工程选择题大全Chapter 1: 软件工程基础知识1.1 软件开发生命周期1.2 软件需求分析1.3 软件设计原则1.4 软件测试方法1.5 软件维护与演化1.6 软件风险管理Chapter 2: 软件工程项目管理2.1 软件项目组织与角色分工2.2 项目计划与进度管理2.3 项目资源管理2.4 项目风险管理2.5 项目质量管理2.6 项目沟通与协作Chapter 3: 软件开发方法和模型3.1 瀑布模型3.2 增量开发模型3.3 敏捷开发方法3.4 原型模型3.5 适应性软件开发方法Chapter 4: 软件需求工程4.1 需求获取与分析方法4.2 需求建模技术4.3 需求验证与确认4.4 需求变更管理4.5 需求跟踪与追踪Chapter 5: 软件设计与架构5.1 软件设计原则与概念5.2 结构化设计方法5.3 面向对象设计方法5.4 架构设计与模式5.5 设计评审与质量保证Chapter 6: 软件测试与验证6.1 软件测试基本概念6.2 测试策略与方法6.3 静态测试与动态测试6.4 单元测试与集成测试6.5 系统测试与验收测试6.6 软件质量度量与评估Chapter 7: 软件维护与演化7.1 软件维护的类型与活动7.2 软件配置管理7.3 软件重构与改进7.4 软件版本管理与发布7.5 软件退役与替换附件:附件1: 软件工程案例分析附件2: 软件项目计划模板附件3: 软件需求规格说明书模板附件4: 软件系统架构图样例附件5: 软件测试用例模板法律名词及注释:1. 版权:指在法律上规定的保护著作权人对其所创作的作品享有的权利。
2. 商标:指用于区别企业的商品或服务的标识,享有独占性使用权的权利。
3. 专利:指对发明的新颖、创造性和实用性进行保护的一种专有权利。
4. 保密协议:指双方就信息保密的义务与责任等事项达成的协议。
第五章习题一、选择题1.对于软件产品来说,有4个方面影响着产品的质量,即( A )、( B )、( C )及成本、时间和进度等条件。
重视软件过程的质量是近年来质量管理理论和实践的新发展。
重视软件过程质量的控制,其部分原因可能是:相对于产品质量的控制来说,过程质量的控制是( D )、( E )、( F ),而产品质量的控制是( G )、( H )、( I )。
供选择的答案:A ~ C. ①开发时间②开发技术③过程质量④风险控制⑤质量控制⑥人员素质⑦项目管理⑧配置管理D ~ I. ①主动的②被动的③整体的④系统的⑤先期的⑥事后的⑦个别的⑧部分的2. 在软件维护的实施过程中,为了正确、有效地修改,需要经历以下3个步骤:( A )、( B )、( C )。
( A )是决定维护成败和质量好坏的关键。
( C )包括( D )确认、计算机确认和维护后的( E )。
供选择的答案:A ~ C. ①修改程序②建立目标程序③分析和理解程序④重新验证程序⑤验收程序D. ①动态②静态③人工④自动E. ①验证②验收③检验④存档2. A. ③, B. ①, C. ④, D. ②, E. ②在软件维护的实施过程中,为了正确、有效地修改,需要经历以下3个步骤:分析和理解程序、修改程序和重新验证程序。
经过分析,全面、准确、迅速地理解程序是决定维护成败和质量好坏的关键。
有如下几种方法:分析程序结构图、数据跟踪、控制跟踪及其它方法。
在将修改后的程序提交用户之前,需要通过静态确认、计算机确认和维护后的验收,保证修改后的程序的正确性。
3. 从供选择的答案中选出同下列各叙述关系最密切的字句。
A. 软件从一个计算机系统或环境转移到另一个计算系统或环境的容易程度。
B. 软件在需要它投入使用时能实现其指定的功能的概率。
C. 软件使不同的系统约束条件和用户需求得到满足的容易程度。
D. 在规定的条件下和规定的一段期间内,实现所指定的功能的概率。
E. 尽管有不合法的输入,软件仍能继续正常工作的能力。
单选一、单选1、以文档作为驱动,适合于软件需求很明确的软件项目的生存周期模型是(分数:2 分)A. 喷泉模型B. 增量模型C. 瀑布模型D. 螺旋模型标准答案是:C。
2、为每个模块完成的功能进行具体描述,把功能描述转变为精确的、结构化的过程描述的阶段是(分数:2 分)A. 概要设计B. 详细设计C. 编码D. 测试标准答案是:B。
3、从结构化的瀑布模型看,在软件生存周期的几个阶段中,对软件的影响最大是(分数:2 分)A. 需求分析阶段B. 概要设计阶段C. 详细设计阶段D. 测试和运行阶段标准答案是:A。
4、数据字典是软件需求分析阶段所采用的最重要工具之一,其最基本的功能是(分数:2 分)A. 数据定义B. 数据通讯C. 数据库设计D. 数据维护标准答案是:A。
5、模块内聚性最好的是(分数:2 分)A. 逻辑内聚B. 时间内聚C. 功能内聚D. 通信内聚标准答案是:A。
6、设计软件结构一般不确定(分数:2 分)A. 模块之间的接口B. 模块间的调用关系C. 模块的功能D. 模块内的局部数据标准答案是:D。
7、软件结构化设计中,好的软件结构应该力求做到(分数:2 分)A. 顶层扇出较少,中间扇出较高,底层模块低扇入B. 顶层扇出较高,中间扇出较少,底层模块高扇入C. 顶层扇入较少,中间扇出较高,底层模块高扇入D. 顶层扇入较少,中间扇入较高,底层模块低扇入标准答案是:C。
8、两个模块都使用同一张数据表,模块间的这种耦合称为(分数:2 分)A. 公共耦合B. 内容耦合C. 数据耦合D. 控制耦合标准答案是:A。
9、划分模块时,下列说法正确的是(分数:2 分)A. 作用范围应在其控制范围之内B. 控制范围应在其作用范围之内C. 作用范围与控制范围互不包含D. 作用范围与控制范围不受限制标准答案是:A。
10、重用率高的模块在软件结构图中的特征是(分数:2 分)A. 扇出数大B. 扇入数大C. 扇出数小D. 内聚性高标准答案是:B。
第一章一、判断题1.S WE B O KV3分两大类,共有15个知识域。
(Y)2.软件工程的提出起源于软件危机,其目的是最终解决软件的生产工程化。
(Y)3.软件工程学一般包括软件开发技术和软件工程管理两方面的内容,软件开发方法学和软件工程环境属于软件开发技术的内容,软件工程经济学属于软件工程管理。
(N)4.软件开发中的最大问题不是管理问题,而是技术问题。
(N)5.X P(e X t r e me P r o g r a mm i n g,极限编程)是由K e n t B e c k提出的一套针对业务需求和软件开发实践的规则,包括13个核心实践。
(Y)二、选择题1.下列所述不是敏捷生存期模型的是(C)。
A.S c r u mB.X PC.V模型D.O P E NU P2.软件工程的出现主要是由于(C)。
A.程序设计方法学的影响C.软件危机的出现B.其他工程学科的影响D.计算机的发展3.以下(C)不是软件危机的表现形式。
A.开发的软件不满足用户的需要B.开发的软件可维护性差C.开发的软件价格便宜D.开发的软件可靠性差4.以下不是S WE B O KV3的软件工程实践中的知识域的是(B)。
A.软件需求B.工程基础C.软件构造D.软件设计5.下列所述不是软件组成的是(D)。
A.程序B.数据C.界面D.文档6.下列对“计算机软件”描述正确的是(A)。
A.是计算机系统的组成部分B.不能作为商品参加交易C.是在计算机硬件设备生产过程中生产出来的D.之存在语计算机系统工作时7.软件工程方法的提出源于软件危机,其目的应该是最终解决软件的(D)问题。
A.软件危机B.质量保证C.开发效率D.生产工程化8.软件工程设计软件开发技术和项目管理等方面内容,下述内容中(D)不属于开发技术的范畴。
A.软件开发方法B.软件开发工具C.软件工程环境D.软件工程经济第二章一、判断题1.面向对象开发过程是多次重复和迭代的演化过程,(需要补充:面向对象开发方法是)在概念和表示方法是的一致性保证了各项开发活动之间的平滑过渡。
软件⼯程课后习题答案习题答案习题⼀答案⼀、选择题1. 软件的主要特性是(A B C)。
A) ⽆形 B) ⾼成本C) 包括程序和⽂档D) 可独⽴构成计算机系统2. 软件⼯程三要素是(C D)。
A) 技术、⽅法和⼯具B) ⽅法、⼯具和过程C) ⽅法、对象和类D) 过程、模型、⽅法3. 包含风险分析的软件⼯程模型是(A)。
A) 螺旋模型 B) 瀑布模型C) 增量模型 D) 喷泉模型4. 软件⼯程的主要⽬标是(C)。
A) 软件需求B) 软件设计C) 风险分析D) 软件实现5. 下列属于⾯向对象开发⽅法的是(A B C D)。
A) Booch B) UML C) Coad D) OMT6. 软件危机的主要表现是(B D)。
A) 软件成本太⾼B) 软件产品的质量低劣C) 软件开发⼈员明显不⾜D) 软件⽣产率低下7. 软件开发⽅法的主要⼯作模型有(A B C)A) 螺旋模型B) 循环模型C) 瀑布模型D) 专家模型8. 软件⼯程的⽬标有(A B C)。
A) 易于维护B) 低的开发成本C) ⾼性能D) 短的开发期9. 软件⼯程学的⽬的和意义是( )。
A) 应⽤科学的⽅法和⼯程化的规范管理来指导软件开发B) 克服软件危机C) 作好软件开发的培训⼯作D) 以较低的成本开发出⾼质量的软件⼆、判断题1. 软件就是程序,编写软件就是编写程序。
(×)2. 瀑布模型的最⼤优点是将软件开发的各个阶段划分得⼗分清晰。
(×)3. 结构化⽅法的⼯作模型是使⽤螺旋模型进⾏开发。
(×)4. 结构化⽅法和JSP⽅法都不适合于⼤型软件的开发。
(√)5. 原型化开发⽅法包括⽣成原型和实现原型两个步骤。
(×)6. ⾯向对象的开发⽅法包括⾯向对象的分析、⾯向对象的设计和⾯向对象的程序设计。
( √)7. 软件危机的主要表现是软件的需求量迅速增加,软件价格上升。
(×)8. 软件⼯具的作⽤是为了延长软件产品的寿命。
选择题:1.软件是一种( B )A.有形B.逻辑C.物质D.消耗2.软件工程学科出现的主要原因是( C )A.计算机的发展B.其它工程学科的影响C.软件危机的出现D.程序设计方法学的影响3.(A)是计算机程序及其说明的各种文档A.软件B.文档C.数据D.程序4.有关计算机程序功能、设计、编制、使用的文字图形资料称为( B )A.软件B.文档C.数据D.程序5.软件工程是一种(A)分阶段实现的软件程序开发方法。
A.自顶向下B.自底向上C.逐步求精D.面向数据流6.从结构化的瀑布模型看,在软件生命周期中的八个阶段中,下面的几个选项中( C )出错,对软件的影响最大。
A.详细设计阶段B.概要设计阶段C.需求分析阶段D.测试和运行阶段7.在结构性的瀑布模型中,( C )阶段定义的标准将成为软件测试中的系统测试中的系统测试的目标。
A.详细设计阶段B.概要设计阶段C.需求分析阶段D.可行性研究阶段8.UML是软件开发中的一个重要工具,它主要应用下列哪种软件开发方法( C )。
A.基于瀑布模型的结构化方法B.基于需求动态定义的原型化方法C.基于对象的面向对象的方法D.基于数据的数据流开发方法9.在软件生存周期中,用户主要是在(A)参与软件开发。
A.软件定义期B.软件开发期C.软件维护期D.整个软件生存周期过程中10.软件生存周期模型有多种,下列选项中,( C )不是软件生存周期模型。
A.螺旋模型B.增量模型C.功能模型D.瀑布模型11.对软件的过分分解,必然导致( B )A.模块的独立性差B.接口的复杂程度增加C.软件开发的总工作量增加D.以上都正确12.结构化分析方法是一种面向( C )需求分析方法A.对象B.数据字典C.数据流D.结构图13.结构化设计方法中把软件结构划分为( B )和( E )两大类,并提出了对应于以上两类结构的分析方法。
A.控制型B.变换型C.模拟型D.处理型E.事务型F.分析型G.通信型H.功能型14.瀑布模型中软件生存周期划分为八个阶段,这八个阶段又可分为三个时期,这三个时期分别为计划时期、开发时期和(A)A.运行时期B.可行性分析C.详细设计D.测试和纠错15.进行需求分析可使用多种工具,但( C )是不适用的。
第2章软件过程(习题与参考答案)[选择题]1. ()是软件生存期中的一系列相关软件工程活动的集合,它由软件规格说明、软件设计与开发、软件确认、软件改进等活动组成。
()A. 软件过程B. 软件工具C. 软件产品D. 软件工程2. 软件过程的基本活动是()。
()A. 分析、设计、实现、测试、演化B. 沟通、计划、建模、构造、部署C. 计划、分析、设计、实现、调试D. 沟通、风险管理、度量、产品化、评审3. ()软件需求规格说明书在软件开发过程中具有重要的作用,它是软件可行性分析的依据。
()A. 真B. 假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. 基于组件的开发模型()。
()A. 只适用于计算机硬件设计B. 不能支持可重用组件的开发C. 在面向对象技术获得支持的情况下应用得更好D. 增加了开发风险和成本10. 形式化方法模型是将数学方法用于()。
()A. 定义计算机系统的规格说明B. 开发无错误的计算机系统C. 验证计算机系统的正确性D. 以上所有选项11. 下面的()不是RUP模型的阶段。
1.需求规格说明书的作用不应该包括(D )。
[答案]A、软件设计的依据B、用户与开发人员对软件要做什么的共同理解C、软件验收的依据D、软件可行性研究的依据2.结构化设计方法在软件开发中用于(A )。
[答案]A、概要设计B、详细设计C、程序设计D、测试用例设计3.软件结构使用的图形工具,一般采用(C )图。
[答案]A、DFDB、PADC、SCD、ER4.JSP方法是一种面向(D )的设计方法。
[答案]A、对象B、数据流C、控制结构D、数据结构5.程序设计语言的技术特性不应包括(D )。
[答案]A、数据结构的描述性B、抽象类型的描述性C、数据库的易操作性D、软件的可移植性6.软件测试中,白盒法是通过分析程序的(B )来设计测试用例的。
[答案]A、应用范围B、内部逻辑C、功能D、输入数据7.软件维护费用高的主要原因是(C )。
[答案]A、人员少B、人员多C、生产率低D、生产率高8.瀑布模型本质上是一种( A)模型。
[答案]A、线性顺序B、顺序迭代C、线性迭代D、及早见产品9.软件质量必须在(D )加以保证。
[答案]A、开发之前B、开发之后C、可行性研究过程中D、设计与实现过程中10.确认测试主要涉及的文档是( A)。
[答案]A、需求规格说明书B、概要设计说明书C、详细设计说明书D、源程序1.需求分析中,开发人员要从用户那里解决的最重要的问题是( A )。
〔答案〕A、要让软件做什么B、要给该软件提供哪些信息C、要求软件工作效率怎样D、要让该软件具有何种结构2.DFD中的每个加工至少有( B )。
〔答案〕A、一个输入流或一个输出流B、一个输入流和一个输出流C、一个输入流D、一个输出流3.详细设计与概要设计衔接的图形工具是(B )。
〔答案〕A、DFD图B、SC图C、PAD图D、程序流程图4.下列几种类型中,耦合性最弱的是( D)。
〔答案〕A、内容型B、控制型C、公共型D、数据型5.确认测试中,作为测试依据的文档是( A )。
一、选择题1.结构化程序设计主要强调程序的( C )。
A.效率B.速度C.可读性D.大小2.开发软件需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称作( B)。
A.软件投机B.软件危机C.软件工程D.软件产生3.以下说法中错误的是( C )。
A.软件的质量保证工作不能等到编码阶段结束之后再进行B.在软件开发过程中需求是经常变化的C.软件产品的开发过程比一般产品的开发过程更容易评价和管理D.软件开发小组的组成人员的素质应该好,而人数则不宜过多二、选择题1.瀑布模型本质上是一种()。
A.线性顺序模型B.顺序迭代模型C.线性迭代模型D.及早见产品模型2.需求分析是由分析员了解用户的要求,认真细致地调研。
分析,最终应建立目标系统的逻辑模型并写出()。
A.模块说明书B.软件规格说明书C.项目开发计划D.合同文档三、选择题1.研究硬软件资源的有效性是进行()研究的一方面。
A.技术可行性B.经济可行性C.社会可行性D.操作可行性2.可行性研究要进行的需求分析和设计应是()。
A.详细的B.全面的C.简化、压缩的D.彻底的3.分层DFD是一种比较严格又易于理解的描述方式,它的顶层图描述了系统的()。
A.细节B.输入与输出C.软件的作者D.绘制的时间4.需求规格说明书的内容还应包括对()的描述。
A.主要功能B.算法的详细过程C.用户界面及运行环境D.软件的性能5.需求规格说明书的作用不应包括()。
A.软件设计的依据B.用户与开发人员对软件要做什么的共同理解C.软件验收的依据D.软件可行性研究的依据6.SA方法用DFD描述()A.系统的控制流程B.系统的数据结构C.系统的基本加工D.系统的功能7.一个局部数据存储只有当它作为()时,就把它画出来。
A.某些加工的数据接口B.某个加工的特定输入C.某个加工的特定输出D.某些加工的数据接口或某个加工的特定输入/输出8.对于分层的DFD,父图与子图的平衡指子图的输入、输出数据流同父图相应加工的输入、输出数据流()。
A.必须一致B.数目必须相等C.名字必须相同D.数目必须不等9.需求分析阶段不适用于描述加工逻辑的工具是()。
A.结构化语言B.判定表C.判定树D.流程图10.SA方法的分析步骤是首先调查了解当前系统的工作流程,然后()。
A.获得当前系统的物理模型,抽象出当前系统的逻辑模型,建立目标系统的逻辑模型B.获得当前系统的物理模型,抽象出目标系统的逻辑模型,建立目标系统的物理模型C.获得当前系统的物理模型,建立当前系统的物理模型,抽象出目标系统的逻辑模型D.获得当前系统的物理模型,建立当前系统的物理模型,建立目标系统的物理模型11.SA方法的基本思想是()A.自底向上逐步抽象B.自底向上逐步分解C.自顶向下逐步分解D.自顶向下逐步抽象12.初步用户手册在()阶段编写。
A.可行性研究B.需求分析C.软件概要设计D.软件详细设计四、选择题1.模块本身的内聚是模块独立性的重要度量因素之一,在七类内聚中,具有最强内聚的一类是()。
A.顺序性内聚B.过程性内聚C.逻辑性内聚D.功能性内聚2.某模块的功能是打印录取通知书或不录取通知书,调用模块可通过向此模块传递布尔标志信息决定本次调用哪种通知书的打印,这种模块之间的耦合称为()。
A.数据耦合B.混合耦合C.公共耦合D.控制耦合3.模块间的()称为模块的耦合,它是衡量模块间结构性能的重要指标。
A.调用关系B.信息联系方式C.层次关系D.界面4.在结构化方法中,N-S图应属于软件开发中的哪一阶段?()A.详细设计B.需求分析C.总体设计D.编程调试5.PAD(Problem Analysis Diagram)图是一种()工具。
A.系统描述B.详细设计C.测试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.集成测试时,能较早发现高层模块接口错误的测试方法为()。
A.自顶向下渐增式测试B.自底向上渐增式测试C.非渐增式测试D.系统测试10.确认测试以()文档作为测试的基础。
A.需求规格说明书B.设计说明书C.源程序D.开发计划11.项目的应用领域是选择编程语言关键的因素之一,不适合作为项目应用领域的类型是()。
A.系统软件B.数据处理与数据库应用C.实时处理D.UNIX操作系统12.为了提高易读性,源程序内部应加功能性注释,用于说明()。
A.模块总的功能B.程序段或语句的功能C.模块参数的用途D.数据的用途13.程序设计语言的心理特性在语言中表现不应包括()。
A.歧义性B.简洁性C.保密性D.传统性14.程序设计语言的工程特性其中之一表现在()。
A.软件的可重用性B.数据结构的描述性C.抽象类型的描述性D.数据库的易操作性15.程序设计语言的技术特性不应包括()。
A.数据结构的描述性B.抽象类型的描述性C.数据库的易操作性D.软件的可移植性六、选择题1.计算机由中央处理器、内存、软盘、显示器、键盘、鼠标等组成。
那么计算机类和这些类之间的关系是()。
A.泛化关系B.实现关系C.包含关系D.聚集关系2.下列UML图形中,()不属于UML的静态视图。
A.类图B.部署图C.构件图D.包图3.下列关于面向对象的说法中,错误的有()。
A.面向对象方法的一个重要思想,就是尽可能模拟人类习惯的思维方式来进行软件开发,使描述问题的问题域与实现解法的解空间在结构上尽可能一致B.“分而治之”的思想是面向对象的最基本的特征C.封装是一种信息隐蔽技术,封装可用于把数据(属性)和方法(函数)包围起来,以实现事物独立性D.面向对象方法与传统的软件工程方法相比,具有比较明显的优势,在各个层面对软件的开发都有着非常积极的影响七、选择题1.在使用用例图对系统进行分析建模时,需要对参与者进行建模。
参与者之间的关系主要有()。
A.关联关系B.依赖关系C.泛化关系D.以上都不是2.在使用用例图对系统进行分析建模时,需要对用例之间关系进行建模。
用例之间的关系主要有:()。
A.包含关系B.扩展关系C.泛化关系D.ABC都是3.从软件功能需求来看,分析类根据其功能和作用可以划分为()。
A.实体类B.边界类C.控制类D.ABC都是八、选择题1.作为系统的高层模块,子系统在设计时也应该遵循软件设计的基本策略,在划分子系统时,应该考虑的原则包括()。
A.模块的划分应便于总的系统设计阶段实现B.子系统应有良好的接口C.每个模块的功能简单明确,内容简明易懂,任务清楚明确,以便易于修改D.以上都是2.下列关于面向对象设计的说法中,正确的有()。
A.系统要完成的业务处理功能和用户界面要是紧密相关的,不能相互独立B.面向对象系统的数据存储只能选择面向对象的数据库管理系统,而无法使用关系型数据库C.系统分解与问题域的主题划分不同,这里的子系统既不是一个对象也不是一个功能,而是类、关联、操作、事件和约束的内聚集合D.在进行体系结构设计时选择B/S体系结构是最好的3.保证良好设计的类与方法的设计关系到软件的可扩充性、可靠性、可维护性和灵活性,下列关于设计类和方法中我们需要遵循的准则中错误的有()。
A.对类、方法、属性给出有意义的名字,以便见名知义B.始终在构造函数内初始化数据,可以定义不同重载版本的构造函数C.一致的排列构成每个类的元素。
例如首先定义常量,然后是构造函数,再然后是静态方法,接着是其他方法、实例变量,最后是静态变量D.所有的属性都需要单独的存取程序、更换程序方法4.在设计算法的过程中,算法的设计者必须做到()。
A.选择实现操作花费最小的算法B.给算法选择最合适的数据结构C.必要时定义新的内部类和操作D.以上都是九、选择题1.良好的面向对象程序设计风格是非常重要的,在进行面向对象实现时需要遵循的准则中错误的有()。
A.尽量提高代码的可重用性,可重用性主要体现在使用自己已经编制好的类B.尽量提高系统的可扩充性,便于系统升级和维护C.提高系统的稳健性,使系统具备处理用户操作错误的能力D.为了在效率与稳健性之间做出合理的折中,应该先测试,合理地确定为提高性能应该着重优化的关键部分2.下列关于软件测试的说法中错误的有()。
A.测试是通过手工或自动方法,使用或评价一个系统的过程,以论证是否满足所规定的需求,或明确期望的结果和实际结果的差异B.测试可以证明软件是正确的C.软件测试的概念和实施范围必须扩充,应该包括在整个开发各阶段的复查、评估和检测D.因为面向对象的封装、继承、多态等特征,面向对象系统的软件测试工作将更加复杂和困难3.在进行面向对象测试用例设计时,需要注意的问题有()。
A.对于父类设计了测试用例,子类就不需要进行测试了B.以父类设计的测试用例来测试子类就可以了C.父类的测试并没有为子类减少任何测试工作,还需要对子类中基本上所有的成员进行测试D.子类的测试用例不能参照父类的测试用例十、选择题1.对软件复杂性度量时,采用代码行度量法,下列说法不正确的是()。
A.每行代码的出错率与源程序之间不存在简单的线性关系B.对于少于100行语句的小程序,源代码行数与出错率是线性关系C.代码行度量法只是一种简单的、估计的很粗糙的方法D.随着程序的增大,出错率以线性方式增长2.软件项目计划范围内容是对软件项目的综合描述,定义其所要做的工作以及性能限制。
下列属于软件项目计划范围内容的有()。
A.硬件资源B.成本估算C.系统接口D.进度安排3.按照软件配置管理的原始指导思想,受控制的对象应是()。
A.软件元素B.软件配置项C.软件项目D.软件过程4.软件配置项是软件配置管理的对象,指的是软件工程过程中所产生的()。
A.接口B.软件环境C.信息项D.版本5.版本用来定义软件配置项的()。
A.演化阶段B.环境C.要求D.软件工程过程6.下列说法错误的是()。