軟件工程課件之_需求分析(第五版)(張海潘編著)_第1頁(yè)
軟件工程課件之_需求分析(第五版)(張海潘編著)_第2頁(yè)
軟件工程課件之_需求分析(第五版)(張海潘編著)_第3頁(yè)
軟件工程課件之_需求分析(第五版)(張海潘編著)_第4頁(yè)
軟件工程課件之_需求分析(第五版)(張海潘編著)_第5頁(yè)
已閱讀5頁(yè),還剩67頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、 3.1 需求分析的任務(wù) 3.2 與用戶溝通獲取需求的方法 3.3 分析建模與規(guī)格說(shuō)明 3.4 實(shí)體-聯(lián)系圖 3.5 數(shù)據(jù)標(biāo)準(zhǔn)化 3.6 狀態(tài)轉(zhuǎn)換圖 3.7 其他圖形工具 3.8 驗(yàn)證軟件需求第3章 需求分析第3章 需求分析需求分析的任務(wù):需求分析是軟件定義時(shí)期的最后一個(gè)階段,它的根本任務(wù)是準(zhǔn)確地答復(fù)“系統(tǒng)必須做什么?這個(gè)問(wèn)題。確定系統(tǒng)必須完成哪些工作,也就是對(duì)目標(biāo)系統(tǒng)提出完整、準(zhǔn)確、清晰、具體的要求。系統(tǒng)分析員應(yīng)該寫出軟件需求規(guī)格說(shuō)明書,以書面形式準(zhǔn)確地描述軟件需求。 需求:正在構(gòu)建的系統(tǒng)必須符合的事務(wù)。需求管理:是一種獲取、組織并記錄系統(tǒng)需求的系統(tǒng)化方案以及一個(gè)使客戶與工程團(tuán)隊(duì)不斷變更的系

2、統(tǒng)需求達(dá)成并保持一致的過(guò)程。傳統(tǒng)需求分析:強(qiáng)調(diào)需求的記錄,以一成不變的觀點(diǎn)對(duì)待需求,不重視需求實(shí)現(xiàn)與維護(hù)?,F(xiàn)代需求過(guò)程:包括需求的獲取、分析、處理、驗(yàn)證、實(shí)現(xiàn)和全過(guò)程的需求管理。需求管理覆蓋軟件工程的整個(gè)過(guò)程。傳統(tǒng)與現(xiàn)代需求方法的比較: 需求管理過(guò)程需求管理功能需求管理思想方法傳統(tǒng)局限于需求分析這一個(gè)階段注重具體的需求分析方法一成不變的觀點(diǎn),注重“描述”的方法和過(guò)程,是純技術(shù)性的轉(zhuǎn)換現(xiàn)代全過(guò)程的,注重整個(gè)產(chǎn)品過(guò)程的全部功能范圍更廣,包括獲取、分析、處理、驗(yàn)證、實(shí)現(xiàn)和全過(guò)程的需求管理注重需求實(shí)現(xiàn)與維護(hù)過(guò)程,處理不斷變更的系統(tǒng)需求需求管理存在的問(wèn)題:范圍問(wèn)題:系統(tǒng)目標(biāo)、邊界未被良好定義,用戶和開發(fā)

3、團(tuán)隊(duì)理解不一致。理解問(wèn)題:用戶不能完全了解自己需要什么,對(duì)系統(tǒng)能力、局限更加不清楚;工程師不理解用戶的問(wèn)題域和應(yīng)用環(huán)境。易變問(wèn)題:需求隨時(shí)間發(fā)生變化。需求工程:20世紀(jì)80年代中期,形成了軟件工程的子領(lǐng)域需求工程。進(jìn)入20世紀(jì)90年代后,需求工程稱為軟件界研究的重點(diǎn)之一。Alan Davis 把需求工程定義為“直到但不包括把軟件分解為實(shí)際架構(gòu)構(gòu)件之前的所有活動(dòng)。需求工程的階段劃分:3.1 需求分析的任務(wù) 確定對(duì)系統(tǒng)的綜合要求 分析系統(tǒng)的數(shù)據(jù)要求 導(dǎo)出系統(tǒng)的邏輯模型 修正系統(tǒng)開發(fā)方案 3.1.1 確定對(duì)系統(tǒng)的綜合要求 1. 功能需求2. 性能需求3. 可靠性和可用性需求4. 出錯(cuò)處理需求5. 接

4、口需求6. 約束7. 逆向需求8. 將來(lái)可能提出的要求3.1.2 分析系統(tǒng)的數(shù)據(jù)要求建立數(shù)據(jù)模型ER圖 描繪數(shù)據(jù)結(jié)構(gòu)層次方框圖和Warnier圖 數(shù)據(jù)結(jié)構(gòu)標(biāo)準(zhǔn)化 3.1.3 導(dǎo)出系統(tǒng)的邏輯模型 綜合上述兩項(xiàng)分析的結(jié)果可以導(dǎo)出系統(tǒng)的詳細(xì)的邏輯模型,通常用數(shù)據(jù)流圖、實(shí)體-聯(lián)系圖、狀態(tài)轉(zhuǎn)換圖、數(shù)據(jù)字典和主要的處理算法描述這個(gè)邏輯模型。 根據(jù)在分析過(guò)程中獲得的對(duì)系統(tǒng)的更深入更具體的了解,可以比較準(zhǔn)確地估計(jì)系統(tǒng)的本錢和進(jìn)度,修正以前制定的開發(fā)方案。 3.1.4 修正系統(tǒng)開發(fā)方案 3.2 與用戶溝通獲取需求的方法訪談 面向數(shù)據(jù)流自頂向下求精簡(jiǎn)易的應(yīng)用規(guī)格說(shuō)明技術(shù) 快速建立軟件原型 需求分析綜合癥解決方案需

5、求誘導(dǎo)的方法:3.2.1 訪談1. 正式訪談系統(tǒng)分析員將提出一些事先準(zhǔn)備好的具體問(wèn)題。2. 非正式訪談分析員將提出一些用戶可以自由答復(fù)的開放性問(wèn)題,以鼓勵(lì)被訪問(wèn)人員說(shuō)出自己的想法。3. 調(diào)查表經(jīng)過(guò)仔細(xì)考慮寫出的書面答復(fù)可能比被訪者對(duì)問(wèn)題的口頭答復(fù)更準(zhǔn)確。4. 情景分析技術(shù)對(duì)用戶將來(lái)使用目標(biāo)系統(tǒng)解決某個(gè)具體問(wèn)題的方法和結(jié)果進(jìn)行分析。情景分析技術(shù)的用處:能在某種程度上演示目標(biāo)系統(tǒng)的行為,從而便于用戶理解,而且還可能進(jìn)一步揭示出一些分析員目前還不知道的需求。能保證用戶在需求分析過(guò)程中始終扮演一個(gè)積極主動(dòng)的角色。讓用戶起積極主動(dòng)的作用對(duì)需求分析工作獲得成功是至關(guān)重要的。3.2.2 面向數(shù)據(jù)流自頂向下求

6、精 1. 分析追蹤數(shù)據(jù)流圖需求分析的目標(biāo)之一就是把數(shù)據(jù)流和數(shù)據(jù)存儲(chǔ)定義到元素級(jí),通常從數(shù)據(jù)流圖的輸出端著手分析。2. 用戶復(fù)查必須請(qǐng)用戶對(duì)上述分析過(guò)程中得出的結(jié)果仔細(xì)地復(fù)查。復(fù)查過(guò)程驗(yàn)證了的元素,補(bǔ)充了未知的元素,填補(bǔ)了文檔中的空白。隨著分析過(guò)程的進(jìn)展,經(jīng)過(guò)問(wèn)題和解答的反復(fù)循環(huán),分析員越來(lái)越深入具體地定義了目標(biāo)系統(tǒng),最終得到對(duì)系統(tǒng)數(shù)據(jù)和功能要求的滿意了解。 面向數(shù)據(jù)流自頂向下求精過(guò)程3.2.3 簡(jiǎn)易的應(yīng)用規(guī)格說(shuō)明技術(shù)簡(jiǎn)易的應(yīng)用規(guī)格說(shuō)明技術(shù)是一種面向團(tuán)隊(duì)的需求收集法。這種方法提倡用戶與開發(fā)者密切合作,共同標(biāo)識(shí)問(wèn)題,提出解決方案要素,商討不同方案并指定根本需求。 分析需求的典型過(guò)程如下:1. 初步

7、訪談,準(zhǔn)備會(huì)議首先進(jìn)行初步的訪談,初步確定待解決的問(wèn)題的范圍和解決方案。然后開發(fā)者和用戶分別寫出“產(chǎn)品需求。選定會(huì)議的時(shí)間和地點(diǎn),并選舉協(xié)調(diào)人。2. 會(huì)前審查需求,確定列表要求每位與會(huì)者在開會(huì)的前幾天認(rèn)真審查產(chǎn)品需求,并且列出對(duì)象、操作這些對(duì)象或與這些對(duì)象交互的效勞、約束條件和性能標(biāo)準(zhǔn)。3. 會(huì)上討論列表,創(chuàng)立組合列表每位與會(huì)者展示列表供大家討論。大家共同創(chuàng)立一張組合列表。由協(xié)調(diào)人主持討論這些列表。4. 分組制定小型規(guī)格說(shuō)明與會(huì)者分成更小的小組,為每張列表中的工程制定小型規(guī)格說(shuō)明。每個(gè)小組都向全體與會(huì)者展示他們制定的小型規(guī)格說(shuō)明,供大家討論。5. 制定確認(rèn)標(biāo)準(zhǔn),起草需求規(guī)格說(shuō)明書每個(gè)與會(huì)者都制

8、定出產(chǎn)品的一整套確認(rèn)標(biāo)準(zhǔn),并提交會(huì)議討論,以創(chuàng)立出意見一致確實(shí)認(rèn)標(biāo)準(zhǔn)。最后,起草完整的軟件需求規(guī)格說(shuō)明書。簡(jiǎn)易的應(yīng)用規(guī)格說(shuō)明技術(shù)的優(yōu)點(diǎn):開發(fā)者與用戶不分彼此,齊心協(xié)力,密切合作;即時(shí)討論并求精;有能導(dǎo)出規(guī)格說(shuō)明的具體步驟。 3.2.4 快速建立軟件原型 快速建立軟件原型是最準(zhǔn)確、最有效、最強(qiáng)大的需求分析技術(shù)??焖僭途褪强焖俳⑵饋?lái)的旨在演示目標(biāo)系統(tǒng)主要功能的可運(yùn)行的程序。構(gòu)建原型的要點(diǎn)是,它應(yīng)該實(shí)現(xiàn)用戶看得見的功能,省略目標(biāo)系統(tǒng)的“隱含功能。快速原型的特性:“快速??焖僭偷哪康氖潜M快向用戶提供一個(gè)可在計(jì)算機(jī)上運(yùn)行的目標(biāo)系統(tǒng)的模型。因此,原型的某些缺陷是可以忽略的?!叭菀仔薷摹H绻偷牡谝?/p>

9、版不是用戶所需要的,就必須根據(jù)用戶的意見迅速地修改它,構(gòu)建出原型的第二版,以更好地滿足用戶需求。如果修改耗時(shí)過(guò)多,勢(shì)必延誤軟件開發(fā)時(shí)間。 快速原型通常使用下述3種方法和工具:(1) 第四代技術(shù)4GL第四代技術(shù)包括眾多數(shù)據(jù)庫(kù)查詢?nèi)鏢QL和報(bào)表語(yǔ)言如ADF、程序和應(yīng)用系統(tǒng)生成器如Power Builder和Oracle的應(yīng)用開發(fā)環(huán)境以及其他非常高級(jí)的非過(guò)程語(yǔ)言。第四代技術(shù)使得軟件工程師能夠快速地生成可執(zhí)行的代碼,它們是較理想的快速原型工具。 第四代技術(shù)特點(diǎn):簡(jiǎn)單易學(xué),用戶界面良好,面向問(wèn)題、非過(guò)程化程度高,用戶只需告知系統(tǒng)做什么,而無(wú)需說(shuō)明怎么做。用4GL編程使用的代碼量較少,并可成數(shù)量級(jí)地提高軟

10、件生產(chǎn)率。程序設(shè)計(jì)語(yǔ)言劃代:1GL是匯編語(yǔ)言;2GL是高級(jí)程序設(shè)計(jì)語(yǔ)言,如FORTRAN,ALGOL,BASIC,LISP等;3GL是增強(qiáng)性的高級(jí)程序設(shè)計(jì)語(yǔ)言,如PASCAL,ALGOL68,F(xiàn)ORTRAN77等;4GL是按計(jì)算機(jī)科學(xué)理論指導(dǎo)設(shè)計(jì)出來(lái)的結(jié)構(gòu)化語(yǔ)言,如ADA,MODULA2,SMALLTALK80,JAVA,VB,VC,VF等。 (2) 可重用的軟件構(gòu)件另外一種快速構(gòu)建原型的方法,是使用一組已有的軟件構(gòu)件(也稱為組件)來(lái)裝配(而不是從頭構(gòu)造)原型。軟件構(gòu)件可以是數(shù)據(jù)結(jié)構(gòu)(或數(shù)據(jù)庫(kù)),或軟件體系結(jié)構(gòu)構(gòu)件(即程序),或過(guò)程構(gòu)件(即模塊)。(3) 形式化規(guī)格說(shuō)明和原型環(huán)境非形式化方法:

11、自然語(yǔ)言描述半形式化方法:數(shù)據(jù)流圖或?qū)嶓w-聯(lián)系圖形式化方法:基于數(shù)學(xué)的技術(shù) 3.3 分析建模與規(guī)格說(shuō)明3.3.1 分析建模模型:就是為了理解事物而對(duì)事物做出的一種抽象,是對(duì)事物的一種無(wú)歧義的書面描述。通常,模型由一組圖形符號(hào)和組織這些符號(hào)的規(guī)那么組成。結(jié)構(gòu)化分析過(guò)程:實(shí)質(zhì)上是一種創(chuàng)立模型的活動(dòng)。系統(tǒng)分析員從不同角度抽象出目標(biāo)系統(tǒng)的特性,使用精確的表示方法構(gòu)造系統(tǒng)的模型,驗(yàn)證模型是否滿足用戶對(duì)目標(biāo)系統(tǒng)的需求,并在設(shè)計(jì)過(guò)程中逐漸把和實(shí)現(xiàn)有關(guān)的細(xì)節(jié)加進(jìn)模型中,直至最終用程序?qū)崿F(xiàn)模型。 分析模型的結(jié)構(gòu)需求分析過(guò)程應(yīng)該建立3種模型,分別是:數(shù)據(jù)模型功能模型行為模型 數(shù)據(jù)字典:是分析模型的核心,它描述軟件

12、使用或產(chǎn)生的所有數(shù)據(jù)對(duì)象。實(shí)體-聯(lián)系圖:描繪數(shù)據(jù)對(duì)象及數(shù)據(jù)對(duì)象之間的關(guān)系,是用于建立數(shù)據(jù)模型的圖形。數(shù)據(jù)流圖:描繪當(dāng)數(shù)據(jù)在軟件系統(tǒng)中移動(dòng)時(shí)被變換的邏輯過(guò)程,指明系統(tǒng)具有的變換數(shù)據(jù)的功能,因此,數(shù)據(jù)流圖是建立功能模型的根底。狀態(tài)轉(zhuǎn)換圖(簡(jiǎn)稱為狀態(tài)圖):指明了作為外部事件結(jié)果的系統(tǒng)行為。為此,狀態(tài)轉(zhuǎn)換圖描繪了系統(tǒng)的各種行為模式(稱為“狀態(tài))和在不同狀態(tài)間轉(zhuǎn)換的方式。狀態(tài)轉(zhuǎn)換圖是行為建模的根底。 3.3.2 軟件需求規(guī)格說(shuō)明 通過(guò)需求分析除了創(chuàng)立分析模型之外,還應(yīng)該寫出軟件需求規(guī)格說(shuō)明書,它是需求分析階段得出的最主要的文檔。通常用自然語(yǔ)言完整、準(zhǔn)確、具體地描述系統(tǒng)的數(shù)據(jù)要求、功能需求、性能需求、可靠

13、性和可用性要求、出錯(cuò)處理需求、接口需求、約束、逆向需求以及將來(lái)可能提出的要求。 我國(guó)定義了GB856D-1988國(guó)家標(biāo)準(zhǔn),給出了需求規(guī)格說(shuō)明的內(nèi)容框架:1 引言 1.1 編寫目的 1.2 項(xiàng)目背景(單位和其他系統(tǒng)的關(guān)系) 1.3 定義(專門術(shù)語(yǔ)和縮寫詞)2 任務(wù)概述 2.1 目標(biāo) 2.2 運(yùn)行環(huán)境 2.3 條件限制3 數(shù)據(jù)描述 3.1 靜態(tài)數(shù)據(jù) 3.2 動(dòng)態(tài)數(shù)據(jù) 3.3 數(shù)據(jù)庫(kù)描述 3.4 數(shù)據(jù)字典 3.5 數(shù)據(jù)采集4 功能需求 4.1 功能劃分 4.2 功能描述5 性能需求 5.1 數(shù)據(jù)精確度 5.2 時(shí)間特性 5.3 適應(yīng)性6 運(yùn)行需求 6.1 用戶界面 6.2 硬件接口 6.3 軟件接口

14、 6.4 故障處理7 其他需求(檢測(cè)或驗(yàn)收標(biāo)準(zhǔn)、可用性、可維護(hù)性、可移植性、安全保密性)練習(xí)題:習(xí)題3.3,畫數(shù)據(jù)流圖頂層數(shù)據(jù)流圖功能級(jí)數(shù)據(jù)流圖細(xì)化的數(shù)據(jù)流圖3.4 實(shí)體-聯(lián)系圖概念性數(shù)據(jù)模型是一種面向問(wèn)題的數(shù)據(jù)模型,是按照用戶的觀點(diǎn)對(duì)數(shù)據(jù)建立的模型。它描述了從用戶角度看到的數(shù)據(jù),它反映了用戶的現(xiàn)實(shí)環(huán)境,且與在軟件系統(tǒng)中的實(shí)現(xiàn)方法無(wú)關(guān)。數(shù)據(jù)模型中包含3種相互關(guān)聯(lián)的信息:數(shù)據(jù)對(duì)象數(shù)據(jù)對(duì)象的屬性數(shù)據(jù)對(duì)象彼此間相互連接的關(guān)系 3.4.1 數(shù)據(jù)對(duì)象 數(shù)據(jù)對(duì)象:是對(duì)軟件必須理解的復(fù)合信息的抽象。復(fù)合信息是指具有一系列不同性質(zhì)或?qū)傩缘氖挛?,僅有單個(gè)值的事物不是數(shù)據(jù)對(duì)象。數(shù)據(jù)對(duì)象可以是外部實(shí)體、事物、行為、

15、事件、角色、單位、地點(diǎn)或結(jié)構(gòu)等。數(shù)據(jù)對(duì)象彼此間是有關(guān)聯(lián)的。 3.4.2 屬性屬性:定義了數(shù)據(jù)對(duì)象的性質(zhì)。必須把一個(gè)或多個(gè)屬性定義為“標(biāo)識(shí)符 。根據(jù)對(duì)問(wèn)題的理解來(lái)確定特定數(shù)據(jù)對(duì)象的適宜的屬性。 3.4.3 聯(lián)系聯(lián)系:數(shù)據(jù)對(duì)象彼此之間相互連接的方式稱為聯(lián)系,也稱為關(guān)系。聯(lián)系可分為以下3種類型:一對(duì)一聯(lián)系(11)一對(duì)多聯(lián)系(1N)多對(duì)多聯(lián)系(MN)聯(lián)系也可能有屬性。3.4.4 實(shí)體-聯(lián)系圖的符號(hào)ER圖中包含:實(shí)體(即數(shù)據(jù)對(duì)象),用矩形框表示;關(guān)系,用連接相關(guān)實(shí)體的菱形框表示;屬性,用橢圓形或圓角矩形表示,并用直線把實(shí)體(或關(guān)系)與其屬性連接起來(lái)。例1:某校教學(xué)管理系統(tǒng)的ER圖ER圖的優(yōu)點(diǎn):比較接近人

16、的習(xí)慣思維方式;用簡(jiǎn)單的圖形符號(hào)表達(dá)系統(tǒng)分析員對(duì)問(wèn)題域的理解,用戶也容易理解,可以作為用戶與分析員之間有效的交流工具。 數(shù)據(jù)建模工具:以自動(dòng)化的方式創(chuàng)立ER圖、數(shù)據(jù)字典及相關(guān)模型。AllFusion ERWin 輔助設(shè)計(jì)數(shù)據(jù)庫(kù)、數(shù)據(jù)對(duì)象、結(jié)構(gòu)、關(guān)鍵元素ER/Studio 支持實(shí)體-關(guān)系建模Oracle Designer 建模、應(yīng)用系統(tǒng)和數(shù)據(jù)庫(kù)設(shè)計(jì)Meta Scope 圖形化顯示數(shù)據(jù)Model Sphere Visible Analyst 模型可視化分析例2:習(xí)題3.3,銀行儲(chǔ)蓄系統(tǒng)的ER圖 銀行計(jì)算機(jī)儲(chǔ)蓄系統(tǒng)的工作過(guò)程大致如下:儲(chǔ)戶填寫的存款單或取款單由業(yè)務(wù)員鍵入系統(tǒng),如果是存款那么系統(tǒng)記錄存

17、款人姓名、住址(或 號(hào)碼)、身份證號(hào)碼、存款類型、存款日期、到期日期、利率及密碼(可選)等信息,并印出存單給儲(chǔ)戶;如果是取款而且存款時(shí)留有密碼,那么系統(tǒng)首先核對(duì)儲(chǔ)戶密碼,假設(shè)密碼正確或存款時(shí)未留密碼,那么系統(tǒng)計(jì)算利息并印出利息清單給儲(chǔ)戶。銀行儲(chǔ)蓄系統(tǒng)的ER圖 3.5 數(shù)據(jù)標(biāo)準(zhǔn)化數(shù)據(jù)結(jié)構(gòu)標(biāo)準(zhǔn)化:軟件系統(tǒng)經(jīng)常使用各種長(zhǎng)期保存的信息,這些信息通常以一定方式組織并存儲(chǔ)在數(shù)據(jù)庫(kù)或文件中,為減少數(shù)據(jù)冗余,防止出現(xiàn)插入異?;騽h除異常,簡(jiǎn)化修改數(shù)據(jù)的過(guò)程,通常需要把數(shù)據(jù)結(jié)構(gòu)標(biāo)準(zhǔn)化。 范式:通常用“范式(normal forms)定義消除數(shù)據(jù)冗余的程度。第一范式(1 NF)數(shù)據(jù)冗余程度最大,第五范式(5 NF)

18、數(shù)據(jù)冗余程度最小。范式級(jí)別越高,存儲(chǔ)同樣數(shù)據(jù)需要分解成更多張表,因此,“存儲(chǔ)自身過(guò)程越復(fù)雜。隨著范式級(jí)別的提高,數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)與基于問(wèn)題域的結(jié)構(gòu)間的匹配程度也隨之下降,因此,在需求變化時(shí)數(shù)據(jù)的穩(wěn)定性較差。范式級(jí)別提高那么需要訪問(wèn)的表增多,因此性能(速度)將下降。第一、第二和第三范式的定義:第一范式,每個(gè)屬性值都必須是原子值,即僅僅是一個(gè)簡(jiǎn)單值而不含內(nèi)部結(jié)構(gòu)。第二范式,滿足第一范式條件,而且每個(gè)非關(guān)鍵字屬性都由整個(gè)關(guān)鍵字決定(而不是由關(guān)鍵字的一局部來(lái)決定)。第三范式,符合第二范式的條件,每個(gè)非關(guān)鍵字屬性都僅由關(guān)鍵字決定,而且一個(gè)非關(guān)鍵字屬性不能僅僅是對(duì)另一個(gè)非關(guān)鍵字屬性的進(jìn)一步描述(即一個(gè)非關(guān)鍵

19、字屬性值不依賴于另一個(gè)非關(guān)鍵字屬性值)。 3.6 狀態(tài)轉(zhuǎn)換圖狀態(tài)轉(zhuǎn)換圖:通過(guò)描繪系統(tǒng)的狀態(tài)及引起系統(tǒng)狀態(tài)轉(zhuǎn)換的事件,來(lái)表示系統(tǒng)的行為。狀態(tài)圖還指明了作為特定事件的結(jié)果系統(tǒng)將做哪些動(dòng)作(例如,處理數(shù)據(jù))。 3.6.1 狀態(tài) 狀態(tài):是任何可以被觀察到的系統(tǒng)行為模式,一個(gè)狀態(tài)代表系統(tǒng)的一種行為模式。狀態(tài)規(guī)定了系統(tǒng)對(duì)事件的響應(yīng)方式。狀態(tài)主要有:初態(tài)(即初始狀態(tài)),只能有1個(gè)終態(tài)(即最終狀態(tài)),可以有0至多個(gè)中間狀態(tài)狀態(tài)圖分類:表示系統(tǒng)循環(huán)運(yùn)行過(guò)程,通常不關(guān)心循環(huán)是怎樣啟動(dòng)的。表示系統(tǒng)單程生命期,需要標(biāo)明初始狀態(tài)和最終狀態(tài)。3.6.2 事件事件:是在某個(gè)特定時(shí)刻發(fā)生的事情,它是對(duì)引起系統(tǒng)做動(dòng)作或(和)從

20、一個(gè)狀態(tài)轉(zhuǎn)換到另一個(gè)狀態(tài)的外界事件的抽象。簡(jiǎn)而言之,事件就是引起系統(tǒng)做動(dòng)作或(和)轉(zhuǎn)換狀態(tài)的控制信息。 3.6.3 符號(hào)初態(tài):用實(shí)心圓表示;終態(tài):用一對(duì)同心圓(內(nèi)圓為實(shí)心圓)表示;中間狀態(tài):用圓角矩形表示,分成上、中、下3局部。上面局部-為狀態(tài)的名稱;中間局部-為狀態(tài)變量的名字和值;下面局部-是活動(dòng)表。 帶箭頭的連線:稱為狀態(tài)轉(zhuǎn)換,箭頭指明了轉(zhuǎn)換方向。 狀態(tài)圖中使用的主要符號(hào)活動(dòng)表的語(yǔ)法格式: 事件名(參數(shù)表)/動(dòng)作表達(dá)式“事件名可以是任何事件的名稱。常用的3種標(biāo)準(zhǔn)事件:entry事件指定進(jìn)入該狀態(tài)的動(dòng)作;exit事件指定退出該狀態(tài)的動(dòng)作;do事件那么指定在該狀態(tài)下的動(dòng)作。需要時(shí)可以為事件指定

21、參數(shù)表。活動(dòng)表中的動(dòng)作表達(dá)式描述應(yīng)做的具體動(dòng)作。 事件表達(dá)式的語(yǔ)法: 事件說(shuō)明守衛(wèi)條件動(dòng)作表達(dá)式事件說(shuō)明的語(yǔ)法為:事件名(參數(shù)表)。守衛(wèi)條件是一個(gè)布爾表達(dá)式。如果同時(shí)使用事件說(shuō)明和守衛(wèi)條件,那么當(dāng)且僅當(dāng)事件發(fā)生且布爾表達(dá)式為真時(shí),狀態(tài)轉(zhuǎn)換才發(fā)生。如果只有守衛(wèi)條件沒(méi)有事件說(shuō)明,那么只要守衛(wèi)條件為真狀態(tài)轉(zhuǎn)換就發(fā)生。動(dòng)作表達(dá)式是一個(gè)過(guò)程表達(dá)式,當(dāng)狀態(tài)轉(zhuǎn)換開始時(shí)執(zhí)行該表達(dá)式。 3.6.4 例子例1: 系統(tǒng)例2:銀行儲(chǔ)蓄系統(tǒng)存款過(guò)程的狀態(tài)圖例2:銀行儲(chǔ)蓄系統(tǒng)取款過(guò)程的狀態(tài)圖3.7 其他圖形工具3.7.1 層次方框圖層次方框圖:用樹形結(jié)構(gòu)的一系列多層次的矩形框描繪數(shù)據(jù)的層次結(jié)構(gòu)。樹形結(jié)構(gòu)的頂層是一個(gè)單獨(dú)的

22、矩形框,它代表完整的數(shù)據(jù)結(jié)構(gòu);下面的各層矩形框代表這個(gè)數(shù)據(jù)的子集;最底層的各個(gè)框代表組成這個(gè)數(shù)據(jù)的實(shí)際數(shù)據(jù)元素(不能再分割的元素)。某計(jì)算機(jī)公司的全部產(chǎn)品的層次方框圖3.7.2 Warnier圖Warnier圖:和層次方框圖類似,Warnier圖也用樹形結(jié)構(gòu)描繪信息,但是這種圖形工具比層次方框圖提供了更豐富的描繪手段。特點(diǎn):用Warnier圖可以說(shuō)明信息的邏輯組織,也可以表示特定信息在某一類信息中是有條件地出現(xiàn)的。因?yàn)橹貜?fù)和條件約束是說(shuō)明軟件處理過(guò)程的根底,所以很容易把Warnier圖轉(zhuǎn)變成軟件設(shè)計(jì)的工具。 軟件產(chǎn)品的Warnier圖3.7.3 IPO圖IPO圖:是輸入、處理、輸出圖的簡(jiǎn)稱,它

23、是美國(guó)IBM公司開展完善起來(lái)的一種圖形工具,能夠方便地描繪輸入數(shù)據(jù)、對(duì)數(shù)據(jù)的處理和輸出數(shù)據(jù)之間的關(guān)系。根本形式:是在左邊的框中列出有關(guān)的輸入數(shù)據(jù),在中間的框內(nèi)列出主要的處理,在右邊的框內(nèi)列出產(chǎn)生的輸出數(shù)據(jù)。在IPO圖中還用類似向量符號(hào)的粗大箭頭清楚地指出數(shù)據(jù)通信的情況。主文件更新處理的IPO圖改進(jìn)的IPO圖:這種圖中包含某些附加的信息,在軟件設(shè)計(jì)過(guò)程中將比原始的IPO圖更有用。在需求分析階段可以使用IPO圖簡(jiǎn)略地描述系統(tǒng)的主要算法(即數(shù)據(jù)流圖中各個(gè)處理的根本算法)。 IPO表系統(tǒng):定貨系統(tǒng) 作者:祁燕模塊:處理事務(wù) 日期:2010.3編號(hào):1.0被調(diào)用: 定貨系統(tǒng)調(diào)用: 接受事務(wù) 更新庫(kù)存清單 處理定貨輸入: 事務(wù)輸出:定貨信息 庫(kù)存清單處理:(用

溫馨提示

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

評(píng)論

0/150

提交評(píng)論