三、VSS 6.0的解決方案
在對(duì)VSS 6.0的工作原理,功能和新增特征有了一個(gè)較全面的了解后,我們開(kāi)始進(jìn)入到本節(jié),即如何運(yùn)用VSS 6.0來(lái)實(shí)際解決軟件開(kāi)發(fā)工程中的版本管理和控制問(wèn)題,怎樣有效地構(gòu)架一個(gè)系統(tǒng)的解決方案?! ?BR> 首先看一下我們的開(kāi)發(fā)小組所處于的實(shí)際情況,最一般的情況是整個(gè)項(xiàng)目使用的就是微機(jī)環(huán)境,每個(gè)開(kāi)發(fā)者在各自的Windows微機(jī)下利用Microsoft的VC、VB、VJ等等來(lái)開(kāi)發(fā)項(xiàng)目中各個(gè)子項(xiàng)目或子模塊,通常這個(gè)小組是局域網(wǎng)的一部分或者是一個(gè)較為獨(dú)立的子網(wǎng),可能配有專門的服務(wù)器。這樣的一個(gè)開(kāi)發(fā)環(huán)境對(duì)于實(shí)現(xiàn)用VSS 6.0來(lái)進(jìn)行版本控制和管理是非常有利而且是比較直觀的,因?yàn)閂SS 6.0也需要這個(gè)網(wǎng)絡(luò)環(huán)境?! ?BR> 其次是對(duì)于項(xiàng)目本身來(lái)說(shuō)的,一個(gè)項(xiàng)目經(jīng)過(guò)分析設(shè)計(jì)后一般都會(huì)分成若干個(gè)子項(xiàng)目由若干個(gè)開(kāi)發(fā)小組各自負(fù)責(zé)編碼調(diào)試,但軟件開(kāi)發(fā)的實(shí)際情況決定了各個(gè)小組之間并不是完全獨(dú)立的,他們?cè)诤芏嗲闆r下都需要協(xié)調(diào)交互和信息反饋,開(kāi)發(fā)過(guò)程中的每一步都有可能會(huì)導(dǎo)致對(duì)前一階段工作的修正,因?yàn)檐浖_(kāi)發(fā)很大程度上是一個(gè)螺旋式的過(guò)程,更不用說(shuō)小組之內(nèi)的相互交流了。在這個(gè)不斷交互改動(dòng)的過(guò)程中,將可能形成的項(xiàng)目的階段版本、部分版本和完整版本的數(shù)量是可想而知的,而以往的通常的版本人工管理方法已是不能勝任了。而且還有一個(gè)非常重要的方面不可忽略,這對(duì)系統(tǒng)軟件的開(kāi)發(fā)尤為明顯,即軟件的層次結(jié)構(gòu)。一般的做法是在通用的系統(tǒng)軟件之上為多個(gè)應(yīng)用開(kāi)發(fā)相應(yīng)的應(yīng)用程序,與此相對(duì)照的項(xiàng)目開(kāi)發(fā)組也一般分為系統(tǒng)開(kāi)發(fā)組和各個(gè)應(yīng)用開(kāi)發(fā)組,應(yīng)用軟件的開(kāi)發(fā)和使用過(guò)程中將會(huì)反饋回?zé)o數(shù)的應(yīng)用本身和系統(tǒng)軟件的問(wèn)題,如果只是針對(duì)每個(gè)應(yīng)用來(lái)單獨(dú)修改更新系統(tǒng)軟件版本,這樣就不可避免地導(dǎo)致多個(gè)系統(tǒng)版本的不一致,這樣對(duì)于真正解決系統(tǒng)所存在的問(wèn)題就顯得力不從心了。而VSS 6.0正適合于這種軟件的開(kāi)發(fā)體系結(jié)構(gòu),可以為各個(gè)小組創(chuàng)建自己的項(xiàng)目,而這些項(xiàng)目又從屬于一個(gè)總的項(xiàng)目,所有的修改都將被匯總處理以形成一個(gè)統(tǒng)一的最新版本。
針對(duì)這樣最為普通的一個(gè)軟件開(kāi)發(fā)環(huán)境和組織結(jié)構(gòu),運(yùn)用VSS 6.0進(jìn)行版本控制管理的非常有效而且代價(jià)較小的解決方案是:
在一臺(tái)Windows NT服務(wù)器或者是一臺(tái)較為獨(dú)立的Windows 98/95 PC上安裝VSS 6.0的服務(wù)器端軟件,創(chuàng)建一個(gè)為該整個(gè)項(xiàng)目存放用的數(shù)據(jù)庫(kù),然后在該數(shù)據(jù)庫(kù)中創(chuàng)建各個(gè)項(xiàng)目和子項(xiàng)目,并由VSS管理員為小組的每個(gè)成員創(chuàng)建一個(gè)帳號(hào)及他們各自的權(quán)限;
在開(kāi)發(fā)小組其他成員的PC上安裝VSS的客戶端軟件,并創(chuàng)建自己的工作目錄,這樣在軟件的開(kāi)發(fā)過(guò)程中,他們只要通過(guò)該客戶端軟件登錄到VSS服務(wù)器上,Checkout當(dāng)前要進(jìn)行工作的項(xiàng)目或文件,如有修改的在工作結(jié)束時(shí)將其Checkin提交給VSS服務(wù)器進(jìn)行統(tǒng)一更新。
在對(duì)VSS 6.0的工作原理,功能和新增特征有了一個(gè)較全面的了解后,我們開(kāi)始進(jìn)入到本節(jié),即如何運(yùn)用VSS 6.0來(lái)實(shí)際解決軟件開(kāi)發(fā)工程中的版本管理和控制問(wèn)題,怎樣有效地構(gòu)架一個(gè)系統(tǒng)的解決方案?! ?BR> 首先看一下我們的開(kāi)發(fā)小組所處于的實(shí)際情況,最一般的情況是整個(gè)項(xiàng)目使用的就是微機(jī)環(huán)境,每個(gè)開(kāi)發(fā)者在各自的Windows微機(jī)下利用Microsoft的VC、VB、VJ等等來(lái)開(kāi)發(fā)項(xiàng)目中各個(gè)子項(xiàng)目或子模塊,通常這個(gè)小組是局域網(wǎng)的一部分或者是一個(gè)較為獨(dú)立的子網(wǎng),可能配有專門的服務(wù)器。這樣的一個(gè)開(kāi)發(fā)環(huán)境對(duì)于實(shí)現(xiàn)用VSS 6.0來(lái)進(jìn)行版本控制和管理是非常有利而且是比較直觀的,因?yàn)閂SS 6.0也需要這個(gè)網(wǎng)絡(luò)環(huán)境?! ?BR> 其次是對(duì)于項(xiàng)目本身來(lái)說(shuō)的,一個(gè)項(xiàng)目經(jīng)過(guò)分析設(shè)計(jì)后一般都會(huì)分成若干個(gè)子項(xiàng)目由若干個(gè)開(kāi)發(fā)小組各自負(fù)責(zé)編碼調(diào)試,但軟件開(kāi)發(fā)的實(shí)際情況決定了各個(gè)小組之間并不是完全獨(dú)立的,他們?cè)诤芏嗲闆r下都需要協(xié)調(diào)交互和信息反饋,開(kāi)發(fā)過(guò)程中的每一步都有可能會(huì)導(dǎo)致對(duì)前一階段工作的修正,因?yàn)檐浖_(kāi)發(fā)很大程度上是一個(gè)螺旋式的過(guò)程,更不用說(shuō)小組之內(nèi)的相互交流了。在這個(gè)不斷交互改動(dòng)的過(guò)程中,將可能形成的項(xiàng)目的階段版本、部分版本和完整版本的數(shù)量是可想而知的,而以往的通常的版本人工管理方法已是不能勝任了。而且還有一個(gè)非常重要的方面不可忽略,這對(duì)系統(tǒng)軟件的開(kāi)發(fā)尤為明顯,即軟件的層次結(jié)構(gòu)。一般的做法是在通用的系統(tǒng)軟件之上為多個(gè)應(yīng)用開(kāi)發(fā)相應(yīng)的應(yīng)用程序,與此相對(duì)照的項(xiàng)目開(kāi)發(fā)組也一般分為系統(tǒng)開(kāi)發(fā)組和各個(gè)應(yīng)用開(kāi)發(fā)組,應(yīng)用軟件的開(kāi)發(fā)和使用過(guò)程中將會(huì)反饋回?zé)o數(shù)的應(yīng)用本身和系統(tǒng)軟件的問(wèn)題,如果只是針對(duì)每個(gè)應(yīng)用來(lái)單獨(dú)修改更新系統(tǒng)軟件版本,這樣就不可避免地導(dǎo)致多個(gè)系統(tǒng)版本的不一致,這樣對(duì)于真正解決系統(tǒng)所存在的問(wèn)題就顯得力不從心了。而VSS 6.0正適合于這種軟件的開(kāi)發(fā)體系結(jié)構(gòu),可以為各個(gè)小組創(chuàng)建自己的項(xiàng)目,而這些項(xiàng)目又從屬于一個(gè)總的項(xiàng)目,所有的修改都將被匯總處理以形成一個(gè)統(tǒng)一的最新版本。
針對(duì)這樣最為普通的一個(gè)軟件開(kāi)發(fā)環(huán)境和組織結(jié)構(gòu),運(yùn)用VSS 6.0進(jìn)行版本控制管理的非常有效而且代價(jià)較小的解決方案是:
在一臺(tái)Windows NT服務(wù)器或者是一臺(tái)較為獨(dú)立的Windows 98/95 PC上安裝VSS 6.0的服務(wù)器端軟件,創(chuàng)建一個(gè)為該整個(gè)項(xiàng)目存放用的數(shù)據(jù)庫(kù),然后在該數(shù)據(jù)庫(kù)中創(chuàng)建各個(gè)項(xiàng)目和子項(xiàng)目,并由VSS管理員為小組的每個(gè)成員創(chuàng)建一個(gè)帳號(hào)及他們各自的權(quán)限;
在開(kāi)發(fā)小組其他成員的PC上安裝VSS的客戶端軟件,并創(chuàng)建自己的工作目錄,這樣在軟件的開(kāi)發(fā)過(guò)程中,他們只要通過(guò)該客戶端軟件登錄到VSS服務(wù)器上,Checkout當(dāng)前要進(jìn)行工作的項(xiàng)目或文件,如有修改的在工作結(jié)束時(shí)將其Checkin提交給VSS服務(wù)器進(jìn)行統(tǒng)一更新。