軟件工程課件5 面向數(shù)據(jù)流的分析方法_第1頁(yè)
軟件工程課件5 面向數(shù)據(jù)流的分析方法_第2頁(yè)
軟件工程課件5 面向數(shù)據(jù)流的分析方法_第3頁(yè)
軟件工程課件5 面向數(shù)據(jù)流的分析方法_第4頁(yè)
軟件工程課件5 面向數(shù)據(jù)流的分析方法_第5頁(yè)
已閱讀5頁(yè),還剩41頁(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)介

15面向數(shù)據(jù)流的分析方法

2§5.1結(jié)構(gòu)化分析概述

結(jié)構(gòu)化分析方法,是需求分析中使用最多的方法之一,適用于數(shù)據(jù)處理類型軟件的需求分析。是面向數(shù)據(jù)流自頂向下逐步求精進(jìn)行需求分析的方法,它是一種建模活動(dòng),該方法使用簡(jiǎn)單易讀符號(hào),根據(jù)軟件內(nèi)部數(shù)據(jù)傳遞、變換的關(guān)系,描繪出滿足功能要求的軟件模型。

3㈠、繪制數(shù)據(jù)流圖的頂層圖,畫(huà)出軟件系統(tǒng)的范圍。

學(xué)生購(gòu)買(mǎi)教材管理系統(tǒng)學(xué)生購(gòu)買(mǎi)教材管理系統(tǒng)購(gòu)書(shū)申請(qǐng)書(shū)4㈡、理解當(dāng)前的現(xiàn)實(shí)系統(tǒng)的工作流程,建立當(dāng)前系統(tǒng)的“具體模型”。

要理解當(dāng)前系統(tǒng)是怎么做的,并將現(xiàn)實(shí)中的事物用數(shù)據(jù)流圖等形式表達(dá)出來(lái)。如:

學(xué)生1.張秘書(shū)購(gòu)書(shū)申請(qǐng)2.王會(huì)計(jì)購(gòu)書(shū)證明3.李出納購(gòu)書(shū)發(fā)票4.趙保管領(lǐng)書(shū)單學(xué)生書(shū)學(xué)生購(gòu)買(mǎi)教材的具體模型5㈢、從“具體模型”抽象出當(dāng)前系統(tǒng)的“邏輯模型”。

⒈目的:去粗取精。即除去“具體模型”中的非本質(zhì)的因素,獲得反映系統(tǒng)本質(zhì)的“邏輯模型”。

⒉方法:反復(fù)問(wèn)這些問(wèn)題:“這個(gè)加工是否必須這樣做?”、“這個(gè)文件是否必須這樣組織?”6學(xué)生購(gòu)買(mǎi)教材的邏輯模型學(xué)生1.審查有效性購(gòu)書(shū)單2.開(kāi)發(fā)票有效3.開(kāi)領(lǐng)書(shū)單購(gòu)書(shū)單發(fā)票4.發(fā)書(shū)領(lǐng)書(shū)單學(xué)生書(shū)7㈣、分析目標(biāo)系統(tǒng)與當(dāng)前系統(tǒng)邏輯上的差別,建立目標(biāo)系統(tǒng)的邏輯模型。

分三步進(jìn)行:

⑴決定“變化的范圍”。對(duì)當(dāng)前系統(tǒng)的數(shù)據(jù)流圖,沿著底層逐個(gè)檢查每一個(gè)基本加工與相應(yīng)在目標(biāo)系統(tǒng)中的功能是否一樣,不一樣就屬于“變化的部分”。這樣當(dāng)前系統(tǒng)的數(shù)據(jù)流圖就被分成不變部分與變化的部分。只須重新分解變化的部分。

⑵將“變化的部分”看成是一個(gè)加工,將其已確定的輸入輸出數(shù)據(jù)流畫(huà)出。

⑶借助“分解”技術(shù),由外向里對(duì)“變化的部分”進(jìn)行分析創(chuàng)造新系統(tǒng)。

8計(jì)算機(jī)售書(shū)系統(tǒng)的邏輯模型學(xué)生1.審查并開(kāi)發(fā)票購(gòu)書(shū)單2.開(kāi)領(lǐng)書(shū)單發(fā)票3.發(fā)書(shū)領(lǐng)書(shū)單學(xué)生書(shū)9㈤、為目標(biāo)系統(tǒng)的邏輯模型作補(bǔ)充和優(yōu)化

⒈確定目標(biāo)系統(tǒng)的人—機(jī)界面

⒉說(shuō)明至今尚未詳細(xì)考慮的一些細(xì)節(jié)

⑴出錯(cuò)處理:說(shuō)明在每種出錯(cuò)情況下系統(tǒng)如何處理。

⑵系統(tǒng)的啟動(dòng)和結(jié)束:說(shuō)明這個(gè)系統(tǒng)如何開(kāi)始工作并進(jìn)入穩(wěn)定狀態(tài);說(shuō)明結(jié)束工作的方式。

⑶系統(tǒng)的輸入輸出格式

⑷性能方面的要求10改進(jìn)了的計(jì)算機(jī)售書(shū)系統(tǒng)模型學(xué)生1.審查并開(kāi)發(fā)票購(gòu)書(shū)單2.開(kāi)領(lǐng)書(shū)單發(fā)票領(lǐng)書(shū)單學(xué)生無(wú)效書(shū)單11㈥、對(duì)需求說(shuō)明進(jìn)行復(fù)審,直到確認(rèn)文檔齊全,并且符合用戶的全部需求為止。

12§5.2數(shù)據(jù)流圖

1.定義:反映客觀現(xiàn)實(shí)問(wèn)題的工作過(guò)程。

2.數(shù)據(jù)流圖有四個(gè)基本成分組成:

⑴數(shù)據(jù)流:

⑵加工:

⑶文件:或

⑷數(shù)據(jù)流的源點(diǎn)和終點(diǎn):

13學(xué)生學(xué)生8收集1分類4查詢3付款7復(fù)審2報(bào)名5注銷6產(chǎn)生發(fā)票函電注銷數(shù)據(jù)報(bào)名數(shù)據(jù)付款數(shù)據(jù)查詢數(shù)據(jù)付款單報(bào)名單回答通知單事務(wù)發(fā)票不合理不合理帳目課程學(xué)生學(xué)生課程帳目課程143.⑴數(shù)據(jù)流:由一組固定成分的數(shù)據(jù)組成。如:數(shù)據(jù)流“報(bào)名數(shù)據(jù)”由“姓名”、“年齡”、“性別”、“單位名”、“課程名”等成分組成。

①作用

②流向15④注意:

a.數(shù)據(jù)流與控制流不同。

b.數(shù)據(jù)流與物流不同。

16操作員檢查合理性卡片取下一張卡片合理卡片不合理記帳顧客提貨單貨物17⑵加工

①作用:反映對(duì)數(shù)據(jù)進(jìn)行某種操作

②命名:采用用戶習(xí)慣用的且反映加工含義的名字,并加上編號(hào)18⑶文件

①作用:暫時(shí)保存數(shù)據(jù)

②命名:適當(dāng)選擇,便于理解

③流向:加工與文件之間數(shù)據(jù)流向

⑷源點(diǎn)與終點(diǎn):反映數(shù)據(jù)的來(lái)源與歸宿194.由外向里畫(huà)數(shù)據(jù)流圖

20步驟:

⑴畫(huà)系統(tǒng)的輸入輸出

培訓(xùn)中心管理系統(tǒng)函電通知單21⑵畫(huà)系統(tǒng)內(nèi)部

將系統(tǒng)的輸入和輸出數(shù)據(jù)流用一連串加工連接起來(lái)。一般可以從輸入端逐步畫(huà)到輸出端,也可以從輸出端追溯到輸入端;加工應(yīng)處于數(shù)據(jù)流的組成或值發(fā)生變化的地方。

⑶畫(huà)加工的內(nèi)部

①如果加工內(nèi)部還有一些數(shù)據(jù)流,則可將這個(gè)加工用幾個(gè)子加工代替,并在子加工之間畫(huà)出這些數(shù)據(jù)流

②先為數(shù)據(jù)流命名再為加工命名22⑷忽略瑣碎的枝節(jié)

⑸隨時(shí)準(zhǔn)備重畫(huà)235.分層數(shù)據(jù)流圖

對(duì)于一個(gè)系統(tǒng),特別是一個(gè)較大的復(fù)雜系統(tǒng),一次性分解到位一般是不容易的,為了控制復(fù)雜性,SA方法采用了“分層”的技術(shù),逐層分解,有控制地逐步增加細(xì)節(jié)24§5.3數(shù)據(jù)詞典

數(shù)據(jù)詞典作用與一般詞典作用一致,是用來(lái)定義數(shù)據(jù)流圖中的各個(gè)成份的具體含義的,它以一種準(zhǔn)確的、無(wú)二義性的說(shuō)明方式為系統(tǒng)的分析、設(shè)計(jì)及維護(hù)提供了有關(guān)因素的一致的定義和詳細(xì)的描述。25一、詞典條目的各種類型

數(shù)據(jù)流、文件、數(shù)據(jù)項(xiàng)(數(shù)據(jù)流分量或數(shù)據(jù)元素)、加工,前三個(gè)條目構(gòu)成了數(shù)據(jù)詞典,加工類條目就是“小說(shuō)明”。261.數(shù)據(jù)流條目

①作用:定義某個(gè)數(shù)據(jù)流

②組成:列出該數(shù)據(jù)流的各組成數(shù)據(jù)項(xiàng)

例:報(bào)名單=姓名+單位名+年齡+性別+課程名

有些數(shù)據(jù)流的組成很復(fù)雜,要采用“由頂向下逐步分解”的方式來(lái)說(shuō)明即有的數(shù)據(jù)項(xiàng)意義不明確,那么就再定義其一下層數(shù)據(jù)項(xiàng),直到數(shù)據(jù)項(xiàng)的意義明確為止。

例:課程=課程名+教員+教材+課程表

課程表={星期幾+第幾節(jié)+教室}27③在定義數(shù)據(jù)流時(shí),通常借助一些簡(jiǎn)單的符號(hào),如:

+表示“與”或“和”即連接兩個(gè)分量。 順序型:以確定次序連接兩個(gè)或多個(gè)分量(組成數(shù)據(jù)流的三種基本類型之一)

=等價(jià)于或定義為

{}下限上限或下限{}上限表示將括號(hào)中的項(xiàng)重復(fù)若干次。重復(fù)型:把指定的分量重復(fù)零次或多次(組成數(shù)據(jù)流的三種基本類型之二)。

例:發(fā)票={貨名+數(shù)量+單價(jià)+總價(jià)}51

[|] 表示“或”。即選擇括號(hào)中的某一項(xiàng) 選擇型:從兩個(gè)或多個(gè)元素中選取一個(gè)(組成數(shù)據(jù)流的三種基本類型之三)

北京

例:在飛機(jī)訂票系統(tǒng)中,城市名=[北京|武漢|廣州]或城市名=武漢 廣州

( )表示“可選”,即括號(hào)中的項(xiàng)可能沒(méi)有 其實(shí)是{}10

282.文件條目

①作用:定義文件

②組成:列出文件記錄的組成數(shù)據(jù)項(xiàng)以及文件的組織方式。

定期帳目=帳號(hào)+戶名+地址+款額+存期

組織:按帳號(hào)遞增次序排序即在屬性“帳號(hào)”上建一個(gè)索引

293.數(shù)據(jù)項(xiàng)條目

①作用:定義某個(gè)數(shù)據(jù)項(xiàng)。大多數(shù)數(shù)據(jù)項(xiàng)較簡(jiǎn)單,不說(shuō)自明,無(wú)需定義,有些數(shù)據(jù)項(xiàng)的特殊含義需定義。

②組成:該數(shù)據(jù)項(xiàng)的值類型、允許值、峰值等。

例:帳號(hào)=00000~99999或00000…99999

存期=[1|2|3]或[1…3]

30二、詞典條目的實(shí)例

在這個(gè)數(shù)據(jù)詞典條目中,還只記錄了最基本的一些內(nèi)容,如組成,取值范圍,名稱,別名,組織,注釋等,除了這些內(nèi)容之外在數(shù)據(jù)詞典的條目中還可記錄象數(shù)據(jù)的數(shù)量,簡(jiǎn)述,峰值,以及數(shù)據(jù)的種種限制條件等。31§5.4小說(shuō)明

一、對(duì)加工進(jìn)行描述

1.原則:盡量做到對(duì)每個(gè)加工詳細(xì)描述,主要描述“做什么”,包括加工邏輯、激發(fā)條件、優(yōu)先級(jí)別、執(zhí)行頻率、出錯(cuò)處理等。

322.加工邏輯:用戶對(duì)加工的邏輯要求,體現(xiàn)在輸入數(shù)據(jù)流與輸出數(shù)據(jù)流之間的邏輯關(guān)系。如:“開(kāi)發(fā)票”加工

加工邏輯:是輸出數(shù)據(jù)流“發(fā)票”和輸入數(shù)據(jù)流“訂貨單”、文件“價(jià)目”之間的邏輯關(guān)系。

333.描述加工邏輯的方法

自然語(yǔ)言,半自動(dòng)化方式,形式化方式

⑴自然語(yǔ)言:用通常的語(yǔ)言來(lái)描述事件。易理解但精確度差,需較大篇幅的文字組織處理。

⑵半形式化方式:結(jié)構(gòu)化語(yǔ)言、判定表、判定樹(shù)

結(jié)構(gòu)化(自然)語(yǔ)言。

⑶形式語(yǔ)言:嚴(yán)格精確,不易理解。34二、結(jié)構(gòu)化語(yǔ)言

1.結(jié)構(gòu)化英語(yǔ)

⑴語(yǔ)法:分成外層和內(nèi)層兩大層

①外層語(yǔ)法描述控制結(jié)構(gòu):順序、分支、循環(huán),這些控制結(jié)構(gòu)將加工中的各個(gè)操作連接起來(lái)

35用結(jié)構(gòu)化語(yǔ)言描述的控制結(jié)構(gòu)選擇結(jié)構(gòu)如果〈條件〉〈策略〉if〈condition〉〈policy〉如果〈條件〉

則〈“則”策略〉

否則〈“否則”策略〉if〈condition〉then〈“then”policy〉else〈“else”policy〉按下列情況選擇策略:情況1〈條件〉〈策略1〉

...情況n〈條件〉〈策略n〉switch:{case〈condition1〉〈case1policy〉

...

case〈conditionn〉〈casenpolicy〉}

循環(huán)結(jié)構(gòu)對(duì)每〈條件〉〈策略〉while〈condition〉〈policy〉重復(fù)以下

〈策略〉直至〈條件〉do〈policy〉while〈condition〉36②內(nèi)層語(yǔ)法沒(méi)有什么限制。一般地,具有以下特點(diǎn):

語(yǔ)態(tài):只有祈使句一種。

詞匯:名詞是詞典中的詞。避免使用一些空洞的詞、形容詞、副詞等??捎靡恍┻\(yùn)算符、關(guān)系符等。

372.結(jié)構(gòu)化漢語(yǔ)

語(yǔ)法:參考結(jié)構(gòu)化英語(yǔ)的思想,用帶有一定結(jié)構(gòu)的漢語(yǔ)來(lái)描寫(xiě)加工邏輯。

383.結(jié)構(gòu)化語(yǔ)言雖無(wú)確定語(yǔ)法公式,但分析員在書(shū)寫(xiě)時(shí)下面兩條原則應(yīng)牢記:

⑴盡可能精確、避免二義性

⑵盡可能簡(jiǎn)單,使用戶易于理解

39三、判定表

有一些不易用語(yǔ)言表達(dá)清楚或需要很大篇幅才能用語(yǔ)言表達(dá)清楚的加工。

例如,“檢查訂購(gòu)單”的加工邏輯是:“如果金額超過(guò)500元,又未過(guò)期,則發(fā)出批準(zhǔn)單和提貨單;如果金額超過(guò)500元,但過(guò)期了,則不發(fā)批準(zhǔn)單;如果金額低于500元,則不論是否過(guò)期都發(fā)出批準(zhǔn)單和提貨單,在過(guò)期的情況下還需發(fā)出通知單”。

敘述的不簡(jiǎn)潔,不易理解,如下表所示。40金額狀態(tài)>500未過(guò)期>500已過(guò)期≤500未過(guò)期≤500已過(guò)期發(fā)出批準(zhǔn)單√√√發(fā)出提貨單√√√發(fā)出通知單√41表示則一目了然,這個(gè)表格稱為判定表。

1.作用:為說(shuō)明條件和操作間的相互關(guān)系提供了一種規(guī)范的方式。

2.組成

條件樁條件條目操作樁操作條目42由四部分組成,其間用雙線條或粗線條分開(kāi)。

⑴條件樁(條件類別):列出決定一組條件的對(duì)象。如:金額狀態(tài)

⑵條件條目(條件組合):列出各種可能的條件組合。如:>500未過(guò)期,>500已過(guò)期等四項(xiàng)

⑶操作樁:列出所有的操作或?qū)ζ涞某橄蟆H纾喊l(fā)出批準(zhǔn)單,發(fā)出提貨單、發(fā)出通知單三項(xiàng)

⑷操作條目(操作執(zhí)行):列出在對(duì)應(yīng)的條件組合下所選的操作。如:√43四、判定樹(shù)

判定樹(shù)本質(zhì)上與判定表是一樣的,只不過(guò)判定樹(shù)是用圖形方式描述加工邏輯,特點(diǎn)是結(jié)構(gòu)清晰,易讀易懂。檢查訂購(gòu)單金額>500金額≤500已過(guò)期已過(guò)期未過(guò)期未過(guò)期發(fā)出批準(zhǔn)單、提貨單發(fā)出批準(zhǔn)單、提貨單發(fā)出批準(zhǔn)單、提貨單和通知單44

到目前為止,可用語(yǔ)言、表格、圖形等多種形式描述加工邏輯,也可將它們結(jié)合使用。已經(jīng)具備了構(gòu)造一部詞典的技術(shù)了,下面討論一下實(shí)現(xiàn)一部詞典的步驟。

45五、詞典的實(shí)現(xiàn)

1.為每一個(gè)要定義的名字準(zhǔn)備一張卡片

2.在卡片上寫(xiě)上這個(gè)名字及其類型(即數(shù)據(jù)流、

溫馨提示

  • 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)論