最近有一个项目进度明显缓慢,项目组开发人员的状态也有些低迷,客户也对项目的进展不太满意,项目组成员对项目成功的信心也明显有些不足,静下心来总结了一下项目组中现存在的严重问题:
1:对员工的绩效考核不到位:应该积极实施对员工的监督和管理,以提高他们的积极性和工作效率。
2:工资需要改革:不提倡一成不变的工资制度,奖罚分明,降低基本工资,提高奖励额度。
3:正确选择管理者,并提高管理者的责任感和管理能力:让管理者充分发挥带头作用。
4:控制好员工的离职频率。
5:把项目风险分摊给每个员工,让每个员工都有责任感。
6:其实一切问题的根源就在于对整个项目的整体宏观的管控能力没做好、每天、每周、每月的管理工作都没做好,也不能全怪项目组成员包括项目经理,人无完人,鸟为食亡、人为财死,大家都追逐个人利益也可以是理解的,但是这一切需要建立在把工作做好了才可以,所谓的管理无止境就是指这个吧。
对项目救急采取的各项措施:
1:对项目中途离职核心开发人员进行经济制裁,做一些警示作用。
2:更换项目经理、让这个不合格的项目经理办理好交接手续、离开这个开发团队。
3:把每个项目组成员的工资进行绩效工资改革,工资组成部分为,基本工资+绩效考核+项目奖金。
4:制定严格的项目进度计划、明确每个人的工作量、把需要完成的工作,都明确好,每3天检查一次项目进展情况。
把项目与测试进行严格分工:
1:增加2个专门的测试人员,把所有的程序的表面错误都测试整理好,经过5天的测试,测试出300多个表面性的Bug。
2:简单的Bug,由这2个测试人员修改,复杂的跟业务有关的错误,还是由开发人员开发,每天汇报一次Bug的处理情况。
3:每天晚上开项目报告会议,每个程序员会议室投影讲解今天都干了什么,并明确明天都要完成哪些工作任务?每天完成的程序当天晚上就演示一遍。
4:把测试人员没修改好的错误,列出清单,投影上讲解还有哪些错误没修正好?并明确指派什么时间限制内由谁修改好?
5:把整个项目运行一遍,把所有的表面性的错误,注意事项都讲解一遍,相关的开发人员都记录好主意事项,第2天确认修改情况。
6:把所有还没做好的工作内容整理好,按目标计划制定严格的项目组开发计划表。
7:同时请公司里熟悉业务的人员,对业务逻辑功能部分进行严格的错误测试,并收集整理好测试结果。
8:安排专业人员,编写软件的使用手册,安装手册等,同步进行,争取缩短整个项目的开发周期。
9:储备好网上的兼职开发人员,有些技术难题型的工作任务外包给网络上的开发人员,并控制好预算、进度、外包工作任务明确描述等等。
把开发工作与测试工作分开后的优点缺点简单总结如下:
1:增加了2个人的成本,项目的总成本增加了很多,但是为了遵守合同、按时交付软件项目已经超出了是否费用超支的说法了,不能在乎这2个人的成本了。
2:开发人员可以相对安心继续开发未完成的核心业务功能,不影响整个项目的进度。
3:前期已经开发好的程序代码,可以进行错误测试,可以列出所有的错误后,我们心里有底,到底有哪些错误还没修改完,开发人员也有个荣誉感在里面,会及时修正错误。
4:测试人员的测试效率会比开发人员高很多,因为没几个人能测试出自己的错误,特别是开发人员很难测试出自己的错误,能做出0Bug程序的开发人员都是顶尖的开发人员,在我眼里都是特牛的开发人员。
5:让这2名测试人员,把所有项目源码里的程序注释、编码规范,都检查一遍,利于后期的项目的维护改进。
就这样折腾了2周不到,项目有了明显的改观,项目成员人心稳定了,各自分工明确了,每天也有了明显的进展,大家对项目的胜利的信心更足了。扭转一个项目的局面的确需要很强的心力,特别是工期相对短、项目的工作量也大、业务也有一定的复杂性时,更需要强有力的项目领导指挥能力。
大家有什么好的建议也可以补充,欢迎交流。
由于整个项目的开发是基于通用权限管理系统的,所以避免了项目彻底失败的可能性,整个项目的基础是完善稳定的,所有的管理工作都可以围绕在业务开发上,可以减少很多在基础性的开发上的时间的耗费,从头到尾都不会失去对整个项目的绝对控制能力。