在產品開發全過程中,就每一活動所需要的時間及費用,不同層次人員、部門之間依次做出承諾。
3)項目和管道管理
項目管理是使跨部門團隊集合起來更好地行動的關鍵。首先要有一個目標即項目所要達到的效果,一旦我們將客戶的需求轉換為對產品的需求時,就可以制定詳細計劃。該計劃中的各部分將具體劃分為每個職能部門的工作,即這個計劃不只是研發部門的計劃,也是公司各個部門共同的計劃。一個產品從概念形成到上市期間會涉及到許多不同的緊密相聯的活動,就好像不同職能部門彼此之間是有關係的。同樣在一個項目中他們彼此之間的活動也是有關聯的,所有的活動加起來就是整個的產品開發。
接下來安排活動的時間,然後對每個活動進行預算和資源的調配,在項目實施過程中還需要不斷地與計劃對照,因為沒有任何一個計劃是完善的,所以可以在細的層面上對計划進行一定的調整,但是PDT做出的承諾不能改變。整個項目的進行過程都需要PDT的參與,因此,PDT在產品開發全流程中自始至終存在。
管道管理類似於多任務處理系統中的資源調度和管理,指根據公司的業務策略對開發項目及其所需資源進行優先排序及
動態平衡
的過程。
3、產品重整
IPD提高開發效率的手段是產品重整。產品重整主要關註於非同步開發和共用基礎模塊(CBB)。
1)非同步開發(並行工程)
非同步開發模式的基本思想是將產品開發在縱向分為不同的層次,如技術層、子系統層、平臺層等。不同層次工作由不同的團隊並行地非同步開發完成,從而減少下層對上層工作的制約,每個層次都直接面向市場。
通常,在產品開發過程中,由於上層技術或系統通常依賴於下層的技術,因此,開發層次之間的工作具有相互依賴性,如果一個層次的工作延遲了,將會造成整個時間的延長,這是導致產品開發延誤的主要原因。 通過減弱各開發層次間的依賴關係,可以實現所有層次任務的非同步開發。
為了實現非同步開發,建立可重用的共用基礎模塊是非常重要的。
2)共用基礎模塊
共用基礎模塊(Common Building Blocks, CBB)指那些可以在不同產品、系統之間共用的零部件、模塊、技術及其他相關的設計成果。由於部門之間共用已有成果的程度很低,隨著產品種類的不斷增長,零部件、支持系統、供應商也在持續增長,這將導致一系列問題。事實上,不同產品、系統之間,存在許多可以共用的零部件、模塊和技術,如果產品在開發中儘可能多地採用了這些成熟的共用基礎模塊和技術,無疑這一產品的質量、進度和成本會得到很好的控制和保證,產品開發中的
技術風險
也將大為降低。因此,通過產品重整,建立CBB資料庫,實現技術、模塊、子系統、零部件在不同產品之間的重用和共用,可以縮短產品開發周期、降低產品成本。 CBB策略的實施需要組織結構和衡量標準的保證。
不管是非同步開發還是共用基礎模塊的實現,都需要很高水平的系統劃分和介面標準制訂,需要企業級的構架師進行規劃。
先看一下CMMI在
CMM
的區別。CMMI與SW-CMM的主要區別在三個方面:專業領域、成熟度等級和過程域、模型結構。與CMM相比,CMMI覆蓋4個專業領域,即
軟體工程
(SW)、系統工程(SE)、集成的產品和過程開發(IPPD)、採購(Supplier Sourcing)。
IPD與CMMI起源和出發點的不同,決定了兩者具有很大的區別。CMM是SEI針對軟體質量保證制定的能力成熟度模型,與
ISO9000系列標準
和MIL標準一樣,均屬於過程質量模型。CMMI是在CMM的基礎上發展起來的,與CMM一樣,本質上關註的是
過程質量
。而IPD著眼於產品開發獲得市場成功,是在
PACE
(
產品及周期優化法
)等產品開發模式的基礎上,經過一些領先企業(如IBM)的實踐發展起來的。 IPD關註的是將影響產品成功的關鍵要素(如結構化流程、
產品決策
評審、產品開發團隊等)有機地整合起來,形成集成的產品開發模式,推動產品的成功。
具體而言,IPD與CMMI在以下方面具有明顯的區別:
1、 兩者的層面不一樣
IPD是企業層面的一套產品開發管理的思想、模式和方法,本質上是一種產品經營管理的模式。CMMI是面向研發的,而且更多是面向軟體開發的。
2、思想高度不一樣
兩者目的的不同也導致了思想的不同。CMMI主要倡導通過過程和活動來保證質量。可見,IPD是從更高和更加全面的角度來看待產品開發的。
3、對流程的結構化不一樣
IPD首先把產品開發看作一個流程,包括概念、計劃、開發、驗證、發佈、生命周期管理6個階段,在此基礎上,IPD建立一個涵蓋了流程概覽、階段流程、子流程和模板的分層結構框架,對涉及到的產品開發活動進行合理的結構化。
CMMI
把流程分解為一個個
關鍵過程域
(
KPA
),是相對離散地來定義流程的,這決定了在CMMI體系下,產品開發流程的結構化不夠。
4、管理的範圍不一樣
IPD需要對所有的產品開發活動進行管理,橫向上涉及市場、設計、測試、試製、製造、採購、服務、銷售、財務各功能部門在產品開發中的活動,縱向上涉及決策、管理、執行三個層面。而CMMI主要是面向研發部門的活動,如軟體開發、
系統集成
、項目管理等。對於軟硬體相結合的高科技產品而言,軟體開發的工作量往往占整個開發工作量的50-60%,而硬體開發又可能占到15-20%,所以CMM可以管到50-60%的開發活動,而CMMI可以管到65-80%的開發活動。
5、 關註重點不一樣
IPD不僅關註把事情做正確(do the things right),同時也關註做正確的事情(do the right things),所以IPD既強調執行的重要,也強調決策的重要。CMMI主要關註執行,即把事情做正確(do the things right),而且CMMI對如何執行好開發活動要求更規範、更細。
6、人員管理不一樣
IPD包括了對團隊和個人的考評,如對集成組合管理團隊(IPMT)和產品開發團隊(PDT)的評估。
CMMI則不包括人員管理的內容。當然,SEI開發了主要針對軟體開發
人力資源管理
的P-CMM。
儘管,IPD與CMMI有這麼多的不同,但就對具體流程和活動進行管理而言,兩者所依據的原則、方法和實踐是相通的和一致的,所以企業在優化產品開發體系時,完全可以將兩者融合,實施IPD+ CMM/CMMI的解決方案。事實上,一些企業(如華為、許繼電氣、優特科技)在融合IPD和CMM/CMMI方面已經取得了成功的經驗。