精益管理的思想起源于豐田公司,歸納起來精益思想是在創(chuàng)造價值的目標(biāo)下,通過改良流程不斷地消除浪費(fèi)?,F(xiàn)已被廣泛用于生產(chǎn)制造管理,但用于IT軟件項(xiàng)目產(chǎn)品開發(fā)的實(shí)踐尚屬鳳毛麟角。
不久前在廣州,筆者參加了一家軟件公司主辦的關(guān)于軟件項(xiàng)目開發(fā)的高層研討會,其間有兩個問題討論非常熱烈,值得與大家分享。第一個問題是:“有多少人的工作跟項(xiàng)目開發(fā)管理相關(guān)?”大部份的人舉起了手。但第二個問題是:“有多少人了解軟件項(xiàng)目開發(fā)精益管理的方法?”舉手的人就寥寥無幾了。我們看到這個討論的話題時,許多人發(fā)出了一種會心的微笑,在笑容的背后感到這又可能是一個外行人指導(dǎo)和領(lǐng)導(dǎo)內(nèi)行人的炒作話題吧。但經(jīng)過大家的研討,發(fā)現(xiàn)在做IT軟件項(xiàng)目開發(fā)的時候,也應(yīng)該跳出本行業(yè)局限的眼光,看看外面其它行業(yè)的思想和方法,從中吸收有益的精華。
精益,是一種思想,一種哲學(xué),一個方法論,其精髓是拒絕浪費(fèi)。我們IT項(xiàng)目開發(fā)學(xué)習(xí)的不是“精益生產(chǎn)”的形式,而是其精髓思想。這種思想,不僅可以用于生產(chǎn),也可以滲透到IT軟件項(xiàng)目開發(fā)中。在研究會上,我們討論到一個借鑒了精益思想的IT項(xiàng)目開發(fā)是一個系統(tǒng)的觀念。一般來說,IT軟件項(xiàng)目精益開發(fā)系統(tǒng)包括三個要素,即人、流程和技術(shù)。以借鑒到IT軟件項(xiàng)目精益開發(fā)來說,就是需要為IT項(xiàng)目的開發(fā)提出一系列的流程,培養(yǎng)技術(shù)隊(duì)伍,運(yùn)用最有效的技術(shù)和工具。同時,必須注意要把這三個方面整合在一起,成為一個協(xié)調(diào)發(fā)展的系統(tǒng)。
例如在人的方面,精益思想強(qiáng)調(diào)如何將每個員工的能力發(fā)揮到極限,認(rèn)為不應(yīng)該只是簡單的管理人,而應(yīng)該去培訓(xùn)人。如果不能將管理的重點(diǎn)放在員工的培養(yǎng)上,就不能理解精益生產(chǎn)的真理。同時,精益生產(chǎn)的另一個精髓是管理過程,精益思想不是著眼于結(jié)果,而是強(qiáng)調(diào)過程?!爸粚Y(jié)果管理”的管理思路的結(jié)果是員工對找借口、為結(jié)果辯護(hù)很在行,對數(shù)據(jù)、報(bào)告很在行,但軟件項(xiàng)目成果的質(zhì)量只有在全過程都有效控制下才能得到根本的保證。
一. 建立順暢的開發(fā)流程
確定高效的IT軟件開發(fā)流程,是精益思想開發(fā)的第一個精髓。
如何創(chuàng)建一種高效、順暢的軟件項(xiàng)目開發(fā)流程?首先,精益思想提出強(qiáng)調(diào)“建立健全研發(fā)流程“。所謂精益軟件開發(fā)思想包含了一整套的方法論和實(shí)施方法。精益軟件開發(fā)將精益生產(chǎn)中持續(xù)改進(jìn)的概念引入到軟件開發(fā)過程之中,實(shí)現(xiàn)對軟件開發(fā)過程進(jìn)行精益管理。實(shí)現(xiàn)精益軟件開發(fā)的核心在于:建立一套完整的開發(fā)流程,然后建立一套測量流程的手段,不斷持之以恒地改善流程,不斷優(yōu)化,堅(jiān)持不懈。
不同的企業(yè)因定位不同,對于研發(fā)的價值理解也是不一樣的,他們的流程和實(shí)現(xiàn)流程的工具肯定是完全不一樣的。但我認(rèn)為軟件開發(fā)人員應(yīng)當(dāng)向豐田公司的產(chǎn)品開發(fā)流程學(xué)習(xí)和借鑒。目前,豐田內(nèi)部的精益開發(fā)步驟是這樣的:首先,在客戶需求的基礎(chǔ)上,對工作進(jìn)行分辨,區(qū)分出哪些部分是能夠滿足客戶需求的有效部分。如果工作中的某些流程生產(chǎn)出的結(jié)果并不能滿足客戶的需求,便是一種浪費(fèi),就不是增值的流程和操作。因此,精益開發(fā)首先需要了解客戶需求。此后,需要對工作流程進(jìn)行細(xì)化分割,把流程分成更細(xì)微的步驟,并保證每個步驟都能滿足客戶的需求,增加價值。
其次是流程的標(biāo)準(zhǔn)化和可操作化,這是精益思想流程的基礎(chǔ)之一。在軟件開發(fā)過程中,每個企業(yè)的現(xiàn)狀不同,因此產(chǎn)品開發(fā)的方式也不同。但精益思想提到如何關(guān)注研發(fā)流程,讓管理流程“落地”,并要讓流程規(guī)范起來,不再是像過去把好流程放在紙上,靠人去管理。固化和標(biāo)準(zhǔn)化開發(fā)流程就是一個方式。
二.引入首席項(xiàng)目主管負(fù)責(zé)制
精益軟件開發(fā)的第二個精髓,是將合適的人員安排在合適的崗位上,建立一個有效的軟件項(xiàng)目開發(fā)