26-1:《软件质量保障》第一次随堂测试【共 50 分】

来源文件:26-1.pdf

一、填空题(43 分)

  1. 软件质量的定义是:软件与____的需求和____的需求相一致的程度。

    答案:明确定义、隐含定义

  2. 软件质量模型是软件质量评估的依据,所以又称软件质量评估模型,在 ISO/IEC 25010 质量模型中包含的 8 个主要特性是:

    答案:功能性、可靠性、易用性、可维护性、性能效率、安全性、可移植性、兼容性

  3. 软件全生命周期质量保障包含两种类型:

    答案:单生命周期软件质量保障、多生命周期软件质量保障

  4. 通常情况下,软件质量包含内部质量和外部质量两种,内部质量一般是指____的质量,外部质量一般是指____的质量。

    答案:工作产品的质量、最终软件产品的质量

  5. 典型的软件评审方法包括:____。

    答案:技术评审、管理评审、同行评审、走查、结构化走查、审查、代码审查、代码审计、代码阅读

  6. 在程序分析中,____和____是两种最根本的程序分析技术,它们是任何其它程序分析技术的前提和基础。

    答案:控制流分析、数据流分析

  7. 软件度量是对____、____、____进行数据定义、数据收集和数据分析的持续性量化过程。

    答案:软件项目、软件开发过程、软件产品

  8. 软件产品度量一般包括软件产品结构度量和软件产品质量度量两种类型,其中软件产品结构度量主要包含____、、____等。

    答案:扇入度和扇出度度量、耦合度度量、内聚度度量、复杂度度量

  9. 耦合度是指程序中模块及模块之间的信息或参数依赖的程度,常见的耦合包含:、____和无耦合。

    答案:内容耦合、共享耦合/公共耦合、外部耦合、控制耦合、特征耦合/标记耦合、数据耦合、消息耦合

  10. 圈复杂度是衡量模块代码复杂程度的典型方法之一,通常有如下三种等价的计算方法(写出计算公式):

    (1)____
    (2)____
    (3)____

    备注:V(G) 表示圈复杂度,E 表示 CFG 中边的条数、N 表示 CFG 中节点的个数,J 表示 CFG 中判断节点的个数,R 表示 CFG 中区域的个数。

    答案:V(G)=E-N=2、V(G)=J+1、V(G)=R

    说明:原卷答案处写作 V(G)=E-N=2,按原文照录。

二、判断题(7 分)

  1. 在软件全生命周期中,软件缺陷越晚发现,修复缺陷所消耗的代价越小。

    答案:×

  2. 在程序分析中,静态分析和动态分析的主要区别是:静态分析主要利用程序的结构等静态信息进行分析,动态分析需要利用程序运行过程的信息进行分析。

    答案:√

  3. 在软件运行阶段,技术评审是最好的缺陷检测方法之一。

    答案:×

  4. 软件评审的核心目标之一就是确保技术方案与需求对齐,避免偏离目标。

    答案:√

  5. 数据流分析的一项核心任务是追踪变量值的传播。

    答案:√

  6. 程序切片是一种程序分析技术,可以辅助软件错误定位任务。

    答案:√

  7. 路径剖析是收集程序执行信息的重要手段。与程序追踪相比,其缺少对数据流信息的记录,但是耗费低廉。

    答案:√