系统集成项目管理工程师-配置管理、编码与测试
一、软件配置管理(掌握)
软件配置管理(SCM)是一种标识、组织和控制修改的技术,应用于整个软件工程过程。SCM活动的目标是标识变更、控制变更、确保变更正确,并向其他有关人员报告变更。核心内容包括版本控制和变更控制。
1. 版本控制
对软件开发过程中各种程序代码、配置文件及说明文档等文件变更的管理。最主要功能是追踪文件的变更,记录何时、何人、更改了什么内容。
2. 变更控制
目的不是控制变更的发生,而是对变更进行管理,确保变更有序进行。
软件配置管理活动包括:
软件配置管理计划
软件配置标识
软件配置控制
软件配置状态记录
软件配置审计
软件发布管理与交付
二、软件编码(掌握)
编码是用某种程序设计语言书写程序。程序质量主要取决于软件设计质量。
1. 程序设计语言
编码前需选择恰当的程序设计语言。
2. 程序设计风格
包括4个方面:源程序文档化、数据说明、语句结构、输入/输出方法。
3. 程序复杂性度量
定量度量程序复杂度,可用于估算软件故障数量及工作量,比较不同设计或算法的优劣。
4. 编码效率
类型 | 描述 |
|---|---|
程序效率 | 执行速度和占用内存空间 |
算法效率 | 执行速度和对存储容量的要求 |
存储效率 | 关键是程序的简单化 |
I/O效率 | 面向人(操作员)的输入/输出和面向设备的输入/输出 |
三、软件测试(掌握)
1. 测试方法
分为静态测试和动态测试。
静态测试:不在机器上运行,采用人工检测和计算机辅助静态分析。包括:
对文档的静态测试(检查单形式)
对代码的静态测试:桌前检查、代码走查、代码审查
动态测试:在计算机上实际运行程序。采用白盒测试和黑盒测试。
静态测试方法 | 描述 |
|---|---|
桌前检查 | 人工模拟程序执行,逐步检查源代码逻辑或语法错误 |
代码走查 | 开发人员向其他人阐述代码 |
代码审查 | 系统化审查源代码,常用同行评审方式 |
白盒测试(结构测试):将程序看作透明白盒,按内部逻辑设计测试用例。方法包括控制流测试、数据流测试、程序变异测试。最常用技术是逻辑覆盖,覆盖标准有:语句覆盖、判定覆盖、条件覆盖、条件/判定覆盖、条件组合覆盖、修正的条件/判定覆盖、路径覆盖。
黑盒测试(功能测试):将测试看作不透明黑盒,不考虑内部结构。方法包括等价类划分、边界值分析、判定表、因果图、状态图、随机测试、猜错法、正交验证法。
白盒测试与黑盒测试对比图
2. 测试类型
测试类型 | 说明 |
|---|---|
单元测试 | 对软件模块进行测试,技术依据是软件详细设计说明书 |
集成测试 | 对已组装模块进行测试,发现接口问题,采用白盒+黑盒结合,技术依据是软件概要设计文档 |
确认测试 | 验证软件功能、性能等是否与用户需求一致 |
系统测试 | 在真实系统环境下检测完整系统,包括功能测试、性能测试、健壮性测试等,最重要是功能测试(黑盒)和性能测试 |
配置项测试 | 检验软件配置项与SRS的一致性,技术依据是SRS |
回归测试 | 测试软件变更后,验证变更正确性及原有功能未被损害 |
3. 面向对象的测试
OO系统测试与传统系统测试目标一致,但策略不同:测试焦点从模块移向类,测试视角扩大到分析和设计模型。OO系统具有封装性、继承性与多态性三个明显特征。
4. 软件调试(排错)
测试成功的标志是发现了错误。常用调试策略:蛮力法、回溯法、原因排除法。
四、本章真题小测
Q1:软件配置管理的核心内容包括()。
A. 版本控制和变更控制 B. 需求管理和风险管理
C. 质量管理和配置审计 D. 计划管理和文档管理
Q2:白盒测试中,最常用的技术是()。
A. 等价类划分 B. 边界值分析 C. 逻辑覆盖 D. 因果图
Q3:集成测试的技术依据是()。
A. 软件详细设计说明书 B. 软件概要设计文档
C. 软件需求规格说明书 D. 用户手册
📩 答案:
Q1 答案:A解析:
软件配置管理 SCM 核心是版本控制、变更控制。
B 需求、风险属于项目管理;
C 配置审计属于配置管理活动,但不是核心内容,质量管理是独立领域;
D 计划管理属于项目管理。
Q2 答案:C解析:
逻辑覆盖:白盒测试核心常用技术(语句、判定、条件覆盖等)
A 等价类划分、B 边界值分析、D 因果图:全部属于黑盒测试。
Q3 答案:B解析:
集成测试依据:概要设计文档(模块接口、模块间交互)
A 详细设计说明书 → 单元测试
C 需求规格说明书 → 系统测试
D 用户手册 → 验收测试
✅汇总答案
Q1:A;Q2:C;Q3:B
