📑前言
本文主要是【软件工程】——软件设计师——软件工程的文章,如果有什么需要改进的地方还请大佬指出⛺️
🎬作者简介:大家好,我是听风与他🥇
☁️博客首页:CSDN主页听风与他
🌄每日一句:狠狠沉淀,顶峰相见
目录
- 📑前言
- 6.逆向工程工具属于( )工具。
- 7.满足条件覆盖,则至少需要( )个测试用例
- 8.软件工程的基本要素包括方法、工具和( )。
- 9.在( )设计阶段选择适当的解决方案
- 10.则最适于采用( )开发过程模型。
- 📑文章末尾
6.逆向工程工具属于( )工具。
6.根据软件过程活动对软件工具进行分类,则逆向工程工具属于( )工具。
- (A) 软件开发
- (B) 软件维护
- © 软件管理
- (D) 软件支持
答案与解析
- 试题难度:一般
- 知识点:软件工程>软件维护相关概念及工具
- 试题答案:[[‘B’]]
- 试题解析:逆向工程是在软件维护时,由于缺少文档资料,而对软件的一种分析。
7.满足条件覆盖,则至少需要( )个测试用例
7.若用白盒测试方法测试以下代码,并满足条件覆盖,则至少需要( )个测试用例。采用McCabe度量法算出该程序的环路复杂性为( )。
Int find _max(int i,int j,int k){
int max;
if(i>j)then
if(i>k)then max =i;
else max=k;
else if(j>k)then max =j;
else max=k;
}
(A) 3
(B) 4
© 5
(D) 6
(A) 1
(B) 2
© 3
(D) 4
答案与解析
-
试题难度:一般
-
知识点:软件工程>白盒测试用例
-
试题答案:[[‘B’],[‘D’]]
-
试题解析:1.第一空要求条件覆盖,根据代码,我们可以发现,虽然有3个判断语句,但实际从第一层判断开始,只能分2条支路判断进行,不会经过第3次判断了,因此如果要满足条件覆盖,只需要分别满足2层条件判断,需要的用例个数是4。
如下用例(i,j,k):(1,0,-1)(1,0,2)(0,1,-1)(0,1,2)可以满足条件覆盖。
2.要计算McCabe复杂度需要先绘制出图,代码转换图如下:
然后采用公式V(G)=m-n+2计算环路复杂度,其中m是边的数量,n是结点的数量。
图中结点数n是9,边的数量是11,环路复杂度为11-9+2=4,第二空选择D选项。
8.软件工程的基本要素包括方法、工具和( )。
- (A) 软件系统
- (B) 硬件系统
- © 过程
- (D) 人员
答案与解析
-
试题难度:一般
-
知识点:软件工程>其它
-
试题答案:[[‘C’]]
-
试题解析:
本题考查软件工程的基本概念。
软件工程是一种层次化的技术,从底向上分别为质量、过程、方法和工具。任何工程方法必须以有组织的质量承诺为基础。软件工程的基础是过程,过程是将技术结合在一起的凝聚力,使得计算机软件能够被合理地和及时地开发,过程定义了一组关键过程区域,构成了软件项目管理控制的基础;方法提供了建造软件在技术上需要“如何做”, 它覆盖了一系列的任务。方法也依赖于一些基本原则,这些原则控制了每一个技术区域,而且包含建模活动和其他描述技术;工具对过程和方法提供了自动或半自动的支持,如:计算机辅助软件工程(CASE)。软件工程的基本要素包括方法、工具和过程。
9.在( )设计阶段选择适当的解决方案
9.在( )设计阶段选择适当的解决方案,将系统分解为若干个子系统,建立整个系统的体系结构。
- (A) 概要
- (B) 详细
- © 结构化
- (D) 面向对象
答案与解析
- 试题难度:一般
- 知识点:软件工程>概要设计与详细设计
- 试题答案:[[‘A’]]
- 试题解析:本题考查软件工程的基本概念。
软件设计的任务是基于需求分析的结果建立各种设计模型,给出问题的解决方案。从工程管理的角度,可以将软件设计分为两个阶段:概要设计阶段和详细设计阶段。结构化设计方法中,概要设计阶段进行软件体系结构的设计、数据设计和接口设计;详细设计阶段进行数据结构和算法的设计。面对对象设计方法中,概要设计阶段进行体系结构设计、初步的类设计/数据设计、结构设计;详细设计阶段进行构件设计。
结构化设计和面向对象设计是两种不通过的设计方法,结构化设计根据系统的数据流图进行设计,模块体现为函数、过程及子程序;面向对象设计基于面向对象的基本概念进行,模块体现为类、对象和构件等。
10.则最适于采用( )开发过程模型。
10.某公司计划开发一种产品,技术含量很高,与客户相关的风险也很多,则最适于采用( )开发过程模型。
- (A) 瀑布
- (B) 原型
- © 增量
- (D) 螺旋
答案与解析
- 试题难度:一般
- 知识点:软件工程>开发模型
- 试题答案:[[D]]
- 试题解析:这些模型中仅有螺旋模型考虑风险因素。