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