L-第三章 需求分析.ppt_第1頁(yè)
L-第三章 需求分析.ppt_第2頁(yè)
L-第三章 需求分析.ppt_第3頁(yè)
L-第三章 需求分析.ppt_第4頁(yè)
L-第三章 需求分析.ppt_第5頁(yè)
已閱讀5頁(yè),還剩119頁(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)介

軟件工程 03章需求分析 2 引言1用戶描述的可能不是他想要的 對(duì)用戶的描述每個(gè)人有不同的理解 3 引言2 開(kāi)發(fā)人員和用戶之間的鴻溝 從前有一家汽車(chē)廠 想為年輕人設(shè)計(jì)一款新車(chē)型 企劃及設(shè)計(jì)部討論了許久始終找不到感覺(jué) 于是對(duì)25 35歲的年輕人進(jìn)行問(wèn)券調(diào)查 大伙辛苦了三個(gè)月 完成了一萬(wàn)份的調(diào)查記錄 市場(chǎng)部門(mén)摘要了調(diào)查內(nèi)容反映給設(shè)計(jì)部門(mén) 重點(diǎn) 省油 外型酷 顏色鮮艷 馬力足等 設(shè)計(jì)部門(mén)有了靈感開(kāi)始設(shè)計(jì) 半年過(guò)去了 設(shè)計(jì)部門(mén)很得意的把雛型車(chē)展示給大伙看 這個(gè)時(shí)候 CEO 市場(chǎng)部 企劃部 都傻眼了 CEO開(kāi)口說(shuō) 為什么這車(chē)沒(méi)有 輪子 設(shè)計(jì)部回答 市場(chǎng)部給的調(diào)查報(bào)告里 沒(méi)說(shuō)要有輪子市場(chǎng)部回說(shuō) 問(wèn)卷調(diào)查中 顧客沒(méi)有提到要有輪子企劃部生氣的說(shuō) 你們都是白癡啊 汽車(chē)要有輪子是基本常識(shí) 你們都不知道嗎 就這樣現(xiàn)場(chǎng)吵翻天了 注 原文地址 4 引言3 做需求要很細(xì) 很專業(yè) 很有經(jīng)驗(yàn) 男孩反問(wèn) 是無(wú)聲槍么 不是 槍聲有多大 80 100分貝 那就是說(shuō)會(huì)震的耳朵疼 是 您確定那只鳥(niǎo)真的被打死啦 確定 鳥(niǎo)里有沒(méi)有聾子 沒(méi)有 沒(méi)有關(guān)在籠子里的 沒(méi)有 旁邊樹(shù)上還有其他鳥(niǎo) 沒(méi)有 有殘疾或餓的飛不動(dòng)的鳥(niǎo) 沒(méi)有 算不算懷孕肚子里的小鳥(niǎo) 都是公的 打鳥(niǎo)的人眼里有沒(méi)有花 沒(méi)有 有沒(méi)有傻的不怕死的 都怕死 會(huì)不會(huì)一槍打死兩只以上 不會(huì) 所有的鳥(niǎo)都可以自由活動(dòng)么 完全可以 它們受到驚嚇時(shí)不會(huì)互相撞上 不會(huì) 學(xué)生滿懷信心的回答 打死的鳥(niǎo)要是掛在樹(shù)上沒(méi)掉下來(lái) 那么就剩一只 如果掉下來(lái) 就一只不剩 某日老師在課堂上想考考學(xué)生們的智商 就問(wèn)一個(gè)男孩 樹(shù)上有十只鳥(niǎo) 開(kāi)槍打死一只 還剩幾只 5 結(jié)論 需求具有主觀性 二義性 多變性 模糊性 需求分析要求很專業(yè) 很仔細(xì) 很有經(jīng)驗(yàn) 需求分析是確定系統(tǒng)應(yīng)具備的功能 是其他所有工作的基礎(chǔ) 因此非常重要 需求導(dǎo)致整個(gè)項(xiàng)目失敗占的比例非常大 6 第三章軟件需求分析 需求分析的任務(wù)與用戶溝通獲取需求的方法分析建模與規(guī)格說(shuō)明實(shí)體一聯(lián)系圖數(shù)據(jù)規(guī)范化狀態(tài)轉(zhuǎn)換圖其他圖形工具驗(yàn)證軟件需求小結(jié)習(xí)題 7 教學(xué)要求 教學(xué)目的 了解需求分析的任務(wù)和步驟 評(píng)審標(biāo)準(zhǔn)和過(guò)程 掌握基本技術(shù) 理解需求規(guī)格說(shuō)明書(shū)的作用與組成 教學(xué)重點(diǎn) 基本技術(shù) 需求規(guī)格說(shuō)明書(shū)的作用與組成 教學(xué)難點(diǎn) 基本技術(shù) 8 需求分折簡(jiǎn)介 軟件需求指用戶對(duì)所開(kāi)發(fā)的軟件在功能 性能 環(huán)境 可靠性等各方面的要求 需求分析主要回答待開(kāi)發(fā)的系統(tǒng)必須 做什么 并用 需求規(guī)格說(shuō)明書(shū) 的形式準(zhǔn)確 詳細(xì) 規(guī)范地表達(dá)出來(lái) 9 注意 需求分析階段 系統(tǒng)分析員的主要關(guān)注點(diǎn)是 做什么 what 不是 怎樣做 how 需求分析階段 系統(tǒng)分析員應(yīng)該給出軟件求規(guī)格書(shū) 10 3 1需求分析的任務(wù) 四項(xiàng)主要任務(wù) 1 確定對(duì)系統(tǒng)的綜合要求2 分析系統(tǒng)的數(shù)據(jù)要求3 導(dǎo)出系統(tǒng)的邏輯模型4 修正系統(tǒng)開(kāi)發(fā)計(jì)劃 11 提問(wèn)并思考 如果你是一個(gè)用戶 你會(huì)對(duì)將要開(kāi)發(fā)的軟件有哪些要求 12 3 1 1確定對(duì)系統(tǒng)的綜合要求 功能需求 指定系統(tǒng)必須提供的服務(wù) 性能需求 指定系統(tǒng)必須滿足的定時(shí)約束或容量約束等 可靠性和可用性需求 應(yīng)定量指定 出錯(cuò)處理需求 指環(huán)境錯(cuò)誤 非系統(tǒng)本身的錯(cuò)誤 接口需求 常見(jiàn)的接口需求 用戶接口需求 硬件接口需求 軟件接口需求 通信接口需求 13 約束 常見(jiàn)的約束 精度 工具和語(yǔ)言約束 設(shè)計(jì)約束 應(yīng)該使用的標(biāo)準(zhǔn) 應(yīng)該使用的硬件平臺(tái) 逆向需求 指定系統(tǒng)不應(yīng)該做什么 將來(lái)可能提出的要求 14 3 1 2分析系統(tǒng)的數(shù)據(jù)要求 提問(wèn)并思考 如果你是設(shè)計(jì)者 除了上述需求以外 你覺(jué)得還需要得到哪些要求 答 軟件系統(tǒng)本質(zhì)上是信息處理系統(tǒng) 要考慮數(shù)據(jù)和數(shù)據(jù)處理的問(wèn)題 15 對(duì)系統(tǒng)數(shù)據(jù)的分析 建立數(shù)據(jù) 3 4節(jié) 描繪數(shù)據(jù)結(jié)構(gòu) 3 7節(jié) 規(guī)范化 3 5節(jié) 16 3 1 3導(dǎo)出系統(tǒng)的邏輯模型 用數(shù)據(jù)流圖 實(shí)體一聯(lián)系圖 狀態(tài)轉(zhuǎn)換圖 數(shù)據(jù)字典和主要的處理算法描述這個(gè)邏輯模型 3 1 4修正系統(tǒng)開(kāi)發(fā)計(jì)劃根據(jù)在分析過(guò)程中獲得的對(duì)系統(tǒng)的更深入更具體的了解 可以比較準(zhǔn)確地估計(jì)系統(tǒng)的成本和進(jìn)度 修正以前制定的開(kāi)發(fā)計(jì)劃 17 圖 軟件需求分析的通信途徑 分析小組成員主要包括領(lǐng)域?qū)<?系統(tǒng)分析員 客戶訪談問(wèn)題分析與確認(rèn) 18 與用戶溝通的方法 1 訪談2 面向數(shù)據(jù)流自頂向下求精3 簡(jiǎn)易的應(yīng)用規(guī)格說(shuō)明技術(shù)4 快速建立軟件原型 19 3 2 1訪談 分正式和非正式訪談 可采用調(diào)查表形式可使用情景分析技術(shù) 20 例 某出版社系統(tǒng)調(diào)查表 21 3 2面向數(shù)據(jù)流自頂向下求精 結(jié)構(gòu)化分析方法的實(shí)質(zhì) 進(jìn)一步細(xì)化可行性研究階段獲得到高層數(shù)據(jù)流圖 包括建立 詳細(xì)的數(shù)據(jù)流圖 描繪數(shù)據(jù)在軟件系統(tǒng)內(nèi)從輸入移動(dòng)到輸出的過(guò)程中所經(jīng)受到變換 數(shù)據(jù)字典 定義數(shù)據(jù)流圖中包含的元素 實(shí)體關(guān)系 ER 圖 從用戶角度描述數(shù)據(jù) IPO圖 描述數(shù)據(jù)流圖中處理框的功能和算法 22 面向數(shù)據(jù)流自頂向下求精過(guò)程 23 3 2 3簡(jiǎn)易的應(yīng)用規(guī)格說(shuō)明技術(shù) 一種面向團(tuán)隊(duì)的需求收集法 提倡用戶與開(kāi)發(fā)者密切合作 共同標(biāo)識(shí)問(wèn)題 提出解決方案要素 商討不同方案并指定基本需求 24 3 2 4快速建立軟件原型 快速原形就是快速建立起來(lái)的旨在演示目標(biāo)系統(tǒng)主要功能的可運(yùn)行的程序 要點(diǎn) 實(shí)現(xiàn)用戶看得見(jiàn)的功能 省略目標(biāo)系統(tǒng) 隱含 功能 25 3 2 4快速建立軟件原型 建立和修改原型的方法和工具 1 第四代技術(shù) 包括眾多數(shù)據(jù)庫(kù)查詢和報(bào)表語(yǔ)言 程序和應(yīng)用系統(tǒng)生成器以及其他非常高級(jí)的非過(guò)程語(yǔ)言 能快速生成可執(zhí)行的代碼 2 可重用的軟件構(gòu)件 使用一組已有的軟件構(gòu)件 也稱為組件 來(lái)裝配 而不是從頭構(gòu)造 原型 3 形式化規(guī)格說(shuō)明和原型環(huán)境 在交互式環(huán)境下 用自動(dòng)工具把基于形式語(yǔ)言的規(guī)格說(shuō)明翻譯成可執(zhí)行的程序代碼 26 3 3分析建模與規(guī)格說(shuō)明 3 3 1分析建模什么是模型 為了理解事物而對(duì)事物做出的一種抽象 是對(duì)事物的一種無(wú)歧義的書(shū)面描述 模型通常由一組圖形符號(hào)和組織這些符號(hào)的規(guī)則組成 27 模型的作用 在建模過(guò)程中了解系統(tǒng) 通過(guò)抽象降低復(fù)雜性 有助于回憶所有的細(xì)節(jié) 有助于開(kāi)發(fā)小組間的交流 有助于與用戶的交流 為系統(tǒng)的維護(hù)提供文檔 28 例 結(jié)構(gòu)化分析方法建立的需求模型 結(jié)構(gòu)化分析 StructuredAnalysis SA 是面向數(shù)據(jù)流進(jìn)行分析的方法 主要建立以下幾種模型 實(shí)體關(guān)系圖 Entity RelationshipDiagram E R圖 來(lái)創(chuàng)建數(shù)據(jù)模型 描述系統(tǒng)中所有重要的數(shù)據(jù)對(duì)象 數(shù)據(jù)流圖 DataFlowDiagram DFD 用來(lái)創(chuàng)建功能模型 描述了信息流和數(shù)據(jù)轉(zhuǎn)換 狀態(tài)轉(zhuǎn)換圖 State TransitionDiagram STD 用來(lái)創(chuàng)建行為模型 描述系統(tǒng)狀態(tài)如何響應(yīng)外部事件 而進(jìn)行轉(zhuǎn)換 29 例 面向?qū)ο蠓制矸椒?OOA 所建立的摸型 對(duì)象模型 Objectmodel 定義實(shí)體 描述系統(tǒng)的靜態(tài)結(jié)構(gòu) 定義 對(duì)誰(shuí)做 動(dòng)態(tài)模型 Dynamicmodel 描述對(duì)象之間的交互過(guò)程 規(guī)定 何時(shí)做 功能模型 Functionalmodel 描述內(nèi)部數(shù)據(jù)的處理 指明系統(tǒng)應(yīng) 做什么 30 軟件需求規(guī)格說(shuō)明 軟件需求規(guī)格說(shuō)明書(shū) 是需求分析階段最主要的文檔 對(duì)目標(biāo)進(jìn)行完善和補(bǔ)充 并寫(xiě)出完整的需求說(shuō)明 為消除自然語(yǔ)言中可能存在的不一致 歧義 含糊 不完整及抽象層次混亂等問(wèn)題 有主張用形式化方法描述用戶對(duì)軟件系統(tǒng)的需求 例 GB8567 88計(jì)算機(jī)軟件產(chǎn)品開(kāi)發(fā)文件編制指南 31 結(jié)構(gòu)化分析方法 StructuredAnalysis SA 面向數(shù)據(jù)流進(jìn)行需求分析的方法適合于數(shù)據(jù)處理類型軟件的需求分析 32 結(jié)構(gòu)化分折模型的組成結(jié)構(gòu) 33 3 4實(shí)體一聯(lián)系圖 實(shí)體一聯(lián)系圖 E一R圖 描繪系統(tǒng)的數(shù)據(jù)關(guān)系 分析實(shí)體一聯(lián)系有助于對(duì)業(yè)務(wù)或系統(tǒng)數(shù)據(jù)組成的理解和交互 ER圖中包含了實(shí)體 數(shù)據(jù)對(duì)象 關(guān)系和屬性三種基本成分一 基本概念 1 實(shí)體 客觀世界中存在的 可區(qū)分的事物 屬性 實(shí)體或數(shù)據(jù)對(duì)象所具有的性質(zhì) 34 數(shù)據(jù)對(duì)象 實(shí)體 對(duì)軟件必須理解的復(fù)合信息的表示 所謂復(fù)合信息是指具有一系列不同性質(zhì)或?qū)傩缘氖挛?因此僅有單個(gè)值的事物 例如姓名 不是數(shù)據(jù)對(duì)象 數(shù)據(jù)對(duì)象可能是 一個(gè)外部實(shí)體 例如生產(chǎn)或消費(fèi)信息的任何事物 一個(gè)事物 例如一份報(bào)告 一次行為 例如一個(gè)電話呼叫 一個(gè)事件 例如一次警報(bào) 一個(gè)角色 例如教師 一個(gè)組織 例如學(xué)校教務(wù)處 一個(gè)地點(diǎn) 例如圖書(shū)館 一個(gè)結(jié)構(gòu) 例如一個(gè)目錄 35 一 基本概念 2 聯(lián)系 客觀事物之間的聯(lián)系 聯(lián)系分為三種 一對(duì)一 1 1 班級(jí)和班長(zhǎng)一對(duì)多聯(lián)系 1 N 班級(jí)和學(xué)生 系與教師 學(xué)生與宿舍多對(duì)多聯(lián)系 M N 課程與學(xué)生 教師和課程 學(xué)生和學(xué)會(huì)二 E一R圖的結(jié)構(gòu)三種基本元素 36 例 教學(xué)E R圖 37 例 倉(cāng)庫(kù) 職工 零件和供應(yīng)商的ER圖 38 三 如何建立實(shí)體一聯(lián)系圖 1 在需求收集的過(guò)程中 列出應(yīng)用軟件或業(yè)務(wù)過(guò)程涉及到的所有 事物 將其演化成數(shù)據(jù)對(duì)象 2 一次考慮一個(gè)對(duì)象 定義這個(gè)對(duì)象和其他對(duì)象之間是否存在連接 3 如果存在連接 應(yīng)創(chuàng)建一個(gè)或多個(gè)關(guān)系 4 對(duì)每一個(gè)關(guān)系 確定其關(guān)聯(lián)類型 5 重復(fù)步驟 2 到步驟 4 直到定義了所有關(guān)系 6 定義每個(gè)實(shí)體的屬性 7 形式化并復(fù)審實(shí)體關(guān)系圖 8 重復(fù)步驟 1 到 7 直到數(shù)據(jù)建模完成 39 2 4數(shù)據(jù)流圖 DFD DataFlowDiagram 描述數(shù)據(jù)處理過(guò)程的工具 通過(guò)圖形的方法 從數(shù)據(jù)傳遞和數(shù)據(jù)處理的角度 刻畫(huà)數(shù)據(jù)流從輸入到輸出的移動(dòng)變換過(guò)程 數(shù)據(jù)流三個(gè)重要屬性 數(shù)據(jù)流名字 數(shù)據(jù)組成 流向 40 2 4 1符號(hào) 1 說(shuō)明 用圖形符號(hào)以黑盒子形式描繪組成系統(tǒng)的每個(gè)部件 程序 文檔 數(shù)據(jù)庫(kù) 人工過(guò)程等 表達(dá)數(shù)據(jù)在系統(tǒng)各部件之間流動(dòng)的情況 41 符號(hào) 2 42 例1 描述銀行取款過(guò)程的數(shù)據(jù)流圖 43 應(yīng)該注意的幾個(gè)問(wèn)題 適當(dāng)?shù)孛?詳見(jiàn)教材p45 數(shù)據(jù)存儲(chǔ) 代表數(shù)據(jù)靜止?fàn)顟B(tài) 數(shù)據(jù)流 代表數(shù)據(jù)的運(yùn)動(dòng)狀態(tài) 注意數(shù)據(jù)流與控制流的區(qū)別 通常數(shù)據(jù)流圖中忽略出錯(cuò)處理 打開(kāi)或關(guān)閉文件之類的事務(wù)處理 若數(shù)據(jù)的源點(diǎn)和終點(diǎn)相同 則應(yīng)該有兩個(gè)箭頭和這個(gè)數(shù)據(jù)源 終 點(diǎn)相連 或重復(fù)畫(huà)一個(gè)源 終 點(diǎn) 44 數(shù)據(jù)流圖的層次結(jié)構(gòu) 對(duì)于大型系統(tǒng) 往往采用自頂向下逐層分解的方法 用分層數(shù)據(jù)流圖表示所有數(shù)據(jù)流和加工 對(duì)任何一個(gè)數(shù)據(jù)流圖來(lái)說(shuō) 它的上層圖為父圖 在它的下一層的圖為子圖 45 分層數(shù)據(jù)流圖 46 說(shuō)明 在多層數(shù)據(jù)流圖中 頂層流圖僅包含一個(gè)數(shù)據(jù)處理 它代表被開(kāi)發(fā)系統(tǒng) 它的輸入流是該系統(tǒng)的輸入數(shù)據(jù) 輸出流是系統(tǒng)所輸出數(shù)據(jù)底層流圖是指其數(shù)據(jù)處理不需再做分解的數(shù)據(jù)流圖 它處在最底層中間層流圖則表示對(duì)其上層父圖的細(xì)化 它的每一數(shù)據(jù)處理可能繼續(xù)細(xì)化 形成子圖 47 注意的原則 1 數(shù)據(jù)流圖上所有圖形符號(hào)只限于前述四種基本圖形元素 數(shù)據(jù)流圖的主圖必須包括前述四種基本元素 缺一不可 數(shù)據(jù)流圖的主圖上的數(shù)據(jù)流必須封閉在外部實(shí)體之間 每個(gè)數(shù)據(jù)處理至少有一個(gè)輸入數(shù)據(jù)流和一個(gè)輸出數(shù)據(jù)流 在數(shù)據(jù)流圖中 需按層給數(shù)據(jù)處理框編號(hào) 編號(hào)表明該處理所處層次及上下層的親子關(guān)系 48 注意的原則 2 規(guī)定任何一個(gè)數(shù)據(jù)流子圖必須與它上一層的一個(gè)數(shù)據(jù)加工對(duì)應(yīng) 兩者的輸入數(shù)據(jù)流和輸出數(shù)據(jù)流必須一致 此即父圖與子圖的平衡 可以在數(shù)據(jù)流圖中加入物質(zhì)流 幫助用戶理解數(shù)據(jù)流圖 圖上每個(gè)元素都必須有名字 數(shù)據(jù)流圖中不可夾帶控制流 初畫(huà)時(shí)可以忽略瑣碎的細(xì)節(jié) 以集中精力于主要數(shù)據(jù)流 49 例2 結(jié)構(gòu)化分析方法步驟示例 商場(chǎng)業(yè)務(wù)處理系統(tǒng)假設(shè)某商場(chǎng)的經(jīng)營(yíng)業(yè)務(wù) 商場(chǎng)進(jìn)貨時(shí) 先發(fā)訂貨單給供應(yīng)商 供應(yīng)商收到訂貨單 將商品發(fā)給商場(chǎng) 商場(chǎng)貨到付款 供應(yīng)商收款后 將收據(jù)發(fā)給商場(chǎng) 當(dāng)顧客到商場(chǎng)采購(gòu)商品時(shí) 先下購(gòu)物訂單 商場(chǎng)查詢庫(kù)存中是否有此種商品 若有則發(fā)貨給顧客 若沒(méi)有 則向供應(yīng)商訂貨 貨到之后再銷(xiāo)售給顧客 顧客收到貨物之后付款 商場(chǎng)開(kāi)收據(jù)給顧客 商場(chǎng)對(duì)貨物的管理方面要求知道每種貨物詳細(xì)的銷(xiāo)售情況 50 分析業(yè)務(wù)流程 訂貨過(guò)程 51 分析業(yè)務(wù)流程 采購(gòu)過(guò)程 52 第一步 繪制頂層數(shù)據(jù)流圖 1 基本思想 任何計(jì)算機(jī)系統(tǒng)都是有若干個(gè)數(shù)據(jù)源 終 點(diǎn)加上一個(gè)事務(wù)處理組成 首先從問(wèn)題的描述中提取數(shù)據(jù)流圖中的源 終 點(diǎn) 數(shù)據(jù)處理 數(shù)據(jù)流和數(shù)據(jù)存儲(chǔ)四種成份 分析源 終 點(diǎn) 分析數(shù)據(jù)處理 分析數(shù)據(jù)流和數(shù)據(jù)存儲(chǔ) 53 分析數(shù)據(jù)源點(diǎn)和終點(diǎn) 如果將商場(chǎng)的購(gòu) 銷(xiāo)業(yè)務(wù)系統(tǒng)看成一個(gè)整體 則外部的與這個(gè)系統(tǒng)有交往的對(duì)象 機(jī)構(gòu) 人員 或外部系統(tǒng) 是 供應(yīng)商 和 顧客 二者是商場(chǎng)購(gòu)銷(xiāo)系統(tǒng)源點(diǎn)和終點(diǎn) 54 分析源點(diǎn) 終點(diǎn)與商場(chǎng)之間的數(shù)據(jù)流 數(shù)據(jù)流方向分別是 供應(yīng)商方給商場(chǎng) 發(fā)貨單 貨款收據(jù)顧客給商場(chǎng) 訂單 貨款商場(chǎng)給供貨商 訂貨單 貨款商場(chǎng)給顧客 貨物 收據(jù) 55 分析數(shù)據(jù)存儲(chǔ) 需要存儲(chǔ)的數(shù)據(jù)分別是庫(kù)存信息暫存訂單 缺貨訂單 采購(gòu)訂單商品銷(xiāo)售歷史資金帳目 56 第一步 繪制頂層數(shù)據(jù)流圖 2 57 第一步 繪制頂層數(shù)據(jù)流圖 3 第一步 繪制頂層數(shù)據(jù)流圖 3 58 第二步 將頂層數(shù)據(jù)流圖細(xì)化 經(jīng)過(guò)分析 商店業(yè)務(wù)處理的主要數(shù)據(jù)處理是銷(xiāo)售 采購(gòu) 會(huì)計(jì)三大數(shù)據(jù)處理 三者之間的數(shù)據(jù)流 59 需要存儲(chǔ)的數(shù)據(jù)有 60 61 DFD L2 2 采購(gòu)細(xì)化 62 DFD L2 1 銷(xiāo)售細(xì)化 63 數(shù)據(jù)詞典 DD datadictionary DD是對(duì)數(shù)據(jù)流圖中包含的所有元素的定義的集合 使得每個(gè)圖形元素的名字都有一個(gè)精確的 嚴(yán)格的定義 數(shù)據(jù)流圖和詞典結(jié)合在一起 能清楚地表達(dá)數(shù)據(jù)處理的要求 構(gòu)成了 需求說(shuō)明書(shū) 64 1數(shù)據(jù)字典的內(nèi)容 主要描述數(shù)據(jù)流數(shù)據(jù)元素?cái)?shù)據(jù)存儲(chǔ)數(shù)據(jù)處理 65 2定義數(shù)據(jù)的方法 66 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ù)量 流通量 67 舉例 68 數(shù)據(jù)流定義 69 2 定義數(shù)據(jù)元素 數(shù)據(jù)元素 數(shù)據(jù)項(xiàng) 指數(shù)據(jù)處理中最小的 不可再分的單位 描述包括 數(shù)據(jù)元素名 類型 數(shù)字 離散值 連續(xù)值 文字 編碼類型 長(zhǎng)度 取值范圍 相關(guān)的數(shù)據(jù)元素及數(shù)據(jù)結(jié)構(gòu) 70 數(shù)據(jù)元素定義舉例 1 71 數(shù)據(jù)元素定義舉例 2 72 數(shù)據(jù)元素定義舉例 3 73 數(shù)據(jù)元素定義舉例 4 74 3 定義數(shù)據(jù)存儲(chǔ) 數(shù)據(jù)文件名 簡(jiǎn)述 存放的是什么數(shù)據(jù)輸入數(shù)據(jù) 輸出數(shù)據(jù) 數(shù)據(jù)文件組成 數(shù)據(jù)結(jié)構(gòu)存儲(chǔ)方式 順序 直接 關(guān)鍵碼存取頻率 75 數(shù)據(jù)存儲(chǔ)定義舉例 1 76 77 78 4 定義數(shù)據(jù)處理 數(shù)據(jù)處理定義舉例 1 79 數(shù)據(jù)處理定義舉例 2 80 加工邏輯詞條說(shuō)明舉例 3 81 源點(diǎn)及匯 終 點(diǎn)詞條描述 名稱 外部實(shí)體名簡(jiǎn)要描述 什么外部實(shí)體有關(guān)數(shù)據(jù)流 數(shù)目 82 數(shù)據(jù)規(guī)范化 1 第一范式每個(gè)屬性值都必須是原子值 2 第二范式滿足第一范式條件 而且每個(gè)非關(guān)鍵字屬性都由整個(gè)關(guān)鍵字決定 3 第三范式符合第二范式的條件 每個(gè)非關(guān)鍵字屬性都僅由關(guān)鍵字決定 而且一個(gè)非關(guān)鍵字屬性不能僅僅是對(duì)另一個(gè)非關(guān)鍵字屬性的進(jìn)一步描述 范式低 冗余大 范式高 分解得細(xì) 冗余小 但處理過(guò)程復(fù)雜 83 狀態(tài)轉(zhuǎn)換圖 STD 為了直觀地分析系統(tǒng)的動(dòng)作 從特定的視點(diǎn)出發(fā)描述系統(tǒng)的行為 需要采用動(dòng)態(tài)分析的方法 狀態(tài)轉(zhuǎn)換圖是一種常用的動(dòng)態(tài)分析方法 是描述系統(tǒng)的狀態(tài)如何響應(yīng)外部信號(hào) 而進(jìn)行轉(zhuǎn)換的一種圖形表示 84 1 狀態(tài) 指任何可以被觀察到的系統(tǒng)行為模式 一個(gè)狀態(tài)代表系統(tǒng)的一種行為模式 主要有 初態(tài) 終態(tài)和中間狀態(tài) 一個(gè)狀態(tài)圖中 只能有一個(gè)初態(tài) 但可以有0 多個(gè)終態(tài) 85 2 事件 某個(gè)特定時(shí)刻發(fā)生的事情 它是對(duì)引起系統(tǒng)做動(dòng)作或 和 從一個(gè)狀態(tài)轉(zhuǎn)換到另一個(gè)狀態(tài)的外界事情的抽象 86 狀態(tài)轉(zhuǎn)換圖符號(hào) 活動(dòng)表語(yǔ)法 事件名 參數(shù)表 動(dòng)作表達(dá)式常用事件名 Entry Exit Do動(dòng)作表達(dá)式 應(yīng)做的具體動(dòng)作事件表達(dá)式 觸發(fā)狀態(tài)轉(zhuǎn)換的事件 語(yǔ)法 事件說(shuō)明 守衛(wèi)條件 動(dòng)作表達(dá)式 其中 事件說(shuō)明的語(yǔ)法 事件名 參數(shù)表 87 電話系統(tǒng)的狀態(tài)圖 電話系統(tǒng)的狀態(tài)圖 電話系統(tǒng)的狀態(tài)圖 88 其他圖形工具 層次方框圖 89 IPO圖 90 驗(yàn)證軟件需求 問(wèn) 從哪些方面驗(yàn)證軟件需求的正確性 如何驗(yàn)證 1 一致性自然語(yǔ)言書(shū)寫(xiě)的需求說(shuō)明 只能用人工方法驗(yàn)證 形式化方法定義的可以借助驗(yàn)證工具2 完整性需要用戶參與 合作 建立快速原型 3 現(xiàn)實(shí)性參照以往類似系統(tǒng) 進(jìn)行真或性能模擬4 有效性 91 比較完整的數(shù)據(jù)流圖例子 例 教務(wù)管理系統(tǒng)某校準(zhǔn)備開(kāi)發(fā)一個(gè)學(xué)生成績(jī)管理系統(tǒng) 在該系統(tǒng)中 教務(wù)人員錄入學(xué)生信息 課程信息和成績(jī)信息 學(xué)生可以隨時(shí)查詢自己所選課程的成績(jī) 由于學(xué)生成績(jī)屬于敏感信息 系統(tǒng)必須提供必要的安全措施以防非法存取 92 0層DFD分析 源點(diǎn)終點(diǎn) 教務(wù)人員 源點(diǎn) 學(xué)生 終點(diǎn) 數(shù)據(jù)處理 將系統(tǒng)當(dāng)成一個(gè)整體 學(xué)生成績(jī)管理 數(shù)據(jù)流 學(xué)生信息 課程信息和成績(jī) 教務(wù)人員錄入時(shí) 查詢請(qǐng)求 查詢結(jié)果 學(xué)生查詢時(shí) 數(shù)據(jù)文件 成績(jī)文件 學(xué)生文件 課程文件 93 第0層DFD圖 教務(wù)人員維護(hù)學(xué)生信息和課程信息 并登錄學(xué)生的選課成績(jī) 學(xué)生查詢自己的成績(jī)單 94 第1層DFD說(shuō)明 學(xué)生信息 是教務(wù)人員需要錄入的一個(gè)信息 因此加入一個(gè)加入 錄入學(xué)生信息 同樣得到 錄入課程信息 登記成績(jī) 兩個(gè)數(shù)據(jù)處理 另外 數(shù)據(jù)流 查詢請(qǐng)求 和 查詢結(jié)果 應(yīng)該由數(shù)據(jù)處理 查詢成績(jī) 來(lái)完成 95 第1層DFD說(shuō)明 對(duì)第0層DFD的加工 學(xué)生成績(jī)管理 進(jìn)行展開(kāi) 數(shù)據(jù)處理 錄入學(xué)生信息錄入課程信息登記學(xué)生成績(jī)查詢學(xué)生成績(jī)數(shù)據(jù)存儲(chǔ) 增加這些數(shù)據(jù)流對(duì)應(yīng)的數(shù)據(jù)存儲(chǔ) 即 學(xué)生 課程 和 成績(jī) 最后得到如圖所示的第1層DFD 96 第1層DFD圖 對(duì)第0層DFD的一個(gè) 學(xué)生成績(jī)管理 進(jìn)行展開(kāi) 97 第2層DFD說(shuō)明 繼續(xù)分解第1層DFD中的加工 查詢學(xué)生成績(jī) 數(shù)據(jù)處理 分解為 合法性檢查 和 查詢成績(jī) 數(shù)據(jù)文件 合法的查詢條件 98 第2層DFD圖對(duì)第1層DFD圖中的一個(gè)加工 查詢學(xué)生成績(jī) 進(jìn)行展開(kāi) 99 部分?jǐn)?shù)據(jù)字典 100 101 實(shí)例 圖書(shū)館圖書(shū)信息管理系統(tǒng) 102 需求 讀者來(lái)圖書(shū)館借書(shū) 可能先查詢館中的圖書(shū)信息 查詢可以按書(shū)名 作者 圖書(shū)編號(hào) 關(guān)鍵字查詢 如果查到則記下書(shū)號(hào) 交給流通組工作人員 等候辦理借書(shū)手續(xù) 如果該書(shū)已經(jīng)被全部借出 可做預(yù)訂登記 等待有書(shū)時(shí)被通知 如果圖書(shū)館沒(méi)有該書(shū)的記錄 可進(jìn)行缺書(shū)登記 辦理借書(shū)手續(xù)時(shí)先要出示圖書(shū)證 沒(méi)有圖書(shū)證則去圖書(shū)館辦公室申辦圖書(shū)證 如果借書(shū)數(shù)量超出規(guī)定 則不能繼續(xù)借閱 借書(shū)時(shí)流通組工作人員登記圖書(shū)證編號(hào) 圖書(shū)編號(hào) 借出時(shí)間和應(yīng)還書(shū)時(shí)間 103 當(dāng)讀者還書(shū)時(shí) 流通組工作人員根據(jù)圖書(shū)證編號(hào) 找到讀者的借書(shū)信息 查看是否超期 如果已經(jīng)超期 則處罰 如果圖書(shū)有破損 丟失 則進(jìn)行破損處罰 登記還書(shū)信息 做還書(shū)處理 同時(shí)查看是否有預(yù)訂登記 如果有則發(fā)出到書(shū)通知 圖書(shū)采購(gòu)人員進(jìn)行圖書(shū)采購(gòu)時(shí) 要注意合理采購(gòu) 如果有缺書(shū)登記則隨時(shí)進(jìn)行采購(gòu) 采購(gòu)到貨后 編目人員進(jìn)行驗(yàn)收 編目 上架 錄入圖書(shū)信息 發(fā)到書(shū)通知 如果圖書(shū)丟失或舊書(shū)淘汰 則將該書(shū)從書(shū)庫(kù)中清除 即圖書(shū)注銷(xiāo) 需求 續(xù) 104 以上是圖書(shū)管理系統(tǒng)的基本需求 經(jīng)過(guò)與圖書(shū)館工作人員反復(fù)交流 他們提出了下列建議 建議1 當(dāng)讀者借閱的圖書(shū)到期時(shí) 希望能夠提前以一個(gè)短信息或電子郵件方式提示讀者 建議2 讀者希望能夠?qū)崿F(xiàn)網(wǎng)上查詢和預(yù)訂圖書(shū) 建議3 應(yīng)用系統(tǒng)的各種參數(shù)設(shè)置最好是靈活的 由系統(tǒng)管理人員根據(jù)需要設(shè)定 例如 借閱量的上限 還書(shū)提示的時(shí)間 預(yù)訂圖書(shū)的保持時(shí)間等參數(shù) 需求 續(xù) 105 用戶給出的上述需求式一個(gè)比較簡(jiǎn)單的需求 沒(méi)有向我們前面介紹的那樣給出業(yè)務(wù)需求 用戶需求 遇到這種情況我們要進(jìn)一步與用戶溝通 了解系統(tǒng)的目標(biāo) 規(guī)模 范圍 不能自己想當(dāng)然確定 本例中用戶給出的系統(tǒng)目標(biāo)是實(shí)現(xiàn)讀者借還書(shū)的信息化 并且利用Internet網(wǎng)絡(luò)實(shí)現(xiàn)讀者與圖書(shū)館之間的互動(dòng)和圖書(shū)館的人性化管理 提高圖書(shū)的利用率 系統(tǒng)的規(guī)模較小 只涉及圖書(shū) 讀者 借還書(shū)的管理 相關(guān)的部門(mén)有采編部 流通部 辦公室 需求 續(xù) 106 描繪系統(tǒng)流程圖 107 系統(tǒng)0層數(shù)據(jù)流程圖 108 描述 本例中的數(shù)據(jù)源 終點(diǎn)有讀者 采編部 辦公室 流通部 讀者提供的主要信息是讀者號(hào) 書(shū)號(hào) 辦公室是為讀者分配讀者號(hào) 定義處罰規(guī)則 借還書(shū)規(guī)則 采編部提供新書(shū)信息 流通部實(shí)現(xiàn)借還書(shū)操作 產(chǎn)生借還書(shū)信息 109 讀者使用該系統(tǒng)進(jìn)行圖書(shū)信息查詢 讀者信息查詢 網(wǎng)上預(yù)訂圖書(shū) 所以應(yīng)該增加查詢功能和預(yù)訂圖書(shū)功能 采購(gòu)部的人員使用本系統(tǒng)完成圖書(shū)編目 新書(shū)信息發(fā)布功能 為此增加圖書(shū)編目和新書(shū)發(fā)布處理 流通部的工作人員使用本系統(tǒng)完成讀者借還書(shū)的事務(wù) 應(yīng)該為他們?cè)O(shè)置借書(shū) 還書(shū)處理 辦公室的人員負(fù)責(zé)讀者信息管理 罰款信息管理和系統(tǒng)的參數(shù)制定 為他們添加讀者信息管理 處罰信息管理 系統(tǒng)參數(shù)維護(hù)三個(gè)處理 下面應(yīng)該對(duì)圖書(shū)館信息管理系統(tǒng)這個(gè) 黑盒子 進(jìn)行逐步分解 細(xì)化數(shù)據(jù)流程圖 110 系統(tǒng)1層數(shù)據(jù)流程圖 111 三個(gè)問(wèn)題 一個(gè)是圖形元素的編號(hào)問(wèn)題 為了在進(jìn)行細(xì)化的過(guò)程中圖型元素保持原有的編號(hào) 我們?cè)趯?duì)圖形元素編號(hào)時(shí)應(yīng)該有規(guī)劃 以保證在的細(xì)化過(guò)程中便于插入新的圖型元素 另一個(gè)問(wèn)題是對(duì)于一個(gè)較大型的應(yīng)用系統(tǒng) 數(shù)據(jù)流程圖往往會(huì)很復(fù)雜 因此可以將一個(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)論