否進(jìn)行配置管理與軟件的規(guī)模有關(guān),軟件的規(guī)模越大,配置管理就顯得越重要。軟件配置管理簡稱SCM(Software Configuration Management的縮寫),是在團(tuán)隊開發(fā)中,標(biāo)識、控制和管理軟件變更的一種管理。配置管理的使用取決于項目規(guī)模和復(fù)雜性以及風(fēng)險水平。
5.1、目前軟件開發(fā)中面臨的問題:在有限的時間、資金內(nèi),要滿足不斷增長的軟件產(chǎn)品質(zhì)量要求;開發(fā)的環(huán)境日益復(fù)雜,代碼共享日益困難,需跨越的平臺增多;程序的規(guī)模越來越大;軟件的重用性需要提高;軟件的維護(hù)越來越困難。
5.2、軟件配置管理應(yīng)提供的功能:
在ISO9000.3中,對配置管理系統(tǒng)的功能作了如下描述:唯一地標(biāo)識每個軟件項的版本;標(biāo)識共同構(gòu)成一完整產(chǎn)品的特定版本的每一軟件項的版本;控制由兩個或多個獨立工作的人員同時對一給定軟件項的更新;控制由兩個或多個獨立工作的人員同時對一給定軟件項的更新;按要求在一個或多個位置對復(fù)雜產(chǎn)品的更新進(jìn)行協(xié)調(diào);標(biāo)識并跟蹤所有的措施和更改;這些措施和更改是在從開始直到放行期間,由于更改請求或問題引起的。
5.3、版本管理軟件配置管理分為版本管理、問題跟蹤和建立管理三個部分,其中版本管理是基礎(chǔ)。版本管理應(yīng)完成以下主要任務(wù):
建立項目;
重構(gòu)任何修訂版的某一項或某一文件;
利用加鎖技術(shù)防止覆蓋; ?當(dāng)增加一個修訂版時要求輸入變更描述;
提供比較任意兩個修訂版的使用工具;
采用增量存儲方式;
提供對修訂版歷史和鎖定狀態(tài)的報告功能;
提供歸并功能;
允許在任何時候重構(gòu)任何版本;
權(quán)限的設(shè)置;
晉升模型的建立;
提供各種報告。
6.人員組織與管理
軟件開發(fā)中的開發(fā)人員是最大的資源。對人員的配置、調(diào)度安排貫穿整個軟件過程,人員的組織管理是否得當(dāng),是影響對軟件項目質(zhì)量的決定性因素。
首先在軟件開發(fā)的一開始,要合理的配置人員,根據(jù)項目的工作量、所需要的專業(yè)技能,再參考各個人員的能力、性格、經(jīng)驗,組織一個高效、和諧的開發(fā)小組。一般來說,一個開發(fā)小組人數(shù)在5到10人之間最為合適,如果項目規(guī)模很大,可以采取層級式結(jié)構(gòu),配置若干個這樣的開發(fā)小組。
可以用如下公式來對候選人員能力進(jìn)行評分,達(dá)到一定分?jǐn)?shù)的則可以考慮進(jìn)入開發(fā)組,但這個公式不包含對人員數(shù)量配比的考慮。
Score=∑WiCi(i=1to8)
Ci是對項目組人員各項能力的評估。其值含義如下
在決定一個開發(fā)組的開發(fā)人員數(shù)量時,除了考慮候選人素質(zhì)以外,還要綜合考慮項目規(guī)模、工期、預(yù)算、開發(fā)環(huán)境等因素的影響,下面是一個基于規(guī)模、工期和開發(fā)環(huán)境的人員數(shù)量計算公式:
L=Ck*K1/3*td4/3
L:開發(fā)規(guī)模,以代碼行LOC為度量td:開發(fā)時間K:人員數(shù)
Ck:技術(shù)常數(shù)表示開發(fā)環(huán)境的優(yōu)劣
取值2000:表示開發(fā)環(huán)境差,沒有系統(tǒng)的開發(fā)方法,缺乏文檔規(guī)范化設(shè)計;
取值8000:表示開發(fā)環(huán)境較好;
取值11000:表示開發(fā)環(huán)境優(yōu)。
在選擇人員的問題上,要結(jié)合實際情況來決定是否選入一個開發(fā)組員。并不是一群高水平的程序員在一起就一定可以組成一個成功的小組。作為考察標(biāo)準(zhǔn),技術(shù)水平、與本項目相關(guān)的技能和開發(fā)經(jīng)驗、以及團(tuán)隊工作能力都是很重要的因素。一個一天能寫一萬行代碼但卻不能與同事溝通融洽的程序員,未必適合一個對組員之間通訊要求很高的項目。還應(yīng)該考慮分工的需要,合理配置各個專項的人員比例。例如一個網(wǎng)站