亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

在配置管理系統(tǒng)中基于活動(dòng)版本選擇的計(jì)算機(jī)方法和裝置的制作方法

文檔序號(hào):6562772閱讀:188來源:國知局
專利名稱:在配置管理系統(tǒng)中基于活動(dòng)版本選擇的計(jì)算機(jī)方法和裝置的制作方法
背景技術(shù)
軟件開發(fā)通常按照項(xiàng)目組被執(zhí)行。目標(biāo)軟件系統(tǒng)通過設(shè)計(jì)工作、測試工作、實(shí)施工作和維護(hù)工作被開發(fā)??赡苡胁煌慕M和不同的組成員參與這些工作。在整個(gè)這些工作的過程中以及在工作組成員中,各種建模和其它開發(fā)工具被用于在開發(fā)目標(biāo)軟件系統(tǒng)中增進(jìn)聯(lián)系和提高一致性。軟件配置管理系統(tǒng)就是這樣一種工具。
軟件配置管理系統(tǒng)使得用戶組(軟件開發(fā)員/工程師)能夠利用目標(biāo)軟件系統(tǒng)的成品進(jìn)行工作?!俺善贰睘橛脩敉瓿晒ぷ鞯姆€(wěn)定結(jié)果,通常存在(persist)于諸如模型(model)和源代碼的文件系統(tǒng)中。
軟件配置管理(SCM)系統(tǒng)必須向用戶提供一種方法,用來配置其工作區(qū)以選擇他們正在工作的成品(例如文件)的適當(dāng)版本。傳統(tǒng)的SCM系統(tǒng)將工作區(qū)的配置集中在單個(gè)成品的選擇上,利用每個(gè)成品的文件名、版本號(hào)或模式來選擇適當(dāng)?shù)陌姹尽?br>
發(fā)明內(nèi)容
本發(fā)明針對(duì)現(xiàn)有技術(shù)的問題并且提供了一種基于活動(dòng)版本(ABVS)的配置管理系統(tǒng)。在優(yōu)選實(shí)施例中,本發(fā)明采用成品歷史裝置和處理器裝置。成品歷史裝置指示(a)在形成目標(biāo)軟件程序配置的給定的多個(gè)成品中每一成品的基線版本和(b)每一成品的各變化組信息。不同的變化組對(duì)應(yīng)于不同的成品版本。處理器裝置使用指示的基線版本和變化組信息確定目標(biāo)軟件程序配置中的成品版本。處理器裝置使配置管理系統(tǒng)能夠向用戶顯示確定的成品版本。
處理器裝置(例程)最好是基于規(guī)則的并且包括間隙選擇錯(cuò)誤解決方案和沖突選擇錯(cuò)誤解決方案。


根據(jù)下面對(duì)本發(fā)明的優(yōu)選實(shí)施例的更詳細(xì)的描述,本發(fā)明的上述和其它的目的、特征和優(yōu)點(diǎn)將變得顯而易見,如附圖中所示的,其中在不同的圖中,相同的標(biāo)號(hào)表示相同的部分。這些圖不一定是按比例繪制的,而是把重點(diǎn)放在對(duì)本發(fā)明原理的說明上。
圖1是說明成品歷史示圖的示意圖。
圖2-5是說明本發(fā)明的版本選擇的示意圖。
圖6是說明其中操作本發(fā)明的實(shí)施例的計(jì)算機(jī)網(wǎng)絡(luò)環(huán)境的示意圖。
圖7是圖6的網(wǎng)絡(luò)的一個(gè)計(jì)算機(jī)節(jié)點(diǎn)的方框圖。
圖8是本發(fā)明的一個(gè)實(shí)施例的方框圖。
具體實(shí)施例方式
下面將對(duì)本發(fā)明的優(yōu)選實(shí)施例進(jìn)行描述。
圖8中所示的為由成品15、17、21的一個(gè)或多個(gè)構(gòu)成的目標(biāo)軟件程序13。成品15、17、21的每個(gè)具有各自的版本A、B等。因此,目標(biāo)軟件程序13的一種配置22采用成品15的版本A、成品17的版本B和成品21的版本A。目標(biāo)軟件程序13的其它配置22采用成品15、17、21的其它版本。配置管理系統(tǒng)19使用戶能夠產(chǎn)生并對(duì)目標(biāo)軟件程序13的這樣的不同配置22進(jìn)行操作(例如編輯、測試、重新設(shè)計(jì)等)。因此,配置管理系統(tǒng)19的主要部分是版本選擇器11,該版本選擇器11用于在用戶對(duì)目標(biāo)軟件13和其各種配置22進(jìn)行操作或與其交互的不同時(shí)間選擇適當(dāng)?shù)能浖绦虺善钒姹?。版本選擇器11承載用戶的工作空間和在其中顯示的內(nèi)容,如下面進(jìn)一步描述的。本發(fā)明為迄今為止現(xiàn)有技術(shù)還未實(shí)現(xiàn)的一種改進(jìn)的或新穎的版本選擇器11。
本發(fā)明提供了配置管理程序19中基于活動(dòng)的版本選擇(ABVS)。就用戶正在做的項(xiàng)目連同用戶正在做的增加工作的邏輯單元項(xiàng)目而言,本發(fā)明系統(tǒng)11將選擇方法抽象化以最好地表達(dá)工作區(qū)的配置22。
為了理解本發(fā)明的ABVS,申請(qǐng)人首先定義了一些術(shù)語。
“成品(artifact)”是用戶完成工作的穩(wěn)定結(jié)果,通常存在于比如模型和源代碼的文件系統(tǒng)中。
“活動(dòng)”用于跟蹤用戶完成工作的結(jié)果。活動(dòng)的“變化組(change-set)”是由執(zhí)行該活動(dòng)的實(shí)施者制成的成品的一組變化。
“項(xiàng)目”用于分組相關(guān)的成品組和相關(guān)的活動(dòng)組。項(xiàng)目還用于分組被稱作該項(xiàng)目的“子項(xiàng)目”的相關(guān)項(xiàng)目組。
“基線(baseline)”為項(xiàng)目的持續(xù)狀態(tài),其識(shí)別項(xiàng)目中的每一成品的版本以及哪些其它的項(xiàng)目為該項(xiàng)目的子項(xiàng)目。子項(xiàng)目的關(guān)系的持續(xù)狀態(tài)被稱作“子基線”。
“工作空間”用于限定用戶的工作環(huán)境以包含該用戶所需的成品和跟蹤執(zhí)行這些任務(wù)的結(jié)果的活動(dòng)。工作空間被描述為“接受”限定其配置的項(xiàng)目基線和活動(dòng)變化組。
本發(fā)明ABVS的基本動(dòng)機(jī)在于其以應(yīng)該對(duì)用戶直觀的目的為基礎(chǔ);項(xiàng)目的基線為“我的起始點(diǎn)”并且變化組為表示這些基線的增量(delta)的自然工作單元。ABVS使用戶能夠根據(jù)說明指定工作環(huán)境,即更具體地比如說“我想看這些項(xiàng)目和與由下列變化組指示的變化組合的其子項(xiàng)目的基線版本”。
雖然一些SCM系統(tǒng)為組織工作提供活動(dòng)或變化組機(jī)構(gòu),但沒有一個(gè)SCM系統(tǒng)將活動(dòng)信息與項(xiàng)目信息組合來選擇版本,也沒有一個(gè)SCM系統(tǒng)通過子項(xiàng)目關(guān)系使用項(xiàng)目的聚合來選擇版本。本發(fā)明ABVS可做這兩項(xiàng)工作。因此,本發(fā)明的實(shí)施例將變化組與基線組合以限定配置,如從下面將理解的。
一個(gè)ABVS情景是其中工作空間的配置僅參考項(xiàng)目基線(不參考變化組),并且兩個(gè)基線不是引用(refer to)相同成品歷史的版本。在這種情況下,工作空間(版本選擇器11)選擇基線中指定的版本并且將該版本顯示給最終用戶。
下面,考慮不太重要的ABVS情景工作空間配置包含引用成品歷史的版本A的一個(gè)項(xiàng)目基線,和引用作為版本A的緊接后續(xù)版本(successor)的版本B的一個(gè)變化組。在這種情況下,版本選擇器11為工作空間選擇版本B(即顯示給最終用戶)。
當(dāng)工作空間的配置引用任意分布在單成品歷史示圖上的多個(gè)版本時(shí),事情變得更加復(fù)雜。出現(xiàn)的問題是當(dāng)訪問成品時(shí)用戶想看哪一版本?一種多項(xiàng)選擇的情況具有清晰的答案。如果基線引用的版本和變化組引用的所有版本為成品歷史版本示圖的鄰接子示圖,其中正好子示圖的一個(gè)版本不具有任何后續(xù)版本,則本發(fā)明系統(tǒng)11拾取那個(gè)版本。這種情況對(duì)應(yīng)于其中用戶已識(shí)別一組基線和改變相同的成品歷史并邏輯地彼此“依靠”的變化組的邏輯情況。
例如,在圖1所示的成品歷史28中,基線L1、變化組A2和變化組A4引用(reference)來自成品歷史的鄰接子示圖的版本A、B、D和F。因?yàn)榘姹続、B、D和F為連續(xù)子示圖,所以接受這些變化組(A2和A4)和基線(L1)的工作空間(使用版本選擇器11)選擇版本F。其動(dòng)機(jī)在于F為版本A、B、D(即版本F的先前版本)和F本身所引入的工作產(chǎn)品;基線L1表示在版本A和B完成的工作,變化組A2表示在版本D完成的工作,變化組A4表示在版本F完成的工作。然后,將所有這些變化組和基線“合計(jì)”為產(chǎn)生版本F的版本集(A、B、D、F)。因此,版本F一定是在接受這些變化組(A2和A4)和基線(L1)的工作空間中選擇的正確的版本。
概括點(diǎn)說,單一版本可被看作表示在該版本和所有其先前版本完成的所有工作的總和。廣義地說,基線可被看作表示在一組成品歷史的一組版本(每一成品歷史的一個(gè)版本和其先前版本)完成的所有工作的總和。申請(qǐng)人指出在本發(fā)明的ABVS方法和技術(shù)(在11中)中基線可激活所有這些版本。另一方面,變化組被看作僅表示產(chǎn)生其版本組的被完成的工作;其僅激活變化組中的版本(而不是這些版本的先前版本)。
本發(fā)明ABVS系統(tǒng)11中的版本選擇的起始點(diǎn)為由工作空間的配置激活的所有版本組的計(jì)算。此后,版本是怎樣進(jìn)入配置的(即是否因?yàn)榛€或子基線或因?yàn)樽兓M)與選擇過程無關(guān)。對(duì)于ABVS系統(tǒng)11選擇版本,其必須能夠把激活的版本組描述為包含(并且僅包含)單一版本和所有其先前版本。
參照?qǐng)D2考慮更復(fù)雜的示例。假定工作空間接收基線L1、變化組A1、變化組A2和變化組A3(圖2中由下劃線表示)。因此,激活的版本組(由陰影圈表示)為包含版本A、B、C、D和E的組或{A、B、C、D、E}。其中來自連續(xù)子示圖的激活的版本組的版本A、B、C、D和E可被描述為版本E和其先前版本。因此,本發(fā)明系統(tǒng)11使得工作空間能夠在接收基線L1和變化組A1、A2和A3時(shí)選擇并顯示版本E。
選擇錯(cuò)誤參照?qǐng)D3,考慮有問題的示例。假定工作空間接收基線L1和變化組A4。配置中(下劃線)的目標(biāo)變化組和基線產(chǎn)生激活的版本組{A、B、F}(陰影部分)。在示圖中沒有一個(gè)版本僅表示在該激活版本組中完成的工作。版本F邏輯上包含在版本D中完成的工作,該版本D不是由目標(biāo)變化組A4和基線L1激活的版本,因此不能作為工作空間/本發(fā)明系統(tǒng)11選擇的版本。由于該組變化組A4和基線L1不選擇單一版本的所有先前版本(即不形成鄰接的子示圖),因此該配置無效并且工作空間不能選擇成品歷史的版本。申請(qǐng)人把這稱作間隙選擇錯(cuò)誤。當(dāng)存在這樣的間隙錯(cuò)誤時(shí),本發(fā)明系統(tǒng)11向用戶提供可被增加以消除該間隙的變化組的列表。
考慮另一有問題的示例,注意看圖4。假定工作空間接收基線L1和變化組A1、A2、A3和A4(下劃線所示的每一個(gè))。這產(chǎn)生了圖4中陰影所示的激活的版本組{A、B、C、D、E、F}。這里的問題在于,激活的版本組不激活單一版本和所有其先前版本,而是激活兩個(gè)版本(E和F)和所有其各自的先前版本。申請(qǐng)人把這稱作沖突選擇錯(cuò)誤。然而,與間隙選擇錯(cuò)誤不同,通過創(chuàng)建新版本H可解決沖突選擇錯(cuò)誤。在這種情況下,本發(fā)明系統(tǒng)11創(chuàng)建新版本作為版本E和F的直接后續(xù)版本。即,本發(fā)明系統(tǒng)11使用版本D(最近的公共原始版本)作為合并的基礎(chǔ)合并這些版本E和F,并且產(chǎn)生新版本H。然后,使用或利用版本H作為一些新的或現(xiàn)存的變化組的部分,工作空間將其包括在它的配置中。
如果工作空間配置包括基線L1、變化組A1和變化組A2(下劃線的),激活版本組{A、B、C、D},如圖5中陰影所示,則出現(xiàn)類似的沖突選擇錯(cuò)誤。然而,在這種情況下,通過將變化組A3接收進(jìn)工作空間,產(chǎn)生激活的版本組{A、B、C、D、E},錯(cuò)誤被解決。因此,工作空間(通過本發(fā)明系統(tǒng)11)選擇版本E。
ABVS中的項(xiàng)目基線由于在工作空間的配置中可出現(xiàn)同一項(xiàng)目歷史的多個(gè)基線,因此本發(fā)明的ABVS系統(tǒng)11也用于確定為工作空間選擇項(xiàng)目歷史的哪個(gè)基線。盡管項(xiàng)目歷史的ABVS在概念上類似于成品歷史的ABVS,但其有兩個(gè)主要的不同之處。
第一不同之處在于復(fù)合基線示圖加入激活基線的子基線作為新的激活基線,然后ABVS11用于從新的激活基線的組中選擇基線。然后該選擇的基線被用于從成品歷史中選擇版本。
第二不同之處在于在基線選擇期間不會(huì)出現(xiàn)間隙選擇錯(cuò)誤。這是非常重要的,因?yàn)榛€可具有早于其先前基線的成員,因此說基線一定包括其先前基線包括的一切是不正確的。事實(shí)上,新基線的整個(gè)點(diǎn)可能會(huì)返回先前基線中的一些變化。
但是,基線沖突錯(cuò)誤仍是可能的。如果在基線選擇期間出現(xiàn)沖突錯(cuò)誤,則沖突的基線必須被合并或工作空間必須被重新配置以在可創(chuàng)建項(xiàng)目的新的基線之前接收不同的基線或活動(dòng)。
示例ABVS系統(tǒng)11的規(guī)則在優(yōu)選實(shí)施例中,本發(fā)明的基于活動(dòng)的版本選擇系統(tǒng)11按照規(guī)則序列被實(shí)現(xiàn)或被規(guī)定。每一規(guī)則具有一組條件和一組動(dòng)作。如果規(guī)則的所有條件均被滿足,則該規(guī)則的動(dòng)作被執(zhí)行。在列中的下一(隨后)規(guī)則被執(zhí)行之前,規(guī)則被盡可能地執(zhí)行很多次。
基本工作空間W接收一組項(xiàng)目基線和活動(dòng)變化組。
基線規(guī)則如果W接收基線B,不接收B的任何后續(xù)基線,則W激活B和B的每一子基線。
如果W激活項(xiàng)目P的基線B并且不激活B的任何后續(xù)基線,則W選擇B。
變化組規(guī)則如果W接收活動(dòng)A的變化組C,并且不接收C的任何后續(xù),則W激活C。
如果W激活活動(dòng)A的變化組C,并且不激活C的任何后續(xù),則W選擇C。
版本規(guī)則如果W僅選擇項(xiàng)目的一個(gè)基線B,并且B引用版本V,則W激活V和V的每一先前版本。
如果W選擇變化組C,并且版本V為C的產(chǎn)品,則W激活V。
如果W激活成品歷史H的版本V,并且W激活V的所有先前版本,則W選擇并顯示V。
基線選擇錯(cuò)誤沖突同一項(xiàng)目的多個(gè)基線被選擇。
版本選擇錯(cuò)誤沖突同一成品的多個(gè)版本被選擇。如上所述,通過使用最近的公共原始版本作為合并的基礎(chǔ)來合并多個(gè)版本,沖突可被解決。
間隙激活的版本具有未被激活的先前版本。如上所述,通過向用戶提供變化組的列表(如果其被加入可消除該間隙),間隙可被解決。
圖6示出其中可實(shí)現(xiàn)本發(fā)明的計(jì)算機(jī)網(wǎng)絡(luò)或類似的數(shù)字處理環(huán)境。
客戶計(jì)算機(jī)/設(shè)備50和服務(wù)器計(jì)算機(jī)60提供執(zhí)行應(yīng)用程序等的處理、存儲(chǔ)和輸入/輸出設(shè)備??蛻粲?jì)算機(jī)/設(shè)備50也可通過通信網(wǎng)絡(luò)70與包括其它客戶設(shè)備/處理器50和服務(wù)器計(jì)算機(jī)60的其它計(jì)算設(shè)備相連。通信網(wǎng)絡(luò)70可以是遠(yuǎn)程訪問網(wǎng)絡(luò)、全球網(wǎng)絡(luò)(例如因特網(wǎng))、一組全球范圍的計(jì)算機(jī)、局域或廣域網(wǎng)和當(dāng)前使用各協(xié)議(TCP/IP、藍(lán)牙等)相互進(jìn)行通信的網(wǎng)關(guān)的一部分。其它電子設(shè)備/計(jì)算機(jī)網(wǎng)絡(luò)體系結(jié)構(gòu)也是適合的。
圖7是在圖6的計(jì)算機(jī)系統(tǒng)中的計(jì)算機(jī)(例如客戶處理器/設(shè)備50或服務(wù)器計(jì)算機(jī)60)的內(nèi)部結(jié)構(gòu)的示圖。每一計(jì)算機(jī)50、60包含系統(tǒng)總線79,其中總線為用于在計(jì)算機(jī)或處理系統(tǒng)的部件中的數(shù)據(jù)傳輸?shù)囊唤M硬連線。總線79本質(zhì)上是能夠在部件之間進(jìn)行信息傳輸?shù)?、連接計(jì)算機(jī)系統(tǒng)的不同部件(例如處理器、盤存儲(chǔ)器、存儲(chǔ)器、輸入/輸出端口、網(wǎng)絡(luò)端口等)的共享通道。連接到系統(tǒng)總線79的是I/O設(shè)備接口82,用于將各種輸入和輸出設(shè)備(例如鍵盤、鼠標(biāo)、顯示器、打印機(jī)、揚(yáng)聲器等)與計(jì)算機(jī)50、60相連。網(wǎng)絡(luò)接口86使計(jì)算機(jī)能夠與連接到網(wǎng)絡(luò)(例如圖6的網(wǎng)絡(luò)70)的各種其它設(shè)備相連。存儲(chǔ)器90提供用于實(shí)現(xiàn)本發(fā)明實(shí)施例的計(jì)算機(jī)軟件指令92和數(shù)據(jù)94(例如成品歷史示圖(或每一成品的類似基線和變化組數(shù)據(jù))28、基線規(guī)則、版本規(guī)則、選擇-錯(cuò)誤考慮、和能夠進(jìn)行上述的成品版本的工作空間選擇的系統(tǒng)11的例程)的易失性存儲(chǔ)器。盤存儲(chǔ)器95提供用于實(shí)現(xiàn)本發(fā)明實(shí)施例的計(jì)算機(jī)軟件指令92和數(shù)據(jù)94的非易失性存儲(chǔ)器。中央處理器單元84也與系統(tǒng)總線79相連并且提供計(jì)算機(jī)指令的執(zhí)行。
在一個(gè)實(shí)施例中,處理器例程92和數(shù)據(jù)94為提供本發(fā)明系統(tǒng)的至少一部分軟件指令的計(jì)算機(jī)程序產(chǎn)品(通常指92),其包括計(jì)算機(jī)可讀介質(zhì)(例如可移除存儲(chǔ)介質(zhì),比如一個(gè)或多個(gè)DVD-ROM、CD-ROM、磁盤、磁帶等)。計(jì)算機(jī)程序產(chǎn)品92可通過本領(lǐng)域公知的任何適合的軟件安裝程序被安裝。在另一個(gè)實(shí)施例中,至少一部分軟件指令也可通過電纜、通信和/或無線連接來下載。在其它實(shí)施例中,本發(fā)明的程序?yàn)轶w現(xiàn)為傳播介質(zhì)的傳播信號(hào)(例如在諸如因特網(wǎng)或其它網(wǎng)絡(luò)的全球網(wǎng)絡(luò)上傳播的無線波、紅外波、激光波、聲波或電波)的計(jì)算機(jī)程序傳播信號(hào)產(chǎn)品107。這樣的載波介質(zhì)或信號(hào)提供本發(fā)明例程/程序92的至少一部分軟件指令。
在可選實(shí)施例中,傳播信號(hào)為傳輸介質(zhì)上攜帶的模擬載波或數(shù)字信號(hào)。例如,傳播信號(hào)可以是通過全球網(wǎng)絡(luò)(例如因特網(wǎng))、電信網(wǎng)或其它網(wǎng)絡(luò)傳播的數(shù)字信號(hào)。在一個(gè)實(shí)施例中,傳播信號(hào)為通過傳播介質(zhì)在一段時(shí)間發(fā)送的信號(hào),例如通過網(wǎng)絡(luò)以毫秒、秒、分鐘或更長時(shí)段分組發(fā)送的軟件應(yīng)用指令。在另一個(gè)實(shí)施例中,計(jì)算機(jī)程序產(chǎn)品92的計(jì)算機(jī)可讀介質(zhì)為例如通過接收傳播介質(zhì)并識(shí)別體現(xiàn)在傳播介質(zhì)上的傳播信號(hào)計(jì)算機(jī)系統(tǒng)50可接收并讀取的傳播介質(zhì),如上面對(duì)計(jì)算機(jī)程序傳播信號(hào)產(chǎn)品所描述的。
一般而言,術(shù)語“載波介質(zhì)”或瞬時(shí)載波包括上述的瞬時(shí)信號(hào)、傳播信號(hào)、傳播介質(zhì)、存儲(chǔ)介質(zhì)等。
本發(fā)明可采取完全為硬件的實(shí)施例、完全為軟件的實(shí)施例或同時(shí)包含硬件和軟件要素的實(shí)施例的形式。在優(yōu)選的實(shí)施例中,以包含但不限固件、常駐軟件、微代碼等的軟件實(shí)現(xiàn)本發(fā)明。
并且,本發(fā)明可采取可從提供程序代碼的計(jì)算機(jī)可用或計(jì)算機(jī)可讀介質(zhì)訪問的計(jì)算機(jī)程序產(chǎn)品的形式,該程序代碼供計(jì)算機(jī)或任何指令執(zhí)行系統(tǒng)使用或與其相關(guān)使用。為了說明的目的,計(jì)算機(jī)可用或計(jì)算可讀介質(zhì)可以是可包含、存儲(chǔ)、傳送、傳播或傳輸供指令執(zhí)行系統(tǒng)、裝置或設(shè)備使用或與其相關(guān)使用的程序的任何裝置。
介質(zhì)可以是電子、磁、光、電磁、紅外或半導(dǎo)體系統(tǒng)(或裝置或器件)或傳播媒介。計(jì)算機(jī)可讀介質(zhì)的例子包括半導(dǎo)體或固態(tài)存儲(chǔ)器、磁帶、可移除計(jì)算機(jī)磁盤、隨機(jī)存取存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、剛性磁盤和光盤。光盤的當(dāng)前的例子包含緊致盤-只讀存儲(chǔ)器(CD-ROM)、緊致盤-讀/寫(CD-R/W)和DVD。
適于存儲(chǔ)和/或執(zhí)行程序代碼的數(shù)據(jù)處理系統(tǒng)將包括至少一個(gè)通過系統(tǒng)總線直接或間接與存儲(chǔ)元件耦合的處理器。存儲(chǔ)元件可包括在程序代碼的實(shí)際執(zhí)行中使用的局部存儲(chǔ)器、大容量存儲(chǔ)器、和為了減少在執(zhí)行中必須從大容量存儲(chǔ)器取回代碼的次數(shù)提供至少一些程序代碼的臨時(shí)存儲(chǔ)的高速緩沖存儲(chǔ)器。
輸入/輸出或I/O設(shè)備(包含但不限于鍵盤、顯示器、指示裝置等)可直接或通過居間的I/O控制器與系統(tǒng)耦合。
網(wǎng)絡(luò)適配器也可與系統(tǒng)耦合,以使得數(shù)據(jù)處理系統(tǒng)能夠通過居間的專用或公用網(wǎng)絡(luò)與其它數(shù)據(jù)處理系統(tǒng)或遠(yuǎn)程打印機(jī)或存儲(chǔ)設(shè)備耦合。調(diào)制解調(diào)器、電纜調(diào)制解調(diào)器和以太網(wǎng)卡僅是一些當(dāng)前可用的類型的網(wǎng)絡(luò)適配器。
盡管參照本發(fā)明的優(yōu)選實(shí)施例已詳細(xì)地說明和描述了本發(fā)明,但本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,在不脫離后附權(quán)利要求所包含的本發(fā)明的范圍的情況下可進(jìn)行形式和細(xì)節(jié)的各種變化。
例如,圖6和7的計(jì)算機(jī)體系結(jié)構(gòu)和網(wǎng)絡(luò)配置只是說明而不是限制。其它計(jì)算機(jī)體系結(jié)構(gòu)和配置也是適合的。
此外,表示目標(biāo)工作空間的變化組、基線(項(xiàng)目)和成品版本的成品歷史示圖28也可作為本領(lǐng)域公知的鏈接表、數(shù)據(jù)陣列、樹結(jié)構(gòu)、目標(biāo)或其它編程結(jié)構(gòu)被實(shí)現(xiàn)。
權(quán)利要求
1.一種選擇軟件程序成品版本的方法,包括計(jì)算機(jī)實(shí)現(xiàn)的以下步驟給定形成目標(biāo)軟件程序配置的一組成品,指示每一成品的基線版本的,所述指示產(chǎn)生基線指示;提供每一成品的各自變化組信息;使用基線指示和變化組信息確定目標(biāo)軟件程序配置中成品的版本;并且選擇并且向用戶顯示確定的成品版本。
2.按照權(quán)利要求1所述的方法,其中,基線指示有效地用作項(xiàng)目起始點(diǎn),并且每一變化組信息表示從該起始點(diǎn)的增量。
3.按照權(quán)利要求1所述的方法,其中,提供各變化組信息的步驟包括使用每一成品的相應(yīng)成品歷史示圖,其中對(duì)于給定的成品,相應(yīng)成品歷史示圖包括給定成品的不同版本的指示和不同版本的相應(yīng)的變化組。
4.按照權(quán)利要求1所述的方法,其中,確定步驟包括對(duì)于在成品的成品歷史示圖中指示的每一被接收的變化組,激活在示圖中指示的相應(yīng)版本;其中激活的版本形成表示為一個(gè)版本和所述一個(gè)版本的所有先前版本的連續(xù)子示圖,將所述一個(gè)版本限定為被確定的成品版本。
5.按照權(quán)利要求3所述的方法,其中,指示基線版本的步驟利用每一成品的相應(yīng)成品歷史示圖。
6.按照權(quán)利要求1所述的方法,其中,確定步驟包括(i)如果僅存在一個(gè)基線并且該基線引用成品的某一版本,則所述確定包括激活所述某一版本和每一先前版本;(ii)如果版本為所接收的變化組的產(chǎn)品,則所述確定包括激活該版本;以及(iii)如果(i)和(ii)的任何一個(gè)版本被激活并且所有其先前版本被激活,則所述確定選擇所述任何一個(gè)版本。
7.按照權(quán)利要求1所述的方法,還包括以下步驟給定同一項(xiàng)目歷史的多個(gè)基線,確定所使用的一個(gè)基線;以及所述的指示步驟基于確定的一個(gè)基線。
8.按照權(quán)利要求7所述的方法,其中,所述確定基線之一的步驟包括對(duì)于不具有任何接收的后續(xù)基線的每一接收的基線,激活接收的基線和其子基線的每一個(gè);并且對(duì)于不具有任何激活的后續(xù)基線的激活的基線,將激活的基線限定為確定的一個(gè)基線。
9.一種用于選擇軟件程序產(chǎn)品版本的計(jì)算機(jī)裝置,包括基線指示器,用于在形成目標(biāo)軟件程序配置的給定的多個(gè)成品中指示每一成品的基線版本;數(shù)據(jù)成員,用于提供每一成品的變化組信息;和處理器例程,使用指示的基線和變化組信息并確定目標(biāo)軟件程序配置中的成品版本,處理器例程使成品的確定版本能夠顯示給用戶。
10.按照權(quán)利要求9所述的裝置,其中,指示的基線版本有效地用作項(xiàng)目起始點(diǎn),并且每一變化組信息表示從該起始點(diǎn)的增量。
11.按照權(quán)利要求9所述的裝置,其中,基線指示器和數(shù)據(jù)成員作為每一成品的相應(yīng)成品歷史示圖被實(shí)現(xiàn),其中對(duì)于給定的成品,所述相應(yīng)成品歷史示圖包括給定成品的不同版本的指示和不同版本的相應(yīng)的變化組。
12.按照權(quán)利要求11所述的裝置,其中,處理器例程還對(duì)于在成品的成品歷史示圖中指示的每一接收的變化組,激活在示圖中指示的相應(yīng)版本;并且其中激活的版本形成表示為一個(gè)版本和所述一個(gè)版本的所有先前版本的連續(xù)子示圖,將所述一個(gè)版本限定為被確定的成品版本。
13.按照權(quán)利要求9所述的裝置,其中處理器例程是基于規(guī)則的。
14.按照權(quán)利要求13所述的裝置,其中,確定成品版本的處理器例程規(guī)則包括(i)如果僅存在一種基線并且該基線引用成品的某一版本,則所述確定包括激活所述某一版本和每一先前版本;(ii)如果版本為所接收的變化組的產(chǎn)品,則所述確定包括激活該版本;以及(iii)如果(i)和(ii)的任何一個(gè)版本被激活并且所有其先前版本被激活,則所述確定選擇所述任何一個(gè)版本。
15.按照權(quán)利要求9所述的裝置,其中,處理器例程還從同一項(xiàng)目的多個(gè)給定基線中確定并選擇一個(gè)基線;并且對(duì)于多個(gè)給定基線的每一基線,提供基線版本的相應(yīng)指示。
16.按照權(quán)利要求15所述的裝置,其中,處理器例程通過以下確定一個(gè)基線對(duì)于不具有任何接收的后續(xù)基線的每一接收的基線,激活接收的基線和其子基線的每一個(gè);并且對(duì)于不具有任何激活的后續(xù)基線的激活的基線,將激活的基線限定為確定的一個(gè)基線。
17.一種配置管理系統(tǒng)的成品版本選擇器,包括成品歷史裝置,用于指示(a)形成目標(biāo)軟件程序配置的給定的多個(gè)成品中的每一成品的基線版本,和(b)每一成品的相應(yīng)變化組信息,不同的變化組對(duì)應(yīng)于成品的不同版本;處理器裝置,用于利用指示的基線版本和變化組信息確定目標(biāo)軟件程序配置中的成品版本,所述處理器裝置使配置管理系統(tǒng)能夠向用戶顯示確定的成品版本。
18.按照權(quán)利要求17所述的成品版本選擇器,其中,處理器裝置還對(duì)于由成品歷史裝置指示的每一接收的變化組,激活相應(yīng)的版本;并且其中激活的版本形成可表示為一個(gè)版本和所有其先前版本的一組版本,將所述一個(gè)版本限定為要被確定的版本。
19.按照權(quán)利要求17所述的成品版本選擇器,其中,處理器裝置是基于規(guī)則的。
全文摘要
一種用于選擇軟件程序成品的計(jì)算機(jī)方法和裝置,包括歷史裝置和處理器裝置。歷史裝置指示(a)在形成目標(biāo)軟件程序配置的給定的多個(gè)成品中每一成品的基線版本和(b)每一成品的各變化組信息。不同的變化組對(duì)應(yīng)于不同的成品版本。處理器裝置確定在使用指示的基線版本和變化組信息的目標(biāo)軟件程序配置中的成品版本。處理器裝置使配置管理系統(tǒng)能夠向用戶顯示確定的成品版本。
文檔編號(hào)G06F9/44GK1987777SQ20061014466
公開日2007年6月27日 申請(qǐng)日期2006年11月14日 優(yōu)先權(quán)日2005年12月19日
發(fā)明者吉奧弗雷·M.·克萊姆, 布賴恩·P.·多羅斯, 卡羅爾·D.·尤特科維茨, 納塔尼爾·W.·米什金 申請(qǐng)人:國際商業(yè)機(jī)器公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1