目录
前言
本文专门用来记录本人在做软考中有关系统开发基础的错题,我始终认为教学相长是最快提高的方法,所以写下了这边文章,加深印象也为了帮助大家,最后希望大家都能软考上岸!!!
相关题目已按知识点分类,读者大大们可依目录观看:)
1.人机界面设计
题目:Theo Mandel在其关于界面设计所提出的三条“黄金准则”中,不包括(B)
- A.用户操纵控制
- B.界面美观整洁
- C.减轻用户的记忆负担
- D.保持界面一致
相关解析
人机交互“黄金三原则”
- 用户操纵控制
- 减轻用户的记忆负担
- 保持界面的一致性
2.架构设计
2.1管道过滤器体系
题目:以下关于管道过滤器体系结构的叙述中,不正确的是(D)
- A.软件构件具有良好的高内聚、低耦合的特点
- B.支持重用
- C.支持并行执行
- D.提高性能
相关解析
管道过滤器风格的特点:
- 使得软件构件具有良好的隐蔽性和高内聚、低耦合的特点
- 允许设计者将整个系统的输入/输出行为看成是多个过滤器的行为的简单合成
- 支持软件重用
- 支持并行执行
- 允许对一些如吞入量、死锁等属性的分析
2.2仓库风格
题目:软件体系结构的各种风格中,仓库分割包含一个数据库仓库和若干个其他构件。数据仓库位于该体系结构的中心,其他构件访问该仓库并对其中的数据进行增、删、改等操作。以下关于该风格的叙述中,不正确的是(D)。(D)不属于仓库风格
问题一:
- A.支持可更改性和可维护性
- B.具有可复用的知识源
- C.支持容错性和健壮性
- D.测试简单
问题二:
- A.数据库系统
- B.超文本系统
- C.黑板系统
- D.编译器
相关解析
仓库风格优点:
- 解决问题的多方法性
- 具有可更改性和可维护性
- 具有可重用的知识源
- 支持容错性和健壮性
仓库风格缺点:
- 测试困难
- 不能保证有好的求解方案
- 效率低
- 开发成本高
- 缺少对并行机的支持
仓库风格包括:数据库系统、黑板系统、超文本系统
3.软件测试相关概念
题目:软件调试的任务就是根据测试时所发生的错误,找出原因和具体的位置,进行改正
其常用的方法中,(C)是指从测试所暴露的问题出发,收集所有正确或不正确的数据,分析它们之间的关系,提出假想的错误原因,用这些数据来证明或反驳u,从而查出错误所在
- A.试探法
- B.回溯法
- C.归纳法
- D.演绎法
相关解析
常用调用方法:
- 试探法:调试人员分析错误的症状,猜测问题所在的位置一步一步地试探和分析出错误所在(效率低,适合错误比较简单的程序)
- 回溯法:调试人员从发现错误症状的位置开始,人工沿着程序的控制流往回跟踪代码,知道找出错误(适合小型项目)
- 对分查找法:用来缩小错误的范围
- 归纳法:从测试所暴露的问题出发,收集所有正确或不正确的数据,分析它们之间的关系,提出假想的错误原因,用这些数据来证明或反驳,从而查出错误所在
- 演绎法:根据测试结果,列出所有可能的错误原因;分析数据,排除不可能和矛盾的原因;选择可能性最大的完成假设
4.白盒测试用例
4.1
题目:如下所示代码(用缩进表示程序块),要实现语句覆盖,至少需要(1)个测试用例。采用McCabe度量法计算该代码对应的程序流程图的环路复杂性为(3)
input A,n
for i = 2 to n
key = A[i]
j = i-1
while j > 0 and A[j] > key
A[j+1] = A[j]
j = j-1
A[j+1] = key
相关解析
画出流程图
由图可知,只需要一组数据就可使两个判断先走Y,再走N,实现语句覆盖
计算环路复杂度:闭环数+1(即:2+1=3)
4.2
题目:用白盒测试技术对下面流程图进行测试,设计的测试用例图下表所示。至少采用测试用例(1)才可以实现语句覆盖;至少采用测试用例(1234)才可以实现路径覆盖
5.测试分类与阶段任务划分
题目:自底向上的集成测试策略的优点包括(C)
- A.主要的设计问题可以在测试早期处理
- B.不需要写驱动程序
- C.不需要写桩程序
- D.不需要进行回归测试
相关解析
自顶向下集成
优点:
- 较早地验证了主要控制和判断点
- 按深度优先可以首先实现和验证一个完整的软件功能
- 功能较早证实,带来自信
- 只需要一个驱动,减少驱动器开发的费用
- 支持故障分离
缺点:
- 柱的开发量大
- 底层验证被推迟
- 底层组件测试不充分
自底向上
优点:
- 对底层组件行为较早验证
- 工作最初可以并行集成,比自顶向下效率高
- 减少了桩的工作量
- 支持故障隔离
缺点:
- 驱动的开发量大
- 对高层的验证被推迟,设计上的错误不能被及时发现
6.软件维护类型
题目:某商城的销售系统所使用的信用卡公司信息系统的数据格式发生了更改,因此对该销售系统进行的修改属于(B)维护
- A.改正性
- B.适应性
- C.改善性
- D.预防性
相关解析
- 改正性维护:为了纠正软件中存在的错误而进行的维护活动。
- 适应性维护:为了使软件适应外部环境或数据环境的变化而进行的修改活动。
- 完善性维护:为了满足用户在使用过程中提出的新增功能或改进已有功能的需求而进行的维护活动。
- 预防性维护:扩充功能和改善性能而进行的修改
7.软件质量保证
题目:在ISO/IEC 9126软件质量模型中,软件质量特性(A)包括质量子特性安全性
- A.功能性
- B.可靠性
- C.效率
- D.可维护性
题目:在ISO/IEC 9126软件质量模型中,可靠性质量特性是指在规定的一段时间内和规定的条件下,软件维持在其性能水平有关的能力,其质量子特性不包括(A)
- A.安全性
- B.成熟性
- C.容错性
- D.易恢复性
相关解析
功能性 | 可靠性 | 易用性 | 效率 | 维护性 | 可移植性 |
---|---|---|---|---|---|
适合性、准确性、互操作性、安全保密性 | 成熟性、容错性、易恢复性 | 易理解性、易学性、易操作性、吸引性 | 时间特性、资源利用性 | 易分析性、稳定性、易测试性、易改变性 | 适应性、易安装性、共存性、易替换性 |
8.软件过程改进
题目:能力成熟度模型集成(CMMI)是若干过程模型的综合和改进。连续式模型和阶段式模型是CMMI提供的两种表示方法。连续式模型包括6个过程域能力等级,其中(A)的共性目标是过程将可标识的输入工作产品可标识的输出工作产品,以实现支持过程域的特定目标
- A.CL1(已执行的)
- B.CL2(已管理的)
- C.CL3(已定义的)
- D.CL4(定量管理的)
相关解析
- CL0(未完成的):未执行
- CL1(已执行的):可标识的输入工作产品转换成可标识的输出工作产品
- CL2(已管理的):已管理的过程的自动化
- CL3(已定义的):已定义的过程的制度化
- CL4(定量管理的):可定量管理的过程的制度化
- CL5(优化的):量化(统计学)手段改变和优化过程域