結(jié)構化需求分析方法_第1頁
結(jié)構化需求分析方法_第2頁
結(jié)構化需求分析方法_第3頁
結(jié)構化需求分析方法_第4頁
結(jié)構化需求分析方法_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

結(jié)構化分析(SA)方法結(jié)構化開發(fā)方法(StructuredDevelopingMethod) 是現(xiàn)有的軟件開發(fā)方法中最成熟,應用最廣泛的方法,主要特點是快速、自然和方便。結(jié)構化開發(fā)方法由結(jié)構化分析方法(SA法)、結(jié)構化設計方法(SD法)及結(jié)構化程序設計方法(SP法)構成的。結(jié)構化分析(StructuredAnalysis ,簡稱SA法)方法是面向數(shù)據(jù)流的需求分析方法,是70年代末由Yourdon,Constaintine 及DeMarco 等人提出和發(fā)展,并得到廣泛的應用。它適合于分析大型的數(shù)據(jù)處理系統(tǒng), 特別是企事業(yè)管理系統(tǒng)。SA法也是一種建模的活動,主要是根據(jù)軟件內(nèi)部的數(shù)據(jù)傳遞、變換關系,自頂向下逐層分解,描繪出滿足功能要求的軟件模型。1SA 法概述1.SA 法的基本思想結(jié)構化分析(StructuredAnalysis ,簡稱SA法)是面向數(shù)據(jù)流的需求分析方法,是70年代由Yourdon,Constaintine 及DeMarco 等人提出和發(fā)展,并得到廣泛的應用。結(jié)構化分析方法的基本思想是“分解”和“抽象”。精品文檔交流分解:是指對于一個復雜的系統(tǒng),為了將復雜性降低到可以掌握的程度, 可以把大問題分解成若干小問題,然后分別解決。圖4是自頂向下逐層分解的示意圖。頂層抽象地描述了整個系統(tǒng),底層具體地畫出了系統(tǒng)的每一個細節(jié),而中間層是從抽象到具體的逐層過渡。抽象:分解可以分層進行,即先考慮問題最本質(zhì)的屬性,暫把細節(jié)略去,以后再逐層添加細節(jié),直至涉及到最詳細的內(nèi)容,這種用最本質(zhì)的屬性表示一個自系統(tǒng)的方法就是“抽象”。2.SA 法的步驟⑴建立當前系統(tǒng)的“具體模型” ;系統(tǒng)的“具體模型”就是現(xiàn)實環(huán)境的忠實寫照,即將當前系統(tǒng)用 DFD圖描述出來。這樣的表達與當前系統(tǒng)完全對應,因此用戶容易理解。⑵抽象出當前系統(tǒng)的邏輯模型 ;精品文檔交流分析系統(tǒng)的“具體模型”,抽象出其本質(zhì)的因素,排除次要因素,獲得用DFD圖描述的當前系統(tǒng)的“邏輯模型”。⑶建立目標系統(tǒng)的邏輯模型 ;分析目標系統(tǒng)與當前系統(tǒng)邏輯上的差別,從而進一步明確目標系統(tǒng)“做什么”,建立目標系統(tǒng)的“邏輯模型” (修改后的DFD圖)。⑷為了對目標系統(tǒng)作完整的描述,還需要考慮人機界面和其它一些問題。3.SA 法的描述工具⑴分層的數(shù)據(jù)流圖⑵數(shù)據(jù)詞典⑶描述加工邏輯的結(jié)構化語言、判定表或判定樹。數(shù)據(jù)流圖數(shù)據(jù)流圖(DataFlowDiagram ,簡稱DFD)是描述系統(tǒng)中數(shù)據(jù)流程的圖形工具,它標識了一個系統(tǒng)的邏輯輸入和邏輯輸出, 以及把邏輯輸入轉(zhuǎn)換邏輯輸出所需的加工處理。1.數(shù)據(jù)流圖的圖符數(shù)據(jù)流圖有以下 4種基本圖形符號:精品文檔交流箭頭表示數(shù)據(jù)流,圓或橢圓表示加工。雙杠或者單杠表示數(shù)據(jù)存儲,矩形框表示數(shù)據(jù)的源點或終點,即外部實體。⑴數(shù)據(jù)流 是數(shù)據(jù)在系統(tǒng)內(nèi)傳播的路徑,由一組成固定的數(shù)據(jù)項組成。除了與數(shù)據(jù)存儲(文件)之間的數(shù)據(jù)流不用命名外,其余數(shù)據(jù)流都應該用名詞或名詞短語命名。數(shù)據(jù)流可以從加工流向加工,也可以從加工流向文件或從文件流向加工,也可以從源點流向加工或從加工流向終點。⑵加工也稱為數(shù)據(jù)處理,它對數(shù)據(jù)流進行某些操作或變換。 每個加工也要有名字,通常是動詞短語,簡明地描述完成什么加工。在分層的數(shù)據(jù)流圖中,加工還應有編號。⑶數(shù)據(jù)存儲 指暫時保存的數(shù)據(jù),它可以是數(shù)據(jù)庫文件或任何形式的數(shù)據(jù)組織。流向數(shù)據(jù)存儲的數(shù)據(jù)流可理解為寫入文件, 或查詢文件,從數(shù)據(jù)存儲流出的數(shù)據(jù)可理解為從文件讀數(shù)據(jù)或得到查詢結(jié)果。⑷數(shù)據(jù)源點和終點 是軟件系統(tǒng)外部環(huán)境中的實體 (包括人員、組織或其他軟件系統(tǒng)),統(tǒng)稱為外部實體。一般只出現(xiàn)在數(shù)據(jù)流圖的頂層圖中。還有一些輔助的圖例:精品文檔交流例1:畫出圖書預定系統(tǒng)的DFD圖?,F(xiàn)有一圖書預定系統(tǒng),接收由顧客發(fā)來的訂單,并對訂單進行驗證,驗證過程是根據(jù)圖書目錄檢查訂單的正確性,同時根據(jù)顧客檔案確定是新顧客還是老顧客,是否有信譽。經(jīng)過驗證的正確訂單,暫存放在待處理的訂單文件中。對訂單進行成批處理,根據(jù)出版社檔案,將訂單按照出版社進行分類匯總,并保存訂單存根,然后將匯總訂單發(fā)往各出版社。畫圖步驟是:⑴首先確定外部實體(顧客、出版社)及輸入、輸出數(shù)據(jù)流(訂單、出版社訂單)。⑵再分解頂層的加工(驗證訂單、匯總訂單)。⑶確定所使用的文件(圖書目錄文件、顧客檔案等 5個文件)。⑷用數(shù)據(jù)流將各部分連接起來,形成數(shù)據(jù)封閉。特別要注意的是:數(shù)據(jù)流圖不是傳統(tǒng)的流程圖或框圖,數(shù)據(jù)流也不是控制流。數(shù)據(jù)流圖是從數(shù)據(jù)的角度來描述一個系統(tǒng), 而框圖則是從對數(shù)據(jù)進行加工的工作人員的角度來描述系統(tǒng)。數(shù)據(jù)流圖中的箭頭是數(shù)據(jù)流,而框圖中的箭頭則是控制流,控制流表達的是程序執(zhí)行的次序。精品文檔交流下圖是培訓中心管理系統(tǒng)的數(shù)據(jù)流圖,由于只有一層,因此分解的加工較多不易理解,而且如果其中某個加工較復雜,例如編號為 3的加工“付款”和編號為7的加工“復審”仍很復雜,一時難以理解,如果不繼續(xù)分解下去,直到每個加工都足夠簡單易于理解為止,則會影響需求分析結(jié)果的可讀性。1.畫分層DFD圖的方法如圖2.8所示,如果系統(tǒng)規(guī)模較大,僅用一個 DFD圖難以描述,會使得系統(tǒng)變得復雜,且難以理解。為了降低系統(tǒng)的復雜性,采取“逐層分解”的技術,畫分層的DFD圖。畫分層DFD圖的一般原則是:“先全局后局部,先整體后細節(jié),先抽象后具體”。通常將這種分層的 DFD圖,分為頂層、中間層、底層。頂層圖說明了系統(tǒng)的邊界,即系統(tǒng)的輸入和輸出數(shù)據(jù)流,頂層圖只有一張。底層圖由一些不能再分解的加工組成,這些加工都已足夠簡單,稱為基本加工。在頂層和底層之間的是中間層。中間層的數(shù)據(jù)流圖描述了某個加工的分解, 而它的組成部分又要進一步分解。畫各層DFD圖時,應“由外向內(nèi)”。精品文檔交流畫分層DFD圖的具體步驟:⑴先確定系統(tǒng)范圍,畫出頂層的 DFD圖。⑵逐層分解頂層DFD圖,獲得若干中間層 DFD圖。⑶畫出底層的DFD圖。在畫分層數(shù)據(jù)流圖時,首先遇到的問題就是應該如何分解 ?不能夠一下子把一個加工分解成它所有的基本加工,一張圖中畫出過多的加工是使人難以理解的,但是如果每次只是將一個加工分解成兩個或三個加工, 又可能需要分解過多的層次,也會影響系統(tǒng)的可理解性。一個加工每次分解成多少個子加工才合適呢 ?精品文檔交流根據(jù)經(jīng)驗“最多不要超過7個”。統(tǒng)計結(jié)果證明,人們能有效地同時處理 7個或7個以下的問題,但當問題多于7個時,處理效果就會下降。當然也不能機械地應用,關鍵是要使數(shù)據(jù)流圖易于理解。同時還有幾條原則可供參考:分解應自然,概念上要合理、清晰。只要不影響數(shù)據(jù)流圖的“易理解性”,可以適當?shù)囟喾纸獬蓭撞糠郑?這樣分層圖的層數(shù)就可少些。一般來說,在上層可以分解得快些,而在中、下層則應分解得慢些,因為上層是一些綜合性的描述, “易理解性”相對地說不太重要。下節(jié)我們以一個實例來說明畫分層 DFD圖的方法。2分層DFD圖的改進分層數(shù)據(jù)流圖是一種比較嚴格又易于理解的描述方式, 它的頂層描繪了系統(tǒng)的總貌,底層畫出了系統(tǒng)所有的細部,而中間層則給出了從抽象到具體的逐步過渡。1.畫分層DFD圖的基本原則⑴.數(shù)據(jù)守恒與數(shù)據(jù)封閉原則精品文檔交流所謂數(shù)據(jù)守恒是指加工的輸入輸出數(shù)據(jù)流是否匹配, 即每一個加工既有輸入數(shù)據(jù)流又有輸出數(shù)據(jù)流。或者說一個加工至少有一個輸入數(shù)據(jù)流, 一個輸出數(shù)據(jù)流。⑵加工分解的原則自然性:概念上合理、清晰 ;均勻性:理想的分解是將一個問題分解成大小均勻的幾個部分 ;分解度:一般每一個加工每次分解最多不要超過 7個子加工,應分解到基本加工為止。⑶子圖與父圖的“平衡”父圖中某個加工的輸入輸出數(shù)據(jù)流應該同相應的子圖的輸入輸出相同(相對應),分層數(shù)據(jù)流圖的這種特點稱為子圖與父圖 “平衡”。例1考察下圖中子父圖的平衡精品文檔交流顯然,圖2.13中子圖與父圖不平衡。子圖是父圖中加工 2的分解,加工2有輸入數(shù)據(jù)流R和M,輸出數(shù)據(jù)流T,而子圖則只有一個輸入數(shù)據(jù)流 N,卻有兩個輸出數(shù)據(jù)流T與S。圖2.14中,子圖是父圖中加工 4的分解,雖然表面上加工4只有一個輸入數(shù)據(jù)流“訂貨單”,而子圖卻有三個輸入數(shù)據(jù)流,但是如果“訂貨單”是由“客戶”、“帳號”和“數(shù)量”三部分組成,即有如下數(shù)據(jù)條目:訂貨單=客戶+帳號+數(shù)量(2.2.5數(shù)據(jù)詞典),則子、父圖平衡。⑷合理使用文件當文件作為某些加工之間的交界面時, 文件必須畫出來,一旦文件作為數(shù)據(jù)流圖中的一個獨立成份畫出來了,那么它同其它成份之間的聯(lián)系也應同時表達出來。精品文檔交流理解一個問題總要經(jīng)過從不正確到正確, 從不確切到確切的過程,需求分析的過程總是要不斷反復的,一次就成功的可能性是很小的, 對復雜的系統(tǒng)尤其如此,因此,系統(tǒng)分析員應隨時準備對數(shù)據(jù)流圖進行修改和完善, 與用戶取得共識,獲得無二義性的需求,才能獲得更正確清晰的需求說明, 使得設計、編程等階段能夠順利進行,這樣做是必須和值得的。3.分層DFD圖的改進DFD圖必須經(jīng)過反復修改,才能獲得最終的目標系統(tǒng)的邏輯 (目標系統(tǒng)的DFD圖)。改進的原則與畫分層 DFD圖的基本原則是一致的,可從以下方面考慮DFD圖的改進:⑴檢查數(shù)據(jù)流的正確性①數(shù)據(jù)守恒②子圖、父圖的平衡③文件使用是否合理。特別注意輸入/出文件的數(shù)據(jù)流。⑵改進DFD圖的易理解性①簡化加工之間的聯(lián)系(加工間的數(shù)據(jù)流越少,獨立性越強,易理解性越好)。②改進分解的均勻性。③適當命名(各成分名稱無二義性,準確、具體)。精品文檔交流4.數(shù)據(jù)詞典分層數(shù)據(jù)流圖只是表達了系統(tǒng)的 “分解”,為了完整地描述這個系統(tǒng), 還需借助“數(shù)據(jù)詞典”(datadictionary)和“小說明”對圖中的每個數(shù)據(jù)和加工給出解釋。對數(shù)據(jù)流圖中包含的所有元素的定義的集合構成了數(shù)據(jù)詞典。它有四類條目:數(shù)據(jù)流、數(shù)據(jù)項、文件及基本加工。在定義數(shù)據(jù)流或文件時,使用表 2-1給出的符號。將這些條目按照一定的規(guī)則組織起來,構成數(shù)據(jù)詞典。1.數(shù)據(jù)流條目給出了DFD中數(shù)據(jù)流的定義,通常對數(shù)據(jù)流的簡單描述為列出該數(shù)據(jù)流的各組成數(shù)據(jù)項。例:數(shù)據(jù)流“乘客名單”由若干“乘客姓名”、“單位名”和“等級”組成,則詞典中的“乘客名單”條目是:乘客名單={乘客姓名+單位名+等級}又如:報名單=姓名+單位名+年齡+性別+課程名精品文檔交流也可以對數(shù)據(jù)流進行較詳細的描述,如下例:例:某查詢系統(tǒng)中,有個名為 “查詢”的數(shù)據(jù)流,目前“查詢”有三種類型,即“顧客狀況查詢”、“存貨查詢”和“發(fā)票存根查詢”,預計至 1990年底還將增加 3至4種其他類型的查詢。系統(tǒng)每天約需處理 2000次查詢,每天上午 9:00—10:00是查詢的高峰,此時約有 1000次查詢。上述信息都是“用戶要求”的一部分,在分析階段應該認真收集,并記錄在詞典的有關條目中,所以 “查詢”條目描述如下。數(shù)據(jù)流名:查詢簡述:系統(tǒng)處理的一個命令別名:無組成:[顧客狀況查詢|存貨查詢|發(fā)票存根查詢]數(shù)據(jù)量:2000次/天峰值:每天上午9:00—l0:00有l(wèi)000次注釋:至1990年底還將增加3至4種查詢2.文件條目給出某個文件的定義,文件的定義通常是列出文件記錄的組成數(shù)據(jù)流, 還可指出文件的組織方式。精品文檔交流例:某銷售系統(tǒng)的訂單文件:訂單文件=訂單編號+顧客名稱+產(chǎn)品名稱+訂貨數(shù)量+交貨日期3.數(shù)據(jù)項條目給出某個數(shù)據(jù)單項的

溫馨提示

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

評論

0/150

提交評論