background image

第3章软件开发过程管理

1 软件过程规范

 

1)过程的定义
①定义
《牛津简明词典》:“过程”被定义为活动与操作的集合,
例如一系列的生产活动。
IEEE-Std-610:“过程”是为完成一个特定的目标而进行
的一系列操作步骤。
SEICMM:过程是用于软件开发及维护的一系列活动

 

 、

   

方法、实践和革新。
②软件过程的分类和组成

软件基本过程:软件获取、供应、开发、运行和

维护,包括需求分析、软件设计、编码等过程。

软件支持过程:对软件主要过程提供支持的过程,

包括文档编制过程、配置管理过程、质量保证过程、验
证和确认过程(测试过程)、评审过程等。

软件组织过程:对软件主要过程和支持过程的组

织保证过程,包括管理过程、基础设施过程、改进过程
和培训过程。
2)过程规范
①什么是过程规范

规范可以解释为“  明文规定或约定俗成的标准

 

 ”  

或理解为“用来控制或治理一个团队的一系列准则与章程,
以及团队成员必须遵守的相关的规章制度” 

过程规范就是对输入/输出活动进行明文规定或约

定俗成的标准,即

人们需要遵守的约定和规则。

软件

过程规范是软件开发组织行动的准则与指南,如软件支
持和软件组织过程规范。

软件过程规范与创造力是一

对矛盾,如何平衡两者之间的关系,值得研究。

软件过程规范的建立:软件能力成熟度模型

(CMM/CMMI ); IBM-Raional 统一过程(RUP);
极限编程 (eXtreme Programming,XP);微软软
件框架(MSF);个体软件过程(PSP);团队软件过
程(TSP)。

 

② 过程规范的内容和示例

任务规范;日常规章制度;软件工具。

③过程规范的作用

帮助团队实现共同的目标;能带来稳定的、高水平

的过程质量;使软件组织的生产效率更高。 
3)软件生命周期的过程需求
①软件工程过程

工程过程:软件系统、产品的定义、设计、实现

以及维护的过程。

开发过程:定义并开发软件产品的活动,包括需

求分析、软件设计和编程等。

运行过程:在规定的环境中为用户提供运行计算

机系统服务的活动,包括软件部署

维护过程:提供维护软件产品服务的活动。也就

是通过软件的修改、变更,使软件系统保持合适的运行
状态,这一过程包括软件产品的移植和退役。
②软件支持过程

文档编制;配置管理;质量保证;验证;确认;联

合评审;审核等。
③软件管理过程

项目管理过程

是计划、跟踪和协调项目执行

及生产所需资源的管理过程。项目管理过程的活动,
包括软件基本过程的范围确定、策划、执行和控制、
评审和评价等

;质量管理过程是对项目产品和服务的

质量加以管理,从而获得最大的客户满意度;风险管理
过程是在整个项目的生命周期中对风险不断的识别、诊
断和分析,回避风险、降低风险或消除风险,并在项目
以及组织层次上建立有效的风险管理机制;合同商管理
过程是选择合格的合同商并对其进行管理的过程。
④软件组织过程

业务规划过程:为组织与项目成员提供对愿景的

描述以及企业文化的介绍,从而使项目成员能更有效地
工作。从顶可以看出真正的规划绝不是鬼话!切记!

定义过程:建立一个可重复使用的过程定义库,

从而对其它过程等提供指导、约束和支持。

改进过程:为了满足业务变化的需要,提高过程

的效率与有效性,而对软件过程进行持续的评估、度量、
控制和改善的过程。

人力资源和培训过程:为项目或其它组织过程提

供培训合格的人员所需的活动。

基础设施过程:建立生存周期过程基础结构、为

 

其他过程建立和维护所需基础设施的过程 。
⑤软件客户-供应商的过程

客户-供应商过程是(内部直接影响到客户、外

部直接影响开发)向客户交付软件以及软件正确操作与
使用的过程,包括软件获得、客户需求管理、提供软件、
操作软件以及提供客户服务等子过程
4)软件生命周期标准
① ISO/IEC 标准体系

ISO/IEC 12207:1995-软件生存周期过程
从多个角度说明软件生命周期各个过程中的活动,

对规范软件开发过程,协调各类人员之间的关系,都具
有指导作用。

ISO/IEC15504 软件过程评估标准
帮助评估并确定一个潜在软件供应商的能力,帮

助提高软件开发过程的水平,帮助判断是否有能力承接
新项目的开发。
② IEEE 标准体系

包括 IEEE 1074:1997,IEEE 1540-01,IEEE 

1517-99,IEEE 1219-1998,IEEE Std 730-
2001,IEEE Std 1012,IEEE Std 1028。内容涵盖生
命周期过程的标准,软件风险管理,软件复用过程,软

1