面向对象系统的项目管理
面向对象开发的特点
l 将系统定义为一组组件(用例):
因为项目早期缺少相关组件以及对关键架构的认识,所以有可能导致项目早期建立的组件需要更大的工作量。重写一个组件在一个面向对象项目中很自然,大可不必为此紧张。
l 首先处理困难的问题和与系统架构有关的难题
确定物理实现环境,关注数据库和网络基础设施构架,然后实现RUID操作
l 用迭代来管理项目
每次迭代都包含管理、计划、分析、设计和实现与操作活动。每次迭代的输入是前一次迭代的输出和本次要实现的用例。关注的焦点依次转移细化。在项目初期将项目计划过分细化是错误的。
面向对象开发的过程
面向对象系统开发的过程,如下图所示,从左向右分为初始、细化、构造和交付四个阶段,每个阶段关注的焦点依次转移,每个阶段包括若干次迭代,每个迭代过程包含下述四个主要步骤。
每个迭代过程包含四个主要步骤:
第一步、项目管理计划
定义系统需求,进行可行性分析(目的和意义)
确定项目大小,系统作用域,制定时间和资源相关的执行计划
第二步、系统分析(What)
第三步、系统设计(How)
第四步、系统实现(Do)
项目管理框架
项目管理相关知识、工具、流程、活动的框架:
项目管理的四个阶段
一、项目启动:
建立项目启动团队和客户关系
建立项目启动计划,估计项目规模、作用域、复杂度,生成SSR
建立管理程序,当前主要指交流和报告的程序。
建立项目管理环境和项目手册(CASE知识库)
项目手册的提纲示例:
1、项目概述
2、启动计划和SSR
3、项目作用范围和风险
4、管理程序
5、数据描述
6、过程描述
7、团队通信
8、工作说明
9、项目时间表
二、项目计划:
近期计划要详细,项目计划不断迭代
1、描述项目的范围、选择性和可行性
2、关键的任务分解WBS,甘特图和网络图,(以分解为焦点)
3、估计资源并制定资源计划:人力是最昂贵的资源,影响到项目质量和进度,为员工分配能使之学习到新技能的任务是重要的。追求高效和给员工新鲜感之间的平衡。(以资源为焦点)
4、制定时间表。(以时间为焦点)
5、制定交流计划。
6、确定项目标准和程序:工具、编码标准,文档样式
7、评估风险
8、制定初步预算。
9、提出工作说明:这是给客户看的工作概述。(SOW)
10、建立基准项目计划:为项目执行做准备。(BPP)
三、项目执行:
1、执行基准项目计划:注意要计划社会事件和团队事件(如成果回顾)目的是为了优化团队。
2、监视项目执行进度。
3、管理基准项目计划的变动
4、维护项目手册,记录项目日志
5、交流项目状态
四、项目收尾:
1、结束项目:员工薪水评价,表彰、感谢和庆祝。
2、项目总结:包括和管理层及客户的交流。
3、结束客户合同:确保所有条款已经履行