監(jiān)理公司管理系統(tǒng) | 工程企業(yè)管理系統(tǒng) | OA系統(tǒng) | ERP系統(tǒng) | 造價(jià)咨詢管理系統(tǒng) | 工程設(shè)計(jì)管理系統(tǒng) | 甲方項(xiàng)目管理系統(tǒng) | 簽約案例 | 客戶案例 | 在線試用
X 關(guān)閉
項(xiàng)目進(jìn)度管理軟件

當(dāng)前位置:工程項(xiàng)目OA系統(tǒng) > 建筑OA系統(tǒng) > 項(xiàng)目進(jìn)度管理軟件

軟件配置管理-團(tuán)隊(duì)開發(fā)的基石

申請(qǐng)免費(fèi)試用、咨詢電話:400-8352-114

1概述

隨著現(xiàn)代軟件技術(shù)的發(fā)展,對(duì)于軟件項(xiàng)目的需求日益復(fù)雜而且變更頻繁,項(xiàng)目的開發(fā)模式已經(jīng)由昔日的手工作坊式的開發(fā)轉(zhuǎn)變?yōu)橐?guī)?;?、團(tuán)隊(duì)式的開發(fā),當(dāng)開發(fā)團(tuán)隊(duì)發(fā)展到一定規(guī)模時(shí),會(huì)越來越強(qiáng)調(diào)開發(fā)過程規(guī)范化和成熟度。軟件項(xiàng)目的成敗在很大程度上取決于對(duì)其開發(fā)過程的控制,這包括對(duì)質(zhì)量、源代碼、進(jìn)度、資金、人員等的控制。要進(jìn)行有效的過程控制,僅僅依靠人的力量是不夠的,還需要有相應(yīng)的管理工具。"軟件配置管理"是一套規(guī)范、高效的軟件開發(fā)管理方法,同時(shí)也是提高軟件質(zhì)量的重要手段。軟件配置管理可以幫助開發(fā)團(tuán)隊(duì)對(duì)軟件開發(fā)過程進(jìn)行有效的變更控制,高效地開發(fā)高質(zhì)量的軟件。在質(zhì)量體系的諸多支持活動(dòng)中,配置管理處在支持活動(dòng)的中心位置,它有機(jī)地把其它支持活動(dòng)結(jié)合起來,形成一個(gè)整體,相互促進(jìn),相互影響,有力地保證了質(zhì)量體系的實(shí)施。

軟件配置管理并不是一個(gè)新的概念,早在二十世紀(jì)70年代,加州大學(xué)圣巴巴拉分校(UniversityofCaliforniaatSantaBarbara)的LeonPresser授就已經(jīng)提出變更和配置控制的理論,并隨著軟件產(chǎn)業(yè)的逐漸壯大,在國(guó)外成熟的軟件企業(yè)中逐漸得到重視和普及,在一些國(guó)外的大中型軟件企業(yè)中,不僅設(shè)置專職的配置管理人員,而且有些公司還設(shè)有公司級(jí)的變更控制委員會(huì)(CCB:ChangeControlBoard)對(duì)公司的軟件配置管理工作進(jìn)行統(tǒng)一的管理,配置管理對(duì)于軟件開發(fā)的重要性由此可見一斑。國(guó)內(nèi)的企業(yè)真正認(rèn)識(shí)到配置管理的重要性,卻是近幾年的事情,隨著CMM(Capability MaturityModel)的概念和理論的普及,配置管理作為CMM2級(jí)的一個(gè)關(guān)鍵過程域,其重要性逐漸為人們認(rèn)同。

"進(jìn)行管理和控制"意味著在給定時(shí)間(過去或現(xiàn)在)使用的工作產(chǎn)品的版本是已知的(即版本控制),而且以受控的方式引進(jìn)變更(即變更控制)。如果希望有比"進(jìn)行管理和控制"所蘊(yùn)含的更高程度的控制,則工作產(chǎn)品可置于配置管理的完備的紀(jì)律之下。CMMLevel2KPA3

其實(shí)在日常的開發(fā)中,我們已經(jīng)在自覺或不自覺的進(jìn)行著軟件配置管理的工作。最簡(jiǎn)單的如使用軟件開發(fā)集成環(huán)境提供的Backup功能,它可以使我們回溯到最近的修改;再進(jìn)一步,就是使用文件夾或者壓縮工具,把實(shí)現(xiàn)了一定功能的程序版本按日期進(jìn)行備份,這也已經(jīng)實(shí)踐了配置管理的部分必要功能,但這僅僅是配置管理眾多功能重的一小部分。真正的配置管理系統(tǒng)應(yīng)該具有以下功能:

·并行開發(fā)支持:因開發(fā)和維護(hù)的原因,要求能夠?qū)崿F(xiàn)開發(fā)人員同時(shí)在同一個(gè)軟件模塊上工作,同時(shí)對(duì)同一個(gè)代碼部分作不同的修改,即使是跨地域分布的開發(fā)團(tuán)隊(duì)也能互不干擾,協(xié)同工作,而又不失去控制;

·修訂版管理:跟蹤每一個(gè)變更的創(chuàng)造者、時(shí)間和原因,從而加快問題和缺陷的確定;

·版本控制:能夠簡(jiǎn)單、明確地重現(xiàn)軟件系統(tǒng)的任何一個(gè)歷史版本;

·產(chǎn)品發(fā)布管理:管理、計(jì)劃軟件的變更,與軟件的發(fā)布計(jì)劃、預(yù)先定制好的生命周期或相關(guān)的質(zhì)量過程保持一致;項(xiàng)目經(jīng)理能夠隨時(shí)清晰地了解項(xiàng)目的狀態(tài)

·建立管理:基于軟件存儲(chǔ)庫(kù)的版本控制功能,實(shí)現(xiàn)建立(build)過程自動(dòng)化;

·過程控制:貫徹實(shí)施開發(fā)規(guī)范,包括訪問權(quán)限控制、開發(fā)規(guī)則的實(shí)施等;

·變更請(qǐng)求管理:跟蹤、管理開發(fā)過程中出現(xiàn)的缺陷(Defect)、功能增強(qiáng)請(qǐng)求(RFE)或任務(wù)(Task),加強(qiáng)溝通和協(xié)作,能夠隨時(shí)了解變更的狀態(tài);

·代碼共享:提供良好的存儲(chǔ)和訪問機(jī)制,開發(fā)人員可以共享各自的開發(fā)資源。

2缺乏配置管理造成的常見問題

由于歷史和現(xiàn)實(shí)的原因,配置管理流程和工具在我國(guó)軟件行業(yè)中的應(yīng)用并不普及,由于缺乏必要的配置管理流程和工具,很多軟件企業(yè)在日常的開發(fā)工作中都會(huì)或多或少的遇到如下的問題:

·組織的知識(shí)和過程財(cái)富流失

現(xiàn)代的社會(huì)競(jìng)爭(zhēng)激烈,人員流動(dòng)頻繁,如果由于沒有必要的配置管理流程和工具,大量的文檔和代碼等知識(shí)財(cái)富必然缺乏統(tǒng)一的管理,可能隨意地保存在項(xiàng)目經(jīng)理和軟件工程師各自的機(jī)器里,往往會(huì)因?yàn)橛脖P的故障或人員的離職而永遠(yuǎn)的消失,軟件組織的數(shù)字財(cái)富就這樣因?yàn)槿狈Ρ匾呐渲霉芾矶装椎牧魇?/P>

·不能及時(shí)了解項(xiàng)目的進(jìn)展?fàn)顩r

現(xiàn)代軟件工程思想認(rèn)為越早發(fā)現(xiàn)缺陷和風(fēng)險(xiǎn),采取相應(yīng)措施的代價(jià)越小。CMM的一個(gè)重要作用就是要提高軟件開發(fā)過程中的可視性,使得問題能夠被及時(shí)的發(fā)現(xiàn)。然而由于缺乏配置管理的流程和工具的支持,部門主管無法確切得知項(xiàng)目的進(jìn)展情況,即便是項(xiàng)目經(jīng)理也不知道各個(gè)開發(fā)人員的具體工作,項(xiàng)目進(jìn)展隨意性很大。所有的問題往往都會(huì)集中到項(xiàng)目里程碑時(shí)一起出現(xiàn),這必然會(huì)造成巨大的開銷,其結(jié)果往往是容忍部分缺陷存在或者延誤開發(fā)周期。所有問題只能寄希望于最終實(shí)施時(shí)再解決,項(xiàng)目的實(shí)施工作因此變成了無法匯報(bào)、無法理清、無休止的維護(hù)。

·缺乏實(shí)現(xiàn)并行開發(fā)的手段

在日常的開發(fā)工作中,經(jīng)常會(huì)出現(xiàn)并行開發(fā)的需求,比如:對(duì)于一個(gè)項(xiàng)目可能要在開發(fā)新版本的同時(shí)繼續(xù)對(duì)先前的版本進(jìn)行必要的維護(hù),或者針對(duì)某個(gè)特定的版本需要針對(duì)不同的客戶同時(shí)進(jìn)行客戶化的修改等等。在并行模式下,不同開發(fā)人員可以同時(shí)編輯修改某一文件,并行開發(fā)有可能產(chǎn)生沖突,但是卻能夠提高開發(fā)效率。如果沒有配置管理工具的支持,進(jìn)行并行開發(fā)將十分困難,單單通過人工操作,往往會(huì)造成修改過的bug重復(fù)出現(xiàn)或者幾個(gè)人進(jìn)行相同的工作,產(chǎn)生不必要的浪費(fèi)。

軟件復(fù)用率低下

軟件復(fù)用是現(xiàn)代軟件工程中的重要思想,是提高軟件產(chǎn)品生產(chǎn)效率和質(zhì)量的重要手段。軟件產(chǎn)品是一個(gè)公司的寶貴財(cái)富,代碼的可重用性是相當(dāng)高的,如何建好知識(shí)庫(kù),用好知識(shí)庫(kù)將對(duì)公司優(yōu)質(zhì)高效開發(fā)產(chǎn)品產(chǎn)生重大的影響。但如果沒有良好的配置管理流程,軟件復(fù)用的效率將大打折扣,比如對(duì)于復(fù)用的代碼進(jìn)行了必要的修改或改進(jìn),卻只能通過手工的方式將發(fā)生的變更傳遞給所有復(fù)用該軟件的項(xiàng)目,效率如何可想而知。另外由于缺乏進(jìn)行溝通的必要手段,各個(gè)開發(fā)人員各自為政,編寫的代碼不僅風(fēng)格迥異,而且編碼和設(shè)計(jì)脫節(jié),往往會(huì)導(dǎo)致開發(fā)大量重復(fù)的難以維護(hù)的代碼。

無法開展規(guī)范化的測(cè)試工作

在傳統(tǒng)的開發(fā)方式中,由于缺乏必要的配置管理和變更控制,測(cè)試工作只是人們的一種主觀愿望,根本無法提出具體的測(cè)試要求,加之開發(fā)人員的遮丑,測(cè)試工作往往是走走過場(chǎng),測(cè)試結(jié)果既無法考核又無法量化,當(dāng)然就無法對(duì)以后的開發(fā)工作起指導(dǎo)作用。

對(duì)軟件版本的發(fā)布缺乏有效的管理

因?yàn)槿狈τ行У墓芾硎侄?,往往?huì)在產(chǎn)品發(fā)布時(shí)卻無法確定該版本所有的組件,或者向用戶提供了錯(cuò)誤的版本。對(duì)于特定客戶出現(xiàn)的問題,無法重現(xiàn)其使用的版本,只能到用戶的現(xiàn)場(chǎng)才能進(jìn)行相應(yīng)的調(diào)試工作。由于應(yīng)用軟件的特點(diǎn),各個(gè)不同的客戶會(huì)有不同的要求,開發(fā)人員要手工地保持多份不同的拷貝,即使是相同的問題,但由于在不同地方提出,由不同人解決,其做法也不盡相同,程序的可維護(hù)性越來越差。這些都會(huì)延長(zhǎng)實(shí)施的周期,同時(shí)意味著人力物力的浪費(fèi)。

發(fā)布:2007-02-27 09:49    編輯:泛普軟件 · xiaona    [打印此頁(yè)]    [關(guān)閉]
相關(guān)文章:

泛普項(xiàng)目進(jìn)度管理軟件其他應(yīng)用

項(xiàng)目管理工具 禪道項(xiàng)目管理軟件 夢(mèng)龍項(xiàng)目管理軟件 微軟項(xiàng)目管理軟件 裝飾管理系統(tǒng) 裝修預(yù)算軟件 項(xiàng)目計(jì)劃軟件 項(xiàng)目進(jìn)度管理軟件 軟件項(xiàng)目管理工具 材料管理軟件 工程項(xiàng)目管理軟件系統(tǒng) 項(xiàng)目管理系統(tǒng) 施工管理軟件 建筑工程項(xiàng)目管理軟件 工程管理軟件