第二桶 基于对象的编程 第九碗 老C撰写项目章程 小P初闻项目管理(三)

 

嗯,咳咳咳老C大声的清着嗓子,引起了小P的注意。

怎么,你写完了吗?P问道。

呵呵,算是写完了。C说道。

快让我看看,P道,跑到老C桌前,看到一篇这样的文档。

  1. 项目概述

Slam是一个自由风格的计算器。所谓自由风格是指可以在窗口处使用键盘输入计算式,且如果此计算式符合代数运算的规则,那么就可以得到正确的计算结果。此项目必须在寒假前完成。

  1. 用户、发起人及干系人需求

此项目来源于内部技术进步。项目参与者需要在项目结束后掌握C++基于对象的编程技术。表现为:

  • 会使用eclipse + CDT + GCC tool chain的开发环境进行编程
  • 简单了解项目开发的流程
  • 掌握基本的配置管理知识和工具
  • 可以编写正确的基于C++对象的程序,缺陷率低于2/千行
  • 会使用UML进行简单的类设计
  • 养成良好的代码风格习惯
  • 掌握基本的词法分析知识
  • 掌握基本的语法分析知识

 

  1. 项目经理任命与权限

项目经理任命为老C,他具有安排项目资源的权利。小P必须严格按照他的计划和要求进行开发工作。

  1. 概要的里程碑

10月中旬                            完成项目计划,并建立好开发环境

11月上旬                            完成4则运算

11月下旬                            完成代数运算

12月上旬                            完成函数运算

12月中旬                            Alpha测试

12月下旬                            发布Beta测试版本

次年1月中旬                            正式发布

  1. 假定与约束
    1. 组织、环境和外部的假定
  • 大家都没有重病
  • 教研室没有重要的事情
  • P很听话

 

    1. 组织、环境和外部的约束
  • 在寒假之前完成此项目
  • 不能占用正常的上课时间,需在业余时间进行

 

  1. 项目收益

P每周请老C湘菜一次,或刀削面次。

 

-----------------------------------------------------------------------------------------------------------(寂寞的分割线)

“……”P看到最后一项有些无语,这个……可以算作项目收益吗?

呵呵,基本算是吧C大言不惭,要不我这个项目经理当的可没有什么乐趣,你也得有所付出吧,要不做项目的动力从哪里来?你想想,爷爷的,老子饭都陶了,这个项目一定要做好,要不也太对不起自己掏的腰包啦……这样才不会半途而废嘛。

“……”P有些被忽悠晕了,你这么一说,好像也有些道理……”他想了想,好吧,舍不得孩子套不住色狼,我就答应啦。

“……”C心想自己什么时候变成色狼了……

那你能不能解释一下这个项目章程呢?P问道。

呵呵,当然当然。C点头,项目章程是Develop Project charter process的唯一输出,我们看到,在Technique & Tools里面有一个工具叫Project Selection Methods,这个工具是用来选择需要进行的项目的,当项目已经被选中,那么我们就要找人来做。这样项目经理就被授权来做这个项目——我以前已经说过,项目经理的职责和权利永远是不对等的——所以这个授权文件就相当的重要,我们来看看一般一个项目的charter都会包含哪些内容。C指挥着小P拉过白板。首先我们有一个关于项目的高层描述,使用几个简单的句子说出项目的主要目标;下来是项目需求——我们除了要满足产品的要求,同时还要满足项目干系人和项目发起人的要求,这些要求有可能会是一些企业战略上的需求,比如需要在这个项目中使用一种新的技术,或者是业务需求,比如在项目中锻炼几个新人,又或者是一些企业发展的要求,比如缺陷率和项目计划完成率要达到新的标准等等……C找到茶杯喝了一大口,下来就是项目经理的人名和权限,一般权限包括资源的配置权限,允许使用的资金的等级,审批的权限等;再下来就是假定和约束,假定就是我们认为是真的条件,而约束就是一些限制;最后是一些商业上的考核指标,比如我们需要达到的盈利目标,需要使客户达到的满意程度,对组织内部的贡献等等。总之一句话,我给你了规定的权限,你要给我完成这些目标!

哦,我差不多理解了,那么下来我们就可以开始开发工作了吧?P问道。

不行,还差一些。C揉揉额头,接下来我们还需要一个Preliminary Project Scope Statement才可以开始后继工作,注意,是后继工作,不是开发工作

哦?这是做什么的东东啊?P追问。

所谓Preliminary Project Scope Statement是一个对项目范围的初步说明。注意项目范围与产品范围是两回事,产品范围说的是我们要做什么样的产品,而项目范围是我们为了出这样的产品而需要做的事情。说着老C在白板上画了这样一个三角。

 

我们做项目需要在3个要素间取得平衡,这3个要素项目范围、费用和时间,在三角形中用三条边来表示,而关注的中心在项目和产品的质量;你可以想象,如果三角的任何一个边变长,势必会影响到其他的两条边,而在项目中其他的两条边往往是约束;所以我们在做项目时,必须要先明确项目的范围是什么,这样才要判断我们能否在约束条件下达到项目目标。C指着白板。

唔,那么如果有了初步的项目范围说明书,那么我们就可以开始编程了吧?P问道。

还不行。C摇头,我们还需要细化我们的初步项目范围说明书。我们已经说过,项目是渐进明细的,是迭代发展的,我们会随着项目的深入,不断的认识到我们还需要进一步进行的工作,那么如何执行进一步认识我们的工作呢?我们需要制定项目计划,我们以前已经说过,一个项目被分为9个知识领域,每一个知识领域都需要我们计划-执行-监控-收尾,所谓项目计划就是告诉我们如何去进行这些工作,当我们把这些工作按照计划执行完,我们就是完成了对项目逐步深入认识的工作。只有我们对项目认识深入了,才有可能做好。否则只能靠rp了。

就是说我们有了初步项目范围说明书之后,还需要制定一个项目计划?P问道。

没错,没错。C点头,然后我们需要根据项目计划的说明去细化我们的项目,得到一个项目范围说明书。一个项目最重要的3文档就是项目章程、项目计划和项目范围说明书。C说着在白板上又画了一幅图。

 

相当具有后现代解构主义的美感,很有27号的设计风格……”P对着白板品头论足。

呵呵,呵呵……”C傻笑,画的好不好另说,这个图说明了9知识领域相互的关系,质量、范围、费用和时间是根本,沟通、人力资源和采购是支柱,风险悬而未决,需要其他部分的支撑,项目经理做整体和集成管理。而项目管理计划就是如何盖这个房子的蓝图或者说明书,下来我们就需要制定一个项目计划啦——记住,项目计划不仅仅是一些时间上的安排而已。不过在此之前我们需要一个项目初步范围说明书。

是么?那么我们如何做下一步的事情呢?P问道。

嗯,这个也有规定好的processes,我们只要照着做就行了。我们回去吧,时间也晚了,这些事情留到明天再做吧。C回答。

好,那我们明天见!



(早睡早起,有利身体健康……)



posted on 2009-09-16 11:31 Anderson 阅读(1587) 评论(2)  编辑 收藏 引用

评论

# re: 第二桶 基于对象的编程 第九碗 老C撰写项目章程 小P初闻项目管理(三) 2009-09-16 11:47 Anderson

本来打算周更新的,结果变成月更新了……
看来需要进行一下整体变更控制了:(  回复  更多评论   

# re: 第二桶 基于对象的编程 第九碗 老C撰写项目章程 小P初闻项目管理(三) 2009-09-16 15:20 99书城

感觉还不错啊!  回复  更多评论   


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理


<2009年9月>
303112345
6789101112
13141516171819
20212223242526
27282930123
45678910

导航

统计

常用链接

留言簿(6)

随笔档案(21)

文章档案(1)

搜索

最新评论

阅读排行榜

评论排行榜