企業(yè)如何推行IPD+敏捷開發(fā)模式

發(fā)布日期:
2020-02-28

瀏覽次數(shù):

漢捷研發(fā)咨詢 孫豪亮

?

隨著越來越多的企業(yè)自行或者在咨詢公司的幫助下導(dǎo)入IPD,IPD已經(jīng)在國內(nèi)很多企業(yè)發(fā)揮了巨大的作用,對于涉及軟件開發(fā)的企業(yè)來說,IPD與CMM的結(jié)合,效果還是非常不錯的,但是隨著敏捷開發(fā)理論及實踐的不斷發(fā)展,敏捷開發(fā)也帶來了另一種不錯的選擇,特別是對于一些外部環(huán)境復(fù)雜、客戶需求變化快的企業(yè)而言,敏捷與IPD的結(jié)合也成了企業(yè)當(dāng)前推行或者預(yù)備導(dǎo)入IPD面臨的一個難題。華為從1998年在IBM的幫助下引入IPD,采取的是IPD+CMM的開發(fā)模式,但是從2009年開始,華為大規(guī)模推行IPD+敏捷的開發(fā)模式,IPD+敏捷的開發(fā)模式不僅沒有降低華為產(chǎn)品的質(zhì)量,拖累企業(yè)的發(fā)展,反而讓華為產(chǎn)品更加完美的滿足了客戶的需求。

IPD模式下如何進行敏捷開發(fā),筆者通過分析成熟應(yīng)用敏捷開發(fā)的企業(yè)的成功實踐,特別是重點對比分析華為的IPD+敏捷開發(fā)模式,發(fā)現(xiàn)華為等企業(yè)在這種開發(fā)模式上的成功,其實有著必然的因素,也可以這么說,在IPD+敏捷的開發(fā)模式上有著多種成功且成熟的實踐,這些好的實踐主要體現(xiàn)在如下方面:

首先是堅持系統(tǒng)工程分析過程,這是IPD與敏捷開發(fā)銜接的關(guān)鍵點。

推行IPD不是意味著固定的開發(fā)流程和開發(fā)節(jié)奏,推行敏捷開發(fā)也不是意味著一定要靈活,不寫文檔,很多企業(yè)軟件人員甚至高層管理者對敏捷開發(fā)的理解存在誤區(qū),筆者曾在某企業(yè)調(diào)研,企業(yè)在之前已經(jīng)自行導(dǎo)入IPD,建立了IPD流程,對于軟件開發(fā),引入了敏捷開發(fā)。筆者對敏捷開發(fā)推行現(xiàn)狀做了交流,發(fā)現(xiàn)企業(yè)對敏捷開發(fā)的整體感受就是每天召開了站立會議,以及不要寫文檔。同時在對企業(yè)的全面調(diào)研中還發(fā)現(xiàn),軟件和硬件之間缺乏有效協(xié)同,硬件對軟件的需求變更頻繁,而且軟件和硬件開發(fā)節(jié)奏也不同步。

敏捷開發(fā)針對各軟件開發(fā)組,但是一個產(chǎn)品不僅是一個軟件開發(fā)組,一般都會包含多個軟件開發(fā)組,還會包含硬件、結(jié)構(gòu)、電氣等開發(fā)小組,各開發(fā)組只是整個新產(chǎn)品開發(fā)的一部分,之前的產(chǎn)品整體需求分析、產(chǎn)品總體設(shè)計對軟件開發(fā)影響重大。需求分析的充分完整,可以有效減少軟件開發(fā)的不確定性,減少需求變更,降低設(shè)計,提高設(shè)計效率。敏捷開發(fā)的適應(yīng)外部需求的變更并不意味著無限的需求變更。IPD與敏捷的結(jié)合的關(guān)鍵是需求,即Product Backlog。系統(tǒng)工程的作用,就是把市場/客戶需求,以及內(nèi)部需求,通過需求分析、總體設(shè)計,明確各軟件開發(fā)組需求,系統(tǒng)工程是IPD與敏捷銜接的關(guān)鍵過程。

其次是產(chǎn)品開發(fā)管理思想的轉(zhuǎn)變。

一方面是管理者與團隊成員的思想的轉(zhuǎn)變。對于管理者,傳統(tǒng)的CMM管理強調(diào)計劃的控制,控制是主旋律,管理者組織制定詳細的工作計劃,從上往下分配工作。而敏捷開發(fā)強調(diào)管理者的支撐及引導(dǎo)職能,強調(diào)管理者要去激發(fā)、激勵團隊,想辦法建設(shè)自組織自管理團隊,通過設(shè)立目標(biāo)去牽引團隊成員,幫助團隊成員去完成工作任務(wù)。對于團隊成員,傳統(tǒng)的CMM對團隊成員的定位是聽從命令做工作,重視文檔交付,任務(wù)相對單一,聚焦專項能力。在敏捷開發(fā)模式下,強調(diào)團隊成員的重要性,關(guān)注團隊成員的工作積極性,強化任務(wù)的主動參與及認領(lǐng),任務(wù)可以多樣化,面對面交流是主要交流方式。

另一方面是敏捷開發(fā)強調(diào)簡單管理規(guī)則,如站立會議的“三固定”原則、燃盡圖、CI運作規(guī)則等,與傳統(tǒng)CMM模式對比,敏捷開發(fā)的簡單管理規(guī)則,可以讓管理運作高效。

最后,是敏捷實踐過程中工具的應(yīng)用。

敏捷開發(fā),不僅是流程、實踐、新管理思想的應(yīng)用,高效工具的引入對敏捷的效果發(fā)揮至關(guān)重要。可以設(shè)想下,如果沒有持續(xù)集成工具,如何保證每日集成的正確性?沒有自動化測試,如何保證代碼重構(gòu)的正確性并及時驗證?等等。因此,推行敏捷開發(fā),必須重視工具的導(dǎo)入,華為在敏捷開發(fā)的推行過程中就自行研發(fā)并且同步引入了大量的工具以提高開發(fā)及測試效率。

IPD+敏捷開發(fā)模式的推行,不是一蹴而就的事情,可以實施分步走的策略。如下是某企業(yè)推行IPD+敏捷開發(fā)的“三步走”策略,可供正在或者未來希望采取IPD+敏捷開發(fā)模式的企業(yè)作為借鑒:

三步走核心思想:敏捷轉(zhuǎn)型成功的關(guān)鍵是團隊意識的轉(zhuǎn)變和能力的提升,通過三步走的策略,實現(xiàn)人員技能、工程能力、流程、工具等方面的積累,在風(fēng)險可控的情況下逐步達到全面敏捷的目標(biāo)。

企業(yè)如何推行IPD+敏捷開發(fā)模式

項目級敏捷:實施的范圍限定在TR2-TR4A,聚焦單個項目組或多個項目組協(xié)同的開發(fā)過程和能力改進;對IPD流程的對外交付點及非研發(fā)領(lǐng)域(用服、Marketing等)沒有影響。

版本級敏捷:版本級敏捷實施的范圍將擴展到TR1’-TR6,對架構(gòu)、設(shè)計、非研發(fā)領(lǐng)域協(xié)同(用服,Marketing等)等多個方面能力提出了更高的要求;版本具備按特性向最終客戶分批交付的能力,加快對用戶響應(yīng)速度(TR1’表示在版本級敏捷下的TR1定義和當(dāng)前IPD流程中定義的TR1將會有區(qū)別)。

產(chǎn)品級敏捷:實施范圍擴展到產(chǎn)品的全生命周期(含所有版本),以更小的需求包接納客戶需求,給用戶提供更快的市場響應(yīng)速度,將在規(guī)劃、組織結(jié)構(gòu)、主流程、市場、財務(wù)、供應(yīng)鏈、商務(wù)等方面帶來巨大挑戰(zhàn)。


相關(guān)推薦