專(zhuān)利名稱(chēng):采用更新的自動(dòng)開(kāi)發(fā)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種采用更新的自動(dòng)開(kāi)發(fā)方法。
背景技術(shù):
復(fù)雜系統(tǒng)的開(kāi)發(fā)要求解決問(wèn)題以及增量設(shè)計(jì)的各個(gè)步驟。目標(biāo)是要構(gòu)造符合問(wèn)題規(guī)約的解決方案規(guī)約。在軟件領(lǐng)域中,客戶需求規(guī)約使分析文檔生成,再生成設(shè)計(jì)文檔,并且隨著期望程序的生成而結(jié)束。通過(guò)不斷地解釋構(gòu)造途徑,分析、設(shè)計(jì)和程序可以逐漸構(gòu)造解決方案。這些步驟便于維護(hù)根據(jù)各個(gè)設(shè)計(jì)步驟產(chǎn)生的程序,并且能夠升級(jí)作為客戶需求函數(shù)的軟件。
不考慮應(yīng)用領(lǐng)域,可以利用適當(dāng)?shù)恼Z(yǔ)言來(lái)形式化構(gòu)造步驟及其結(jié)果,所述構(gòu)造步驟及其結(jié)果在以下將被稱(chēng)為設(shè)計(jì)等級(jí)。設(shè)計(jì)等級(jí),例如,可以采用UML(統(tǒng)一建模語(yǔ)言)模型的形式來(lái)表示。
可以根據(jù)變換規(guī)則來(lái)部分地產(chǎn)生作為在先設(shè)計(jì)等級(jí)的函數(shù)的所述設(shè)計(jì)等級(jí)。然而必須手動(dòng)引入新的信息以便增強(qiáng)新創(chuàng)建的模型并且改進(jìn)概念,從而收斂到為生成解決方案所期望的詳細(xì)等級(jí)。
所述的增量方法可以借助于取自空中交通模擬領(lǐng)域的非常簡(jiǎn)化的例子來(lái)進(jìn)行說(shuō)明,并在圖1中圖解示出先行開(kāi)發(fā)。此圖包括三個(gè)設(shè)計(jì)等級(jí)1.第一設(shè)計(jì)等級(jí)被稱(chēng)作“問(wèn)題規(guī)約”。在這個(gè)等級(jí)客戶定義他的需求每架飛機(jī)的特征包括名稱(chēng)(A3XX)、乘客的數(shù)目(600)以及發(fā)動(dòng)機(jī)的數(shù)目(4)。
2.用UML生成“問(wèn)題分析”等級(jí)。該分析步驟還與所涉及的領(lǐng)域高度地相關(guān)。當(dāng)完成此步驟時(shí),還出現(xiàn)“飛機(jī)”、“乘客”和“發(fā)動(dòng)機(jī)”的概念(在引號(hào)之間標(biāo)引這些信息項(xiàng),它們表示所考慮的設(shè)計(jì)等級(jí)的對(duì)象)。由于該分析步驟還出現(xiàn)諸如預(yù)訂、乘客的姓名和國(guó)籍等新信息。這些新信息項(xiàng)改進(jìn)先前設(shè)計(jì)等級(jí)的概念;但是它們不能被自動(dòng)地推導(dǎo)出來(lái)而是根據(jù)設(shè)計(jì)者的選擇而生成。
3.“解決方案設(shè)計(jì)”等級(jí)要更加“技術(shù)”。所使用的語(yǔ)言不再與航天航空領(lǐng)域相關(guān),也不再與飛機(jī)或乘客的概念有關(guān)。重點(diǎn)是基于必須被模擬的播放器(計(jì)算機(jī)對(duì)象觸發(fā)處理操作)的概念。在該等級(jí)以接近于可直接被計(jì)算機(jī)理解的語(yǔ)言(例如C++)而執(zhí)行的動(dòng)作被確切地定義。
在圖1中先行開(kāi)發(fā),用細(xì)線或斜體字符示出的所有元素明確指出手動(dòng)添加的信息。通過(guò)應(yīng)用以下變換規(guī)則R1至R9來(lái)自動(dòng)獲得由粗線或加粗字符表示的所有信息·創(chuàng)建“問(wèn)題分析”設(shè)計(jì)等級(jí)R1對(duì)于任何包括名稱(chēng)、乘客的數(shù)目以及發(fā)動(dòng)機(jī)的數(shù)目的飛機(jī)描述符,所述算法包括a.以飛機(jī)(名稱(chēng))的名義來(lái)創(chuàng)建定型目錄“項(xiàng)目”,其包括i.被命名為“名稱(chēng)”的“飛機(jī)”定型類(lèi)(其中,名稱(chēng)指的是飛機(jī)名稱(chēng)),ii.具有名稱(chēng)如“噴氣式”的“發(fā)動(dòng)機(jī)”定型類(lèi),iii.具有名稱(chēng)如“人”的“乘客”定型類(lèi)。
b.在“飛機(jī)”定型類(lèi)和“發(fā)動(dòng)機(jī)”定型類(lèi)之間創(chuàng)建名稱(chēng)為“動(dòng)力化(motorization)”的關(guān)系(UML組成關(guān)系的鏈接),基數(shù)(數(shù)目/數(shù)字)為一個(gè)“飛機(jī)”定型類(lèi)端,以及發(fā)動(dòng)機(jī)數(shù)目值個(gè)“發(fā)動(dòng)機(jī)”定型類(lèi)端。
c.在“飛機(jī)”定型類(lèi)和“乘客”定型類(lèi)之間創(chuàng)建名稱(chēng)為“乘客”的關(guān)聯(lián)鏈接,基數(shù)為一個(gè)飛機(jī)端,以及乘客數(shù)目值個(gè)“乘客”定型類(lèi)端。
·創(chuàng)建“解決方案設(shè)計(jì)”的設(shè)計(jì)等級(jí)R2對(duì)于在“問(wèn)題分析”等級(jí)的任何“項(xiàng)目”定型目錄,所述算法包括a.在“解決方案設(shè)計(jì)”等級(jí)創(chuàng)建“設(shè)計(jì)”定型目錄,其具有與“問(wèn)題分析”設(shè)計(jì)等級(jí)的“項(xiàng)目”定型目錄的名稱(chēng)相同的名稱(chēng);b.創(chuàng)建“活動(dòng)”定型“播放器”類(lèi);R3對(duì)于在“問(wèn)題分析”等級(jí)的任何“飛機(jī)”定型類(lèi),所述算法包括
a.在“解決方案設(shè)計(jì)”等級(jí)創(chuàng)建無(wú)定型(stereotypeless)類(lèi),其具有與“問(wèn)題分析”設(shè)計(jì)等級(jí)的“飛機(jī)”定型類(lèi)的名稱(chēng)相同的名稱(chēng);b.創(chuàng)建從新創(chuàng)建的無(wú)定型類(lèi)到“活動(dòng)”定型類(lèi)的繼承關(guān)系;R4對(duì)于在“問(wèn)題分析”等級(jí)的任何“乘客”定型類(lèi),所述算法包括a.在“解決方案設(shè)計(jì)”等級(jí)創(chuàng)建無(wú)定型類(lèi),其具有與“問(wèn)題分析”設(shè)計(jì)等級(jí)的“乘客”定型類(lèi)的名稱(chēng)相同的名稱(chēng);b.創(chuàng)建從新創(chuàng)建的無(wú)定型類(lèi)到“活動(dòng)”定型類(lèi)的繼承關(guān)系;R5對(duì)于在“問(wèn)題分析”等級(jí)的任何“發(fā)動(dòng)機(jī)”定型類(lèi),所述算法包括a.在“解決方案設(shè)計(jì)”等級(jí)創(chuàng)建無(wú)定型類(lèi),其具有與“問(wèn)題分析”設(shè)計(jì)等級(jí)的“發(fā)動(dòng)機(jī)”定型類(lèi)的名稱(chēng)相同的名稱(chēng);b.創(chuàng)建從新創(chuàng)建的無(wú)定型類(lèi)到“活動(dòng)”定型類(lèi)的繼承關(guān)系;R6對(duì)于在“問(wèn)題分析”等級(jí)的任何非定型類(lèi),所述算法是a.在“解決方案設(shè)計(jì)”等級(jí)創(chuàng)建無(wú)定型類(lèi),其具有與“問(wèn)題分析”設(shè)計(jì)等級(jí)的類(lèi)的名稱(chēng)相同的名稱(chēng);R7對(duì)于在“問(wèn)題分析”等級(jí)的任何相關(guān)聯(lián)鏈接的兩個(gè)類(lèi)A和B,所述算法包括a.在“解決方案設(shè)計(jì)”等級(jí)創(chuàng)建關(guān)聯(lián),所述關(guān)聯(lián)通過(guò)變換算法鏈接發(fā)自A和B的類(lèi)。基數(shù)(數(shù)字)和角色(名稱(chēng))與“問(wèn)題分析”設(shè)計(jì)等級(jí)的基數(shù)(數(shù)字)和角色(名稱(chēng))相同;R8對(duì)于“問(wèn)題分析”等級(jí)的類(lèi)A的任何操作,所述算法包括a.在“解決方案設(shè)計(jì)”等級(jí)創(chuàng)建操作,其具有與“問(wèn)題分析”設(shè)計(jì)等級(jí)的操作的名稱(chēng)相同的名稱(chēng);b.通過(guò)變換算法把此操作與發(fā)自A的類(lèi)相關(guān)聯(lián)。
R9對(duì)于“問(wèn)題分析”等級(jí)的類(lèi)A的任何屬性,所述算法包括a.在“解決方案設(shè)計(jì)”等級(jí)創(chuàng)建屬性,其具有與“問(wèn)題分析”設(shè)計(jì)等級(jí)的操作的名稱(chēng)相同的名稱(chēng);c.通過(guò)變換算法把此屬性與發(fā)自A的類(lèi)相關(guān)聯(lián)。
諸如在上面簡(jiǎn)單闡述的復(fù)雜系統(tǒng)的設(shè)計(jì)涉及幾個(gè)設(shè)計(jì)步驟,并且可能要求多次迭代。在每次迭代,設(shè)計(jì)者重新評(píng)價(jià)他的選擇,并進(jìn)行修改以便改進(jìn)他的模型?,F(xiàn)在,變換規(guī)則的機(jī)制上述方面并不允許。當(dāng)重新應(yīng)用規(guī)則時(shí),從構(gòu)造的觀點(diǎn)允許根據(jù)等級(jí)N來(lái)重構(gòu)等級(jí)N+1從而進(jìn)行修改,但是并不把所述修改與在等級(jí)N+1已經(jīng)存在的信息結(jié)合,所述信息是預(yù)先創(chuàng)建并手動(dòng)完成的。已經(jīng)手動(dòng)引入的所有信息在重新應(yīng)用所述規(guī)則時(shí)丟失。
問(wèn)題將是在下述約束下從一個(gè)設(shè)計(jì)等級(jí)N自動(dòng)或半自動(dòng)地到等級(jí)N+1(或更通常來(lái)說(shuō)是從一個(gè)模型到另一個(gè))·當(dāng)重新應(yīng)用所述規(guī)則時(shí)保存添加在下層等級(jí)N+1的信息;·保存并明確所有用于規(guī)則應(yīng)用的信息,以便能夠再現(xiàn)過(guò)程(此信息被稱(chēng)為規(guī)則的參數(shù))。保存這些可以允許在不用與設(shè)計(jì)者進(jìn)行新的交互作用的情況下,重新應(yīng)用所述規(guī)則。
·此信息的保存不能用已知方法來(lái)實(shí)現(xiàn)。為了保持并升級(jí)設(shè)計(jì)等級(jí)這是有必要的,并且只能通過(guò)把變換與可追溯性耦合來(lái)完成,這種耦合形成了本發(fā)明的主題,如下文所述。
以舉例形式說(shuō)明已知方法的主要缺點(diǎn)。假設(shè)在“問(wèn)題規(guī)約描述符”等級(jí)把飛機(jī)A3XX的名稱(chēng)改變?yōu)锳380,所述名稱(chēng)A380已經(jīng)被最終選擇,然后重新應(yīng)用上面引用的規(guī)則。通過(guò)僅僅應(yīng)用變換規(guī)則的已知機(jī)制,我們獲得在圖2中給出的模型非保守(nonconservative)變換。所有出現(xiàn)的名稱(chēng)A3XX已經(jīng)被正確替換為A380,但是在第一迭代期間,所有在“問(wèn)題分析”和“解決方案設(shè)計(jì)”等級(jí)手動(dòng)添加的信息(在各個(gè)圖上用斜體和細(xì)線表示的信息)丟失。這種解決方案是不能被接受的為了避免丟失他所有的工作,設(shè)計(jì)者必須放棄使用變換規(guī)則并且手動(dòng)地向所有下層設(shè)計(jì)等級(jí)傳遞所述修改(飛機(jī)的名稱(chēng)),這表示無(wú)論在哪里這么做都是必要的并且會(huì)帶來(lái)不一致性的風(fēng)險(xiǎn)。為了進(jìn)行這項(xiàng)工作,設(shè)計(jì)者可以借助于現(xiàn)有的工具來(lái)建立可追溯性元素,以便鏈接所有出現(xiàn)的名稱(chēng)A3XX。這些鏈接將使他能夠定位在改變名稱(chēng)時(shí)要進(jìn)行的所有修改,但是這些修改將保持他的任務(wù)。變換和可追溯性機(jī)制被獨(dú)立地管理。
發(fā)明內(nèi)容
本發(fā)明的主題是一種用于耦合可追溯性和變換的自動(dòng)開(kāi)發(fā)方法。
依照本發(fā)明的方法是利用變換規(guī)則的自動(dòng)開(kāi)發(fā)方法,其可以利用更新來(lái)從一個(gè)模型到另一個(gè)模型,其特征在于將具有元素集的至少一個(gè)可追溯性鏈接與每個(gè)自動(dòng)生成的模型元素相關(guān)聯(lián),根據(jù)變換規(guī)則所述可追溯性鏈接根據(jù)所述元素集發(fā)源。
依照本發(fā)明的另一特征,所操縱的元素是UML元素。有益地是,UML的“相關(guān)性(dependency)”被用來(lái)建立所述可追溯性鏈接,所述“相關(guān)性”諸如在定義UML語(yǔ)言中的OMG所定義。
依照本發(fā)明的又一特征,本發(fā)明的方法用來(lái)實(shí)現(xiàn)“design patterns(設(shè)計(jì)模式)”。
結(jié)合非限制性例子并且按照附圖舉例說(shuō)明,通過(guò)閱讀詳細(xì)說(shuō)明的實(shí)施例將能更好地理解本發(fā)明,其中上面引用的圖1是空中交通模擬程序的先行開(kāi)發(fā)的框圖。
同樣在上面引用的圖2是依照現(xiàn)有技術(shù),在非保守的變換之后根據(jù)圖1的框圖所獲得的框圖。
圖3是依照本發(fā)明方法,在保守變換之后根據(jù)圖1的框圖所獲得的框圖。
圖4是依照本發(fā)明方法,舉例說(shuō)明自動(dòng)構(gòu)造分析等級(jí)的框圖(虛線表示已經(jīng)創(chuàng)建的可追溯性鏈接)。
圖5是舉例說(shuō)明由設(shè)計(jì)者手動(dòng)增強(qiáng)分析等級(jí)的框圖(斜體且細(xì)線標(biāo)示的信息)。
圖6是舉例說(shuō)明用于實(shí)現(xiàn)本發(fā)明方法的二次迭代算法的框圖。設(shè)計(jì)者通過(guò)改變飛機(jī)的名稱(chēng)來(lái)修改問(wèn)題規(guī)約,然后重新應(yīng)用規(guī)則以便更新他的模型。
具體實(shí)施例方式
本發(fā)明提出將可追溯性元素與變換規(guī)則相關(guān)聯(lián)。單獨(dú)應(yīng)用變換規(guī)則以確保在源設(shè)計(jì)等級(jí)的元素與目標(biāo)設(shè)計(jì)等級(jí)的相應(yīng)元素之間只有短暫的可追溯性鏈接。此鏈接(源元素、目標(biāo)元素和規(guī)則參數(shù))只存在于應(yīng)用所述規(guī)則的期間。
本發(fā)明提出把可追溯性機(jī)制與變換機(jī)制耦合。為此,用以下元素補(bǔ)充所述規(guī)則·明確在源設(shè)計(jì)等級(jí)的元素到目標(biāo)設(shè)計(jì)等級(jí)的各個(gè)元素之間的完整的可追溯性,·明確所述規(guī)則的參數(shù)(應(yīng)用所述規(guī)則所必需的、由設(shè)計(jì)者所提供的信息),·允許根據(jù)源設(shè)計(jì)等級(jí)來(lái)更新目標(biāo)設(shè)計(jì)等級(jí),而不影響在更早變換期間不是應(yīng)用所述規(guī)則而出現(xiàn)的元素。
本發(fā)明的保守的變換機(jī)制可以通過(guò)應(yīng)用與可追溯性元素耦合的規(guī)則來(lái)保持設(shè)計(jì)等級(jí)中的一致性。利用此機(jī)制,可以把A3XX重命名為A380,并且自動(dòng)向所有下層等級(jí)傳遞此修改而不會(huì)丟失手動(dòng)添加的信息(參照?qǐng)D3保守變換)。保守變換機(jī)制支持增量和迭代的開(kāi)發(fā)。它還支持內(nèi)變質(zhì)(endomorphic)的變換(在單個(gè)設(shè)計(jì)等級(jí)內(nèi))。此機(jī)制還可以用來(lái)傳播標(biāo)記,所述標(biāo)記用于經(jīng)由與所述示例類(lèi)似的規(guī)則來(lái)刪除元素。
現(xiàn)在將詳細(xì)描述實(shí)現(xiàn)本發(fā)明方法的模式。
本發(fā)明提出一種與變換規(guī)則耦合的可追溯性機(jī)制,可以永久地再現(xiàn)在由變換所生成的元素和所述規(guī)則從此發(fā)源的元素之間的鏈接,以及稱(chēng)作變換規(guī)則參數(shù)的信息。此鏈接稱(chēng)作可追溯性鏈接。它是邏輯鏈接,把n個(gè)源元素鏈接到m個(gè)目標(biāo)元素。
定義設(shè)·R是變換規(guī)則·S是源模型的元素集(等級(jí)N)·C是發(fā)自S、通過(guò)應(yīng)用規(guī)則R而獲得的目標(biāo)模型(N+1)的元素集,·PARAMS,R是應(yīng)用于S的規(guī)則R的參數(shù)。這些參數(shù)的獲得可能要求與設(shè)計(jì)者對(duì)話。
·LinkS,C,R是在S和C之間的可追溯性元素,其可以與屬于把R應(yīng)用到S的具體參數(shù)(PARAMS,R)相關(guān)聯(lián)。
用于實(shí)現(xiàn)本發(fā)明方法的算法包括以下三個(gè)部分
現(xiàn)在將獨(dú)立于“問(wèn)題分析”等級(jí)來(lái)描述把本發(fā)明方法的算法應(yīng)用于上述模擬空中交通的例子。采用類(lèi)似的方式可以獲得在這里為了簡(jiǎn)明而沒(méi)有描述的下一等級(jí)。
第一階段是通過(guò)第一迭代算法來(lái)創(chuàng)建分析模型(參照?qǐng)D4)“問(wèn)題規(guī)約”規(guī)則R1的第一應(yīng)用設(shè)·S是“飛機(jī)描述符”其是表示飛機(jī)描述符的源元素集,其中描述符包括名稱(chēng)、乘客數(shù)目和發(fā)動(dòng)機(jī)數(shù)目。
·R是“問(wèn)題分析”設(shè)計(jì)等級(jí)的創(chuàng)建規(guī)則R1。
沒(méi)有發(fā)自S的鏈接,因此必須創(chuàng)建目標(biāo)元素、LinkS,C,R和相關(guān)聯(lián)的參數(shù)。我們依照下列方式來(lái)繼續(xù)·根據(jù)包括名稱(chēng)A3XX、乘客數(shù)目600和發(fā)動(dòng)機(jī)數(shù)目4的飛機(jī)描述符,所述算法包括
a.創(chuàng)建帶有描述符的飛機(jī)名稱(chēng)(即,A3XX)的“項(xiàng)目”定型目錄,包括i.“飛機(jī)”定型類(lèi),名稱(chēng)為A3XX,ii.“發(fā)動(dòng)機(jī)”定型類(lèi),具有名稱(chēng)“噴氣式”,iii.“乘客”定型類(lèi),具有名稱(chēng)“人”。
b.在“飛機(jī)”定型類(lèi)和“發(fā)動(dòng)機(jī)”定型類(lèi)之間創(chuàng)建名稱(chēng)為“動(dòng)力化”的組成關(guān)系的鏈接,基數(shù)為1個(gè)“飛機(jī)”定型類(lèi)端,以及4個(gè)“發(fā)動(dòng)機(jī)”定型類(lèi)端。
c.在“飛機(jī)”定型類(lèi)和“乘客”定型類(lèi)之間創(chuàng)建名稱(chēng)為“乘客”的關(guān)聯(lián)鏈接,基數(shù)為1個(gè)“飛機(jī)”定型類(lèi)端,以及600個(gè)“乘客”定型類(lèi)端。
·創(chuàng)建可追溯性鏈接LinkS,C,R(其中S=“飛機(jī)描述符”,C=“項(xiàng)目”定型A3XX目錄,A3XX類(lèi),噴氣式發(fā)動(dòng)機(jī)類(lèi),人類(lèi),組成關(guān)系的鏈接和關(guān)聯(lián)鏈接,其利用它們各自的基數(shù)和R=R1來(lái)預(yù)先創(chuàng)建)。
·規(guī)則R沒(méi)有參數(shù)(因?yàn)樗鲆?guī)則不需要外部信息,所以設(shè)計(jì)者不進(jìn)行任何明確的選擇)。
現(xiàn)在假定設(shè)計(jì)者改進(jìn)分析模型(圖5手動(dòng)改進(jìn)分析)他向名稱(chēng)為A3XX的類(lèi)添加兩個(gè)操作“l(fā)anding(著陸)”和“take off(起飛)”·他向名稱(chēng)為噴氣式的類(lèi)添加“功率”屬性·他向名稱(chēng)為人的類(lèi)添加兩個(gè)屬性“姓名”和“國(guó)籍”·他添加包括三個(gè)屬性“出發(fā)”、“到達(dá)”和“航班號(hào)”的“預(yù)訂”類(lèi)·他在乘客類(lèi)和基數(shù)1的預(yù)訂類(lèi)之間添加組成關(guān)系的鏈接。
然后假定設(shè)計(jì)者執(zhí)行修改“問(wèn)題規(guī)約”等級(jí)的信息項(xiàng)·他用A380來(lái)代替名稱(chēng)A3XX。
現(xiàn)在將闡述在二次迭代算法期間,本發(fā)明的方法更新模型的方式。舉例說(shuō)明了更新的結(jié)果(圖6規(guī)約的修改和自動(dòng)更新)“問(wèn)題規(guī)約”規(guī)則的第二應(yīng)用設(shè)·S是“飛機(jī)描述符”其是表示飛機(jī)描述符的源元素,其中描述符包括名稱(chēng)、乘客數(shù)目和發(fā)動(dòng)機(jī)數(shù)目。
·R是“問(wèn)題分析”設(shè)計(jì)等級(jí)的創(chuàng)建規(guī)則R1。
存在發(fā)自S的LinkS,C,R。因此必須根據(jù)現(xiàn)有的LinkS,C,R來(lái)調(diào)用子例程,從而更新C,LinkS,C,R。算法包括1.在分析等級(jí)輸入與飛機(jī)描述符相關(guān)的“項(xiàng)目”目錄,并且如果必要的話依照特征S經(jīng)由R來(lái)更新它;更新LinkS,C,R把目錄A3XX重命名為A3802.在分析等級(jí)輸入與飛機(jī)描述符相關(guān)的“飛機(jī)”定型類(lèi),并且如果必要的話依照特征S經(jīng)由R來(lái)更新它;更新LinkS,C,R把類(lèi)A3XX重命名為A3803.在分析等級(jí)輸入與飛機(jī)描述符相關(guān)的名稱(chēng)為“動(dòng)力化”的組成關(guān)系的鏈接,并且如果必要的話依照特征S經(jīng)由R來(lái)用基數(shù)更新它;更新linkS,C,R基數(shù)保持不變4.在分析等級(jí)輸入與飛機(jī)描述符相關(guān)的名稱(chēng)為“乘客”的關(guān)聯(lián)鏈接,并且如果必要的話依照特征S經(jīng)由R來(lái)用基數(shù)更新它;更新Links, C,R基數(shù)保持不變。
權(quán)利要求
1.一種利用變換規(guī)則的自動(dòng)開(kāi)發(fā)方法,可以利用更新來(lái)從一個(gè)模型到另一個(gè)模型,依照所述方法,通過(guò)生成分析文檔、繼而生成設(shè)計(jì)文檔,并且最后通過(guò)生成根據(jù)設(shè)計(jì)步驟所產(chǎn)生的程序,來(lái)構(gòu)造符合問(wèn)題規(guī)約的解決方案規(guī)約,其特征在于將具有元素集的至少一個(gè)可追溯性鏈接與每個(gè)自動(dòng)生成的模型元素相關(guān)聯(lián),所述可追溯性鏈接依照變換規(guī)則根據(jù)元素集發(fā)源,并且意在允許在開(kāi)發(fā)期間手動(dòng)引入新的信息。
2.如權(quán)利要求1所述的方法,其特征在于所操縱的元素是UML元素。
3.如權(quán)利要求2所述的方法,其特征在于UML“相關(guān)性”用來(lái)建立可追溯性鏈接。
4.如權(quán)利要求2所述的方法,其特征在于所述方法用來(lái)實(shí)現(xiàn)“設(shè)計(jì)模式”。
全文摘要
本發(fā)明涉及一種具有更新的自動(dòng)開(kāi)發(fā)方法,由利用變換規(guī)則的幾個(gè)設(shè)計(jì)步驟組成,可以從一個(gè)步驟到另一個(gè)步驟。本發(fā)明的特征在于將具有元素的至少一個(gè)可追溯性鏈接與在設(shè)計(jì)過(guò)程中自動(dòng)生成的每個(gè)模型元素相關(guān)聯(lián),所述鏈接基于其依照變換規(guī)則所發(fā)源的元素。
文檔編號(hào)G06FGK1757013SQ200480005967
公開(kāi)日2006年4月5日 申請(qǐng)日期2004年2月18日 優(yōu)先權(quán)日2003年3月3日
發(fā)明者D·敘厄爾, M·福熱爾 申請(qǐng)人:泰勒斯公司