在从事ERP软件研发工作历程中感触颇多,与大家分享:
个人认为研发一个成功的软件需要在以下方面着手:
1. ERP软件企业的软件与ERP软件企业的管理
一个管理软件企业的管理理念将会或多或少地融入到其产品中去。因此一个管理软件企业自身管理的好坏对整个产品的成功至关重要。
2. 对目标客户现在和将来几年内需求的真正认知
如果仅仅知道某个客户有某个需求,但是并不知道某项功能有多少比例的目标客户采用,在这种情况下决定将这一功能作到产品中,而不是为某些客户提供二次开发来解决问题,是非常仓促的。因此,在研发一个ERP产品前首先要知道目标客户现在需要什么?在产品生命周期中还可能会有什么需求?其次要清楚我们怎样满足用户各种各样的需求。这里衡量满足刻户客户需求好坏的是用户的满意度、我们的净利润的高低。
3. ERP软件企业应该是个学习型组织
这里所说的学习型组织不仅仅停留在积累竞争对手的产品知识、相关信息、客户资源等方面,还需要从组织的开发过程管理等各项任务中进行不断学习、总结、改进。以使企业管理不断进步,使企业在产品研发工作中积累丰富的经验,久而久之,形成一套适合本组织的产品研发方法。这有点象闭环控制系统,还有点象精益生产方式。这也是自我学习型组织的一个显著特征。学习型组织也犯错误,但不会长期重复犯同样的错误。学习型组织会从以前的错误中找到解决问题的办法。
4. 团队的作用
构建一个良好的团队对整个研发过程的成败至关重要。在团队中,要有主抓管理的核心成员,要有主抓技术的核心成员,并进行合理分工、协作。而且团队可以有多个层次:核心团队负责涉及全局问题的决策,次核心团队对核心团队负责,负责日常计划、技术等各项问题的决策等。团队的成员应该打破需求、设计、开发的界限,采用大模块方式更加适合并行开发。
另外,团队管理中,统一思想很重要。只有大家心往一处想、劲往一处使,才能如期达到目标。有计划地定期沟通是解决这一问题的好办法。
5. 如何组织并行开发
研发的并行方式是指需求工作、设计工作、代码开发工作、测试工作的并行。但是这为整个研发过程的组织带来了很大难度。并行开发的每个环节如果没有有效的计划管理、进度控制、质量管理,最终只能导致混乱、效率低下和大量的重复工作。因此,此时上道工序的质量好坏将对后续工序产生严重影响。这里,需要借鉴精益生产方式的方法,不让上道工序的次品流到下一工序。这需要通过TQC和严格的质量把关来实现减少返工、缩短工期的目的。
6. 如何有效组织具体工作
大型软件项目的研发最大的成本就是人员工资。因此如何充分发挥每个人的作用至关重要。这就需要制定一套周密的滚动研发计划,并逐级层层细化到每个人,为每个人制定一个可行的近期、中期计划。
7. 合理控制项目预算
项目预算一旦制定,就要起到良好的控制作用。多从提高效率上下工夫。
8. 使用管理软件辅助管理
如Clearcase、Rose、Project、MSN等都是很好的管理工具。还可以自己根据需要开发一些工具软件解决所面临的具体问题。