APP下载

基于CMMI的软件项目策划实施

2014-08-15

科技视界 2014年17期
关键词:工作量进展策划

李 妍

(中国电子科技集团 第三十八研究所,安徽 合肥 230088)

0 引言

随着信息技术的飞速发展,软件产品规模日趋庞大,传统软件研制过程中重技术、轻管理的思想已经落伍。“软件发展的主要问题是管理问题。而不是技术问题”,作为现代软件管理模式的代表,CMMI(Capability Maturity Model Intergation)即“软件能力成熟度模型集成”在大型软件项目管理活动中得到了广泛的应用[1]。

项目策划是CMMI中的一个重要部分,对软件项目的有效管理取决于对项目的合理策划,计划的合理性与准确性往往直接关系着项目的成败。

1 软件项目策划在CMMI中的地位和作用

1.1 CMMI概述

CMMI(Capability Maturity Model Intergation),即“软件能力成熟度模型集成”共包括5个级别,分别是初始级、已管理级、已定量管理级、优化级。所有级别共包括24个过程域。CMMI的目的是帮助软件组织改进其过程,在对软件产品或服务的开发、采购以及维护的能力中提供指导。

1.2 CMMI中项目策划的地位和作用

项目策划是CMMI中的一个重要过程域,策划工作涉及到项目中的各个环节,包括定义件项目的规模和目标,确定需交付的工作产品及交付时间、完成研制所需的资源、制定合理的研制进度、对项目生命周期中可能遇到的风险进行标识和评估等等。

软件项目的管理者按照策划确定的内容对软件项目的开发成本、开发进度、产品性能和产品质量进行管理和控制,才能得以保证软件项目顺利地实施。

2 基于CMMI的软件项目策划实施

对软件项目进行策划通常在项目的早期进行,并在项目进展过程中,根据项目实际进展情况进行策划的调整。

2.1 项目已定义过程

项目已定义过程的建立是软件项目策划工作的基础,它以已确定的用户需求为基础,以组织内部的软件标准为依据,并以组织内部类似项目的成功经验作为参考,决定了项目策划其余工作的开展。

策划负责人分析软件项目的实际情况,选择适用本项目的软件生命周期模型。为使得软件开发周期模型更贴合项目实际应用,应在组织标准允许范围内、用户实际要求的基础上,对项目进展各阶段需生成的工作产品以及相应所需进行的各类管理、支持类活动进行裁减,从而完成项目已定义过程。

2.2 WBS分解

WBS分解即工作分解结构,是将目标逐步细化分解,最底层的任务活动可直接分派到个人去完成,每个任务原则上要求分解到不能再细分为止。

项目已定义过程决定了项目进展过程中的两大重要内容:工作产品和各类管理、支持类活动,软件项目的最终完成,就是这两大重要内容的完成。项目策划中,需要将工作产品和各类活动进行WBS分解,通过分解后的任务活动在估计中确定完成所需的工作量,并将在项目进度中确定相应的完成时间节点和责任人员。

2.3 工作量估计

软件估计的目的是对WBS分解后任务的量化过程,通过对工作产品的规模、各类活动工作量的估计,能够确定软件项目进度、成本、关键计算机资源等内容。

若WBS分解后的任务目标是生成工作产品,如文档、代码,则先进行工作产品的规模估计,可从文档的页数、代码行数、测试用例个数等方面入手,结合组织资产库中对应工作产品的生产率,可计算出完成任务所需的时间长度,即工作量。

若WBS分解后的任务目标是项目的管理、支持类活动,则可直接进行工作量的估计。管理、支持类活动的估计通常结合组织资产库中的经验数据,或者是与工作产品工作量的经验比值得到。

2.4 项目进度

策划负责人以工作量估计结果为基础,将WBS分解的各项任务根据合理的次序进行排列,确定各任务可能的完成时间。考虑参与人员、任务优先机级别等因素,可采用关键路径法确定项目进度。

关键路径是项目计划中最长的路线。它决定了项目的总实耗时间。关键路径上的任何活动的推迟将使整个项目推迟。所以在进行项目操作的时候确定关键路径并进行有效的管理是至关重要的。

在项目的实际进展过程中,单独依靠估计的工作量来确定关键路径上的任务时长是有很大风险的,会导致项目实际进行中计划的不断调整,增加策划的工作量。一般应结合考虑可能影响任务进展的因素,如涉及任务人员间的沟通情况、任务允许的缓冲时间等,在本任务的估计工作量基础上增加适量的冗余时间。

2.5 编制软件项目计划

软件项目策划的最终实物体现为软件项目计划,结合已完成的项目已定义过程、WBS分解、软件估计和项目进度,在与项目涉及人员共同商议并达成统一意见后,在软件项目计划中确定以下内容:

1)进度计划,包括任务完成节点,阶段完成节点,里程碑节点等;

2)风险计划,对项目进展过程中可能发生的风险进行识别、分析,从而确定缓解措施、应对措施,以及风险跟踪时间;

3)评审计划,明确软件项目需要进行的工作产品评审和管理评审,并明确各评审的评审对象和输入材料、评审组长和其他评审人员、评审级别、评审方式等;

4)数据管理计划,明确项目过程中需进行管理的项目数据名称、所属记录类型标识、提供人员、存储方式及时间;

5)测量与分析计划,明确项目的测量目标,并基于测量目标确定基本测量项、导出测量项、项目参数的偏差控制阈值,同时明确测量量数据采集、存储、分析和报告的要求;

6)利益相关方计划,分析并识别项目的利益相关方及其参与的活动及时间;

7)关键依赖关系计划,标识受影响的利益相关方一起协商关键依赖项、接收方、提交方和提交相应工作产品的时间;

8)人力资源计划,确定软件项目的组织机构,明确项目组成员及其角色和职责、参加项目的时段;

9)培训计划,确定项目组成员尚未具备的知识技能,确定培训时间;

10)设施与工作环境计划,包括资源提供的责任人及到位时间/时机、工作环境建立的责任人及时间/时机;

11)质量保证计划,包括项目进展过程中各类工作产品审核、活动审核开展时机等;

12)配置管理计划,包括项目进展中各类工作产品的入库时间、基线的建立时间、配置审核时机等。

根据项目实现周期及任务特点,软件项目计划的制定可采取不同的方法。若软件项目实现周期很短,任务明确,可在计划中就明确直至任务交付的详细计划;若项目实现周期很长,任务需求有待继续明确,则在软件项目计划中只对最近阶段的任务计划进行确定,后期可根据前一阶段任务完成情况再对任务实现计划进行逐步确定、细化。

2.6 软件项目计划的维护

软件项目计划应根据项目实际进展情况,即项目监控的结果出发,进行必要的维护工作,特别是出现关键路径偏离超出计划阈值、项目需求变化等情况时,就应进行计划调整。必要时,还需重新进行项目定义、WBS分别、工作量估计等工作。

3 结束语

本文从软件项目策划在项目中的实际应用出发,详细介绍了软件项目策划的实施过程。在实践过程中,我们也深刻体会到,软件项目策划实施的重要性和必要性。软件策划工作实施的基础,是以往项目的经验数据,只有组织不断的收集对经验收据并进行调整,包括适合本单位研发工作实际的软件生命周期模型确定,才能使得策划工作真正为项目进展提供有力支撑。

[1]杨一平,等.软件能力成熟度模型CMM方法及其应用[M].北京:人民邮电出版社,2011.

猜你喜欢

工作量进展策划
应用地表覆盖数据估算LiDAR内业工作量的方法研究
一个兼顾教学科研的高校教师绩效考核模型及其应用
思科发布云计算市场发展报告
本期策划
网上互动教学工作量管理的困境及对策
寄生胎的诊治进展
我国土壤污染防治进展
耳鸣的诊断和治疗进展