2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩3頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第7期姚劍等:目標(biāo)驅(qū)動的軟件需求模型及應(yīng)用目標(biāo)驅(qū)動的軟件需求模型及應(yīng)用姚劍毋國慶(武漢大學(xué)軟件工程國家重點實驗室43072)摘要目標(biāo)驅(qū)動的軟件需求模型的研究是需求工程中的一個新的研究課題.本文首先將介紹基于目標(biāo)驅(qū)動的軟件需求模型的KAOS方法然后利用該方法來描述有關(guān)圖書館系統(tǒng)的某些需求以探討檢測需求中存在的沖突和偏差及消除它們的某些方法。關(guān)鍵詞需求工程KAOS方法沖突偏差l介紹需求工程是軟件工程中的一個重要組成部分一個系統(tǒng)的成功與否很大

2、部分取決于系統(tǒng)需求是否全面和正確。需求工程與軟件系統(tǒng)的現(xiàn)實目標(biāo)、功能及約束有關(guān)同時也與軟件行為精確的詳細(xì)說明及軟件所在的外在環(huán)境有關(guān)。目標(biāo)驅(qū)動的軟件需求分析方法是近幾年才興起的它與面向?qū)ο蠛褪录?qū)動的軟件需求分析方法相比更接近于現(xiàn)實世界與系統(tǒng)的目的和功能更加緊密相關(guān)。在需求工程過程中軟件系統(tǒng)的現(xiàn)實目標(biāo)必須被明確地定義這是因為:需求的詳細(xì)說明必須與目標(biāo)實現(xiàn)緊密有關(guān)目標(biāo)為需求說明提供了一個完整性的驗證標(biāo)準(zhǔn)一若需求說明滿足所有規(guī)定的目標(biāo)則此需

3、求說明是完全的:目標(biāo)是最終解決需求中沖突、偏差和障礙的來源目標(biāo)一般是需求文檔中最穩(wěn)定的信息??傊枨蟆皩崿F(xiàn)”目標(biāo)如同程序?qū)崿F(xiàn)設(shè)計規(guī)格說明一樣。一般來說一個系統(tǒng)的需求一開始很難完全確定下來而且需求中的目標(biāo)有些過于理想目標(biāo)之間會產(chǎn)生沖突因此怎樣識別過于理想的目標(biāo)和檢測目標(biāo)之間的沖突并采取適當(dāng)?shù)募夹g(shù)與方法來解決它們成了系統(tǒng)需求是否完全且正確的關(guān)鍵。在目標(biāo)級檢測沖突和偏差、識別障礙并且很好地消除它們這一點在需求工程過程中尤為重要。本文的目的在于

4、通過圖書館系統(tǒng)實例分析來說明如何從系統(tǒng)目標(biāo)的角度利用一些最新技術(shù)和方法來檢測需求規(guī)格說明中存在的其它問題識別以及最終消除需求中存在的偏差和障礙。2KAOS方法K八05方法【1一3]是近期推出的一種需求模型其目的是支持基于目標(biāo)驅(qū)動的需求的整個確立過程一在復(fù)合系統(tǒng)中從可實現(xiàn)的高級目標(biāo)到需求、對象以及分配給各個代理的操作(“復(fù)合系統(tǒng)”在這里用于強調(diào)系統(tǒng)不僅包括軟件而且包括所在的環(huán)境)。KAOS方法有益于精確定義需求有益于需求文檔的書寫更方便并

5、且有益于最終的需求說明書更易于被他人理解。KAOS方法提供了一門需求規(guī)格說明語言、一種基于目標(biāo)驅(qū)動的軟件需求確立模型和有關(guān)的元級知識。2.1KAOS語言KAOS語言是一種用于定義需求規(guī)格的說明語言它提供了一套豐富的基本概念定義(如對象、操作、代理、目標(biāo)、需求、假設(shè)和腳本等等)。此語言不僅能捕捉一般語言能捕捉的V幾lat需求而且能捕捉why、v門飛。和when三類需求。KAOS語言是一種兩級結(jié)構(gòu)的多范例規(guī)格說明語言:i)語義網(wǎng)外層:定義概

6、念、概念的屬性和概念與概念之間的鏈接:il)形式化的內(nèi)層定義:形式化定義概念。外層用于概念模型化、需求跟蹤能力、規(guī)格說明重用:內(nèi)層用于形式化推理。KA0s語言包括i)目標(biāo)、需求約束、對象的實時時序邏輯的規(guī)范化說明:i)操作或行為的前置后置條件i)為確保需求或約束而加強的規(guī)范化說明。例如考慮以下圖書館系統(tǒng)的目標(biāo)Achieve[C叩yKep認(rèn)sLongAsNeeded]的規(guī)范化說明rGo‘Acuv‘ICopyKp“ongASNedd]‘徜若

7、需毛.啊碑竺一瞇缽絲1co”censBoo匕BOkCopyM呱berLlb叫一與目標(biāo)百關(guān)的對尿名層’Jlform山弋黑糕優(yōu)篇黑罷默器o一目標(biāo)的非形式忱義Fon司I〕efVln:Memberb:B。比be:BookCoPyBorow婦19《風(fēng)bc)^Copy(beb)今。(決eds(mb)一Boro們lg(瓜bc))一目標(biāo)的形式化定義收稿日期:1999年1月24日形式化聲明內(nèi)層是用實時時序邏輯描述的本文以后將會用到以下幾種算子:o稱為ne

8、xt算子。A表示“下一時刻(狀態(tài))有A”心稱為sometimes算子令A(yù)表示“從現(xiàn)行狀態(tài)起終將有狀態(tài)A”口稱為alwa鄉(xiāng)s算子口A表示“從現(xiàn)行狀態(tài)起永遠(yuǎn)是A”體稱為unless算子A環(huán)侶表示“A一直真除非B真”注意:口P等價于P于們[’alse實時限制用下標(biāo)來指示例如:心自n產(chǎn)意味著“在將來n個單位u的時間之內(nèi)的某一時刻有A”氏加A意味著“在將來n個單位u的時間之后永遠(yuǎn)第7期姚劍等:目標(biāo)驅(qū)動的軟件需求模型及應(yīng)用困G)心日mbeb(Bor

9、~ng(mbe卜Copy(beb)祀ZmoBorO嫩ng(mbe))現(xiàn)用(NG)中子公式oBorowing(mbe)與(D)的結(jié)論進(jìn)行合一然后通過(D)回代(NG今可得邊界條件:心日mbCb(Borowing(mbe)八Copy(beb)胡、2.noNeeds(mb))即為:令日低be議Bormwing(mbc卜CoPy(beb)A口ZmNeeds(mb))上面的例子沒有考慮到其它條件現(xiàn)在再次考慮上面的目標(biāo)(Gl)和下面的目標(biāo)(G3):

10、(G3)Achieve[CopiesEventuallyAvailable](需要的書最終可以獲得)Vmbeblib:Library(Need成mb)八CoPy(beb)八LILib(belib)二O3be(Copy(beb)月川二ib(belib)閃知ai1able(belib)))其中LILib(bclib)意味著“圖書館曾購買過書be”戶渾ailabl《bclib)意味著“可從圖書館中獲得書be’o所給定的域描述為:(D)日m(B

11、or0wlng(mbe)~戶渾ailabl《belib)顯然會產(chǎn)生偏差現(xiàn)在再次利用回代否定斷言方法可得出邊界條件:0日mbeblib(Needs(mb)八C叩y(beb)八LILib(belib)A口(Vbe(CoPy(beb)八【nLib(bclib)二日耐:Men1ber(記荊nABorowing(mbe)咖eed成m’b)))))此邊界條件說明了這樣一種可能性:某人需要某本已登記入館的書而所有此書都被別人永久性地借走。一般我們通過

12、避免邊界條件來解決此偏差:每本受歡迎的書在圖書館內(nèi)都保留一本不借。同樣也可引入新的避免目標(biāo)徹oid[LasteopyBorowed](防止每本書的最后一份副本被借出)來解決此偏差:vln.bebl颯Requesting(mbe)幾astCopy(beb)八LILib(belib)幼氏(Borowing(mbe)八Copy(beb)八1llLlb(belib)))其中RequeSting(mbc)意味著“借書者m要借書be?,F(xiàn)在再次考慮上

13、面的Avoid目標(biāo)和下面的實現(xiàn)目標(biāo)AchieveIB。~ngRequestsatisfied1(滿足借書請求):Vmbeblib(Requesting(m.be)沁opy(beb卜玩Lib(belib)幼心(Borowing(低be)八Copy(beb)八L止ib(belib)))以上兩個目標(biāo)正符合下邊的“實現(xiàn)一避免”偏差模型〔l]。(實現(xiàn)目標(biāo)〕(通免目標(biāo)).(城抽由、一假設(shè)P:Requesting(mbe)八CoPy(beb)八InL

14、ib(blib)Q:Bormwl幻g(mbe)ACopy(beb)八1llLib(belib):R:Requesting(mb)ALastCOPy(beb)入加工ib(behb):s與Q相同:可得邊界條件:心日mbeblib(Requesting(mbe)八InLib(belib)ACoPy(beb)從astCoPy(beb))為了解決上面的偏差我們可削弱實現(xiàn)目標(biāo)Achieve[Borm誠ngRe明estsatislied]成為:Vmb

15、eblib(Requesting(mbe)八LastCoPy(beb)八Copy(bcb)八1llLib(belib)幼心(Borowing(mbc)八Copy(beb)八InLib(belib)))我們從上面的例子中可看出假如多個目標(biāo)以及其域描述集之間存在偏差為了消除它我們將引入新的目標(biāo)但是新目標(biāo)很可能會與其它目標(biāo)相沖突從而有利于徹底解決需求中存在的問題因此我們建議在消除偏差時最好引入新目標(biāo)而且新目標(biāo)剛好夠消除此偏差。倘若需求說明中存

16、在術(shù)語沖突(在需求說明中同一現(xiàn)實概念用不同的語法名稱來表示例如:“借書者需要某本書”這一現(xiàn)實概念在不同的目標(biāo)中分別用Neds(mbc)和v抽nt成mbc床示)和命名沖突(在需求說明中同一語法名稱表示不同的現(xiàn)實概念例如:Borowing(mbe)在不同目標(biāo)中分別表示“借書者m借了書be”和“借書者m正要借書bc”)需求中存在的偏差很可能無法檢測出來這樣會導(dǎo)致系統(tǒng)的最終需求不完全且不正確為此我們將第二節(jié)中的需求確立模型略為修改在“偏差檢測、

17、障礙識別”之前檢測術(shù)語沖突和命名沖突并想辦法消除它們。以上各例子都是關(guān)于沖突和偏差檢測以及消除的當(dāng)然圖書館系統(tǒng)中不只存在這些沖突和偏差檢測沖突和偏差以及消除它們的技術(shù)和方法也遠(yuǎn)不只這些。下面舉幾個有關(guān)障礙識別和消除障礙的例子例如:考慮如下目標(biāo)Vmbeblib(Need漢mb)八CoPy(beb)加勺ailable(belib)二合Borowing(mbe))其域描述為:Vln.bcli議Bormwing(mbe)二OPen(libm)月

18、物ailabl《bclib))其中oPen(libm)表示“此時圖書館可以借書”很明顯此目標(biāo)過于理想例如電腦出現(xiàn)故障、以前所借的書中有過期的、書借滿了或書己被別人借光等等都會導(dǎo)致障礙為此首先介紹一下回代否定目標(biāo)方法[zl的一般過程:1)初始步:取0:=G(G為某一目標(biāo))2)歸納步設(shè)A勸C為被選擇的域規(guī)則用C匹配公式0中某子公式L則林二mgu(LC)0:=0[LIA.閃現(xiàn)利用此方法可形式化地推導(dǎo)出潛在的障礙:心日mbeblib(Nee奴風(fēng)

溫馨提示

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

最新文檔

評論

0/150

提交評論