精益管理在开发项目上三大精髓
精益,是一种思想,一种哲学,一个方法论,其精髓是拒绝浪费。我们IT项目开发学习的不是“精益生产”的形式,而是其精髓思想。这种思想,不仅可以用于生产,也可以渗透到IT软件项目开发中。在研究会上,我们讨论到一个借鉴了精益思想的IT项目开发是一个系统的观念。一般来说,IT软件项目精益开发系统包括三个要素,即人、流程和技术。以借鉴到IT软件项目精益开发来说,就是需要为IT项目的开发提出一系列的流程,培养技术队伍,运用最有效的技术和工具。同时,必须注意要把这三个方面整合在一起,成为一个协调发展的系统。
例如在人的方面,精益思想强调如何将每个员工的能力发挥到极限,认为不应该只是简单的管理人,而应该去培训人。如果不能将管理的重点放在员工的培养上,就不能理解精益生产的真理。同时,精益生产的另一个精髓是管理过程,精益思想不是着眼于结果,而是强调过程。“只对结果管理”的管理思路的结果是员工对找借口、为结果辩护很在行,对数据、报告很在行,但软件项目成果的质量只有在全过程都有效控制下才能得到根本的保证。
一、确定高效的IT软件开发流程,是精益思想开发的第一个精髓。
如何创建一种高效、顺畅的软件项目开发流程?首先,精益思想提出强调“建立健全研发流程”。所谓精益软件开发思想包含了一整套的方法论和实施方法。精益软件开发将精益生产中持续改进的概念引入到软件开发过程之中,实现对软件开发过程进行精益管理。实现精益软件开发的核心在于:建立一套完整的开发流程,然后建立一套测量流程的手段,不断持之以恒地改善流程,不断优化,坚持不懈。
不同的企业因定位不同,对于研发的价值理解也是不一样的,他们的流程和实现流程的工具肯定是完全不一样的。但我认为软件开发人员应当向丰田公司的产品开发流程学习和借鉴。目前,丰田内部的精益开发步骤是这样的:首先,在客户需求的基础上,对工作进行分辨,区分出哪些部分是能够满足客户需求的有效部分。如果工作中的某些流程生产出的结果并不能满足客户的需求,便是一种浪费,就不是增值的流程和操作。因此,精益开发首先需要了解客户需求。此后,需要对工作流程进行细化分割,把流程分成更细微的步骤,并保证每个步骤都能满足客户的需求,增加价值。
其次是流程的标准化和可操作化,这是精益思想流程的基础之一。在软件开发过程中,每个企业的现状不同,因此产品开发的方式也不同。但精益思想提到如何关注研发流程,让管理流程“落地”,并要让流程规范起来,不再是像过去把好流程放在纸上,靠人去管理。固化和标准化开发流程就是一个方式。
二、引入首席项目主管负责制
精益软件开发的第二个精髓,是将合适的人员安排在合适的岗位上,建立一个有效的软件项目开发组织。首席项目主管负责制度是精益软件在人员安排上的核心方式之一。每个项目的开发团队的都心须确立核心领头人,并要突出了首席项目主管的角色和地位。
首席项目主管必须非常清楚,他们接手任务之后,他就要开始考虑自己的设计思路,并把这个思路和团队交流。他的思路有两部分:一是勇于面对困难和挑战,当遇到挑战时可以这么做,也可以那么做,最终希望能在这些方案中达成平衡,而不是做退缩;二是要找到问题的根源。
首席项目主管应该具备三个能力,这也是丰田的标准:首先是很高的技术水平,是一个能力非常出色的总工程师,而且要对产品有整体意识和远见卓识。第二,要有项目管理能力,要代表客户,理解客户的需求。第三,要有出色的领导能力。
对于一个企业来讲,如果需要做软件精益开发,公司的结构也要做一些改组。精益思想建议采用的是一种矩阵式的组织架构。在这种架构中,团队按照具体项目和功能来划分,最大程度地使两者的优势结合在一起。比如说,首席项目主管整体负责一个项目,不同项目有不同的首席主管,他们可以组成首席主管团队。而对于各种不同的项目功能需求,又按软件不同的功能部分分组,负责每个功能小组的是职能部门经理,如某些不同项目可能用到共用的功能模块,各职能部门的工程师向该部门的经理报告,以实现按功能优化和同类经验共享。
其次,精益思想除了强调首席主管负责制度外,还提到一个重要的关于人的因素是:团队是推进精益管理的关键。通过推行精益管理,建立一个基业常青的团队,调动起每一个员工的积极性,只有这样才能推动开发项目各项工作持续发展。建立一个良好的团队则是企业能否有效实施精益管理的关键。
最后,精益管理的推进要以人为本,精益管理虽然有各种流程作为基础,但是运行这些体系和流程的是人。熟悉丰田精益方式的人都知道,丰田方式中一个很重要的内容就是人员管理,即“育成”。育是培育,成是成功,强调人才培养,把人才看作是人“财”。 一项针对包括丰田在内的50家具有百年历史的全球500强企业的调查显示,这些企业的共同之处,就是拥有共同的理想、共同的价值观、共同的行为准则的一支强大团队。
三、有效技术和工具的支持
精益思想软件项目开发的第三个精髓,是用工具和技术来支持流程和人的工作。在引进新技术方面,丰田奉行的原则不是积极倡导新技术,而是使用可靠的、已经过充分测试的技术。工具和技术的意义在于支持流程,而不是驱动它;是加强人的工作,而不是替代人。
无效的软件项目开发技术和工具会糟糕的在计划进度,成本和质量等方面带来失败,这将最终导致整个项目的失败。同时,没有有效的工具来支持会使项目开发处于非持续性和不完备状态。很多失败的项目中的教训揭示了能够充分地支持项目开发的工具简直太少了。很多时候,软件项目在没有监督和跟踪时都会变得失控。因此,要很好地完成项目,必须要有好的项目管理工具,进行有序的项目管理才能够实现。
精益软件开发在这里提到两个观念,一是软件开发应用到的技术平台,二是开发过程所使用的工具。软件开发应用到的具体技术平台,由于每个项目的需求和资金预算不一样,所使用软件开发技术平台也是各式各样,不能一言而简之。但精益思想重点提到的开发过程中工具的选择和使用。工具不一定要追求最新的,最高科技,最昂贵的工具。反而应该不断发挥团队的智慧,结合开发的具体情况,不断探讨实用的工具,减少浪费。
这里与大家分享一个有趣的例子,工具并不一定是最新的高科技的东西,有时它可以是很直观的方法。“大屋”是丰田普锐斯首席工程师想出来的一个工程合作方式。他把各个职能部门的工程师聚集在一个大房间里。在这里,他们把产品开发状态的信息打印出来,包括种种数据、成本、质量、进度等关键问题,贴在墙上,每个人都可以方便地查看、讨论。当他们在一个房间开会和沟通的时候,他们就更加融洽,交流得更好,更容易做出决定,从而缩短产品开发时间。“大屋”听起来很简单,甚至有点可笑,但是它支持了流程和人的工作,就是正确的工具和技术。
所以精益思想强调,首先正确设计你的流程,然后再去找合适的工具让这个流程开动起来。不管是软件开发用到工作工具,还是别的工具,只要能够支持这个流程,就是合适的工具。
上一篇:浅谈施工项目管理中的“三控三管一协调”
下一篇:管理辅导:工程项目如何开源增收