5.4 软件实现
5.4.1 软件配置管理(掌握)
软件配置管理(SCM)是一种标识、组织和控制修改的技术。软件配置管理应用于整个软件工程过程。
SCM活动的目标就是标识变更、控制变更、确保变更正确
SCM的目的是使错误降为最小,并最有效地提高生产效率
软件配置管理的核心内容包括版本控制和变更控制。
1、版本控制
版本控制是指对软件开发过程中各种程序代码、配置文件及说明文档等文件变更的管理。
版本控制最主要的功能就是追踪文件的变更
2、变更控制
变更控制的目的是对变更进行管理,确保变更有序进行
软件配置管理活动包括软件配置管理计划、软件配置标识、软件配置控制、软件配置状态记录、软件配置审计、软件 发布管理与交付等活动。
5.4.2 软件编码(掌握)
编码,就是用某种程序设计语言书写的程序。程序的质量主要取决于软件设计的质量。
(1)程序设计语言:编码之前的一项重要工作就是选择一种恰当的程序设计语言
(2)程序设计风格:源程序文档化、数据说明、语句结构和输入/输出方法
(3)程序复杂性度量:把程序的复杂度乘以适当的常数即可估算出软件中故障的数量及软件开发时的工作量。定时度量的结构可以用于比较两个不同设计或两种不同算法的优劣,程序定量的复杂程度可以作为模块规模的精确限度。
(4)编码效率
5.4.3 软件测试(掌握)
1、测试方法
软件测试方法可分为静态测试 和 动态测试
1)静态测试
指被测试程序不在机器上运行,而是采用人工检测和计算机辅助静态分析的手段对程序进行检测。
静态测试包括对文档的静态测试和对代码的静态测试
对文档的静态测试主要以检查单的形式进行
对代码的静态测试一般采用桌前检查、代码走查和代码审查
2)动态测试
一般采用白盒测试和黑盒测试
白盒测试也称为结构测试,主要用于软件单元测试中。它的主要思想是将程序看作是一个透明的白盒,测试人员完全清除程序的结构和算法,按照程序内部逻辑结构设计测试用例。
白盒测试方法主要是控制流测试、数据流测试和程序变异测试。
黑盒测试也称为功能测试,主要用于集成测试、确认测试和系统测试中。
2、测试类型
3、软件的调试
测试成功的标志是发现了错误。常用的软件调试策略可以分为蛮力法、回溯法和原因排除法