《软件过程与管理》复习
1 高质量编程及测试
1.1 如何选择正确的评审方法
选择评审方法最有效的标准是:
“对于最可能产生风险的工作成果,要采用最正式的评审方法.”
例如:核心代码的失效也会带来很严重的后果,所以也应该采用审查或小组评审的方法进行评审,而一般的代码,则可以采用临时评审、同桌评审等比较随意的评审方法。
1.1.1 代码审查
代码审查的目的是检查源程序编码是否符合详细设计的编码规定,确保编码与设计的一致性和可追踪性。
1.1.2 静态分析
静态分析的目的是通过对源程序分析、目测,但不执行程序,找出源代码中可能的错误和缺陷,对程序设计的结构属性如:分支、路径、转移等进行审查,尽可能的掌握源程序的结构,为单元测试设计测试用例和进行单元测试提供信息。
1.1.3 代码走查
走查(walkthrough)是一种使用静态分析方法的非正式评审过程;走查过程是让与会成员充当计算机,由被指定作为测试员的小组成员提出一批测试实例,在会议上对每个测试实例用头脑来执行程序,在纸上或黑板上监视程序的状态(即变量的值);
1.2 软件测试目标
由于软件开发人员思维上的主观局限性,且目前开发的软件系统都具有相当的复杂性, 决定了在开发过程中出现软件错误是不可避免的,软件过多的或严重的错误会导致程序或系统的失效。
1.2.1 软件错误产生的主要原因
- 需求规格说明书(requirement specification or functional specification)包含错误的需求、或漏掉一些需求,或没有准确表达客户所需要的内容;
- 需求规格说明书中有些功能不可能或无法实现的;
系统设计(system design)中的不合理性 ; - 程序设计中的错误、程序代码中的问题,包括错误的算法、复杂的逻辑等。
1.2.2 软件测试的目的
- 软件测试是为了发现错误而执行程序的过程;
- 一个好的测试能够在第一时间发现程序中存在的错误;
- 一个好的测试是发现了至今尚未发现的错误的测试。
2 高质量需求与设计
2.1 需求变更控制
变更控制
访问控制和汇入控制
需求变更处理流程
3 软件配置管理
3.1 基线
3.1.1 基线定义
IEEE对基线的定义:
已经正式通过复审核批准的某规约或产品,它因此可作为进一步开发的基础,并且只能通过正式的变更控制过程进行改变。
基线是软件生存期各开发阶段末尾的特定点,也称里程碑。
常用软件基线
3.1.2 软件过程中配置基线
3.2 软件配置管理10个核心活动
- 建立配置管理组织
- 确定配置策略
- 制定配置管理计划
- 配置项标识
- 版本控制
- 配置项和基线管理
- 变更控制
- 配置状态报告
- 配置审核
- 发布及交付管理