随着经济的转型,新的商业环境以快速变化和不可预测性为主要特征,在这种环境下,必须建立灵活地应对变化的软件过程管理。
一、变化的观点

软件过程管理活动对于“变化”的观点影响到软件过程管理的基本理念,从软件过程管理理论与实践的发展来看,软件过程管理对变化的态度经历了三个阶段:从“抵制变化”发展到“适应变化”,进而转变为“创造变化”。
1.抵制变化 通过成熟的过程预测结果、控制计划的执行,对项目中各种变化因素进行控制和排除。如果过程的执行与计划中的结果不能在一定的统计意义下吻合,就是产生了偏差,偏差必须努力纠正和排除。软件过程控制的关键活动是确定所度量性能的内在可变性是稳定的,确定异常(可确定因素)造成的性能偏差,然后消除可确定因素的来源,从而使过程稳定。变化对于软件项目来说是风险,风险管理的目的是减少风险。
2.适应变化 速度的必要成本是犯“错误”,在不确定环境中决策所引起的错误,如果等到所有不可预测性消除再做决策,就已经没有决策的必要了,因为早已经失去了市场的机会。风险与机会并存,在风险管理减少风险的同时,组织也在丧失获利的机会。
为了满足快速应对各种变化的商业需要,项目团队必须具有反应能力,能迅速而有效的回应预期或没有预期的商业环境的变化。通过快速的反馈和动态配置、剪裁、重组过程来应对项目中的不可预知因素,根据环境的变化调整项目的方向。Kent Beck提出“拥抱变化”的口号,XP对于需求变化的态度是:我们不希望需求缓慢发展,我们希望需求上升并跳跃发展。
3.创造变化 通过过程激发团队的创新能力,主动的创造变化和响应变化,使创新成为项目推进的动力源泉。敏捷不仅仅是一种反应,更是一种行动。敏捷团队首要的是要创造变化,以这种变化增加对竞争对手的压力,引发快速的变化使竞争对手没有喘息的机会,同时,当竞争对手试图改变市场时,快速的做出反应。创造变化需要创新,即创造新的知识来提供商业价值。
二、容变 容变(Change-Tolerance)指通过创造变化和回应变化而获得竞争优势,敏捷性是在动荡变化的商业环境中的容变能力,容变是敏捷性的本质所在。
Agility Forum针对敏捷制造提出的企业变化熟练成熟度模型(CPMM,Change Proficiency Maturity Model),建立起一个敏捷性的框架。变化熟练度(Change Proficiency)是引起和处理变化的能力,CPMM对前馈(Proactive)和反馈(Reactive)的变化熟练度从时间、成本、鲁棒性和范围几个方面进行度量。
LD方法的代表人物Charette认为容变是组织面对高度动荡的市场,保持有效运作的能力,容变不只是对市场变化的反应,而且是促成变化而使竞争者失衡。风险驾驭者(Risk Entrepreneurship)使组织能够把风险变为机会。容变的软件开发过程可以容易地接受因为业务需求变更、外界变化、环境变化所要求的改变,可以不断地增强,可以不断地适应和变革以实现新的商业目标。自适应软件开发(ASD)方法认为容变是ASD生命周期的基本特征之一,不是把变化视为问题,而是使变化成为组织的一种竞争优势。
三、容变过程 容变过程是组织创造变化和适应变化的过程。这个过程不只表现为一系列的关键业务实践,而且是针对变化进行的学习、重构、转变的一种组织化结构,突容变过程管理是软件开发企业和项目团队对其容变能力的组织化建构过程。容变过程的基础和本质是学习,学习的过程是一个组织认知过程,即通过认识变化、适应变化、应用变化来改变组织的容变行为模式,塑造组织的容变能力。敏捷软件过程管理研究关注软件过程的容变能力建构和发展规律及软件项目团队行为模式上的成长过程。
|