SW03軟件需求分析.ppt
《SW03軟件需求分析.ppt》由會(huì)員分享,可在線閱讀,更多相關(guān)《SW03軟件需求分析.ppt(96頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
,王軍,軟件需求分析,,軟件需求分析的任務(wù)和過(guò)程結(jié)構(gòu)化分析方法原型化方法動(dòng)態(tài)分析方法,軟件需求分析,軟件需求分析的任務(wù),深入描述軟件的功能和性能確定軟件設(shè)計(jì)的約束和軟件同其它系統(tǒng)元素的接口細(xì)節(jié)定義軟件的其它有效性需求,需求分析研究的對(duì)象是軟件項(xiàng)目的用戶要求準(zhǔn)確地表達(dá)被接受的用戶要求確定被開(kāi)發(fā)軟件系統(tǒng)的系統(tǒng)元素將功能和信息結(jié)構(gòu)分配到這些系統(tǒng)元素中,需求分析的任務(wù)就是借助于當(dāng)前系統(tǒng)的邏輯模型導(dǎo)出目標(biāo)系統(tǒng)的邏輯模型,解決目標(biāo)系統(tǒng)的“做什么”的問(wèn)題。,通常軟件開(kāi)發(fā)項(xiàng)目是要實(shí)現(xiàn)目標(biāo)系統(tǒng)的物理模型目標(biāo)系統(tǒng)的具體物理模型是由它的邏輯模型經(jīng)實(shí)例化,即具體到某個(gè)業(yè)務(wù)領(lǐng)域而得到的,需求分析的過(guò)程,(1)問(wèn)題識(shí)別?從系統(tǒng)的角度來(lái)理解軟件并評(píng)審軟件范圍是否恰當(dāng)?確定對(duì)目標(biāo)系統(tǒng)的綜合要求,即軟件的需求?提出這些需求實(shí)現(xiàn)條件,以及需求應(yīng)達(dá)到的標(biāo)準(zhǔn),軟件的需求包括:,功能需求性能需求環(huán)境需求可靠性需求安全保密要求用戶界面需求,資源使用需求成本消耗需求開(kāi)發(fā)進(jìn)度需求預(yù)先估計(jì)以后系統(tǒng)可能達(dá)到的目標(biāo),問(wèn)題識(shí)別的另一項(xiàng)工作是建立分析所需要的通信途徑,以保證能順利地對(duì)問(wèn)題進(jìn)行分析。,,(2)分析與綜合?從信息流和信息結(jié)構(gòu)出發(fā),逐步細(xì)化所有的軟件功能,找出系統(tǒng)各元素之間的聯(lián)系、接口特性和設(shè)計(jì)上的約束,分析它們是否滿足功能要求,是否合理。剔除其不合理的部分,增加其需要部分。最終綜合成系統(tǒng)的解決方案,給出目標(biāo)系統(tǒng)的詳細(xì)邏輯模型。,常用的分析方法,面向數(shù)據(jù)流的結(jié)構(gòu)化分析方法(SA)面向數(shù)據(jù)結(jié)構(gòu)的Jackson方法(JSD)結(jié)構(gòu)化數(shù)據(jù)系統(tǒng)開(kāi)發(fā)方法(DSSD)面向?qū)ο蟮姆治龇椒ǎ∣OA)等,(3)編制需求分析階段的文檔?軟件需求說(shuō)明書(shū)?數(shù)據(jù)要求說(shuō)明書(shū)?初步的用戶手冊(cè)?修改、完善與確定軟件開(kāi)發(fā)實(shí)施計(jì)劃,(4)需求分析評(píng)審,系統(tǒng)定義的目標(biāo)是否與用戶的要求一致;系統(tǒng)需求分析階段提供的文檔資料是否齊全;文檔中的所有描述是否完整、清晰、準(zhǔn)確反映用戶要求;與所有其它系統(tǒng)成分的重要接口是否都已經(jīng)描述;,被開(kāi)發(fā)項(xiàng)目的數(shù)據(jù)流與數(shù)據(jù)結(jié)構(gòu)是否足夠,確定;所有圖表是否清楚,在不補(bǔ)充說(shuō)明時(shí)能否理解;主要功能是否已包括在規(guī)定的軟件范圍之內(nèi),是否都已充分說(shuō)明;設(shè)計(jì)的約束條件或限制條件是否符合實(shí)際;開(kāi)發(fā)的技術(shù)風(fēng)險(xiǎn)是什么;,是否考慮過(guò)軟件需求的其它方案;是否考慮過(guò)將來(lái)可能會(huì)提出的軟件需求;是否詳細(xì)制定了檢驗(yàn)標(biāo)準(zhǔn),它們能否對(duì)系統(tǒng)定義是否成功進(jìn)行確認(rèn);,需求分析流程,軟件需求分析的原則,需要能夠表達(dá)和理解問(wèn)題的信息域和功能域要能以層次化的方式對(duì)問(wèn)題進(jìn)行分解和不斷細(xì)化要給出系統(tǒng)的邏輯視圖和物理視圖,軟件需求規(guī)格說(shuō)明的原則,從現(xiàn)實(shí)中分離功能,即描述要“做什么”而不是“怎樣實(shí)現(xiàn)”要求使用面向處理的規(guī)格說(shuō)明語(yǔ)言(或稱系統(tǒng)定義語(yǔ)言)如果被開(kāi)發(fā)軟件只是一個(gè)大系統(tǒng)中的一個(gè)元素,那么整個(gè)大系統(tǒng)也包括在規(guī)格說(shuō)明的描述之中,規(guī)格說(shuō)明必須包括系統(tǒng)運(yùn)行環(huán)境規(guī)格說(shuō)明必須是一個(gè)認(rèn)識(shí)模型規(guī)格說(shuō)明必須是可操作的規(guī)格說(shuō)明必須容許不完備性并允許擴(kuò)充規(guī)格說(shuō)明必須局部化和松散耦合,軟件需求分析方法,需求分析方法由對(duì)軟件問(wèn)題的信息域和功能域的系統(tǒng)分析過(guò)程及其表示方法組成大多數(shù)的需求分析方法是由信息驅(qū)動(dòng)的信息域具有三種屬性:信息流、信息內(nèi)容和信息結(jié)構(gòu)。,?,結(jié)構(gòu)化分析方法,面向數(shù)據(jù)流進(jìn)行需求分析的方法結(jié)構(gòu)化分析方法適合于數(shù)據(jù)處理類型軟件的需求分析,具體來(lái)說(shuō),結(jié)構(gòu)化分析方法就是用抽象模型的概念,按照軟件內(nèi)部數(shù)據(jù)傳遞、變換的關(guān)系,自頂向下逐層分解,直到找到滿足功能要求的所有可實(shí)現(xiàn)的軟件為止結(jié)構(gòu)化分析方法使用工具:數(shù)據(jù)流圖,數(shù)據(jù)詞典,結(jié)構(gòu)化英語(yǔ),判定表與判定樹(shù),數(shù)據(jù)流圖,數(shù)據(jù)流圖中的主要圖形元素,描述銀行取款過(guò)程的數(shù)據(jù)流圖,數(shù)據(jù)流與數(shù)據(jù)加工之間的關(guān)系,數(shù)據(jù)流圖的層次結(jié)構(gòu),為了表達(dá)數(shù)據(jù)處理過(guò)程的數(shù)據(jù)加工情況,需要采用層次結(jié)構(gòu)的數(shù)據(jù)流圖。按照系統(tǒng)的層次結(jié)構(gòu)進(jìn)行逐步分解,并以分層的數(shù)據(jù)流圖反映這種結(jié)構(gòu)關(guān)系,能清楚地表達(dá)和容易理解整個(gè)系統(tǒng),分層數(shù)據(jù)流圖,在多層數(shù)據(jù)流圖中,頂層流圖僅包含一個(gè)加工,它代表被開(kāi)發(fā)系統(tǒng)。它的輸入流是該系統(tǒng)的輸入數(shù)據(jù),輸出流是系統(tǒng)所輸出數(shù)據(jù)底層流圖是指其加工不需再做分解的數(shù)據(jù)流圖,它處在最底層中間層流圖則表示對(duì)其上層父圖的細(xì)化。它的每一加工可能繼續(xù)細(xì)化,形成子圖。,結(jié)構(gòu)化分析方法步驟示例商店業(yè)務(wù)處理系統(tǒng),這個(gè)數(shù)據(jù)流圖只是一個(gè)高層的系統(tǒng)邏輯模型,它反映了目標(biāo)系統(tǒng)要實(shí)現(xiàn)的功能數(shù)據(jù)流圖繪制步驟首先確定系統(tǒng)的輸入和輸出根據(jù)商店業(yè)務(wù),畫(huà)出頂層數(shù)據(jù)流圖,以反映最主要業(yè)務(wù)處理流程,經(jīng)過(guò)分析,商店業(yè)務(wù)處理的主要功能應(yīng)當(dāng)有銷售、采購(gòu)、會(huì)計(jì)三大項(xiàng)。主要數(shù)據(jù)流輸入的源點(diǎn)和輸出終點(diǎn)是顧客和供應(yīng)商。然后從輸入端開(kāi)始,根據(jù)商店業(yè)務(wù)工作流程,畫(huà)出數(shù)據(jù)流流經(jīng)的各加工框,逐步畫(huà)到輸出端,得到第一層數(shù)據(jù)流圖,第一層數(shù)據(jù)流圖,加細(xì)每一個(gè)加工框銷售細(xì)化,采購(gòu)細(xì)化,檢查和修改數(shù)據(jù)流圖的原則,數(shù)據(jù)流圖上所有圖形符號(hào)只限于前述四種基本圖形元素?cái)?shù)據(jù)流圖的主圖必須包括前述四種基本元素,缺一不可數(shù)據(jù)流圖的主圖上的數(shù)據(jù)流必須封閉在外部實(shí)體之間每個(gè)加工至少有一個(gè)輸入數(shù)據(jù)流和一個(gè)輸出數(shù)據(jù)流,在數(shù)據(jù)流圖中,需按層給加工框編號(hào)。編號(hào)表明該加工所處層次及上下層的親子關(guān)系規(guī)定任何一個(gè)數(shù)據(jù)流子圖必須與它上一層的一個(gè)加工對(duì)應(yīng),兩者的輸入數(shù)據(jù)流和輸出數(shù)據(jù)流必須一致。此即父圖與子圖的平衡可以在數(shù)據(jù)流圖中加入物質(zhì)流,幫助用戶理解數(shù)據(jù)流圖,圖上每個(gè)元素都必須有名字?jǐn)?shù)據(jù)流圖中不可夾帶控制流初畫(huà)時(shí)可以忽略瑣碎的細(xì)節(jié),以集中精力于主要數(shù)據(jù)流,數(shù)據(jù)詞典,數(shù)據(jù)詞典與數(shù)據(jù)流圖配合,能清楚地表達(dá)數(shù)據(jù)處理的要求詞條描述——對(duì)于在數(shù)據(jù)流圖中每一個(gè)被命名的圖形元素,均加以定義,其內(nèi)容有:名字,別名或編號(hào),分類,描述,定義,位置,其它,等,(1)數(shù)據(jù)流詞條描述,數(shù)據(jù)流名:說(shuō)明:簡(jiǎn)要介紹作用即它產(chǎn)生的原因和結(jié)果數(shù)據(jù)流來(lái)源:來(lái)自何方數(shù)據(jù)流去向:去向何處數(shù)據(jù)流組成:數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)量流通量:數(shù)據(jù)量,流通量,(2)數(shù)據(jù)元素詞條描述,數(shù)據(jù)元素名:類型:數(shù)字(離散值,連續(xù)值),文字(編碼類型)長(zhǎng)度:取值范圍:相關(guān)的數(shù)據(jù)元素及數(shù)據(jù)結(jié)構(gòu):,(3)數(shù)據(jù)文件詞條描述,數(shù)據(jù)文件名:簡(jiǎn)述:存放的是什么數(shù)據(jù)輸入數(shù)據(jù):輸出數(shù)據(jù):數(shù)據(jù)文件組成:數(shù)據(jù)結(jié)構(gòu)存儲(chǔ)方式:順序,直接,關(guān)鍵碼存取頻率:,(4)加工邏輯詞條描述,加工名:加工編號(hào):反映該加工的層次簡(jiǎn)要描述:加工邏輯及功能簡(jiǎn)述輸入數(shù)據(jù)流:輸出數(shù)據(jù)流:加工邏輯:簡(jiǎn)述加工程序,加工順序,(5)源點(diǎn)及匯(終)點(diǎn)詞條描述,名稱:外部實(shí)體名簡(jiǎn)要描述:什么外部實(shí)體有關(guān)數(shù)據(jù)流:數(shù)目:,數(shù)據(jù)結(jié)構(gòu)的描述,符號(hào)含義舉例=被定義為+與x=a+b[...,...]或[...|...]或x=[a,b],x=[a|b]{...}或m{...}n重復(fù)x={a},x=3{a}8(...)可選x=(a)“...”基本數(shù)據(jù)元素x=“a”..連結(jié)符x=1..9,存折格式,存折=戶名+所號(hào)+帳號(hào)+開(kāi)戶日+性質(zhì)+(印密)+1{存取行}50戶名=2{字母}24所號(hào)=“001”..“999”帳號(hào)=“00000001”..“99999999”開(kāi)戶日=年+月+日性質(zhì)=“1”..“6”注:“1”表示普通戶,“5”表示工資戶等印密=“0”注:印密在存折上不顯示存取行=日期+(摘要)+支出+存入+余額+操作+復(fù)核,,對(duì)數(shù)據(jù)流圖的每一個(gè)基本加工,必須有一個(gè)基本加工邏輯說(shuō)明基本加工邏輯說(shuō)明必須描述基本加工如何把輸入數(shù)據(jù)流變換為輸出數(shù)據(jù)流的加工規(guī)則,基本加工邏輯說(shuō)明,加工邏輯說(shuō)明必須描述實(shí)現(xiàn)加工的策略而不是實(shí)現(xiàn)加工的細(xì)節(jié)加工邏輯說(shuō)明中包含的信息應(yīng)是充足的,完備的,有用的,沒(méi)有重復(fù)的多余信息,用于寫(xiě)加工邏輯說(shuō)明的工具,?結(jié)構(gòu)化英語(yǔ)?判定表?判定樹(shù),(1)結(jié)構(gòu)化英語(yǔ),結(jié)構(gòu)化英語(yǔ)的詞匯表由英語(yǔ)命令動(dòng)詞數(shù)據(jù)詞典中定義的名字有限的自定義詞邏輯關(guān)系詞IF_THEN_ELSE、CASE_OF、WHILE_DO、REPEAT_UNTIL等組成。,是一種介于自然語(yǔ)言和形式化語(yǔ)言之間的語(yǔ)言語(yǔ)言的正文用基本控制結(jié)構(gòu)進(jìn)行分割,加工中的操作用自然語(yǔ)言短語(yǔ)來(lái)表示其基本控制結(jié)構(gòu)有三種:簡(jiǎn)單陳述句結(jié)構(gòu):避免復(fù)合語(yǔ)句;重復(fù)結(jié)構(gòu):WHILE_DO或REPEAT_UNTIL結(jié)構(gòu)。判定結(jié)構(gòu):IF_THEN_ELSE或CASE_OF結(jié)構(gòu);,商店業(yè)務(wù)處理系統(tǒng)中“檢查發(fā)貨單”,IF發(fā)貨單金額超過(guò)$500THENIF欠款超過(guò)了60天THEN在償還欠款前不予批準(zhǔn)ELSE(欠款未超期)發(fā)批準(zhǔn)書(shū),發(fā)貨單ENDIFELSE(發(fā)貨單金額未超過(guò)$500)IF欠款超過(guò)60天THEN發(fā)批準(zhǔn)書(shū),發(fā)貨單及賒欠報(bào)告ELSE(欠款未超期)發(fā)批準(zhǔn)書(shū),發(fā)貨單ENDIFENDIF,(2)判定表,如果數(shù)據(jù)流圖的加工需要依賴于多個(gè)邏輯條件的取值,使用判定表來(lái)描述比較合適,以“檢查發(fā)貨單”為例,(3)判定樹(shù),判定樹(shù)也是用來(lái)表達(dá)加工邏輯的一種工具。有時(shí)侯它比判定表更直觀。,?,原型化方法,在開(kāi)發(fā)初期,要想得到一個(gè)完整準(zhǔn)確的規(guī)格說(shuō)明不是一件容易的事。特別是對(duì)一些大型的軟件項(xiàng)目。用戶往往對(duì)系統(tǒng)只有一個(gè)模糊的想法,很難完全準(zhǔn)確地表達(dá)對(duì)系統(tǒng)的全面要求。,軟件開(kāi)發(fā)者對(duì)于所要解決的應(yīng)用問(wèn)題認(rèn)識(shí)更是模糊不清隨著開(kāi)發(fā)工作向前推進(jìn),用戶可能會(huì)產(chǎn)生新的要求,或因環(huán)境變化,要求系統(tǒng)也能隨之變化;開(kāi)發(fā)者又可能在設(shè)計(jì)與實(shí)現(xiàn)的過(guò)程中遇到些沒(méi)有預(yù)料到的實(shí)際困難,需要以改變需求來(lái)解脫困境。,因此規(guī)格說(shuō)明難以完善、需求的變更、以及通信中的模糊和誤解,都會(huì)成為軟件開(kāi)發(fā)順利推進(jìn)的障礙。為了解決這些問(wèn)題,逐漸形成了軟件系統(tǒng)的快速原型的概念。,軟件原型的分類,在軟件開(kāi)發(fā)中,原型是軟件的一個(gè)早期可運(yùn)行的版本,它反映最終系統(tǒng)的部分重要特性。探索型:目的是要弄清對(duì)目標(biāo)系統(tǒng)的要求,確定所希望的特性,并探討多種方案的可行性。,實(shí)驗(yàn)型:這種原型用于大規(guī)模開(kāi)發(fā)和實(shí)現(xiàn)之前,考核方案是否合適,規(guī)格說(shuō)明是否可靠。進(jìn)化型:這種原型的目的不在于改進(jìn)規(guī)格說(shuō)明,而是將系統(tǒng)建造得易于變化,在改進(jìn)原型的過(guò)程中,逐步將原型進(jìn)化成最終系統(tǒng)。,原型使用策略,廢棄策略追加策略,殷人昆:,建立快速原型,進(jìn)行系統(tǒng)的分析和構(gòu)造的好處:,增進(jìn)軟件者和用戶對(duì)系統(tǒng)服務(wù)需求的理解,使比較含糊的具有不確定性的軟件需求(主要是功能)明確化。軟件原型化方法提供了一種有力的學(xué)習(xí)手段。,使用原型化方法,可以容易地確定系統(tǒng)的性能,確認(rèn)各項(xiàng)主要系統(tǒng)服務(wù)的可應(yīng)用性,確認(rèn)系統(tǒng)設(shè)計(jì)的可行性,確認(rèn)系統(tǒng)作為產(chǎn)品的結(jié)果。軟件原型的最終版本,有的可以原封不動(dòng)地成為產(chǎn)品,有的略加修改就可以成為最終系統(tǒng)的一個(gè)組成部分,這樣有利于建成最終系統(tǒng)。,,原型開(kāi)發(fā)技術(shù),可執(zhí)行規(guī)格說(shuō)明基于腳本(scenario)的設(shè)計(jì)自動(dòng)程序設(shè)計(jì)專用語(yǔ)言可復(fù)用(reusable)的軟件簡(jiǎn)化假設(shè),?,可執(zhí)行規(guī)格說(shuō)明,可執(zhí)行規(guī)格說(shuō)明是用于需求規(guī)格說(shuō)明的一種自動(dòng)化技術(shù)。使用這種方法,人們可以直接觀察他們用語(yǔ)言規(guī)定的任何系統(tǒng)性行為。包括代數(shù)規(guī)格說(shuō)明有限狀態(tài)模型可執(zhí)行的數(shù)據(jù)流圖,?,(1)代數(shù)規(guī)格說(shuō)明,代數(shù)規(guī)格說(shuō)明使用集合、定義于這些集合上的函數(shù)和定義于這些函數(shù)上的方程來(lái)描述對(duì)象。規(guī)格說(shuō)明的操作語(yǔ)義用這些方程表示。,,NEW_STACK:→StackPUSH:Stack,Element→StackPOP:Stack→(Element|Undefined)POP(NEW_STACK())=UndefinedPOP(PUSH(stk,elem))=elem其中,前三行定義了操作的語(yǔ)法,后兩行把它們的語(yǔ)義定義為一些方程。,舉例:定義一個(gè)無(wú)界的棧及其操作,?,(2)有限狀態(tài)模型,parnas提出的使用最廣泛的一種可執(zhí)行規(guī)格說(shuō)明形式。從一個(gè)初始狀態(tài)開(kāi)始接收輸入,到產(chǎn)生輸出,狀態(tài)在推移變化。施加在狀態(tài)元素上的約束確定了有效狀態(tài)的推移。,舉例:建立用戶/程序?qū)υ??,(3)可執(zhí)行的數(shù)據(jù)流圖,數(shù)據(jù)流圖是基于結(jié)構(gòu)化開(kāi)發(fā)方法的結(jié)構(gòu)化規(guī)格說(shuō)明用一種可執(zhí)行的語(yǔ)言程序代替定義處理邏輯的結(jié)構(gòu)化英語(yǔ),數(shù)據(jù)流圖就成為由可執(zhí)行語(yǔ)言程序模塊組成的網(wǎng)絡(luò),在一定環(huán)境或工具的支持下就可成為一個(gè)可以執(zhí)行的原型系統(tǒng)。,?,基于腳本的設(shè)計(jì),腳本是指用戶界面的原型。一個(gè)腳本用以模擬在系統(tǒng)運(yùn)行期間用戶經(jīng)歷的事件。它提供了輸入─處理─輸出的屏幕格式和有關(guān)對(duì)話的模型。因此,軟件開(kāi)發(fā)者能夠給用戶顯示系統(tǒng)的逼真的視圖,使用戶得以判斷是否符合他的意圖。,可在任一腳本中使用一套可復(fù)用的軟件模塊,以表達(dá)某一方面的要求??墒褂靡环N原型語(yǔ)言來(lái)描述原型系統(tǒng)。原型開(kāi)發(fā)過(guò)程中用這種語(yǔ)言來(lái)定義屏幕、數(shù)據(jù)項(xiàng)、及其相關(guān)的操作。從系統(tǒng)的外部描述開(kāi)始,開(kāi)發(fā)與數(shù)據(jù)庫(kù)的接口、錯(cuò)誤處理和恢復(fù)過(guò)程等系統(tǒng)的與外部視圖一致的細(xì)節(jié)。,?,自動(dòng)程序設(shè)計(jì),自動(dòng)程序設(shè)計(jì)是指在程序自動(dòng)生成環(huán)境的支持下,利用計(jì)算機(jī)實(shí)現(xiàn)軟件的開(kāi)發(fā)。它可以自動(dòng)地或半自動(dòng)地把用戶的非過(guò)程式問(wèn)題規(guī)格說(shuō)明轉(zhuǎn)換為某種高級(jí)語(yǔ)言程序:,演繹綜合手段:基于數(shù)學(xué)推理的構(gòu)造式證明。程序變換手段:將一程序轉(zhuǎn)換成另一功能等價(jià)的程序,并保持其正確性不變。,實(shí)例推廣手段:從實(shí)例特征出發(fā),將它推廣為待編程序的特征,最后得到程序。過(guò)程化手段:研究甚高級(jí)語(yǔ)言的編譯和知識(shí)的過(guò)程化。,?,專用語(yǔ)言,專用語(yǔ)言是應(yīng)用領(lǐng)域的模型化語(yǔ)言。在原型開(kāi)發(fā)中使用專用語(yǔ)言,可方便用戶和軟件開(kāi)發(fā)者在計(jì)劃中的系統(tǒng)特性方面的交流。,?,軟件復(fù)用技術(shù),利用可復(fù)用的模塊,做出適當(dāng)?shù)慕M合,就可得到快速構(gòu)造的原型系統(tǒng)。為了快速地構(gòu)造原型,這些模塊首先必須有簡(jiǎn)單而清晰的界面;其次它們應(yīng)當(dāng)盡量不依賴其它的模塊或數(shù)據(jù)結(jié)構(gòu);第三,它們應(yīng)具有一些通用的功能。,?,簡(jiǎn)化假設(shè),簡(jiǎn)化假設(shè)是在開(kāi)發(fā)過(guò)程中使設(shè)計(jì)者迅速得到一個(gè)簡(jiǎn)化的系統(tǒng)所做的假設(shè)。盡管這些假設(shè)可能實(shí)際上并不能成立,但它們?cè)谠烷_(kāi)發(fā)過(guò)程中可以使開(kāi)發(fā)者的注意力集中在一些主要的方面。,?,在修改一個(gè)文件時(shí),可以假設(shè)這個(gè)文件確實(shí)存在在存取文件時(shí),待存取的記錄總是存在一旦計(jì)劃中的系統(tǒng)滿足用戶所有的要求,就可以撤消這些假設(shè),并追加一些細(xì)節(jié)。,?,系統(tǒng)動(dòng)態(tài)分析,系統(tǒng)的需求規(guī)格說(shuō)明通常是用自然語(yǔ)言來(lái)敘述的,但是用自然語(yǔ)言描述往往會(huì)出現(xiàn)歧義性。為了直觀地分析系統(tǒng)的動(dòng)作,從特定的視點(diǎn)出發(fā)描述系統(tǒng)的行為,需要采用動(dòng)態(tài)分析的方法。,最常用的動(dòng)態(tài)分析方法,狀態(tài)遷移圖時(shí)序圖Petri網(wǎng),狀態(tài)遷移圖,狀態(tài)遷移圖是描述系統(tǒng)的狀態(tài)如何相應(yīng)外部的信號(hào)進(jìn)行推移的一種圖形表示。圓圈“○”表示可得到的系統(tǒng)狀態(tài)箭頭“→”表示從一種狀態(tài)向另一種狀態(tài)的遷移。,例如,當(dāng)有多個(gè)申請(qǐng)占用CPU運(yùn)行的進(jìn)程時(shí),有關(guān)CPU分配的進(jìn)程的狀態(tài)遷移。,可得到的狀態(tài)=就緒,運(yùn)行,等待生成的事件=t1,t2,t3,t4?t1─中斷事件?t2─中斷已處理?t3─分配CPU?t4─用完CPU時(shí)間,狀態(tài)遷移圖的優(yōu)點(diǎn),狀態(tài)之間的關(guān)系能夠直觀地捕捉到由于狀態(tài)遷移圖的單純性,能夠機(jī)械地分析許多情況,可很容易地建立分析工具,?,Petri網(wǎng),Petri網(wǎng)已廣泛地應(yīng)用于硬件與軟件系統(tǒng)的開(kāi)發(fā)中,它適用于描述與分析相互獨(dú)立、協(xié)同操作的處理系統(tǒng),也就是并發(fā)執(zhí)行的處理系統(tǒng)。,Petri網(wǎng)簡(jiǎn)稱PNG(PetriNetGraph),它有兩種結(jié)點(diǎn):位置(place):符號(hào)為“○”,它用來(lái)表示系統(tǒng)的狀態(tài)。轉(zhuǎn)移(transition):符號(hào)為“?”,它用來(lái)表示系統(tǒng)中的事件。圖中的有向邊表示對(duì)轉(zhuǎn)移的輸入,或由轉(zhuǎn)移的輸出,標(biāo)記,或稱令牌(token),是表明系統(tǒng)當(dāng)前處于什么狀態(tài)的標(biāo)志,處理兩個(gè)進(jìn)程的同步問(wèn)題,- 1.請(qǐng)仔細(xì)閱讀文檔,確保文檔完整性,對(duì)于不預(yù)覽、不比對(duì)內(nèi)容而直接下載帶來(lái)的問(wèn)題本站不予受理。
- 2.下載的文檔,不會(huì)出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請(qǐng)點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
14.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁(yè)顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開(kāi)word文檔。
- 特殊限制:
部分文檔作品中含有的國(guó)旗、國(guó)徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對(duì)作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- SW03 軟件 需求 分析
鏈接地址:http://www.szxfmmzy.com/p-11550033.html