淺談持續(xù)集成在軟件項(xiàng)目管理中的作用
(作者未知) 2011/6/23
【論文關(guān)鍵詞】:持續(xù)集成 軟件項(xiàng)目管理 統(tǒng)一的代碼庫 構(gòu)建
【論文摘要】:持續(xù)集成是極限編程12個基本原則之一,正在被越來越多的團(tuán)隊(duì)所采用。軟件項(xiàng)目管理涉及到九大知識領(lǐng)域,貫穿于軟件過程的始終,目的是為了讓軟件項(xiàng)目的整個軟件生命周期(從分析、設(shè)計(jì)、編碼到測試、維護(hù)全過程)都能在管理者的控制之下,以預(yù)定成本按期,按質(zhì)的完成軟件交付用戶使用。持續(xù)集成這種軟件開發(fā)實(shí)踐,對于軟件項(xiàng)目管理的各個領(lǐng)域的管理有著積極的作用。
一、引言
軟件項(xiàng)目經(jīng)理不但要用管理知識管理整個項(xiàng)目.還要為他們的團(tuán)隊(duì)選擇更好的技術(shù)實(shí)踐在軟件開發(fā)的眾多技術(shù)實(shí)踐中持續(xù)集成已經(jīng)被越來越多的團(tuán)隊(duì)所采用持續(xù)集成對于軟件項(xiàng)目管理的各個領(lǐng)域的管理有著積極的作用
持續(xù)集成的使用會給開發(fā)尉隊(duì)的管理帶來很多的好處.做為管理者的項(xiàng)目經(jīng)理以及團(tuán)隊(duì)成員都可以從中受益
二、持續(xù)集成與軟件項(xiàng)目管理
1、什么是持續(xù)集成
“持續(xù)集成”起源于極限編程開發(fā).是它的12個基本原則之一”持續(xù)集成”是一種軟件開發(fā)實(shí)踐.它要求開發(fā)小組的每個成員頻繁的集成他們的工作成果.這個頻度通常是至少每天一次有時甚至每天多次開發(fā)團(tuán)隊(duì)的成員頻繁的整合他們之問的工作.這種整合不是簡單的組裝軟件每次的集成通過一個包含測試的構(gòu)建去盡快的探測潛在的錯誤.保證軟件現(xiàn)有的功能不被破壞,自動分析現(xiàn)有代碼的狀態(tài)f有無重復(fù)邏輯.代碼的復(fù)雜度等)并發(fā)布相關(guān)的報告。通過快速反饋,開發(fā)人員可以了解軟件集成的情況.對不成功的集成進(jìn)行快速的修改.從而提高軟件開發(fā)的效率和質(zhì)量
2、什么是軟件項(xiàng)目管理
軟件項(xiàng)目管理是為了使軟件項(xiàng)目能夠按照預(yù)定的成本、進(jìn)度、質(zhì)量順利完成,而對人員(People)、產(chǎn)品(ProdU(2t)、過程(Protess)和項(xiàng)目fProject)進(jìn)行分析和管理的活動。
為使軟件項(xiàng)目開發(fā)獲得成功.關(guān)鍵問題是必須對軟件項(xiàng)目的工作范圍、可能風(fēng)險、需要資源(人、硬件/軟件)、要實(shí)現(xiàn)的任務(wù)、經(jīng)歷的里程碑、花費(fèi)工作量(成本)、進(jìn)度安排等做到心中有數(shù).掌握整個軟件的開發(fā)進(jìn)程
三、持續(xù)集成對軟件項(xiàng)目管理的作用
l、對項(xiàng)目目標(biāo)管理的作用
軟件項(xiàng)目的目標(biāo)是開發(fā)出可運(yùn)行的、客戶滿意的軟件系統(tǒng)持續(xù)集成有統(tǒng)一的代碼庫。要求開發(fā)人員定期地、不斷地向代碼庫提交代碼。新近提交的代碼會經(jīng)過編譯與測試.與代碼庫中舊有的代碼相整合,形成安全穩(wěn)定運(yùn)行的代碼庫.既軟件系統(tǒng)。這樣。能夠在最快、最短的時問內(nèi)形成結(jié)果代碼.逐步實(shí)現(xiàn)項(xiàng)目目標(biāo)。這樣的代碼提交形式對軟件項(xiàng)目的目標(biāo)管理有利.項(xiàng)目經(jīng)理能夠最快速度地得到項(xiàng)目的最新代碼庫.并且新提交代碼的問題也會及早地暴露出來,在最短的時間內(nèi)得到解決。
持續(xù)集成已經(jīng)被證明對于小到中型規(guī)模的項(xiàng)目目標(biāo)的實(shí)現(xiàn)是有價值的,對于大的項(xiàng)目,仍然是有用的。
2、對項(xiàng)目時間管理的作用
生產(chǎn)力的發(fā)展過程是不斷采用物化勞動取代人自身的勞動的過程,是不斷自動化的過程。開發(fā)的構(gòu)建過程中如果大量的采取手動過程不僅降低了團(tuán)隊(duì)的生產(chǎn)率.更嚴(yán)重的是它將許多不確定的因素引入到產(chǎn)品的構(gòu)建過程.這使得發(fā)現(xiàn)以及解決問題變得異常困難。這樣會更加地降低了團(tuán)隊(duì)的開發(fā)效率。持續(xù)集成的構(gòu)建都是使用構(gòu)建工具自動化地進(jìn)行的通過使用持續(xù)集成工具將構(gòu)建過程自動化.便于分析并找出問題。大大提高了團(tuán)隊(duì)的開發(fā)效率。
穩(wěn)定而高效的開發(fā)效率保證了開發(fā)團(tuán)隊(duì)在一個輕松愉快的環(huán)境中工作.同時團(tuán)隊(duì)成員可以有更多的時問和精力學(xué)習(xí)新技術(shù)并將其應(yīng)用在軟件開發(fā)中.自動化測試.集成將開發(fā)人員從簡單、繁瑣的低級腦力勞動中解放出來,從而進(jìn)行更高層次的思考持續(xù)集成的自動構(gòu)建過程,極大的提高了軟件的開發(fā)效率,對項(xiàng)目經(jīng)理的項(xiàng)目時間管理有利
3、對項(xiàng)目質(zhì)量管理的作用
持續(xù)集成過程要求編程人員事先編寫好很多的測試用例.在代碼的提交過程中就對代碼進(jìn)行測試.這樣的及早測試能夠最快速地發(fā)現(xiàn)軟件代碼中的錯誤和缺陷.及時修改,從而提高軟件的質(zhì)量。
持續(xù)集成的測試包括:單元測試、功能測試、集成測試,進(jìn)行部署等等持續(xù)集成要求有一個全面的單元測試驗(yàn)證集.使持續(xù)集成能夠獲得短集成周期。在一般的項(xiàng)目中,編寫測試代碼都至少會額外增加30%的工作量初看.在時間和資金上這也許是很大的開銷,然而,在持續(xù)集成過程中,編寫測試代碼是必要的,而且這樣也省去了人工測試的時間.確保了軟件產(chǎn)品的質(zhì)量.對軟件項(xiàng)目的質(zhì)量管理有利
4、對項(xiàng)目風(fēng)險管理的作用
持續(xù)集成過程通常在開發(fā)人員提交代碼后開始.服務(wù)器自動更新代碼.編譯,運(yùn)行單元測試、功能測試、集成測試,進(jìn)行部署這個持續(xù)集成的過(未完,下一頁)
|