一、企業(yè)在應(yīng)用過程裁剪時的常見問題
如果公司有QA,也有《裁剪指南》,那就好辦了,我可以在QA的幫助下使用《裁剪指南》裁剪得到項目的過程,執(zhí)行就是了。但如果公司沒有QA的角色,我就只能自己進(jìn)行裁剪了?墒牵脺p的結(jié)果需要有人批準(zhǔn)嗎?
在這里,我們假定完整的公司級標(biāo)準(zhǔn)過程體系是包括了企業(yè)的方針、過程、指南、模板和表單等一整套的體系。那么,項目經(jīng)理該如何是好?
二、過程裁剪的目的和作用
建立裁剪指南的目的是用來指導(dǎo)項目對組織標(biāo)準(zhǔn)過程(Organizational Standard Process, OSP)進(jìn)行裁剪,以形成符合項目特點(diǎn)的項目定義過程(Process Defined Process, PDP)。
組織標(biāo)準(zhǔn)過程是在企業(yè)的層面上描述的,它包括了開發(fā)一個完整產(chǎn)品/項目的全過程,以及相應(yīng)的支撐過程,它是一個企業(yè)運(yùn)作的過程的全集。因此,每個特定的項目都可能無法直接使用組織標(biāo)準(zhǔn)過程。比如,組織標(biāo)準(zhǔn)過程描述了開發(fā)一個系統(tǒng)級產(chǎn)品的完整過程,開發(fā)過程中包括了軟件、硬件、結(jié)構(gòu)、工業(yè)設(shè)計等開發(fā)過程。而某個特定項目僅僅包括純軟件的開發(fā)工作,在這種情況下,該項目無法也不應(yīng)該盲目遵照執(zhí)行完整的過程。或者,某個特定項目,項目的成功標(biāo)準(zhǔn)是按時交付,而客戶要求的項目交付期特別短。為了達(dá)成這個目標(biāo),項目也不得不對過程進(jìn)行裁剪以滿足客戶的需要。裁剪指南就是來幫助項目裁剪組織標(biāo)準(zhǔn)過程,以形成項目定義過程,使用項目定義過程來管理項目,實現(xiàn)項目的目標(biāo)。
裁剪指南能確保所有項目在定義項目特定的工程活動、需求開發(fā)和管理、計劃、監(jiān)控、測量分析、配置管理、質(zhì)量保證過程時有一個共同基礎(chǔ)。裁剪指南主要可在以下方面指導(dǎo)項目:
1. 選擇適當(dāng)?shù)纳芷冢ㄊ墙M織標(biāo)準(zhǔn)過程中的一部分),由于各種生命周期模型在軟件工程領(lǐng)域已經(jīng)有深入的研究,業(yè)界對于瀑布模型、迭代模型、增量模型、螺旋模型的使用場合等也基本達(dá)成了共識。因此,項目只需要將項目的實際特點(diǎn)與生命周期模型的應(yīng)用場合相匹配,選擇合適的生命周期類型即可。
2. 剪裁組織標(biāo)準(zhǔn)過程和所選擇的軟件生命周期,使之符合項目的具體特點(diǎn)。
三、如何進(jìn)行過程裁剪
1. 裁剪的原則
本文中多次提到“項目特點(diǎn)”一詞,項目特點(diǎn)包括了:①項目規(guī)模,如大、中、小等,通常可以使用功能點(diǎn)(Function Point)或KLOC(千行代碼)、單板數(shù)等單位進(jìn)行度量;②項目類型,如開發(fā)、維護(hù)、功能增強(qiáng)等;③項目技術(shù)復(fù)雜度;④項目周期;⑤產(chǎn)品種類等要素。項目特點(diǎn)是裁剪依據(jù)和出發(fā)點(diǎn)。裁剪指南應(yīng)包括以下的內(nèi)容:
1)明確可裁剪的對象。可裁剪對象確定了裁剪的范圍,可裁剪對象不僅限于過程元素和活動,還包括標(biāo)準(zhǔn)、方法和工具、輸出的工作產(chǎn)品及模板等。
2)確定裁剪所考慮的要素。對于某個裁剪對象,其范圍、頻度、正式度等都是裁剪要素。如,對于已有類似開發(fā)經(jīng)驗的項目,可以適當(dāng)減少過程培訓(xùn)、業(yè)務(wù)培訓(xùn)等活動;對于開發(fā)周期較短的項目,可以適當(dāng)合并一些評審活動,如概要設(shè)計和詳細(xì)設(shè)計評審合并進(jìn)行。
項目在進(jìn)行裁剪時,由于裁剪指南很難枚舉所有的裁剪情況,因此有時還是需要項目經(jīng)理和QA依據(jù)經(jīng)驗進(jìn)行判斷和決定,這時,最根本的依據(jù)就是項目的質(zhì)量要求和對風(fēng)險的考慮。首先要分析如果一旦裁剪掉某些活動,是否會給項目帶來風(fēng)險,帶來多大的風(fēng)險,以及是否影響項目質(zhì)量目標(biāo)的達(dá)成。然后綜合考慮后才能決定是否裁剪,如何裁剪。
另一方面,企業(yè)建立標(biāo)準(zhǔn)過程的目的不是為了“為了規(guī)范而規(guī)范”,而是為了提高過程和技術(shù)的重用。因此,如果項目在裁剪時有很大的靈活度,每個項目定義的過程都很隨意或者項目過程之間相似的內(nèi)容很少,那么重用的目的就很難實現(xiàn)了。所以,規(guī)范度和靈活度是項目裁剪時需要平衡的另外兩個要素。
概括之,過程裁剪的原則是:質(zhì)量與風(fēng)險并重,規(guī)范與靈活的平衡。
2. 裁剪的過程
1)根據(jù)組織標(biāo)準(zhǔn)過程和裁剪指南,進(jìn)行過程裁剪,以符合項目特征。項目經(jīng)理在QA的協(xié)助下完成該項工作。
2)記錄裁剪的理由,將裁剪的結(jié)果整理成項目定義過程文檔。
3)EPG(工程過程組)審核裁剪理由和項目定義過程,并批準(zhǔn)。審核的檢查點(diǎn)主要包括:是否與組織標(biāo)準(zhǔn)過程一致,是否符合本項目的特點(diǎn),是否記錄了充分的裁剪理由。如果審核不通過,則重新進(jìn)行過程裁剪,或進(jìn)行修改。
4)使用項目定義過程就是要基于項目定義過程制定項目計劃,根據(jù)計劃監(jiān)控項目的實施。
5)應(yīng)避免的誤區(qū)
四、“裁剪”而非“裁減”
常常見到企業(yè)的過程體系中赫然存在一份《裁減指南》,員工也往往認(rèn)為裁剪就是大刀闊斧地“減少”完整的過程要求。如果項目時間緊、缺乏資源,就可以這么做。這是一個認(rèn)識的誤區(qū)。
所謂“裁剪”就是量體裁衣,根據(jù)項目特點(diǎn)量身定做最適合項目的過程,以期項目用最經(jīng)濟(jì)的過程實現(xiàn)質(zhì)量目標(biāo)。對于一個開發(fā)周期超過1年的系統(tǒng)級產(chǎn)品的開發(fā),公司定義的四大決策評審點(diǎn):概念決策、計劃決策、可獲得性決策和生命周期決策,以及六大技術(shù)評審點(diǎn),技術(shù)評審1至6,可能“一個都不能少”。而對于一個快速定制開發(fā)的項目而言,很可能只需要將概念和計劃決策合并為一個決策評審點(diǎn),某些技術(shù)評審點(diǎn)也可以合并。
五、直接用項目定義過程來管理項目
有些項目經(jīng)理認(rèn)為裁剪得到了項目定義過程,然后就可以開始項目的具體工作了。但項目定義過程并非項目計劃,更不能替代項目計劃。項目經(jīng)理應(yīng)基于項目定義過程制定項目的WBS(工作分解結(jié)構(gòu)),以WBS為基礎(chǔ)進(jìn)行工作量、規(guī)模和進(jìn)度估算,制定項目進(jìn)度表和完整的項目計劃。后續(xù)工作要以項目計劃為基礎(chǔ)監(jiān)控項目的實施。
在過程中,項目還要記錄、收集和分析實施中的度量數(shù)據(jù),用于監(jiān)控項目。一些常見的問題、風(fēng)險和經(jīng)驗教訓(xùn)總結(jié)更應(yīng)該提升到組織層面進(jìn)行統(tǒng)一管理和協(xié)調(diào)。從而不斷改進(jìn)組織標(biāo)準(zhǔn)過程,形成閉環(huán)。
六、不允許裁剪過程,或者裁剪有很大的靈活度
有些企業(yè)在剛剛建立過程體系時,由于很難立即制定一份完善的裁剪指南,所以干脆一刀切,不允許裁剪過程。但這樣硬性規(guī)定的結(jié)果是一些維護(hù)型、功能增強(qiáng)型的項目要么就是在搞不清狀況的情況下照著完整的過程執(zhí)行,生成很多文檔,也延誤了開發(fā)周期,降低了效率;要么干脆拒絕執(zhí)行過程,仍然按照過去的工作方式開發(fā)。顯然,這就違背了建立過程體系的初衷。
另一個極端是企業(yè)允許過程裁剪有很大的靈活度,卻沒有設(shè)定一些原則。這樣的結(jié)果往往是項目隨心所欲地裁剪過程,最終項目形成的過程資產(chǎn)的可重用性非常低。
針對規(guī)范性和靈活度的平衡,很多企業(yè)倡導(dǎo)“先僵化,后優(yōu)化”的原則,在過程建立的初期盡量削足適履,等到積累了一些經(jīng)驗后再優(yōu)化過程,形成更易操作的裁剪指南。