當(dāng)前位置:工程項(xiàng)目OA系統(tǒng) > 建筑OA系統(tǒng) > 工程項(xiàng)目管理軟件系統(tǒng)
項(xiàng)目管理綜合管理:軟件配置管理
(一) 軟件配置項(xiàng)
在CMMI的“配置管理”過程域CM中SP1.1首先提到的就是“配置項(xiàng)”的概念,在大家開展配置管理工作前應(yīng)該先識別哪些是本項(xiàng)目的配置項(xiàng)?!芭渲庙?xiàng)”就是配置管理的對象,簡單來講它符合以下任意一個(gè)特點(diǎn):
1、 它會被兩個(gè)或兩個(gè)以上的項(xiàng)目成員共同使用。
2、 它會隨著項(xiàng)目的開展而發(fā)生變化。
3、 對項(xiàng)目重要的工作產(chǎn)品。
4、 一些工作產(chǎn)品之間的關(guān)系非常緊密,一個(gè)變化其他的就會受到影響。
通過以上定義大家會發(fā)現(xiàn)項(xiàng)目中的很多東西都屬于配置項(xiàng),例如:各種需求文檔、設(shè)計(jì)文檔等都會經(jīng)常變更;程序的代碼是大家共享的,而且代碼文件之間又有較高的相互依賴性。那大家也許會發(fā)現(xiàn)還有一些工作產(chǎn)品不符合以上定義,例如:各種周報(bào)、會議記錄等。這些也是配置項(xiàng)嗎?很顯然,它們不符合以上特點(diǎn),那么這些工作產(chǎn)品就不屬于配置項(xiàng)的范圍,但有時(shí)在進(jìn)行CMMI實(shí)施時(shí),項(xiàng)目組也往往會將其一并進(jìn)行管理。 既然配置項(xiàng)是“配置管理”的基礎(chǔ),那么大家還需要給每一個(gè)配置項(xiàng)起一個(gè)唯一標(biāo)識,這樣才能夠做到清晰不混淆。舉個(gè)例子:“今晚大家一起出去聚餐,到中山一路的‘東北人’吃飯”,這里的‘東北人’餐廳是特指中山一路的,因此這唯一確定了就餐的地點(diǎn);“我們訂的包房叫‘靠山屯’”,這里具體的就餐房間也被唯一標(biāo)識了出來,是‘靠山屯’而不是‘瘦狗嶺’;服務(wù)員拿來的菜單上每個(gè)菜的名字也是唯一的,這樣送上來的菜就不會重樣,當(dāng)我們吃完結(jié)賬的時(shí)候就不會算錯(cuò)價(jià)錢,這些都是典型的唯一標(biāo)識配置項(xiàng)的例子。假如配置項(xiàng)沒有被唯一識別出來,那么大家去聚會就會找錯(cuò)地方,點(diǎn)的菜也可能會上錯(cuò),結(jié)賬的時(shí)候也可能會算錯(cuò),那么將是一團(tuán)糟,因此在項(xiàng)目管理中一定要將識別配置項(xiàng)重視起來。配置項(xiàng)本身的變化可以使用“版本管理”對其進(jìn)行控制。通常像大家的程序代碼已經(jīng)被各種版本管理工具進(jìn)行控制,但大家千萬不要忘記對文檔也要進(jìn)行版本管理。
(二) 軟件的基線
前面提到“配置項(xiàng)”的其中一個(gè)定義就是“配置項(xiàng)可能會隨著項(xiàng)目的開展而發(fā)生變化”,那么單個(gè)的配置項(xiàng)是通過版本管理工具進(jìn)行管理的,每次變化都會產(chǎn)生一個(gè)新的版本號。但是對于一組配置項(xiàng)該如何進(jìn)行管理呢?根據(jù)CMMI配置管理過程域的SP1.3中的要求,這就需要使用基線管理的方法。簡單來講就是將一組配置項(xiàng)拿“線”穿起來作為一個(gè)整體進(jìn)行統(tǒng)一命名,并將其作為一個(gè)新的配置項(xiàng)進(jìn)行管理。在上面聚餐的例子中,最后結(jié)賬時(shí)的賬單就是一條基線,它將所有菜肴集中起來一起買單。
(三) 配置庫的劃分
配置庫就是指各種版本管理工具所創(chuàng)建的用于管理配置項(xiàng)的數(shù)據(jù)庫,也就是大家常用的VSS或CVS等工具創(chuàng)建的數(shù)據(jù)庫或文檔庫。筆者在以往進(jìn)行的CMMI咨詢時(shí)常常發(fā)現(xiàn)項(xiàng)目組對配置庫的目錄結(jié)構(gòu)沒有進(jìn)行功能的劃分,為了確保項(xiàng)目永遠(yuǎn)不會出現(xiàn)混淆,簡單來說按照權(quán)限應(yīng)該將配置庫劃分為三大類:
1、 開發(fā)庫
2、 受控庫
3、 基線庫
各種控制庫的劃分是根據(jù)其訪問權(quán)限來定義的,在沒有進(jìn)行CMMI認(rèn)證的公司,通常項(xiàng)目組的配置庫只起到“開發(fā)庫”的作用。以CMMI配置管理SP1.2中的理論為依據(jù),“開發(fā)庫”對項(xiàng)目組成員具有比較寬松的“CheckIn”和“CheckOut”的權(quán)限。不會給大家的工作帶來不便,根據(jù)大家的需要隨時(shí)都可以對其保管的配置項(xiàng)進(jìn)行各種操作?!笆芸貛臁睂?xiàng)目組成員來說是沒有“CheckIn”和“CheckOut”的權(quán)限的。對“受控庫”的操作只能由配置管理員來完成。因?yàn)槭芸貛熘写娣诺氖堑却u審的文檔或待測試的程序。假如有份文檔要送去評審,會議的主持人已經(jīng)將其進(jìn)行了分發(fā),可是這份文檔卻保存在“開發(fā)庫”中,如果這時(shí)被別人修改了,那么之前所分發(fā)的文檔就是舊的,那隨后的評審也就沒有意義了,這就是“受控庫”存在的意義?!盎€庫”就是對“受控庫”中通過驗(yàn)證的工作產(chǎn)品所形成的基線進(jìn)行統(tǒng)一管理,并且新的基線將按照要求發(fā)送給項(xiàng)目的相關(guān)人員并與其分享項(xiàng)目的狀態(tài)和信息。大家回想一下以往發(fā)布給客戶的版本是否可以找到全部的程序和文檔,如果找不到那就請從現(xiàn)在開始使用“基線庫”進(jìn)行管理吧:)
(四) 軟件變更管理軟件開發(fā)項(xiàng)目經(jīng)常出現(xiàn)變更,但大家千萬不要對項(xiàng)目中的變更產(chǎn)生恐懼,在項(xiàng)目管理的先進(jìn)理念中“變化是永恒的,不變是短暫的”,“沒有計(jì)劃就沒有變化”。大家應(yīng)該正視軟件變更的存在,它是軟件世界中客觀存在的一種現(xiàn)象,就像初一、十五大海的潮汐一樣。在CMMI配置管理的SP2.1中就變更管理的流程和規(guī)范進(jìn)行了定義。
軟件變更的起因?yàn)槭裁磿霈F(xiàn)軟件變更呢?這要從軟件項(xiàng)目的性質(zhì)出發(fā)進(jìn)行探討。PMP定義的項(xiàng)目特點(diǎn)是“臨時(shí)性”和“獨(dú)特性”,大家就算把已經(jīng)完成的項(xiàng)目重新再做一遍,其過程也不可能是一模一樣的。其實(shí)軟件開發(fā)就是將客戶腦子里主觀的思想轉(zhuǎn)換為客觀的代碼行,主觀的東西都是虛無縹緲的,根據(jù)人的意識會經(jīng)常改變的;另外軟件開發(fā)就是將企業(yè)的最佳實(shí)踐轉(zhuǎn)化為客觀的產(chǎn)品,接受需求調(diào)研的客戶一般都是他們行業(yè)中的佼佼者,他的思想就是企業(yè)的最佳實(shí)踐,這些最佳實(shí)踐也許連他的同事都不一定完全理解,何況是我們這些做軟件開發(fā)的技術(shù)人員。通過以上軟件開發(fā)項(xiàng)目的特點(diǎn)進(jìn)行分析,大家應(yīng)該也理解了為什么軟件開發(fā)會有那么多的變更了吧。除了應(yīng)該理解變更的起因外,還應(yīng)該讓我們的客戶對變更的起因有所認(rèn)識,做到大家互相理解,和諧的項(xiàng)目才是共贏的。另外大家不要以為變更給項(xiàng)目帶來很多麻煩,有時(shí)變更也會為項(xiàng)目帶來效益,技術(shù)的革新就是一種特殊的變更,在我國實(shí)現(xiàn)現(xiàn)代化建設(shè)的過程中不知道有多少技術(shù)革新為國家?guī)砘蛲旎財(cái)?shù)以億計(jì)的財(cái)富,在我們的軟件項(xiàng)目中一些新的技術(shù)或架構(gòu),也一樣會減少項(xiàng)目的開發(fā)周期和成本。
軟件變更的必要性變更會有其相應(yīng)的流程,有流程就會有工作量,有人會覺得變更太麻煩沒有必要,在筆者進(jìn)行CMMI咨詢時(shí)往往推薦兩種級別的變更:“一般變更”和“重大變更”。“重大變更”常指里程碑的延誤、項(xiàng)目組成員的變化、項(xiàng)目成本的變化,具體每種變化有多大才算是重大變更呢?這就要針對不同公司的不同情況來定義。為什么重大變更沒有定義軟件范圍也就是需求的變更呢?因?yàn)樾枨蟮淖兏梢酝ㄟ^項(xiàng)目里程碑的延誤或項(xiàng)目成本的增加來判斷。重大變革要走正規(guī)的變更流程,并且要通過“變更控制委員會”CCB的評審?fù)ㄟ^后才能實(shí)施。除了“重大變更”以外的都屬于“一般變更”,例如項(xiàng)目進(jìn)度雖然有延遲,但是不會影響項(xiàng)目里程碑。“一般變更”不再需要CCB的評審,項(xiàng)目負(fù)責(zé)人就可以全權(quán)處理。通過對變更級別的劃分,給項(xiàng)目負(fù)責(zé)人一定的權(quán)利,這樣項(xiàng)目變更就不會讓人覺得繁瑣了。考試大提供
(五) 配置管理的審計(jì)
配置審計(jì)的目的是配置管理員要確保配置庫中的配置項(xiàng)和基線的完整性和正確性,這就是CMMI配置管理SP3.2所提到的概念。在“開發(fā)庫”中的配置項(xiàng)是不需要進(jìn)行審計(jì)的,一旦帶有缺陷的配置項(xiàng)進(jìn)入“受控庫”或“基線庫”,那么將會給項(xiàng)目帶來不小的負(fù)面影響。配置管理的審計(jì)分為“物理審計(jì)”和“功能審計(jì)”兩種。
“物理審計(jì)”比較簡單,配置管理員只需根據(jù)項(xiàng)目組提交的“入庫清單”逐一檢查文檔或程序是否存在,命名規(guī)則是否符合規(guī)范既可。
“功能審計(jì)”的理解會相對比較復(fù)雜一點(diǎn),“功能審計(jì)”是對配置項(xiàng)的內(nèi)容是否正確進(jìn)行檢查。但配置管理員有可能是不懂技術(shù)的,那么他將如何開展功能審計(jì)呢?進(jìn)入“受控庫”或“基線庫”的文檔肯定是經(jīng)過并通過評審的,代碼程序也肯定要經(jīng)過并通過測試的,因此配置管理員可以利用這些驗(yàn)證的結(jié)果來間接對其入庫的內(nèi)容進(jìn)行檢查。這樣配置管理員就可以保證其功能的正確。
(六) 總結(jié)
通過以上內(nèi)容的介紹,相信大家應(yīng)該對CMMI配置管理的概念和重點(diǎn)有所認(rèn)識了。配置管理工作是貫穿整個(gè)項(xiàng)目生命周期的核心工作之一,只有利用配置管理的理論把項(xiàng)目條理化、清晰化,那么才能開展例如需求、設(shè)計(jì)、開發(fā)、測試等其他工作。通過本篇文章筆者希望大家知道什么是配置項(xiàng)和基線,配置庫是如何劃分的,為什么軟件項(xiàng)目會有變更,同時(shí)我們也要正視和接受變更的存在,以及配置管理員是如何進(jìn)行功能和物理審計(jì)的。
- 1GPS控制測量
- 2某住宅樓變配電室安裝工程施工組織設(shè)計(jì)
- 3東莞市2015年安全工程師考試報(bào)考條件
- 4建筑工程地下室工程施工圖文解讀(139頁 附圖多)
- 5哈瑞?西德爾
- 6淺析施工項(xiàng)目管理的目標(biāo)和任務(wù)
- 7三明沙縣民用機(jī)場總體(實(shí)施)施工組織設(shè)計(jì)
- 8監(jiān)理工程師考試《建設(shè)工程質(zhì)量控制》復(fù)習(xí)重點(diǎn)(25)
- 9【碩士】基于財(cái)務(wù)分析的工程項(xiàng)目過程控制研究
- 10固定資產(chǎn)折舊
- 11招標(biāo)師項(xiàng)目管理與招標(biāo)采購精講精練題(13)
- 12我國建筑施工安全管理分析
- 132015年監(jiān)理工程師《質(zhì)量控制》每日一練(1.24)
- 14海南省2015年度一級建造師考試報(bào)考條件
- 15地面空鼓原因及治理措施
- 16剪力墻結(jié)構(gòu)(高層住宅)施工組織設(shè)計(jì)156p
- 17園林景觀照明施工心得淺談 23P
- 18大宗建筑材料驗(yàn)收要點(diǎn)(鋼筋、砌塊、混凝土、模板)
- 19垃圾焚燒爐與余熱鍋爐配置一些問題的探討
- 20上海建工承建的特多庫瓦兒童醫(yī)院項(xiàng)目結(jié)構(gòu)封頂
- 21給排水采曖燃?xì)夤こ淌┕し桨?/a>
- 22關(guān)于招標(biāo)代理機(jī)構(gòu)的說法,錯(cuò)誤的是
- 23【碩士】扣件式鋼管模板支撐體系動(dòng)力特性及動(dòng)力穩(wěn)定性研究
- 24商品混凝土攪拌站水泥倉除塵設(shè)備的技術(shù)革新
- 25論中國農(nóng)業(yè)合作制度變遷的格局與方向
- 26淺談施工項(xiàng)目管理中的商務(wù)溝通
- 27監(jiān)理工程師考試《建設(shè)工程監(jiān)理案例分析》復(fù)習(xí)指導(dǎo)(15)
- 28安置住房項(xiàng)目工程施工組織設(shè)計(jì)428p
- 29建設(shè)節(jié)約型城市綠地景觀的探討
- 30北京某工程施工技術(shù)交底(78個(gè))
成都公司:成都市成華區(qū)建設(shè)南路160號1層9號
重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務(wù)大廈18樓