这个问题是我最常碰到的一个,也是我最难回答的一个。对这种问题最好的回答方式是用全职员工来推算天数。这非常容易,你只需要找出有多少个不重叠的功能特征,然后每个人负责一个。一旦各个功能块被分成了不能再分的任务,你计算需要多少人天,这就是你的答案。你无论如何都不可能用比这更少的时间开发完这个项目。
创新互联是网站建设专家,致力于互联网品牌建设与网络营销,专业领域包括成都做网站、网站建设、电商网站制作开发、小程序开发、微信营销、系统平台开发,与其他网站设计及系统开发公司不同,我们的整合解决方案结合了恒基网络品牌建设经验和互联网整合营销的理念,并将策略和执行紧密结合,且不断评估并优化我们的方案,为客户提供全方位的互联网品牌整合方案!
“一个女人生一个孩子要10个月,不论你再增加多少个女人来做这事,都不会缩短这个时间” “只有当一个任务的完成可以分配多人,并且不需要他们之间相互交流合作的情况下能完成时,人和月才能互相替换。” “往一个已经延迟的项目里添加程序员只会使项目进一步延迟”(因为项目中现有的人需要培训新来的人) -《人月神话》去
|
不幸的是,大部分人只想知道一个项目需要多少时间完成。这实际是个伪命题,因为90%软件成本的产生是发生在软件发布之后。这些费用会产生于修复bug、增加欠缺的功能、性能的改进、对新平台进行支持(安卓就是一个大债主)或重写质量差的老代码来减少技术债务。即使是项目发布前,对于如何合适的处理每一种报错情况,这也是无法预先估计全的。从某种程度上,你就是被别人问了这样一个问题:“我有一个问题,我想解决它,但我无法说清问题是什么。请问解决这个问题需要多少时间?”
尽管预估很难,但程序员最终要找到一种预估的方法。虽然无法知道一个确切的答案,但我有3种方法能大致估计出一个软件项目要花多少时间:
对于大型的、独特的项目,程序员几乎无法知道它需要多少时间开发。它就是像在问“需要花多少时间能找到治疗癌症的方法?”然而,大部分的管理部门都拒绝接受这种答案,于是,程序员只好玩一些花招,先弄清楚老板们希望听到的时间,然后加入一些余地。还能有什么办法?通常都是超近路,这都是因为要去追赶那个本不应该设置的最后期限。你需要明白,预估是困难的,需要运行计划上的变更。除非你的程序员能将任务拆分小于一个月的子任务,千万不要在软件发布时间上做任何市场活动计划。
这最后一件需要注意的事是,当你在一个现有的软件(比如2.0版,3.0版….)上增加新功能时,你需要追加20%用来对现有代码进行重写的时间(程序员称之为重构)。这是为了偿还技术债务,或为未来的行动铺路。人们以为Google是拿出20%的时间用来创新,但我敢打赌,其实这大部分是来偿还技术债务的。
估计一件事情要花多少事情是非常难的,通常也是不可能的。虽然你曾在一些小项目上有成功的预测,但随着项目的发展你会感觉到越来越难。一个好的方法是给程序员留足额外的时间。很多年轻的程序员通常没有这方面的经验,所以,项目经理必须把他们估计出的时间乘以4。
英文原文:How long would this project take?
译文链接:http://www.vaikan.com/how-long-would-this-project-take/
标题名称:项目时间评估:这个项目要多久开发完成?
URL标题:http://www.36103.cn/qtweb/news40/1990.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联