项目案例
什么是软件项目计划?
什么是软件项目计划?
软件项目计划是对软件项目实施所涉及的活动、人员的安排、任务的划分、开发进度、资源的分配和使用等方面作出的预先规划
–活动和任务
–资源及其安排
–进度计划
软件项目计划的内容
软件项目计划制定的基础和依据
- 定义和剪裁的软件开发过程(及其细化)
- 要完成的工作
工作说明和软件需求
历史数据和估算模型
估算工作量和成本 - 约束和限制条件
人员
资源
进度
软件项目计划制定的时机
- 制定软件项目计划的时机
项目开始之时:初步计划
需求完成之时:详细计划
初步和详细的软件项目计划
- 初步的软件项目计划
时机:项目开始(1-2周内)但是还没有获取完整和详细的软件需求
依据
项目的初步描述、用户需求的初步描述
定义和剪裁的过程
限制和约束
形式:仅仅计划最近(需求分析阶段或者4-6周之内)的软件开发计划 - 详细完整的软件项目计划
时机:获取了详细、完整的软件需求
依据
软件需求规格说明书
定义和剪裁的过程
限制和约束
形式:提供了项目后期的详细、完整的计划
为什么需要软件项目计划?
- 有序、可控制地对软件项目进行管理
- 生产高质量的软件产品
- 确保员工的士气高昂
- 确保员工保持高生产率
- 及时交付软件产品
- 降低软件开发成本
- 成功地进入市场
- 客户满意度
- 及时发布产品新版本
制定软件项目计划应考虑的因素
1. 计划制定的二种方式
- 软件项目计划制定的方式
自顶向下
自底向上 - 什么是软件项目活动?
项目活动就是把项目的工作量分解为易管理的具体任务,而每一项任务都要有明确的时间和资源的限制,它是项目进度表编制的基础。
2. 活动关系类型
- 什么是软件开发活动关系?
活动关系描述了活动之间的逻辑和执行时序 - 活动之间有哪些关系?
结束到开始
开始到开始
结束到结束
开始到结束
3. 估计活动的周期
4. 确定里程碑
- 什么是软件开发的里程碑(milestone)
软件项目实施过程中的重大事件,这些事件有助于了解项目实施的进展情况
例如,某个重要活动的开始和结束 - 有哪些典型的里程碑
活动
需求分析、概要设计、详细设计、编码
检查点
开始和结束 - 建立里程碑5个步骤
1.设立合理的里程碑检查点
2.制定里程碑的完成目标
3.明确里程碑的验证标准
4.确认里程碑的利益相关人
5.标识里程碑的进度百分比
5. 活动责任矩阵
- 什么是活动责任矩阵
一种表示方法,用于定义了执行、评审和批准软件项目活动及其相关软件产品的角色和人员。
明确角色与职责的有效工具,通过这样的关系矩阵,项目团队每个成员的角色,也就是谁做什么,以及他们的职责,也就是谁决定什么,得到了直观地反映。项目的每个具体任务都能落实到参与项目的团队成员身上,确保了项目的事有人做,人有事干。
6. 描述进度计划
甘特图
网络图
里程碑图
7. 关键路径
- 为什么要考虑关键路径?
关键路径上活动的进度直接影响到整个项目的进度
如果关键路径上活动的进度受到影响,那么整个项目的进度肯定会受到影响
要缩短项目的开发周期,必须加快关键路径上活动的开发进度
8. 参与、承诺和分发
两种编制项目计划方法
PERT
PERT利用网络顺序图逻辑关系和加权历时估算来计算项目历时的技术。
CPM
PERT/CPM区别
二者方法区别
- PERT
计算历时采用的算法:加权平均(O+4m+P)/6
估计值不明确 - CPM
计算历时采用的算法:最大可能值m
估计值比较明确
制定软件项目计划的步骤
步骤1,指定项目进度协调者
为什么需要指定项目计划协调者?
- 项目计划的制定非常重要
- 项目计划的制定工作量大,需要全日制人员
- 项目计划的制定涉及多方人员,包括用户、项目经理、开发人员、其他计算机
- 系统小组,因此需要专职人员进行多方协调
步骤2,确定要使用的工具
为什么需要项目管理辅助工具?
- 提高项目计划制定的效率
- 便于发现所制定的项目计划中存在的问题,提高项目计划制定的质量
- 便于以后的跟踪和监督
步骤3,准备项目进度计划会议
步骤4,召开项目进度计划会议
- 任务描述
召开会议,并就有关问题达成一致意见
确定软件开发活动(大粒度),例如需求分析
确定每个活动的负责人
步骤5,提交和分析数据
- 任务描述
项目各个活动的负责人向项目计划负责人提交了计划数据
项目计划负责人对提交的数据进行了分析
步骤6,使用工具创建进度计划
- 任务描述
项目计划负责人使用工具制定项目计划
步骤7,评审项目进度计划
- 任务描述
项目计划负责人召开项目计划的评审会议
会议的参与者不仅包括项目组成员,还包括管理层、质量保证人员、甚至用户
步骤8,使用工具更改项目进度计划
- 任务描述
根据评审会议的要求更改项目计划
步骤9,批准项目进度计划
- 任务描述
给项目经理上报项目计划,等待批准
步骤10,分发项目进度计划
- 任务描述
将批准后的项目计划分发给项目组成员