免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2825 | 回复: 1
打印 上一主题 下一主题

我的项目经历及分析:为什么一个小项目要花掉8个人月? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-02-28 07:44 |只看该作者 |倒序浏览
原文http://www.javaeye.com/topic/670770

这是我亲身经历的项目,并且是项目负责人,该项目只有10个左右核心页面,七人,一个半月。
而几年前,我做过的两个项目,技术难度比这大,功能模块比这多,却只需要一个人,一个月。

问题在哪里?大家一起来分析一下。
先描述一下这两个成功的项目。

项目一 南开BT联盟(简称:BT)
项目背景
南开BT联盟是我03年底在校内部署的一个BT网站,采用一个免费的BT服务器(PHP)。半年后,也就是04年秋,发展成南开校园内几乎最热门的下载站点,我爱南开BBS的BT版成为年度十大热门板块(网站运营是另外一帮哥们,我只负责幕后技术)。因为校内注册用户超过5000,并且种子数超过1万,于是出现了定制化开发的需求。但是,该BT服务器是免费闭源,PHP是加密过的,没法改。于是,05年年初,也就是寒假那一个月,我没有回老家,从零开始,一个月写了一个Java版的BT服务器,开学后,就替换了原来的,运行一个月后,反应良好,晚上高峰期,上千人同时下载,五年前的截图。

功能模块
内核:BT客户端和Server端通信(编码解码器),torrent种子文件解析,种子状态更新、下载流量统计。
附加约8模块:种子列表、详细,站内信,简易BBS,种子上传、管理,用户管理,用户注册登录,排行榜、求种、系统管理等。

开发技术:JavaBean+Servlet+JSP(eclipse3.0+Tomcat5.0)
代码量:50多个JSP,约三万行Java代码


项目二 报表展现(简称:Report)
项目背景
该网站约有两百个复杂报表,现在,因为整个大系统统一用Java开发,所以主要是技术升级。项目经理估算是10个人月,所以把活丢给我就没管了,慢慢开发吧。我分析了两天后,告诉他,我可以两周出一个版本,他大吃一惊,很有信心,就不过问我了。

我根据需求,自己开发了一套适合报表的框架(定制化的MVC框架)。另外,将sql统一到几个配置文件,以便将报表查询和程序分开(DBA和开发人员分开)。说实话,真正有难度的是sql,反正我看不懂。

开发了一个月后(两人,一个月),交工,客户很满意(50万合同额)。后来有近两个月的维护期,基本一周花半天就可以了,反正那段时间我特闲,专心啃技术。

实际情况是,我两周开发框架,两周开发业务。

项目三和四 当前的项目(简称:新B2C)?
项目背景
该项目(老B2C)04年,一个程序员一个美工,一个来月就上线了。其后几年,每年几十万的毛利。但项目几年没维护,页面陈旧,内容过时,当然,产品和价格总在更新。
于是准备改版,核心页面总共10个左右,如首页、频道首页,产品详细页,预订表单。

技术5人,业务2人(负责网站内容)。技术人员中,一个(我)负责需求和原型,一个负责后台(另外一个辅助),一个负责前台,一个设计师。其中有技术高手,比如我,却搁浅搞业务,一个电子科大的技术牛人,一个原来开发老版本的开发人员。

花了一个半月,约8人月。
技术:前台JSP+JavaBean+WebWork,后台用Flex+Hibernate+Spring。前台让开发人员选用自己的熟练地技术,后台技术也是熟练的,基本上进度阻力并不在技术。

改版后,Google统计数据和实际订单量表明,并不成功。

--------------------------------------------------------------------------------------------------------------------------------------------

问题在哪里?
下面是我的分析和比较,但我认为项目的决定性因素总是那些方面,只不过哪一方面突出些。

1、原型开发(需求分析)
BT:基本没有,因为业务非常简单,主要是老版本技术升级。
Report:基本没有
老B2C:有,主要是抄袭,业务简单。另外,两个人,一拍即合。
新B2C:开发完原型后,给业务人员确认,修改,反反复复。老板当时不看,过几天会突然提出修改命令(小企业,老板没那么多事)。

最后确定下来的,是第三个版本,已经花掉了约两周。

2、内容建设
BT:不需要内容,只做平台。
Report:不需要内容,主要是处理数据
老B2C:内容抄袭,美工、开发人员一起抄。
新B2C:内容重新整理,只要出结果就行。
不过,出哪些内容,也就是一级大纲我出,包括原型上要求的内容,我都要截图出规范,配合很死板。小团队协作,通过文档规范来解决,已经是下下策了,但没办法,已经没法推进了。

3、界面开发
前三个项目,界面都很简单,直接Dreamweaver开发。
新B2C,一位高级设计师,新来的。因为原型中已经大体确定了布局,另外,可能我对界面干涉较多,所以他来后极不适应,因为以前做网站都是自己一人说了算,经常是到下班六点,就开始做自己的个人网站,不把工作放在心上。后来差不多做完,就离开公司了。
界面开发了约一个月,其中首页开发了半个月,后半个月都是赶,所以质量很差。因为界面设计都是先PS做效果图,后切片做HTML,工作量大。

我的问题:交互设计师(我)和界面设计师的职责不明确,导致设计师失去热情。后来我想到解决方案:1、设计前先给设计师仔细讲解业务,为什么我这么布局;2、界面风格的评审留给业务员。
但我本身对交互设计和界面设计有较好的基础,我更接近客户,还是业务员?我接触业务已经一两年了。

4、决策
前三个项目,基本上是个人决策,执行力很高
新B2C:因为涉及到产品经理(我)、业务员、老板三方,谁都想争取决策,闹得非常僵,项目几乎无法展开。第三个版本,修改建议主要是听业务员的,但大家已经彼此失去合作热情,导致后期的原型确认和内容建设进度很慢,三方都在耗。

5、协作
前三个项目,基本都是单双人,很顺畅。
新B2C项目,涉及7人,技术团队内部协作对进度影响可能只有10%(除了当时那位设计师,都服我),但部门间协作非常困难,因为没有利益制衡。虽然没有剑拔弩张,但已经是很机械、被动的合作。

6、激情/热情(最根本的问题)
BT:强烈的学习动机,一定的责任和荣誉感。那时候我每天写代码到晚上3点,睡一觉后接着写。
Report:强烈的技术爱好,领导的信任和支持,没有进度压力。那时候我路上思考,吃饭时思考,睡在床上也思考。

新B2C:毫无激情(一周有效时间三天都不到),下班和周末就彻底不想思考。
我:有责任,但无权和利。权:无法推进业务员的内容建设, 利:作为合伙人,只拿基本生活费2k(五年前月薪的1/3)。
我的期望:老板把网站业务这块抓起来,另外花点时间在用户体验上,而不是想起来就催进度,提需求,而从来不关心导致进度迟缓的原因,并且一起办法。
管理的本质是利益的制衡,对于我们三方,我、老板和业务员均无制衡。

事后我想到的解决方案
以信任和激励为核心(激励的本质是满足人性的需求:比如我最看重士气和团队凝聚力,做事本身的快乐,而不是利润)。
一切问题,都是人的问题。
如果说业务人员不配合、缺乏动力,是我引起的只有30%,因为我们是物理上分开的两个环境,两种文化。

如何激励?

老板解决内容质量和内容推进,不规定进度,而是期望进度(没有进度压力,往往开发得更快,进度我心里有分寸)。
原型决策权:在我,我会征询大家的建议,协商一致后,业务部必须达成。
界面风格决策权:在设计师(因为我吸取了以前的教训,新设计师热情很高,我的建议基本上就是她的决策),其它任何人只有建议权。
薪水:在我强烈要求下,已经涨了1k,基本够业余时间消遣。

上面的措施,主要是解决我(负责人)和设计师的激励。如果说管理的本质原则是:责权利的平衡,那么有权和利做支撑,我的责任感也会来,我也想把事情做好。
不过,我的期望似乎太理想了,去改变老板太难。

如果能够解决团队协作和士气问题,我认为可以达成如下目标:整体进度提前50%,约15工作日(三周),也就是将内耗省下来。界面设计速度、代码开发速度可能快不了,但原型开发速度、内容建设速度可能提高60%。

因为公司有好几个子网站要改版,目前这个子网站,我把负责人的位子交出来了,离开成都来大连(和老婆团聚一段时间),我只专注于原型和界面评审,也就是用户看到的那部分。因为,我确实不想这样内耗,或许那位做老网站的员工和业务员、老板处容易些(企业基因啊,我是外来基因)。

大家看到这样的案例后,对团队协作和单人作战,以及项目开发过程(需求、原型、开发、内容)与进度的关系,有什么新的看法?如果这样一个项目,你是负责人,你会怎么做?

论坛徽章:
0
2 [报告]
发表于 2011-03-01 20:58 |只看该作者
需要有效沟通,需要激情。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP