您的位置:软件测试 > 软件项目管理 > 项目计划 >
项目估算与计划不是一般的难
作者:网络转载 发布时间:[ 2013/5/14 15:26:49 ] 推荐标签:

招待费用:项目组成员因工作需要,和客户相关人员吃饭、娱乐的相关费用。例如:需求调研期间和客户吃饭;项目实施阶段因推动验收和客户一起加班,加班后请客户吃饭。这笔费用一般不会很大,一顿饭一般是几十到一百多元,一个项目也不会请很多次吃饭。

采购费用:采购项目所需的软硬费用,如数据库平台、服务器等,如果项目部分内容要外包出去,那还要包括外包的费用。有时候这笔费用会比较巨大,但这些费用都很容易估计。

以上费用难估计的是人工费,人工费我们以工作量来考虑,下文开始我们重点讲解项目工作量的估算。

如何估计项目的工作量呢?

简单地说,我们需要将项目的所有工作进行分解,直到每个分解后的工作都能估计出具体的所需时间来。

那项目的“所有工作”包含什么呢?回答这个问题其实是回答“估算要估啥?”这个问题了。

一般情况下,项目工作包括以下内容:

1.项目前期工作。

包括商务谈判、技术方案准备、投标准备、前期需求调研、前期技术研究等工作。当你接手项目的时候,这些工作往往已经做了,你估算项目工作量时,不要忘记这些已经花费的工作量。

2.商务方面的工作。

从客户开始有意向做这个项目,一直到项目验收、维护,整个过程中都会贯穿商务活动。前期的商务活动有商务谈判、投标准备、合同签署等,而签订合同后的商务活动有项目请款和催款、促进验收等。某些商务活动属于灰色地带,如请客、送礼等,这些往往是花费巨大的。一般来说我们不需要估算灰色地带的商务活动,灰色地带的商务活动公司的高层会考虑的了,但我们需要对正常的商务活动进行估算。

3.需求调研方面的工作。

需求调研是一个“反复”的过程,一般来说能在前期确定80%已经是很了不起的成绩。

需求调研的工作量一般由三部分组成:前期调研的工作量,后期需求细化的工作量,后期需求变更的工作量。

前期调研的工作包括:项目组内部讨论、确认,与客户讨论、确认需求,编写需求规格说明书及组织评审等工作。

需求细化是指对之前已确定需求的进一步具体化、优化或轻微调整,如:界面细节的确认、各业务概念的具体化等。需求细化一般是可预见可估计的。
需求变更是指对之前已确认需求的“否定”,变更的原因主要有两种情况:一是之前需求调研工作没有能做好,理解错客户的真正意图或者是遗漏重要的需求;二是客户业务情况发生变化,与之前情况已经不同。第一种情况应该尽量避免,而第二种情况一般是难以估计的。需求变更时需重新估算,和客户签订需求变更协议。

我们一般会充分估计前期需求调研工作量以及需求细化工作量,对于需求变更则暂不考虑,因为一旦变更我们会和客户确认需求变更的费用。但有些项目有很特殊,项目报价中预留了少量的需求变更费用,这时估算中需要适当考虑需求变更了。

4.软件设计方面的工作。

不少项目为了“赶”进度,设计文档很少,然则项目真的很简单、不需要仔细考虑设计的情况是非常少的!

软件设计工作包括:

1)系统架构设计。

2)技术方案选择。

3)关键模块设计。

4)数据库设计。

5)用户体验设计。

以上内容具体项目可以有所取舍,但不可能全部都不用考虑。

另外不要忘记了以下两方面的工作:

1)各类设计工作产品的讨论、确认、评审工作。

2)设计细化与优化工作。设计是需要持续改进的,不要忘记这些工作。

5.编码方面的工作。

要注意不要遗漏代码返工、代码评审、代码调试、修复缺陷的工作量。

需求、设计没有做好,编码质量不过关,这些会严重增加代码返工、代码调试、修复缺陷的工作量。代码首次完成的时间如果是100小时,那么后面代码调试、修复缺陷等所需要的时间可能是200小时以上,往往我们估算时只考虑了前面的100小时。

6.测试方面的工作。

测试工作包括测试计划、测试用例、测试文档评审、测试环境准备、测试数据准备、执行测试、回归测试等内容。

软件测试一般要经历多轮,我们估算往往只考虑了第一轮,好象软件只需要测试一回不用再测试了。而测试环境准备、测试数据准备这些工作也很容易在估算时“忘记”了。

7.实施方面的工作。

实施工作包括实施计划、实施方案的准备,编写管理员手册、用户手册,熟悉系统,搭建实施环境并进行演练,在客户现场安装、部署、调试系统,培训客户,协助系统上线,推动验收等工作。

我们公司通常的做法是:

1)系统在客户处部署后,会推动客户进行初步验收,初验标准是系统的所有功能跑可以了。初验成功,客户需要支付相应的项目款项。

2)初验后要协助客户让系统正式上线,让客户真正用上这套系统,推动终验收。

影响终验主要有两个因素,一个是客户在使用系统过程中会提出各式各样的问题,如果在需求范围内应该都予以满足;而另外一个影响因素是客户会因为各种各样的原因推迟使用系统,或者是使用不充分,让项目终验无期。估算时需要充分考虑这两个影响因素。

8.维护方面的工作。

项目终验后,一般都要提供半年到一年的维护服务,维护器后项目还会有后一笔款项。

维护期比较长,事情繁杂,一个不小心很容易估算不足。

维护的工作一般有:

1)用户培训;

2)协助客户录入资料;

3)修复被破坏的数据以及数据库;

4)修改客户或内部发现的软件缺陷;

5)代码重构,提高部分程序的性能与可靠性;

6)修改一些界面文字或显示风格;

7)回答客户反馈的一些安装与操作疑难问题;

8)提供合同中所要求的其它特殊软件维护服务。

在维护期,往往还需要发布数个小版本来解决客户的问题。

上一页12345678下一页
软件测试工具 | 联系我们 | 投诉建议 | 诚聘英才 | 申请使用列表 | 网站地图
沪ICP备07036474 2003-2017 版权所有 上海泽众软件科技有限公司 Shanghai ZeZhong Software Co.,Ltd