软件过程标准
软件项目管理过程
V1.0
1 / 16
修订记录
版本号 0.9 0.9.5 0.9.6 1.0 日 期 2002/07/02 2002/07/18 2002/08/02 2002/08/12 作者 SDS 陈纪山 陈纪山 苏光 授权人 SDS 苏光 苏光 彭柏林
授权日期 描述 2002/07/02 第一次编制 2002/07/18 本地化 2002/08/01 重新排版,根据评审意见修改 2002/08/12 批准通过
1 / 16
1目的和X围1 1.1项目策划涉及到1 1.2项目执行涉及2 1.3项目结束涉及2 2过程阶段2 3进入准则2 4退出准则3 5交付的工作产品3 5.1策划阶段3 5.2实施阶段3 5.3结束阶段4 6此文档的使用者4 7过程4
7.1过程流图4 7.2过程描述6 7.2.1项目起始6 7.2.2项目实施8 7.2.3项目结束10 7.2.4验证机制11 7.2.5度量12 8活动职责表12 9参考文献13 10附件13
目录
1 / 16
1 目的和X围
目的:项目管理过程详细描述了项目的启动、执行和结束的过程。便于项目负责人对软件项目进行管理和监控。
X围:当获得一个项目并且指定项目负责人后,本过程开始执行。项目管理过程覆盖了项目的整个生命周期。此过程主要涉及到:在项目起始阶段评审合同中的约定和进行项目策划;在项目执行阶段进行项目监督和与其他部门、小组的关系管理;在项目结束阶段进行项目结束分析,确定和记录项目中遵循的最佳实践。
1.1 项目策划涉及到
基于以下各项,定义项目过程使用的生命周期模型(例如:瀑布型、螺旋型、重叠瀑布型):
客户的要求
组织标准软件过程(OSSP) 裁剪指南 过程财富
定义项目的组织结构 确定交付的工作产品
确定项目的风险及风险缓解措施 识别培训需求
基于以下各项,确定项目的质量目标:验收时的缺陷比例、生产率、进度和质量成本:
客户的需求 组织的改进目标 过程数据库 过程能力基线
确定实现项目质量目标的战略方法:
缺陷预防 使用工具 改变过程/方法
设定对工作产品(如设计文档、代码)评审和测试时的过程性能指标
1 / 16
确定进行目标和风险跟踪的里程碑,以便采取适当的改正和预防措施
1.2 项目执行涉及
按照项目计划和项目过程实施项目
按照项目计划,在里程碑处进行跟踪,必要时采取纠正措施 按照过程性能指标进行跟踪,必要时采取纠正措施
对于代码,确定程序级缺陷 代码评审的有效性 单元测试的有效性
程序级(编码、代码评审、单元测试)的工作量:估计值vs.实际值
执行缺陷预防活动
1.3 项目结束涉及
进行分析,比较项目的实际性能和预先设定的目标
收集项目的经验,更新过程数据库,向SEPG提交过程财富和BoK 向SEPG提交量度分析报告、里程碑报告和过程财富
如果项目的实施涉及到多个开发中心,根据工作的性质,每个开发团队应有一个协
调人,其职责是:与项目负责人交流、控制和监督该开发中心的有关该项目的活动、与该开发中心的经理进行协调
2 过程阶段
项目启动 项目实施 项目结束
3 进入准则
可以获得合同/项目授权 RFP或建议书或合同或需求文档 金宇恒和客户要求的过程/方法 过程数据库和过程财富
组织X围内有关质量、工作量和进度的改进目标 组织X围内有关可用工具的信息
2 / 16
组织X围内的缺陷分析 估计指南
4 退出准则
项目策划
项目计划已经制定、经过小组评审、经过SEPG评审、经过高级经理评审和批准并且置于配置管理之下
项目实施
客户已验收所有的工作产品
项目结束
项目收工会议已进行、过程数据库已更新、过程财富和量度分析报告已提交
5 交付的工作产品
5.1 策划阶段
项目计划和进度
其它的补充计划,如:培训计划、风险计划等。这些计划可以是项目计划的一部分,也可以成册
配置管理计划 SQA计划 评审记录 授权记录 培训记录
5.2 实施阶段
量度分析报告 里程碑报告
更新后的过程数据库 过程财富
更新后的项目计划和进度
5.3 结束阶段
里程碑分析报告
3 / 16
更新的PDB/PAL 状态报告
评审记录
6 此文档的使用者
项目负责人 业务经理 客户 SQA/SEPG 项目组
其它相关组
7 过程
7.1 过程流图
4 / 16
SPP和SPTO过程流图开始已批准的SRS、RFP、项目合同、方案建议书规模估计是成本、工作量、CCR估计评审估计是否有缺陷?否制定SDP草案是与受影响的组交流、沟通评审SDP是否有缺陷?否将计划纳入配置管理执行SDP得到估计规模得到计划日期得到计划成本和工作量得到实际成本和工作量比较计划与实际成本和工作量得到计划的CCR得到CCR的变更请求比较计划的CCR和CCR的变更得到实际规模得到实际日期比较估计规模和实际规模比较计划日期和实际日期更新PDB否数据分析实际是否偏离计划?是采取纠正措施否修订SDP否通过评审SDP变更是通知受影响的组项目是否结束?是结束
5 / 16
7.2 过程描述
7.2.1 项目起始
项目起始阶段主要涉及到对合同中的约定和项目策划(项目计划)的评审。此阶段的主要活动有:
建立项目工作环境(硬件/软件) 与客户建立工作协议 编制项目实施计划
制定项目跟踪过程,以确保项目处于控制之下 确定项目实施期间遵循的过程/方法
项目策划是项目开始后的第一个技术活动。策划涉及到客户的需求,同时也要考虑
到金宇恒的需求
7.2.1.1 项目策划涉及
依据裁剪指南,对组织标准软件过程进行剪裁,以满足客户的要求 使用过程能力基线/过程数据库进行估计,并设立质量目标 使用过程数据库(PDB)和过程财富,设定项目目标
确定实现目标的战略,并为生命周期的每个阶段确定过程性能指标 确定进行项目性能检查的里程碑,必要时采取纠正措施
基于估计的工作量和给客户作出的承诺,制定风险管理计划和预备的进度表
7.2.1.2 项目策划涉及的活动
熟悉项目
在开始制定项目计划前,项目经理(PM)收集所有与项目有关的可用信息,分析研究这些信息以便他熟悉该项目
项目经理可以通过阅读需求文档、客户提交的其它信息和资料以及参考资料来熟悉项目
执行项目启动的行政活动
执行行政活动,如:获得授权、通知其它组等
如果使用OA系统,适当地进行系统更新以反映新项目地开始
制定项目计划和进度
6 / 16
制定项目目标 制定人力资源计划
确定适合项目实施的标准过程 裁剪标准过程已满足项目需求
确定将使用的方法、工具、模板和标准 识别风险、评估影响,制定风险缓解计划
使用组织级的估计指南和客户需求进行规模、工作量和成本估计 使用组织级的指南,制定质量计划 确定实现质量目标的战略 为项目制定度量计划 为项目制定培训计划 制定项目跟踪规程 识别和确定项目里程碑 确定在项目策划期间所作的假定 制定项目进度
对项目计划和进度进行小组评审
计划和准备由其它项目经理进行的项目计划评审 依照评审规程进行评审
编写评审报告,并且修订项目计划中的问题 如果需要,计划并执行重新评审
从高级经理处获得授权,将项目计划和进度基线化
高级经理必须以书面的方式授权给项目经理,以便项目经理依据计划开展项目工作
此工作可以通过高级经理签署项目计划,或通过电子文档签发授权书 将项目计划和进度置于配置管理之下
如果使用配置管理工具,将项目计划和进度检入到配置库中 如果以手工的方式进行配置管理,更新变更记录
制定和评审配置管理计划
使用软件配置管理计划模板编制软件配置管理计划
此项工作(编写SCM计划和实施配置管理活动)可由项目经理(PM)或他指定的
7 / 16
人(作为配置经理)完成。
制定和评审SQA计划
使用软件质量保证计划模板编制软件质量保证计划
此项工作可由项目经理或SQA代表(负责本项目的SQA活动)完成
建立开发环境
安排必要的基础设施,以建立开发环境 其它部门或小组可能涉及到此项活动 SCM经理为此项目建立配置库 系统组提供项目所需的硬件和软件
行财部提供必要的资金和支持以购买开发工作所需的工具(如果公司不能提供所需的开发工具)
人力资源部门提供开发所需的人力资源
为项目组成员提供已确定的培训(包括过程相关培训)和项目所需的定向培训
项目经理识别项目组成员所需要接受的培训 培训部和有资格和经验的内培训师提供培训 SEPG提供与过程有关的培训
7.2.2 项目实施
项目实施涉及到按照计划执行项目。本阶段地主要任务包括:分配任务、管理项目组和客户间的关系、定期地向客户和高级经理报告项目状态、更新进度表、管理需求变更和风险、在程序级监督过程性能(代码、代码评审和单元测试)、进行里程碑评审并且在必要时采取纠正和预防措施、重新策划和保持项目计划地更新。
7.2.2.1 项目实施中的活动
依照项目计划执行项目 跟踪项目状态,必要时重新策划
项目经理(PM)通过以下方式跟踪项目状态:
查看项目组成员的报告 更新任务分配和进度表 直接与项目组成员沟通
如果存在重大的偏差,项目经理可以重新进行策划活动,更新项目计划中相应的
8 / 16
章节,以反映项目的实际状态
高级经理参与评审项目状态
项目经理( PM)定期地向高级经理简述项目的状态,并且和高级经理一起评审项目的进展情况
通常每周进行一次
管理需求变更
在需求发生变更的情况下,项目经理将跟踪所收到的变更请求、指导影响分析,并且从变更控制委员会(CCB)处获得变更批准
仅当变更请求被批准后,变更才能够得以实施 项目经理负责分配任务以实施变更
项目经理通过监督人员、项目组成员的报告或任务分配单来跟踪变更实施的状态
监督与项目定义过程的一致性
项目经理通过以下方式监督项目过程的符合性:
对活动的自我评审 SQA审计 同行评审报告
在程序级监督项目性能
项目经理通过监督和查看项目组成员的报告,实现在程序级监督项目的性能 此报告依照项目计划中的定义,定期生成(最好是每周)
指导里程碑评审 & 重新规划/策划 (必要时),以满足目标
在项目预先确定和指定的里程碑处,项目经理指导项目评审会议(所有项目成员均参加)
基于上述评审,项目经理(PM)可能重新策划项目
基于事件驱动,进行额外的评审 & 重新规划/策划
在关键情况下,可以进行额外的评审和从新策划
7.2.3 项目结束
项目结束涉及到在客户验收后系统地整理分析项目。项目结束数据分析是本阶段重要地活动。分析活动主要是将项目的性能和预先设定的目标进行比较。在分析期间,高级经理需参与到此项工作中。识别和记录项目的最佳实践,提交到过程数据库(PDB)、
9 / 16
过程财富库(PAL)中,以供未来的项目使用。举行项目结束会议,项目组成员、SQA/SEPG、财务分析人员、高级经理等共同分析对比项目的性能和预先设定的目标。在此阶段,还需要向SEPG提交量度分析报告和里程碑分析报告。
7.2.3.1 项目结束阶段的活动
执行结束分析
项目经理通过分析从项目中收集的量度和以下各项的发现,进行项目结束分析
交付的延迟(进度上的延迟) 缺陷数(产品的质量) 变更请求数(规模的变更) 最初的规模vs.交付时的规模 最初估计的工期 vs. 实际的工期 从已发现的错误中吸取的经验 评审中发现的缺陷 测试中发现的缺陷 造成缺陷的原因 造成延期的原因 过程性能
指导结束会议
当客户验收了交付的所有工作产品时,项目经理召集项目结束会议,并且陈述在项目结束分析中的发现
项目经理同时也陈述从项目中学到的经验和教训,以及所遵循的好的实践 如果使用了裁剪过的过程,将进行过程性能讨论,以便发现过程中可以改进的部分
更新过程数据库
项目结束分析和量度报告将由项目经理放入过程数据库中
向SEPG提交量度分析报告和里程碑报告
项目经理依据项目的其它相关报告,制定上述报告;并将这些报告提交给SEPG以供将来分析使用
向SEPG提交过程财富
10 / 16
向SEPG提交裁剪过的过程、客户化的模板、表格;以及客户提供的过程、模板和表格,以供SEPG在未来研究和分析
归档项目资料
项目经理收集所有与项目相关的资料,并进行分类、归档 归档的资料应存储在可移动的介质中 归档的资料应存储在不同位置的办公室中
释放项目组成员和资源
项目经理通过向有关部门发送项目结束信息,释放项目组成员和其它基础设施资源
释放项目负责人
项目经理(PM)通过向人力资源部门发送信息来释放项目负责人
项目经理通过签署项目结束报告,并将此报告提交给高级经理来释放他自己
7.2.4 验证机制
验证的方法如下:
高级经理通过接收和评审项目经理每周提交的项目状态报告(和按照项目计划中的要求)来验证项目策划和跟踪活动
每15天进行SQA审计或按照项目计划的要求
项目通过裁剪组织的标准软件过程来生成项目定义软件过程。一旦生成了项目定义
软件过程,该过程中所有的活动均强制要求执行。执行的符合性审计,检查项目的符合性。
7.2.5 度量
规模,估计值和实际值 工作量,估计值和实际值 成本,估计值和实际值 进度,计划值和实际值 实际的缺陷值
8 活动职责表
编号 1 进行估计 活动 GM/VP S 11 / 16
PM PL P P TM SQA S
2 3 4 5 6 7 8 9 10 11 12 13 14 15 编制项目计划 评审项目计划 搭建开发环境 分配任务 执行任务 跟踪需求变更 关闭变更 跟踪项目状态 编制项目状态报告 监控项目性能 监控过程符合性 跟踪项目活动 报告的准备 项目结束 P:主要职责 S:次要职责 GM:总经理 VP:副总经理 PM: 项目经理 PL: 项目负责人 TM: 项目组成员 SQA: 软件质量保证人员
S P S S S S S S S P S S S S P P P P S P P P P P P P P P P P P P P P P P P P P P P P S S S S P S S S S S S S S S P S S P S S 9 参考文献
SEI-CMM version 1.1
Software Engineering, by Roger Pressman
10 附件
项目计划模板
TM_MGMT_SDPT CL_MGMT_SDPT GL_SDLC_SDLC
项目计划评审检查单
软件开发生命周期指南 估计指南GL_MGMT_ESTM 估计模板 TM_MGMT_ESTM 项目状态报告模板 评审表
TM_MGMT_STAT
FM_SDLC_REVW
12 / 16
度量和分析规程PR_SDLC_METR 量度总结分析模板 过程数据库
TM_ SDLC_METR PDB/QMS
过程裁剪指南GL_MGMT_PRTL 配置管理过程PR_MGMT_SCM 配置管理计划模板TM_SDLC_SCMP 软件质量保证过程
PR_MGMT_SQA
软件质量保证计划模板 TM_MGMT_SQAP
TM_MGMT_AUDR
软件质量保证审计报告模板
13 / 16