软件设计师——软件工程(二)

前言

本文主要是【软件工程】——软件设计师——软件工程的文章,如果有什么需要改进的地方还请大佬指出⛺️

作者简介:大家好,我是听风与他
☁️博客首页: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复杂度需要先绘制出图,代码转换图如下:

    软件设计师——软件工程(二)_第1张图片

然后采用公式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]]
  • 试题解析:这些模型中仅有螺旋模型考虑风险因素。

文章末尾

软件设计师——软件工程(二)_第2张图片

你可能感兴趣的:(软件设计师,软件工程)