張?jiān)诤?/p>
(中船重工集團(tuán)第七二三研究所,江蘇揚(yáng)州 225001)
當(dāng)前,軟件研制能力成熟度認(rèn)證工作在國內(nèi)軍工企業(yè)中如火如荼地開展,已有多家單位通過了GJB5000A成熟度二級(以下簡稱二級)認(rèn)證,其中部分單位甚至通過了 GJB5000A成熟度三級(以下簡稱“三級”)認(rèn)證,正向著更高的等級邁進(jìn)。
但調(diào)查發(fā)現(xiàn),在二級試點(diǎn)運(yùn)行過程中,許多單位因?yàn)榕嘤?xùn)不到位,帶來了很多問題:各個(gè)項(xiàng)目組對標(biāo)準(zhǔn)、過程體系的理解五花八門,導(dǎo)致執(zhí)行的流程南轅北轍;即使制定了文檔模板,項(xiàng)目組編制的軟件文檔也是“你說東,我說西”,條目類似,內(nèi)容相去甚遠(yuǎn);組織熱衷于管理過程的宣貫以便獲得認(rèn)證,對具體的軟件工程技術(shù)不太關(guān)心,導(dǎo)致項(xiàng)目組的開發(fā)水平提高不大,對過程改進(jìn)失去興趣,反過來阻礙成熟度提升。
為什么會有這樣的問題呢?據(jù)分析,由于組織培訓(xùn)是成熟度三級的過程域,因此,許多單位在實(shí)施成熟度二級的過程改進(jìn)時(shí),不重視培訓(xùn),既沒有在制度上予以保證,也沒有采取有效實(shí)踐,導(dǎo)致上述問題發(fā)生。
GJB5000A各個(gè)過程域均由專用目標(biāo)、專用實(shí)踐組成,通過專用實(shí)踐的實(shí)施以滿足專用目標(biāo)要求。此外,在成熟度二級和三級還各有1個(gè)共用目標(biāo),由各個(gè)過程域的共用實(shí)踐達(dá)到[1]。
GJB5000A二級共有7個(gè)過程域,其專用實(shí)踐均未涉及培訓(xùn)的要求。
GJB5000A二級的共用目標(biāo)“過程制度化”通過10個(gè)共用實(shí)踐來實(shí)現(xiàn)。其中,共用實(shí)踐2.5“培訓(xùn)人員”的目的是確保過程實(shí)施相關(guān)人員具有必要的技能和專門知識,以實(shí)施或支持該過程。這一實(shí)踐要求分散在各個(gè)過程域中,如果按照過程域來組織培訓(xùn)人員的實(shí)踐活動,必然會造成上述所介紹的亂象。
分析一下GJB5000A成熟度二級的10個(gè)共用實(shí)踐,可以發(fā)現(xiàn),大多數(shù)由對應(yīng)的過程域來執(zhí)行共用目標(biāo)共用實(shí)踐(表1),如“GP2.2策劃此過程”依賴于“項(xiàng)目策劃”過程域來實(shí)施。CMMI也支持這樣的觀點(diǎn):如果某一共用實(shí)踐依賴于某個(gè)過程域來執(zhí)行這一通用實(shí)踐,或提供一個(gè)必備的工作產(chǎn)品,而當(dāng)這個(gè)過程域未實(shí)施時(shí),該共用實(shí)踐的有效性可能會大大降低。GJB5000A是等價(jià)采用 CMMI1.2,組織培訓(xùn)過程域支持 GP2.5的實(shí)現(xiàn),可通過培訓(xùn)策略或組織全面的培訓(xùn)需求,給將執(zhí)行或支持過程的人員,以應(yīng)用到所有過程域。也就是說,二級的共用實(shí)踐GP2.5實(shí)際上需要通過三級的過程域“組織培訓(xùn)”來實(shí)現(xiàn)(表2),這樣就存在一個(gè)矛盾:二級的實(shí)踐必須通過三級的過程域來保證。
表1 成熟度二級共用實(shí)踐與過程域的對應(yīng)關(guān)系
表2 組織培訓(xùn)過程域構(gòu)成[1]
需要說明的是,軟件工程技能與知識是指項(xiàng)目或過程所需的方法、設(shè)備、工具、材料、數(shù)據(jù)及過程的使用能力。組織技能是指依據(jù)員工的組織結(jié)構(gòu)、角色與責(zé)任,以及一般性運(yùn)作原則與方法有關(guān)的行為。人際關(guān)系技能是指項(xiàng)目及支持團(tuán)隊(duì)在組織及社會關(guān)系中,成功執(zhí)行所需的自我管理、溝通及人際關(guān)系的能力。
項(xiàng)目級培訓(xùn)管理的對象是項(xiàng)目專有的培訓(xùn)課程,這些培訓(xùn)課程是針對項(xiàng)目特定的培訓(xùn)需求而開設(shè)的,它們沒有被包括在機(jī)構(gòu)培訓(xùn)管理范圍之內(nèi)。例如項(xiàng)目特定的開發(fā)技術(shù)和產(chǎn)品使用等培訓(xùn)。上述培訓(xùn)由項(xiàng)目經(jīng)理或者開發(fā)組長來管理。在GJB5000A三級中,闡明了組織培訓(xùn)的目的、目標(biāo)和專用實(shí)踐。組織培訓(xùn)包括兩方面的培訓(xùn):支持組織戰(zhàn)略經(jīng)營目標(biāo)的培訓(xùn);滿足項(xiàng)目與支持組共同需要的戰(zhàn)術(shù)培訓(xùn)。個(gè)別項(xiàng)目與支持組所標(biāo)識的特定培訓(xùn)需要,在項(xiàng)目和支持組層面處理,不在組織培訓(xùn)范圍之內(nèi)。項(xiàng)目和支持組負(fù)責(zé)標(biāo)識和處理他們自己的特定培訓(xùn)需要。
GJB5000A是軍用軟件研制范圍內(nèi)用于衡量軟件過程能力的標(biāo)準(zhǔn),它通過“過程域和實(shí)踐”對軟件過程能力提出了要求,從研制過程的戰(zhàn)略層面到戰(zhàn)術(shù)層面都明確了標(biāo)準(zhǔn),二級、三級的要求分布于18個(gè)過程域,有76個(gè)目標(biāo)(40個(gè)專用目標(biāo)、36個(gè)共用目標(biāo)),352個(gè)實(shí)踐(136個(gè)專用實(shí)踐、216個(gè)共用實(shí)踐),它把項(xiàng)目管理過程、工程過程、支持過程和組織過程全部分解成一個(gè)一個(gè)動作要求。但是,科研生產(chǎn)過程實(shí)際上是一系列連貫動作的組合,有并行有交叉,所以不能把GJB5000A直接作為企業(yè)的過程規(guī)范,這是制定體系文件時(shí)要考慮的難點(diǎn)問題。
因此,在進(jìn)行軟件過程體系架構(gòu)設(shè)計(jì)時(shí),必須結(jié)合GJB5000A標(biāo)準(zhǔn)的要求,對各過程域進(jìn)行剖析,進(jìn)行必要的合并與整合,不拘泥于成熟度二級和三級的劃分,并結(jié)合企業(yè)的實(shí)際進(jìn)行本地化和簡化,形成符合實(shí)際的體系架構(gòu)。為了保證二級共用目標(biāo)的實(shí)現(xiàn),將各過程域的GP2.5和三級的組織培訓(xùn)過程域合并成培訓(xùn)過程就是一個(gè)比較好的選擇,解決了“二級的共用實(shí)踐 GP2.5需要通過三級的過程域(組織培訓(xùn))來實(shí)現(xiàn)”這一矛盾。
組織培訓(xùn)的加入,是因?yàn)樗且粋€(gè)簡單易行而且非常有效的統(tǒng)一思想和提高技能的方法,也是強(qiáng)化組織質(zhì)量意識和管理意識的途徑。
當(dāng)前,開展軟件過程改進(jìn)的單位中,大多數(shù)已建立符合GJB9001B要求的質(zhì)量保證體系,在GJB9001B體系要求的6.2節(jié),明確提出了對人力資源的培訓(xùn)要求。因此,滿足GJB9001B要求的組織中,必然建立了符合其要求的培訓(xùn)體系。
表3 GJB5000A與GJB9001B培訓(xùn)要求對照表
如表3所示,比較GJB9001B的與GJB5000A關(guān)于培訓(xùn)的要求,可以看出,兩個(gè)標(biāo)準(zhǔn)的目的基本相同,但GJB5000A給出了達(dá)成這一目的的各個(gè)步驟,更加具體、深入。
在 GJB9001B所要求培訓(xùn)的基礎(chǔ)上,結(jié)合GJB5000A的組織培訓(xùn)要求,設(shè)計(jì)組織的培訓(xùn)過程,可以在組織培訓(xùn)這一過程域做到兩個(gè)體系的融合。同時(shí),借力于GJB9001B的培訓(xùn)體系,在推行新的培訓(xùn)過程時(shí),可以使過渡過程順暢、省時(shí)省事。
GJB50000A的“組織培訓(xùn)”過程域,共有7個(gè)專用實(shí)踐,結(jié)合GJB9001B的要求,設(shè)計(jì)了新的培訓(xùn)過程,其結(jié)構(gòu)如表4所示。
表4 GJB5000A二級時(shí)“組織培訓(xùn)”過程構(gòu)成
2.2.1 組織級培訓(xùn)
在“組織培訓(xùn)”過程中,規(guī)定了組織培訓(xùn)的流程:
1)識別需求。包括識別組織的戰(zhàn)略培訓(xùn)需求、識別需要組織實(shí)施的公共培訓(xùn)需求;對不同的角色,其知識、技能要求是不同的,在識別培訓(xùn)需求時(shí)要加以重視。
2)制定培訓(xùn)計(jì)劃。將識別出的戰(zhàn)略培訓(xùn)需求納入組織級的中長期培訓(xùn)規(guī)劃中,將部門、項(xiàng)目組提出的需求中的公共培訓(xùn)需求納入年度培訓(xùn)計(jì)劃中;計(jì)劃中應(yīng)對參加人員、免修人員、授課人員資質(zhì)水平、使用的教材、培訓(xùn)形式、時(shí)間、資源,以及培訓(xùn)效果評價(jià)準(zhǔn)則等作出規(guī)定。
3)實(shí)施培訓(xùn)計(jì)劃。由人力資源部門按照計(jì)劃實(shí)施組織培訓(xùn)。
4)評價(jià)培訓(xùn)效果。依據(jù)計(jì)劃對培訓(xùn)實(shí)施情況作出記錄,對培訓(xùn)的效果進(jìn)行評價(jià),必要時(shí)補(bǔ)充培訓(xùn)。
2.2.2 項(xiàng)目級培訓(xùn)
GJB5000A三級“組織培訓(xùn)”過程域未對項(xiàng)目級培訓(xùn)提出明確的要求,但在二級、三級成熟度認(rèn)證過程中,項(xiàng)目級培訓(xùn)不足是項(xiàng)目工程活動、支持活動效果不好的原因所在,甚至影響到管理活動。因此,在“組織培訓(xùn)過程”之外,還應(yīng)規(guī)定項(xiàng)目級培訓(xùn)過程。
項(xiàng)目負(fù)責(zé)人通過評價(jià)項(xiàng)目組內(nèi)部成員的知識、能力與實(shí)際工作要求的差距,提出項(xiàng)目級培訓(xùn)需求。項(xiàng)目級培訓(xùn)需求包括:關(guān)于項(xiàng)目應(yīng)用領(lǐng)域的培訓(xùn),項(xiàng)目執(zhí)行過程中需要遵守的標(biāo)準(zhǔn)、規(guī)程說明,項(xiàng)目組使用的工具和方法的培訓(xùn)。
項(xiàng)目級培訓(xùn)流程與組織級培訓(xùn)類似,但培訓(xùn)形式可以更加靈活,如:請有類似項(xiàng)目開發(fā)經(jīng)驗(yàn)的人員進(jìn)行課堂培訓(xùn)、請相關(guān)公司進(jìn)行使用工具培訓(xùn)(如軟件配置管理工具培訓(xùn)、軟件測試工具培訓(xùn)、建模工具培訓(xùn))、學(xué)術(shù)討論或講座、視頻教學(xué)、自學(xué)、一對一的師徒傳授等。
項(xiàng)目級培訓(xùn)是組織級培訓(xùn)的有效補(bǔ)充,兩種培訓(xùn)一起,使承擔(dān)項(xiàng)目的人員具備相應(yīng)知識和技能,滿足組織長期目標(biāo)和近期項(xiàng)目開發(fā)的要求。
在單位的成熟度二級實(shí)施過程中,按照構(gòu)建的組織培訓(xùn)過程要求,每季度收集培訓(xùn)需求,實(shí)施的組織級培訓(xùn)包括:
1)對軟件過程改進(jìn)體系的培訓(xùn);
2)對SQA、CM、MA人員進(jìn)行分角色的培訓(xùn),包括相關(guān)標(biāo)準(zhǔn)、技術(shù)、工具使用方面的專題培訓(xùn);
3)對軟件開發(fā)人員進(jìn)行系統(tǒng)分析技術(shù)、軟件需求分析技術(shù)、軟件設(shè)計(jì)技術(shù)、編碼標(biāo)準(zhǔn)、測試技術(shù)的專題培訓(xùn);
4)對項(xiàng)目組負(fù)責(zé)人進(jìn)行項(xiàng)目管理專題培訓(xùn)。
項(xiàng)目級培訓(xùn)有:所屬系統(tǒng)背景知識培訓(xùn)、領(lǐng)域知識培訓(xùn)包括XX數(shù)據(jù)庫標(biāo)準(zhǔn)、XX顯控標(biāo)準(zhǔn)、XX定位算法等,均采用單位內(nèi)部專家課堂授課加一對一交流的形式。
通過組織培訓(xùn)過程的實(shí)施,參加試運(yùn)行的項(xiàng)目從過程符合性、工程開發(fā)兩個(gè)方面都取得了很好的效果:參與人員從過程改進(jìn)中獲得了看得見的效果,既提高了軟件工程技能,又掌握了工程管理知識,因此參與過程改進(jìn)的積極性很高,形成了良性互動。
從以上情況可以看出,實(shí)施GJB5000A二級認(rèn)證時(shí),組織培訓(xùn)也是非常重要的方面,必須加以考慮。組織培訓(xùn)雖然是三級必須滿足的過程域,但它對二級成熟度的達(dá)成具有至關(guān)重要的作用,在二級過程改進(jìn)活動中必須加以考慮。實(shí)施組織培訓(xùn)過程,對二級成熟度的達(dá)成能起到很好的保證、支持作用。
GJB5000A標(biāo)準(zhǔn)中按5個(gè)成熟度的級別給出了所需的過程域,但這并不意味著成熟度級別低的軟件管理體系不需要其他過程域所規(guī)定的活動,而只是表示那些過程域的活動可以不按標(biāo)準(zhǔn)的要求執(zhí)行。組織不應(yīng)以過級為目的,僵化的按成熟度等級來實(shí)施過程改進(jìn),而應(yīng)以實(shí)實(shí)在在的提升單位的軟件工程化水平為目的。本文僅就組織培訓(xùn)過程域在二級的實(shí)施方法和實(shí)施效果做了介紹,實(shí)際上,如三級的“需求開發(fā)”、“風(fēng)險(xiǎn)管理”在軟件開發(fā)的整個(gè)過程中無處不在,因此,在制定成熟度二級的過程改進(jìn)體系時(shí),也應(yīng)該加以考慮。
[1]GJB5000A-2008, 軍用軟件研制能力成熟度模型[S].