第10章 面向軟件行為和視點的需求建模與檢測方法_第1頁
第10章 面向軟件行為和視點的需求建模與檢測方法_第2頁
第10章 面向軟件行為和視點的需求建模與檢測方法_第3頁
第10章 面向軟件行為和視點的需求建模與檢測方法_第4頁
第10章 面向軟件行為和視點的需求建模與檢測方法_第5頁
已閱讀5頁,還剩37頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1第10章面向軟件行為和視點的需求建模與檢測方法第10章面向軟件行為和視點的需求建模與檢測方法目的(1)試圖將理論研究與實際應用能較好的結(jié)合;(2)將需求分析與需求驗證階段的活動通過一個實際的方法給予有機地結(jié)合;(3)在綜合和分析現(xiàn)有需求建模方法的基礎(chǔ)上研究新的需求建模方法。2023/2/42第10章面向軟件行為和視點的需求建模與檢測方法10.1基本原理10.2視點表示模型和視點管理10.3需求模型的具體構(gòu)建方法10.4需求模型的檢測方法10.5基于行為模型的需求可視化10.6需求建模方法的特點10.7進一步的研究2023/2/4310.1基本原理復雜系統(tǒng):是一個抽象概念,通常指規(guī)模大且內(nèi)部邏輯關(guān)系復雜、涉及相關(guān)人員較多的軟件系統(tǒng)。

特點:相關(guān)的問題域復雜利用分解策略;涉及人員較多根據(jù)不同用戶建立相應視點。

需求建模方法應提供的內(nèi)容:使用該方法的步驟從自然語言逐步過渡到行為模型;描述問題的手段視點表示模型和行為描述語言(BDL)。2023/2/4410.1基本原理軟件的行為:指主體施用一個服務(wù)、操作或動作于客體。為什么研究軟件行為軟件行為的正確與否決定了軟件能否滿足用戶需求軟件特性如可信特性也是通過軟件行為來驗證的可以從自然語言抽取和描述與軟件行為相關(guān)的細節(jié)2023/2/4510.1基本原理研究軟件行為的方法(4個如何)(1)如何根據(jù)自然語言描述的需求,建立相應場景信息;(2)如何根據(jù)場景信息抽取與行為相關(guān)的信息,并利用行為描述語言建立行為表達式;(3)如何建立行為描述語言的語義模型,為檢驗復雜系統(tǒng)的各種特性奠定基礎(chǔ);(4)如何利用模型檢驗方法和技術(shù)檢測復雜系統(tǒng)的一些特性。2023/2/4610.1基本原理基本概念(1)視點一個觀察者(視點源)根據(jù)其關(guān)注點和某個問題域而提出的需求信息的集合構(gòu)成一個視點。(2)視點模板視點模板是視點信息的存放形式,并由一些信息槽構(gòu)成。每個信息槽記錄了視點某方面的信息。2023/2/4710.1基本原理(3)視點間關(guān)系視點間關(guān)系是指兩個視點之間在問題域或者需求信息方面的聯(lián)系。

重疊關(guān)系:指兩個視點的視點源的觀察領(lǐng)域存在一定程度的重合,其包括兩種情況:部分重合和完全重合。

順序關(guān)系:指兩個視點在行為方面存在著先后關(guān)系,如兩個視點間存在著傳遞信息的行為等。

無關(guān)系:指兩個視點在觀察領(lǐng)域上不存在重合,并且不具備行為上的先后關(guān)系,如兩個并行的視點等。當且僅當兩個視點是重疊關(guān)系或者順序關(guān)系時,它們具備依賴關(guān)系。2023/2/4810.1基本原理(4)軟件行為軟件的行為是指軟件運行時作為主體,依照自身的功能對客體的施用、操作或動作的過程,或主體施用一個服務(wù)、操作或動作于客體。軟件的行為由行為主體和客體、操作或動作、行為輸入/出和行為屬性等組成。(5)行為主體行為主體可以是用戶或者問題域中的實體或概念。行為主體可以是復合主體,即一個行為可以有多個主體,且行為的主體必須是確定的。(6)行為客體即行為的受體,通常指人或問題域中的實體或概念等。行為客體可以是復合客體,并且也可以是未確定的。2023/2/4910.1基本原理(7)行為的分類:目標行為:為實現(xiàn)目標需求而施行的行為。功能行為:直接面向功能需求的行為。目標行為可以分解成一系列的功能行為,目標是通過這些功能行為達到的。復合行為:由功能行為分解出的行為,且功能行為也可視為復合行為。每個功能行為可分解為一系列的復合行為,功能是由這些復合行為完成的。每個復合行為還可進一步分解為原子行為。原子行為:不能再被分解的行為,具體為某個動作或操作。2023/2/41010.1基本原理(8)場景:(見第3.7節(jié)的介紹)此處場景是指軟件系統(tǒng)在某一執(zhí)行期間內(nèi)按順序出現(xiàn)的一系列行為。場景描寫的范圍并不是固定的,既可以包括系統(tǒng)中發(fā)生的全部行為,也可以只包括由某些特定對象的行為。軟件需求可被描述成一系列場景,而每個場景則由一個或多個具體的行為所組成。2023/2/41110.1基本原理(9)行為描述語言用于描述軟件系統(tǒng)行為的語言(10)行為的操作語義行為的操作語義是行為描述語言的語義模型,其又分為靜態(tài)操作語義(用于定義行為表達式)和動態(tài)操作語義。動態(tài)操作語義是以動作作為對象來研究在給定環(huán)境中行為狀態(tài)的變化。2023/2/41210.1基本原理2023/2/413基于軟件行為和視點的需求建模方法10.2視點表示模型和視點管理視點表示模型2023/2/41410.2視點表示模型和視點管理劃分問題域的具體步驟(1)開發(fā)人員與客戶、應用(問題)領(lǐng)域?qū)<业葘栴}進行交流;(2)確定待開發(fā)系統(tǒng)問題域的邊界;(3)將系統(tǒng)按照合理的方式劃分成多個問題子域;(4)在系統(tǒng)中新建或增添問題子域名。在問題子域名被建立后通常不允許再被修改,否則必須修改所有與該問題子域相關(guān)的信息。2023/2/41510.2視點表示模型和視點管理標識視點的具體步驟(對于每個問題域:)(1)分析并確定出該問題子域中存在的需求源即視點源;(2)確定每個視點源對問題子域的關(guān)注點;(3)根據(jù)關(guān)注點創(chuàng)建視點,生成視點模板;(4)填寫視點基本信息,如視點標識、視點責任人等;2023/2/41610.2視點表示模型和視點管理視點管理問題域管理術(shù)語表及行為表管理視點的創(chuàng)建視點的修改視點的刪除視點的查詢2023/2/41710.3需求模型的具體構(gòu)建方法1.描述手段:行為描述語言(BDL:BehaviorDescriptionLanguage)作用:

●主要用于描述復雜系統(tǒng)的行為,以建立視點行為模型和系統(tǒng)行為模型(或需求模型)

●由于系統(tǒng)特性與系統(tǒng)行為密切相關(guān),描述行為有利于檢測系統(tǒng)特性2023/2/41810.3需求模型的具體構(gòu)建方法2023/2/419系統(tǒng)行為模型的結(jié)構(gòu)

系統(tǒng)名:視點ID1的行為模型;

……..

視點IDn的行為模型。

視點行為模型的結(jié)構(gòu)

視點ID:

VPBEGIN[視點內(nèi)共享數(shù)據(jù)存儲池ID;]

場景ID1的行為模型

……..

場景IDn的行為模型

VPBehID=視點行為表達式

=場景的BehID[場景間關(guān)系符場景的BehID]VPEND10.3需求模型的具體構(gòu)建方法2023/2/420視點行為模型的結(jié)構(gòu)場景ID:

BEGIN

[ABEH:

ABehID:原子行為1.……..ABehID:原子行為n.]BEH:

BehID=場景行為表達式.[BehID=子行為表達式1.]…….[BehID=子行為表達式m.]

END

10.3需求模型的具體構(gòu)建方法BDL的語法結(jié)構(gòu)定義原子行為假設(shè)ABehID為原子行為標識,BehID為行為標識原子行為:5)CALL(場景ID)2023/2/42110.3需求模型的具體構(gòu)建方法復合行為1)順序行為:(a)(b)(c)2)確定選擇行為3)非確定選擇行為2023/2/42210.3需求模型的具體構(gòu)建方法 4)并行行為2023/2/42310.3需求模型的具體構(gòu)建方法行為描述語言的動態(tài)語義2023/2/42410.3需求模型的具體構(gòu)建方法2023/2/42510.3需求模型的具體構(gòu)建方法構(gòu)建行為模型的具體過程確定系統(tǒng)的所有行為和主體確定有效行為和主體建立行為間的關(guān)系建立場景使用行為描述語言描述場景

(1)用BDL描述場景內(nèi)的原子行為

(2)建立場景內(nèi)行為之間的關(guān)系

(3)建立視點行為模型內(nèi)場景之間的關(guān)系部分異類需求模型2023/2/42610.3需求模型的具體構(gòu)建方法實例說明(銀行自動取款機系統(tǒng))具體的需求描述見5.4.4節(jié)

(1)劃分問題域?qū)⑴c該系統(tǒng)相關(guān)的問題域劃分為三個:ATM,總行,分行

(2)確定系統(tǒng)中所有的原子行為

直接提取動詞短語得到行為:○ATM、中央計算機、分行計算機及柜員終端組成的網(wǎng)絡(luò)系統(tǒng);○總行擁有多臺ATM;○分行負責提供分行計算機和柜員終端;○ATM分別設(shè)在全市各主要街道上;。。。。。。2023/2/42710.3需求模型的具體構(gòu)建方法問題中隱含的行為:○總行由各個分行組成;○分行保管賬戶;○總行擁有中央計算機;。。。。。。

(3)標識視點假設(shè)每個問題子域有一個視點,并分別標識為: ATM視點(VPATM);

總行視點(VPHeadBank);

分行視點(VPLocalBank)。2023/2/42810.3需求模型的具體構(gòu)建方法(4)建立場景

將ATM系統(tǒng)劃分為如下4個場景

ATM場景:ATM在顯示屏上顯示問候信息:顧客將磁卡插入ATM;

ATM讀出磁卡上的代碼,并檢索該卡能否使用;如果磁卡能使用,ATM要求顧客輸入密碼。

ATM等待密碼輸入;

………總行的場景:……..分行的場景:……..柜員終端的場景

:……..

2023/2/42910.3需求模型的具體構(gòu)建方法(5)使用行為描述語言建立行為模型2023/2/430

根據(jù)劃分出的視點和場景分別建立各視點的行為模型(其中一個視點包含2個場景)。ATM系統(tǒng)的行為模型(ATMSBM)ATM視點

VPATM:://ATM的視點行為模型

VPBEGIN//ATM場景

BEGINABEH //可以在此不寫原子行為,而在BEH中寫出。

BEHBehATM=ATMdisp1:顯示(ATM,屏幕)

OUTTo(屏幕)(提示信息=歡迎使用ATM).ATMidle1:idle.//ATM等待插入磁卡

Incard:插入(用戶,磁卡).GetCardInfo:讀(ATM,磁卡)//ATM讀取磁卡信息;

OUTTo()(卡信息).ATMdisp2:顯示(ATM,屏幕)

OUTTo(屏幕)(提示信息=請輸入密碼).。。。。。。10.3需求模型的具體構(gòu)建方法圖形化輸入主要功能

以圖形的方式輸入行為模型,定義原子行為、復合行為、行為表達式;

檢查圖形文法;

將圖形化的行為模型轉(zhuǎn)換為BDL語言描述的行為模型。圖形化表示(1)視點表示(2)場景表示(3)行為表示(4)行為間關(guān)系表示2023/2/43110.3需求模型的具體構(gòu)建方法2023/2/432BEHHeadBank//總行場景BEGINABEH//略BEHBEHHeadBank=Hbank1.Hbank2.Hidel.If(響應類型=ATM請求)ThenBehhbank1.ElseBehhbank2.Fi.Returnto.Behhbank1=Hresponse.If(驗證請求=正確)ThenHreceive1.Discern.TranRequest1.Else//中央計算機接收ATM傳來的事務(wù)請求

Hreceive2.TranRequest2.Fi.Behhbank2=If(回答驗證請求=正確)Then//中央計算機將驗證結(jié)果發(fā)送到ATM機RecRespon1.Tranresult1.Else//中央計算機將分行答復發(fā)送到ATM機

RecRespon2.Tranresult2.Fi.END.實例10.3需求模型的具體構(gòu)建方法異類視點需求模型的轉(zhuǎn)換實現(xiàn)2023/2/433背景UML狀態(tài)圖狀態(tài)符號與BDL結(jié)構(gòu)的對應關(guān)系轉(zhuǎn)換實現(xiàn)的流程10.4需求模型的檢測方法2023/2/4341.監(jiān)測內(nèi)容(1)行為表達合法性指一個行為表達式能滿足行為描述語言的語法。(2)含輸入/出行為的一致性分為視點內(nèi)的與視點間的含輸入/出行為的一致性。(3)行為的完整性指在一個行為模型中行為與行為之間至少存在一條執(zhí)行路徑,即行為間存在可達關(guān)系。(4)視點間行為一致性指在一個由多個視點構(gòu)成的系統(tǒng)行為模型中,如果其中兩個視點出現(xiàn)重疊,則對于重疊部分中相同行為的理解和描述應該是相同的。(5)行為有效性表示一個行為模型總能夠按照預期的方式運行。這里指的預期的方式就是一組行為蹤跡的集合,也可以用時序邏輯公式表示。

10.4需求模型的檢測方法2023/2/435模型檢測的基本思想10.4需求模型的檢測方法2023/2/436否檢查各視點行為模型內(nèi)的行為表達合法性、含輸入/出行為的一致性和行為連續(xù)性根據(jù)視點的相關(guān)關(guān)系檢測視點行為模型間的一致性合并視點,得到系統(tǒng)行為模型以上檢測是否有問題?檢測系統(tǒng)行為模型的行為有效性和檢測系統(tǒng)的特性等修改需求及行為模型否是需求建模獲得需求模型退出檢測以上檢測是否有問題?修改視點行為模型(V1,V2)是系統(tǒng)行為模型的檢測過程10.4需求模型的檢測方法3.各檢測方法的具體實現(xiàn)行為表達合法性根據(jù)行為描述語言的語法,設(shè)計等價的LALR(1)文法,利用輔助工具(FLEX,BISON)設(shè)計一個語法分析器,檢查行為表達式是否滿足描述語言的語法。含輸入/出行為的行為一致性根據(jù)行為表達式構(gòu)建行為樹,然后遍歷行為樹,搜索相關(guān)行為的輸入與輸出。行為連續(xù)性遍歷行為樹,記錄所有可達的行為,然后與行為表達式中定義的行為比較,判斷是否有行為不可達。2023/2/43710.4需求模型的檢測方法2023/2/438否是確定待檢測視點V1和V2及其模型M1,M2獲得M1,M2的操作語義模型L(M1)和L(M2)找到V1與V2重疊部分中相同的行為集(V1,V2)分別在L(M1)和L(

溫馨提示

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

評論

0/150

提交評論