(完整版)軟件版本管理制度文檔_第1頁(yè)
(完整版)軟件版本管理制度文檔_第2頁(yè)
(完整版)軟件版本管理制度文檔_第3頁(yè)
(完整版)軟件版本管理制度文檔_第4頁(yè)
已閱讀5頁(yè),還剩9頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、軟件版本管理規(guī)范系統(tǒng)軟件開(kāi)發(fā)部2011-9-20目錄1引言.31.1目的 .31.2范圍 .31.3術(shù)語(yǔ)定義 .31.4版序控制記錄 .41.5版本更新記錄 .42版本管理 .42.1流程圖 .42.2版本命名 .72.3版本升級(jí) .72.3.1版本升級(jí)原則 .72.3.2新版本的發(fā)布 .82.4目錄結(jié)構(gòu) .82.5文檔的存放 .92.5.1文本文件的存放 .92.5.2源代碼的存放 .92.5.3發(fā)行文檔的存放 .92.6權(quán)限控制管理 .103備份管理 .103.1源文件備份 .103.2庫(kù)文件備份 .104用戶版本管理 .105版本工具的使用 .115.1配置管理工具 .115.2CVS

2、的使用 .115.2.1常用命令 .115.2.2簡(jiǎn)單操作 .125.2.3版本分支管理 .121 引言1.1 目的本文檔是為規(guī)范XXXXXX有限公司軟件版本管理而制定的。1.2 范圍本文檔為系統(tǒng)軟件開(kāi)發(fā)部版本管理員提供有關(guān)版本管理規(guī)范的相關(guān)內(nèi)容,包括:版本標(biāo)識(shí)方法軟件系統(tǒng)數(shù)據(jù)的存放文檔的修改控制文檔的備份制度1.3 術(shù)語(yǔ)定義CVSCVS是一個(gè)開(kāi)源的版本控制系統(tǒng)Concurrent Versions System的簡(jiǎn)稱文檔一種數(shù)據(jù)媒體和其上所記錄的數(shù)據(jù)。配置管理標(biāo)識(shí)和確定系統(tǒng)中配置項(xiàng)的過(guò)程, 在系統(tǒng)整個(gè)生存周期內(nèi)控制這些項(xiàng)的投放和更動(dòng),記錄并報(bào)告配置的狀態(tài)和更動(dòng)要求,驗(yàn)證配置項(xiàng)的完整性和正確性

3、。軟件配置軟件的具體形態(tài)在某時(shí)刻的瞬時(shí)影像。配置項(xiàng)軟件配置管理的對(duì)象稱為配置項(xiàng),如:系統(tǒng)規(guī)格說(shuō)明書(shū),項(xiàng)目開(kāi)發(fā)計(jì)劃,用戶手冊(cè),源碼?;€軟件生存周期中各開(kāi)發(fā)階段末尾的標(biāo)記,它的作用是把各階段工作的劃分更加明確化,使本來(lái)連續(xù)的工作在這些點(diǎn)上斷開(kāi),使之便于檢驗(yàn)和肯定階段成果。1.4 版序控制記錄版序狀態(tài)擬稿審核批準(zhǔn)發(fā)布日期1.0系統(tǒng)軟件開(kāi)發(fā)部1.5 版本更新記錄*A-增加M-修改D-刪除版本 /修訂版修改頁(yè)碼修改記錄修改人日期1.0初始版本2 版本管理2.1 流程圖文檔歸檔流程文檔編寫(xiě)人員評(píng)審人員配置管理員編寫(xiě)文檔格式規(guī)范化檢查修改文檔打評(píng)審版本不通過(guò)文檔評(píng)審?fù)ㄟ^(guò)確定版本(歸檔入庫(kù))文檔變更流程變更

4、申請(qǐng)人評(píng)審人員文檔編寫(xiě)人員配置管理員變更影響分通過(guò)提交變更析及審批變更實(shí)施取消變更不通過(guò)不通過(guò)文檔評(píng)審?fù)ㄟ^(guò)更新版本(歸檔入庫(kù))代碼歸檔流程開(kāi)發(fā)人員測(cè)試人員配置管理員源代碼入庫(kù)從 CVS 庫(kù)提取源代碼進(jìn)行編譯不通過(guò)制作安裝程序系統(tǒng)測(cè)試從 CVS 庫(kù)提取源代碼打測(cè)試版本入庫(kù):通過(guò)安裝程序修改源代碼源代碼測(cè)試報(bào)告評(píng)審報(bào)告更新版本代碼變更流程變更申請(qǐng)人評(píng)審人員開(kāi)發(fā)人員測(cè)試人員配置管理員變更影響分通過(guò)提交變更變更實(shí)施代碼測(cè)試析及審批取消變更不通過(guò)不通過(guò)測(cè)試報(bào)告評(píng)審?fù)ㄟ^(guò)更新版本(歸檔入庫(kù))配置管理流程開(kāi)發(fā)人員項(xiàng)目管理人員測(cè)試人員配置管理員完成開(kāi)發(fā)任務(wù)提交測(cè)試任務(wù)測(cè)試計(jì)劃、用例更新測(cè)試環(huán)境測(cè)試執(zhí)行處理 BU

5、G回歸測(cè)試提交測(cè)試報(bào)告提交發(fā)布請(qǐng)求確定版本信息制做安裝程序新版本發(fā)布入庫(kù)輸出給市場(chǎng)部發(fā)布文檔更新流程說(shuō)明:1、開(kāi)發(fā)人員完成所負(fù)責(zé)模塊的代碼編寫(xiě)任務(wù)后,提交到項(xiàng)目經(jīng)理處2、項(xiàng)目經(jīng)理向測(cè)試部門提交測(cè)試任務(wù)3、配置管理員準(zhǔn)備測(cè)試所需的環(huán)境4、測(cè)試人員開(kāi)展測(cè)試并實(shí)時(shí)提交BUG5、開(kāi)發(fā)人員處理測(cè)試過(guò)程中所出現(xiàn)的BUG ,并提交給測(cè)試人員進(jìn)行回歸測(cè)試,直至BUG 被關(guān)閉6、測(cè)試基本完成后,測(cè)試人員提交測(cè)試報(bào)告7、項(xiàng)目情況根據(jù)實(shí)際情況決定是否發(fā)布新的版本8、配置管理員與各相關(guān)人員經(jīng)討論后確定好新版本各項(xiàng)信息9、配置管理員發(fā)布新版本2.2 軟件版本命名軟件版本號(hào)由四部分組成,第一個(gè)1 為主版本號(hào),第二個(gè)1 為

6、子版本號(hào),第三個(gè)1為階段版本號(hào),第四部分為日期版本號(hào)加希臘字母版本號(hào),希臘字母版本號(hào)共有 5 種,分別為: Alpha 、Beta、 RC、 Release。例如:。對(duì)于小項(xiàng)目或子系統(tǒng)而言,可簡(jiǎn)化為 <主版本號(hào) >.<次版本號(hào) >.<修訂版本號(hào) >,如。* 主版本號(hào):當(dāng)功能模塊有較大的變動(dòng), 比如增加多個(gè)模塊或者整體架構(gòu)發(fā)生變化。此版本號(hào)由項(xiàng)目決定是否修改。* 子版本號(hào):當(dāng)功能有一定的增加或變化,比如增加了對(duì)權(quán)限控制、增加自定義視圖等功能。此版本號(hào)由項(xiàng)目決定是否修改。* 階段版本號(hào):一般是 Bug 修復(fù)或是一些小的變動(dòng),要經(jīng)常發(fā)布修訂版,時(shí)間間隔不限,修復(fù)一

7、個(gè)嚴(yán)重的 Bug 即可發(fā)布一個(gè)修訂版。此版本號(hào)由項(xiàng)目經(jīng)理決定是否修改。* 日期版本號(hào)用于記錄修改項(xiàng)目的當(dāng)前日期,每天對(duì)項(xiàng)目的修改都需要更改日期版本號(hào)。此版本號(hào)由開(kāi)發(fā)人員決定是否修改。* Alpha 版: 此版本表示該軟件在此階段主要是以實(shí)現(xiàn)軟件功能為主,通常只在軟件開(kāi)發(fā)者內(nèi)部交流,一般而言,該版本軟件的Bug 較多,需要繼續(xù)修改。* Beta 版: 該版本相對(duì)于 版已有了很大的改進(jìn),消除了嚴(yán)重的錯(cuò)誤,但還是存在著一些缺陷,需要經(jīng)過(guò)多次測(cè)試來(lái)進(jìn)一步消除,此版本主要的修改對(duì)像是軟件的UI 。* RC 版: 該版本已經(jīng)相當(dāng)成熟了, 基本上不存在導(dǎo)致錯(cuò)誤的 BUG ,與即將發(fā)行的正式版相差無(wú)幾。* R

8、elease版 : 該版本意味 “最終版本 ”,在前面版本的一系列測(cè)試版之后,終歸會(huì)有一個(gè)正式版本,是最終交付用戶使用的一個(gè)版本。該版本有時(shí)也稱為標(biāo)準(zhǔn)版。一般情況下, Release不會(huì)以單詞形式出現(xiàn)在軟件封面上,取而代之的是符號(hào) (R)。2.3 版本升級(jí)版本升級(jí)原則版本升級(jí)應(yīng)嚴(yán)格納入版本管理的控制之下。應(yīng)當(dāng)謹(jǐn)慎地控制版本的升級(jí),保障高版本的向下兼容性,或提供嚴(yán)格定義的升級(jí)方法。在下面幾種情況下,進(jìn)行版本演化和升級(jí):1、當(dāng)產(chǎn)品發(fā)生重大修改和改進(jìn)時(shí),主版本號(hào)加1。重大修改和改進(jìn)包括:1)平臺(tái)遷移;2)開(kāi)發(fā)工具的遷移;3)體系結(jié)構(gòu)的變遷。2、當(dāng)產(chǎn)品發(fā)生較小的改進(jìn)或修改時(shí),次版本號(hào)可以加1。3、對(duì)于

9、改動(dòng)量比較少的,如修改產(chǎn)品的錯(cuò)誤,可升級(jí)修訂版本號(hào)。4、記錄版本升級(jí)過(guò)程。 每次版本升級(jí), 都要填寫(xiě)版本升級(jí)記錄表, 記錄表樣例如下:版本升級(jí)記錄表主版本子系統(tǒng)名稱子系統(tǒng)版本發(fā)布日期功能變更描述發(fā)布責(zé)任人批準(zhǔn)人備注說(shuō)明:版本號(hào):記錄當(dāng)前發(fā)布的版本。發(fā)布日期:該版本批準(zhǔn)發(fā)布的日期。修改文件:版本修改記錄文件,一般為版本修改日志。新版本的發(fā)布新版本的發(fā)布包括主版本號(hào)和次版本號(hào)的升級(jí),一般不包括內(nèi)部版本號(hào)的升級(jí)。流程如下:1、根據(jù)項(xiàng)目進(jìn)展情況,或者根據(jù)用戶需要進(jìn)行發(fā)布準(zhǔn)備。2、將發(fā)布所需文件進(jìn)行打包,放在指定目錄中, 給目錄加上標(biāo)簽 Tag,標(biāo)簽中包含將要發(fā)布的版本信息。3、同樣對(duì)源碼文件也要加上與

10、版本信息相關(guān)的標(biāo)簽Tag。標(biāo)簽 Tag 命名規(guī)則如下:組成:模塊首字母 +下劃線 +文件類型 +下劃線 +主版本號(hào) +次版本號(hào) +內(nèi)部版本號(hào) + 時(shí)間( +下劃線 +合并標(biāo)記)樣例: qzcj_src_1_0_0_110923,qzcj 表示采集模塊的首字母, src 表示源碼, 1_0_0 表示將要發(fā)布的版本號(hào), 合并標(biāo)記可省略, 只在有合并操作時(shí)注明, 其中合并前的標(biāo)記為 mbe, 合并后的標(biāo)記為 maf。2.4 目錄結(jié)構(gòu)但為了能更好地管理各項(xiàng)目組的文檔,建議可將被管理的配置項(xiàng)分為三大類:文檔類、源碼類及安裝盤類, 這樣存放比較清晰, 有利于版本管理, 現(xiàn)將目錄結(jié)構(gòu)整理如下:根目錄一級(jí)目錄

11、二級(jí)目錄對(duì)應(yīng)配置項(xiàng)備注resp前置采集源碼源碼后臺(tái)計(jì)算源碼code業(yè)務(wù)應(yīng)用源碼數(shù)據(jù)庫(kù)SQL 文件業(yè)務(wù)支撐公用開(kāi)發(fā)包需求文檔立項(xiàng)報(bào)告、需求分析、需求記錄設(shè)計(jì)文檔軟件架構(gòu)、總體設(shè)計(jì)、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、界面設(shè)計(jì)文檔數(shù)據(jù)庫(kù)文檔數(shù)據(jù)字典、數(shù)據(jù)庫(kù)搭建、備doc份還原方案、 PDM 設(shè)計(jì)測(cè)試文檔測(cè)試計(jì)劃、測(cè)試用例、測(cè)試報(bào)告用戶文檔用戶手冊(cè)、產(chǎn)品說(shuō)明計(jì)劃文檔項(xiàng)目計(jì)劃、年度月度計(jì)劃外部接口文檔標(biāo)準(zhǔn)規(guī)范發(fā)布文件SETUPreleaserar 文件發(fā)布文檔二級(jí)目錄中的版本指一些特殊的版本,不影響基線版本。2.5 文檔的存放文本文件的存放根據(jù)各項(xiàng)目部自己的情況,將系統(tǒng)用戶需求記錄、總體設(shè)計(jì)文檔、詳細(xì)設(shè)計(jì)及數(shù)據(jù)結(jié)構(gòu)文

12、件、測(cè)試記錄、用戶手冊(cè)等放入 CVS 倉(cāng)庫(kù) doc 目錄相應(yīng)的子目錄下。源代碼的存放源代碼包括如: java,jsp,BMP ,ICO 等相關(guān)文件,是未經(jīng)編譯處理的、不能直接交付使用的產(chǎn)品文件以及編譯產(chǎn)品所需的文件;聯(lián)機(jī)幫助文件 HLP 在未生成 HLP 文件之前的 DOC, RTF 等格式的文檔也視為源代碼。各子系統(tǒng)當(dāng)前的程序源文件放入 CVS 倉(cāng)庫(kù) code 目錄相應(yīng)的 bb 目錄下,對(duì)于一個(gè)子系統(tǒng)又分多個(gè)分子系統(tǒng)的情況,應(yīng)在該目錄下分別建立幾個(gè)相應(yīng)的子目錄。發(fā)行文檔的存放發(fā)行文檔是指產(chǎn)品交付用戶使用所必須的文件。包括:產(chǎn)品可執(zhí)行文件,用戶使用說(shuō)明書(shū),聯(lián)機(jī)幫助( HLP);資源文件( BM

13、P ,ICO 等),環(huán)境配置文件等。以上文檔作為制作發(fā)行盤的素材, 放在 CVS 倉(cāng)庫(kù)發(fā)布文件目錄的Release目錄之下,制作好的發(fā)行盤放在發(fā)布文件的Setup 目錄。2.6 權(quán)限控制管理為保障文檔的安全性,一致性,以及防止意外修改,必須對(duì)不同的文檔設(shè)置不同的訪問(wèn)權(quán)限。文檔權(quán)限類別:無(wú)任何權(quán)限,只讀權(quán)限,所有權(quán)限。文檔類別:設(shè)計(jì)文檔,源碼,發(fā)行文檔。用戶類別:開(kāi)發(fā)人員、測(cè)試人員、項(xiàng)目經(jīng)理、配置管理員等。為了控制不同的使用權(quán)限,根據(jù)要求在服務(wù)器上分別建立不同的用戶,針對(duì)不同的配置項(xiàng)所在目錄分配不同的權(quán)限。為了便于管理,應(yīng)以表格的形式列出人員與管理對(duì)象的訪問(wèn)關(guān)系(用戶權(quán)限清單) ,詳見(jiàn)系統(tǒng)部 C

14、VS 權(quán)限配置。3 備份管理為了保證文檔的最大可恢復(fù)性,要隨時(shí)及定期地進(jìn)行備份工作。3.1 源文件備份開(kāi)發(fā)人員每天都要將自已當(dāng)日修改的源文件提交(commit )至 CVS 倉(cāng)庫(kù)。3.2 庫(kù)文件備份為防止服務(wù)器出現(xiàn)異常, 需對(duì)服務(wù)器上的 CVS 倉(cāng)庫(kù)文件進(jìn)行備份, 目前采用的方案如下:工作日備份:每個(gè)工作日將原本位于 D 盤的倉(cāng)庫(kù)文件在 H 盤上備份一份,當(dāng) D 盤倉(cāng)庫(kù)出現(xiàn)異常時(shí),用戶可把 ROOT 目錄修改至 H 盤備份的目錄,再進(jìn)行更新操作。每周備份:每周五下班時(shí)將H 盤備份文件異地備份至其它IP (目前備份在上)。每月備份:每個(gè)月底將最新版本備份至光盤。4 用戶版本管理為了更好地管理源程

15、序,應(yīng)為每一用戶建立一個(gè)用戶版本文件,該文件應(yīng)包含以下內(nèi)容:用戶編號(hào):用戶名稱:軟件版本號(hào):開(kāi)始使用時(shí)間:聯(lián)系人:聯(lián)系電話:用戶程序更改日志樣例如下:更改時(shí)間版本號(hào)修改模塊名稱變更原因變更概述軟件位置變更人員備注說(shuō)明:1)用戶購(gòu)買軟件時(shí)要為該用戶建立一個(gè)包含上述內(nèi)容的一個(gè)用戶版本文件,并填寫(xiě)有關(guān)數(shù)據(jù)。2)用戶進(jìn)行版本更新時(shí)要求填寫(xiě)該文件的版本變更記錄,用以反映用戶版本的變更情況。5 版本工具的使用5.1 配置管理工具開(kāi)發(fā)部采用 CVS進(jìn)行配置管理, CVS是一個(gè) C/S 系統(tǒng),多個(gè)開(kāi)發(fā)人員通過(guò)一個(gè)中心版本控制系統(tǒng)來(lái)記錄文件版本,從而達(dá)到保證文件同步的目的。目前采用的 CVS服務(wù)端為,客戶端為

16、。5.2 CVS 的使用常用命令英文命令中文命令操作、說(shuō)明備注Checkout提取 /取出將文件下載到本地目錄第一次下載目錄用Commit提交將改動(dòng)過(guò)的文件提交到版本庫(kù)每次對(duì)文件更新后使用Update更新將文件同步到最新版本獲取最新版本Tag標(biāo)簽給某個(gè)版本添加一個(gè)標(biāo)記符號(hào)便于合并分支與主線Branch分支創(chuàng)建某個(gè)文件的分支建立特殊版本時(shí)用到Merge合并將分支文件(或主文件)的更改合并到主文件(或分支文件)diff比較不同比較任意兩個(gè)版本間的不同Reversion版本分支圖查看文件各版本(包括分支文件)的走向圖查詢各個(gè)版本及 TagGraphHistory歷史查看文件各個(gè)版本更新歷史查詢版本詳

17、細(xì)信息簡(jiǎn)單操作文件提?。撼醮问褂眯鑼⒃次募膫}(cāng)庫(kù)提取出來(lái),執(zhí)行checkout 命令將庫(kù)文件提取至本地相應(yīng)位置。定時(shí)更新:開(kāi)發(fā)人員每天早上對(duì)源代碼或文件進(jìn)行更新操作(右鍵執(zhí)行update 操作)。實(shí)時(shí)更新:某一開(kāi)發(fā)人員提交更改后,可通知其它人員進(jìn)行更新操作。實(shí)時(shí)提交: 對(duì)某一文件進(jìn)行更改完成后,執(zhí)行 commit 命令將更改提交至倉(cāng)庫(kù),更改前先進(jìn)行更新操作,如多個(gè)人員對(duì)同一文件同時(shí)進(jìn)行操作,會(huì)產(chǎn)生沖突,這時(shí)需要對(duì)沖突進(jìn)行處理。沖突處理:提交產(chǎn)生沖突時(shí),先對(duì)文件進(jìn)行同步(即更新)操作,之后會(huì)產(chǎn)生一個(gè)合并文件, <號(hào)前為兩個(gè)版本相同部分,號(hào)前為本地版本修改的內(nèi)容, >前為當(dāng)前服務(wù)器最新

18、版本修改的內(nèi)容,找到最近提交該文件的同事,進(jìn)行協(xié)商后對(duì)源文件進(jìn)行修改并提交。創(chuàng)建分支 /標(biāo)簽:右鍵菜單中選擇Branch或 Tag找開(kāi)創(chuàng)建對(duì)話框,輸入Branch 名或 Tag名,選中 Create new branch / Create new tag,點(diǎn)擊 OK 即可。查看版本 /歷史:文件(非文件夾)右健菜單中選擇 Revision Graph.或 History. ,可查看該文件的版本更新記錄或歷史信息。版本分支管理我們把一個(gè)項(xiàng)目的主要開(kāi)發(fā)過(guò)程稱作開(kāi)發(fā)基線。當(dāng)某一個(gè)特殊事件發(fā)生的時(shí)候,例如,有一個(gè)用戶有特殊的需求,于是就從這個(gè)開(kāi)發(fā)基線里分離出來(lái)一個(gè)叉,以滿足用戶特殊的需求,這個(gè)叉有它自己的發(fā)展方向,這就是分支。-分支/- -開(kāi)發(fā)基線上面這個(gè)點(diǎn),代表開(kāi)發(fā)基線的最新版本, 如果從開(kāi)發(fā)基線建立分支來(lái)進(jìn)行定制開(kāi)發(fā),開(kāi)發(fā)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論