




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、結(jié)構(gòu)化分析(sa)結(jié)構(gòu)化開發(fā)方法(Structured Developing Method)是現(xiàn)有的軟件開發(fā)方法中最 成熟,應(yīng)用最廣泛的方法,主要特點(diǎn)是快速、自然和方便。結(jié)構(gòu)化開發(fā)方法由結(jié) 構(gòu)化分析方法(SA法)、結(jié)構(gòu)化設(shè)計(jì)方法(SD法)及結(jié)構(gòu)化程序設(shè)計(jì)方法(SP 法)構(gòu)成的。結(jié)構(gòu)化分析(Structured Analysis,簡稱SA法)方法是面向數(shù)據(jù)流的需求分析 方法,是70年代末由Yourdon,Constaintine R DeMarco等人提出和發(fā)展,并 得到廣泛的應(yīng)用。它適合于分析大型的數(shù)據(jù)處理系統(tǒng),特別是企事業(yè)管理系統(tǒng)。SA法也是一種建模的活動(dòng),主要是根據(jù)軟件內(nèi)部的數(shù)據(jù)傳遞、變換
2、關(guān)系,自頂 向下逐層分解,描繪出滿足功能要求的軟件模型。1 SA法概述1. SA法的基本思想結(jié)構(gòu)化分析(Structured Analysis,簡稱SA法)是面向數(shù)據(jù)流的需求分析方法, 是70年代由Yourdon,Constaintine及DeMarco等人提出和發(fā)展,并得到廣泛 的應(yīng)用。結(jié)構(gòu)化分析方法的基本思想是“分解”和“抽象”。分解:是指對(duì)于一個(gè)復(fù)雜的系統(tǒng),為了將復(fù)雜性降低到可以掌握的程度,可以把 大問題分解成若干小問題,然后分別解決。圖4是自頂向下逐層分解的示意圖。頂層抽象地描述了整個(gè)系統(tǒng),底層具體地 畫出了系統(tǒng)的每一個(gè)細(xì)節(jié),而中間層是從抽象到具體的逐層過渡。抽象:分解可以分層進(jìn)行,即
3、先考慮問題最本質(zhì)的屬性,暫把細(xì)節(jié)略去,以后再 逐層添加細(xì)節(jié),直至涉及到最詳細(xì)的內(nèi)容,這種用最本質(zhì)的屬性表示一個(gè)自系統(tǒng) 的方法就是“抽象工2. SA法的步驟建立當(dāng)前系統(tǒng)的“具體模型”;系統(tǒng)的“具體模型”就是現(xiàn)實(shí)環(huán)境的忠實(shí)寫照,即將當(dāng)前系統(tǒng)用DFD圖描述出來。 這樣的表達(dá)與當(dāng)前系統(tǒng)完全對(duì)應(yīng),因此用戶容易理解。抽象出當(dāng)前系統(tǒng)的邏輯模型;分析系統(tǒng)的“具體模型”,抽象出其本質(zhì)的因素,排除次要因素,獲得用DFD圖 描述的當(dāng)前系統(tǒng)的“邏輯模型”。建立目標(biāo)系統(tǒng)的邏輯模型;分析目標(biāo)系統(tǒng)與當(dāng)前系統(tǒng)邏輯上的差別,從而進(jìn)一步明確目標(biāo)系統(tǒng)“做什么”,建 立目標(biāo)系統(tǒng)的“邏輯模型”(修改后的DFD圖)。為了對(duì)目標(biāo)系統(tǒng)作完整
4、的描述,還需要考慮人機(jī)界面和其它一些問題。3. SA法的描述工具分層的數(shù)據(jù)流圖數(shù)據(jù)詞典描述加工邏輯的結(jié)構(gòu)化語言、判定表或判定樹。2數(shù)據(jù)流數(shù)據(jù)流圖(Data Flow Diagram,簡稱DFD)是描述系統(tǒng)中數(shù)據(jù)流程的圖形工具, 它標(biāo)識(shí)了一個(gè)系統(tǒng)的邏輯輸入和邏輯輸出,以及把邏輯輸入轉(zhuǎn)換邏輯輸出所需的 加工處理。1.數(shù)據(jù)流圖的圖符數(shù)據(jù)流圖有以下4種基本圖形符號(hào):閨5DFD圖的A本符匕實(shí)體名箭頭表示數(shù)據(jù)流,圓或橢圓表示加工。雙杠或者單杠表示數(shù)據(jù)存儲(chǔ),矩形框表示 數(shù)據(jù)的源點(diǎn)或終點(diǎn),即外部實(shí)體。數(shù)據(jù)流是數(shù)據(jù)在系統(tǒng)內(nèi)傳播的路徑,由一組成固定的數(shù)據(jù)項(xiàng)組成。除了與數(shù) 據(jù)存儲(chǔ)(文件)之間的數(shù)據(jù)流不用命名外,其余
5、數(shù)據(jù)流都應(yīng)該用名詞或名詞短語 命名。數(shù)據(jù)流可以從加工流向加工,也可以從加工流向文件或從文件流向加工, 也可以從源點(diǎn)流向加工或從加工流向終點(diǎn)。加工也稱為數(shù)據(jù)處理,它對(duì)數(shù)據(jù)流進(jìn)行某些操作或變換。每個(gè)加工也要有名 字,通常是動(dòng)詞短語,簡明地描述完成什么加工。在分層的數(shù)據(jù)流圖中,加工還 應(yīng)有編號(hào)。數(shù)據(jù)存儲(chǔ)指暫時(shí)保存的數(shù)據(jù),它可以是數(shù)據(jù)庫文件或任何形式的數(shù)據(jù)組織。 流向數(shù)據(jù)存儲(chǔ)的數(shù)據(jù)流可理解為寫入文件,或查詢文件,從數(shù)據(jù)存儲(chǔ)流出的數(shù)據(jù) 可理解為從文件讀數(shù)據(jù)或得到查詢結(jié)果。數(shù)據(jù)源點(diǎn)和終點(diǎn)是軟件系統(tǒng)外部環(huán)境中的實(shí)體(包括人員、組織或其他軟件 系統(tǒng)),統(tǒng)稱為外部實(shí)體。一般只出現(xiàn)在數(shù)據(jù)流圖的頂層圖中。還有一些輔
6、助的圖例:我中:*正示與,+ 次示蚊.® 代示曳斥圖6 DFD圖的輔助符:;例1:畫出圖書預(yù)定系統(tǒng)的DFD圖。現(xiàn)有一圖書預(yù)定系統(tǒng),接收由顧客發(fā)來的 訂單,并對(duì)訂單進(jìn)行驗(yàn)證,驗(yàn)證過程是根據(jù)圖書目錄檢查訂單的正確性,同時(shí)根 據(jù)顧客檔案確定是新顧客還是老顧客,是否有信譽(yù)。經(jīng)過驗(yàn)證的正確訂單,暫存 放在待處理的訂單文件中。對(duì)訂單進(jìn)行成批處理,根據(jù)出版社檔案,將訂單按照 出版社進(jìn)行分類匯總,并保存訂單存根,然后將匯總訂單發(fā)往各出版社。顧客檔案杼處理nr單文件訂貨根交圖"做定系統(tǒng)的DFD圖畫圖步驟是:首先確定外部實(shí)體(顧客、出版社)及輸入、輸出數(shù)據(jù)流(訂單、出版社 訂單)。再分解頂層的
7、加工(驗(yàn)證訂單、匯總訂單)。確定所使用的文件(圖書目錄文件、顧客檔案等5個(gè)文件)。(4)用數(shù)據(jù)流將各部分連接起來,形成數(shù)據(jù)封閉。特別要注意的是:數(shù)據(jù)流圖不是傳統(tǒng)的流程圖或框圖,數(shù)據(jù)流也不是控制流。數(shù) 據(jù)流圖是從數(shù)據(jù)的角度來描述一個(gè)系統(tǒng),而框圖則是從對(duì)數(shù)據(jù)進(jìn)行加工的工作人 員的角度來描述系統(tǒng)。數(shù)據(jù)流圖中的箭頭是數(shù)據(jù)流,而框圖中的箭頭則是控制流, 控制流表達(dá)的是程序執(zhí)行的次序。下圖是培訓(xùn)中心管理系統(tǒng)的數(shù)據(jù)流圖,由于只有一層,因此分解的加工較多不易 理解而且如果其中某個(gè)加工較復(fù)雜,例如編號(hào)為3的加工“付款”和編號(hào)為7的加工“復(fù)審”仍很復(fù)雜,一時(shí)難以理解,如果不繼續(xù)分解下去,直到每個(gè)加工都足 夠簡單易
8、于理解為止,則會(huì)影響需求分析結(jié)果的可讀性。1.畫分層DFD圖的方法方員/課程 krr八注用印 J 8不畬MT圖2.8 中心管理系舞的DFD圖通止員如圖2.8所示,如果系統(tǒng)規(guī)模較大,僅用一個(gè)DFD圖難以描述,會(huì)使得系統(tǒng)變 得復(fù)雜,且難以理解。為了降低系統(tǒng)的復(fù)雜性,采取“逐層分解”的技術(shù),畫分層 的DFD圖。畫分層DFD圖的一般原則是:“先全局后局部,先整體后細(xì)節(jié),先抽象后具體”。通 常將這種分層的DFD圖,分為頂層、中間層、底層。頂層圖說明了系統(tǒng)的邊界, 即系統(tǒng)的輸入和輸出數(shù)據(jù)流,頂層圖只有一張。底層圖由一些不能再分解的加工 組成,這些加工都已足夠簡單,稱為基本加工。在頂層和底層之間的是中間層。
9、 中間層的數(shù)據(jù)流圖描述了某個(gè)加工的分解,而它的組成部分乂要進(jìn)一步分解。畫 各層DFD圖時(shí),應(yīng)“由外向內(nèi)”。畫分層DFD圖的具體步驟:先確定系統(tǒng)范圍,畫出頂層的DFD圖。逐層分解頂層DFD圖,獲得若干中間層DFD圖。畫出底層的DFD圖。11圖2.1圖圖 S DFD圖2.2圖在畫分層數(shù)據(jù)流圖時(shí).,首先遇到的問題就是應(yīng)該如何分解?不能夠一下子把一個(gè) 加工分解成它所有的基本加工,一張圖中畫出過多的加工是使人難以理解的,但 是如果每次只是將一個(gè)加工分解成兩個(gè)或三個(gè)加工,乂可能需要分解過多的層 次,也會(huì)影響系統(tǒng)的可理解性。一個(gè)加工每次分解成多少個(gè)子加工才合適呢?根據(jù)經(jīng)驗(yàn)“最多不要超過7個(gè)”。統(tǒng)計(jì)結(jié)果證明,
10、人們能有效地同時(shí)處理7個(gè)或7 個(gè)以下的問題,但當(dāng)問題多于7個(gè)時(shí),處理效果就會(huì)下降。當(dāng)然也不能機(jī)械地 應(yīng)用,關(guān)鍵是要使數(shù)據(jù)流圖易于理解。同時(shí)還有幾條原則可供參考: 分解應(yīng)自然,概念上要合理、清晰。 只要不影響數(shù)據(jù)流圖的“易理解性”,可以適當(dāng)?shù)囟喾纸獬蓭撞糠?,這樣分層圖的層數(shù)就可少些。一般來說,在上層可以分解得快些,而在中、下層則應(yīng)分解得慢些,因?yàn)樯蠈邮?一些綜合性的描述,“易理解性”相對(duì)地說不太重要。下節(jié)我們以一個(gè)實(shí)例來說明畫分層DFD圖的方法。2分層DFD圖的改進(jìn)分層數(shù)據(jù)流圖是一種比較嚴(yán)格乂易于理解的描述方式,它的頂層描繪了系統(tǒng)的總 貌,底層畫出了系統(tǒng)所有的細(xì)部,而中間層則給出了從抽象到具體的
11、逐步過渡。1.畫分層DFD圖的基本原則.數(shù)據(jù)守恒與數(shù)據(jù)封閉原則所謂數(shù)據(jù)守恒是指加工的輸入輸出數(shù)據(jù)流是否匹配,即每一個(gè)加工既有輸入數(shù)據(jù) 流乂有輸出數(shù)據(jù)流?;蛘哒f一個(gè)加工至少有一個(gè)輸入數(shù)據(jù)流,一個(gè)輸出數(shù)據(jù)流。加工分解的原則自然性:概念上合理、清晰;均勻性:理想的分解是將一個(gè)問題分解成大小均勻的幾個(gè)部分;分解度:一般每一個(gè)加工每次分解最多不要超過7個(gè)子加工,應(yīng)分解到基本加 工為止。子圖與父圖的“平衡”父圖中某個(gè)加工的輸入輸出數(shù)據(jù)流應(yīng)該同相應(yīng)的子圖的 輸入輸出相同(相對(duì)應(yīng)),分層數(shù)據(jù)流圖的這種特點(diǎn)稱為子圖與父圖“平衡”。例1考察下圖中子父圖的平衡圖2.13子圖與父圖圖2 14子圖與父圖的甲乙顯然,圖2
12、.13中子圖與父圖不平衡。子圖是父圖中加工2的分解,加工2有 輸入數(shù)據(jù)流R和M,輸出數(shù)據(jù)流T,而子圖則只有一個(gè)輸入數(shù)據(jù)流N,卻有兩 個(gè)輸出數(shù)據(jù)流T與S。圖2.14中,子圖是父圖中加工4的分解,雖然表面上加 工4只有一個(gè)輸入數(shù)據(jù)流“訂貨單”,而子圖卻有三個(gè)輸入數(shù)據(jù)流,但是如果“訂 貨單”是由“客戶”、“帳號(hào)”和“數(shù)量'三部分組成,即有如下數(shù)據(jù)條目:訂貨單=客 戶+帳號(hào)+數(shù)量(2.2.5數(shù)據(jù)詞典),則子、父圖平衡。合理使用文件當(dāng)文件作為某些加工之間的交界面時(shí),文件必須畫出來,一旦文件作為數(shù)據(jù)流圖 中的一個(gè)獨(dú)立成份畫出來了,那么它同其它成份之間的聯(lián)系也應(yīng)同時(shí)表達(dá)出來。理解一個(gè)問題總要經(jīng)過從不
13、正確到正確,從不確切到確切的過程,需求分析的過 程總是要不斷反復(fù)的,一次就成功的可能性是很小的,對(duì)復(fù)雜的系統(tǒng)尤其如此, 因此,系統(tǒng)分析員應(yīng)隨時(shí)準(zhǔn)備對(duì)數(shù)據(jù)流圖進(jìn)行修改和完善,與用戶取得共識(shí),獲 得無二義性的需求,才能獲得更正確清晰的需求說明,使得設(shè)計(jì)、編程等階段能 夠順利進(jìn)行,這樣做是必須和值得的。3.分層DFD圖的改進(jìn)DFD圖必須經(jīng)過反復(fù)修改,才能獲得最終的目標(biāo)系統(tǒng)的邏輯(目標(biāo)系統(tǒng)的DFD 圖)。改進(jìn)的原則與畫分層DFD圖的基本原則是一致的,可從以下方面考慮 DFD圖的改進(jìn):檢查數(shù)據(jù)流的正確性數(shù)據(jù)守恒子圖、父圖的平衡文件使用是否合理。特別注意輸入/出文件的數(shù)據(jù)流。改進(jìn)DFD圖的易理解性簡化加工
14、之間的聯(lián)系(加工間的數(shù)據(jù)流越少,獨(dú)立性越強(qiáng),易理解性越好)。改進(jìn)分解的均勻性。適當(dāng)命名(各成分名稱無二義性,準(zhǔn)確、具體)。4.數(shù)據(jù)詞典分層數(shù)據(jù)流圖只是表達(dá)了系統(tǒng)的“分解”,為了完整地描述這個(gè)系統(tǒng),還需借助“數(shù) 據(jù)詞典"(data dictionary)和“小說明”對(duì)圖中的每個(gè)數(shù)據(jù)和加工給出解釋。對(duì)數(shù)據(jù)流圖中包含的所有元素的定義的集合構(gòu)成了數(shù)據(jù)詞典。它有四類條目:數(shù) 據(jù)流、數(shù)據(jù)項(xiàng)、文件及基本加工。在定義數(shù)據(jù)流或文件時(shí),使用表2-1給出的 符號(hào)。將這些條目按照一定的規(guī)則組織起來,構(gòu)成數(shù)據(jù)詞典。比2/布s(氟司熨的定義中出境的?r;符號(hào)含義例及說明被定義為與X=a-b衣示X|JQ W b組
15、屐AX-a b表示K也,或bifl成成女衣示乂由。個(gè)或多個(gè)a重發(fā)X=2 (a )6 A x=(a): &耳、4 U 2-<5 次 a可選X-(a) &示a,“在義中出現(xiàn).也可不出現(xiàn)基本效據(jù)元嘉夫&和X是取例為字符,前改砧人不 娃按得X=l-s &小X1到85的H技旬M1 .數(shù)據(jù)流條目給出了 DFD中數(shù)據(jù)流的定義,通常對(duì)數(shù)據(jù)流的簡單描述為列出該數(shù)據(jù)流的各組 成數(shù)據(jù)項(xiàng)。例:數(shù)據(jù)流“乘客名單”由若干“乘客姓名”、“單位名”和“等級(jí)”組成,則詞典中的“乘 客名單”條目是:乘客名單=乘客姓名+單位名+等級(jí)乂如:報(bào)名單=姓名+單位名+年齡+性別+課程名也可以對(duì)數(shù)據(jù)流進(jìn)
16、行較詳細(xì)的描述,如下例:例:某查詢系統(tǒng)中,有個(gè)名為“查詢”的數(shù)據(jù)流,目前“查詢”有三種類型,即“顧 客狀況查詢”、“存貨查詢”和“發(fā)票存根查詢”,預(yù)計(jì)至1990年底還將增加3至4 種其他類型的查詢。系統(tǒng)每天約需處理2 000次查詢,每天上午9: 0010: 00是查詢的高峰,此時(shí)約有1 000次查詢。上述信息都是“用戶要求”的一部分, 在分析階段應(yīng)該認(rèn)真收集,并記錄在詞典的有關(guān)條口中,所以“查詢”條目描述如 下。數(shù)據(jù)流名:查詢簡述:系統(tǒng)處理的一個(gè)命令別名:無組成:顧客狀況查詢|存貨查詢|發(fā)票存根查詢數(shù)據(jù)量:2000次/天峰 值:每天上午9: 0010: 00有I000次注釋:至1990年底還將增加3至4種查詢2 .文件條目給出某個(gè)文件的定義,文件的定義通常是列出文件記錄的組
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 不同行業(yè)保安技術(shù)設(shè)備比較計(jì)劃
- 向?qū)W習(xí)型組織轉(zhuǎn)型的路徑計(jì)劃
- 2024年貴州省自然資源廳下屬事業(yè)單位真題
- 軟件設(shè)計(jì)師選拔標(biāo)準(zhǔn)2025年試題及答案
- 2024年甘肅省教育廳下屬事業(yè)單位真題
- 2025年戰(zhàn)略目標(biāo)與運(yùn)營風(fēng)險(xiǎn)的交互影響試題及答案
- 山東省青島十五中學(xué)2025屆七年級(jí)數(shù)學(xué)第二學(xué)期期末教學(xué)質(zhì)量檢測(cè)試題含解析
- 法學(xué)概論摸索與前行試題及答案
- 財(cái)務(wù)風(fēng)險(xiǎn)對(duì)公司戰(zhàn)略的影響試題及答案
- 2025屆河南省湯陰縣七下數(shù)學(xué)期末預(yù)測(cè)試題含解析
- 高考英語單詞3500(亂序版)
- 兒童化妝品安全知識(shí)科普
- 6-農(nóng)產(chǎn)品營銷-農(nóng)產(chǎn)品品牌策略
- 肺癌的護(hù)理查房 課件
- 消防工程施工中的質(zhì)量控制
- 2025年云南迪慶新華書店有限公司招聘筆試參考題庫含答案解析
- 【大學(xué)課件】單片機(jī)的基本結(jié)構(gòu)
- 醫(yī)療糾紛處理承諾書
- 辦理個(gè)人車稅委托書模板
- DB33T 1337-2023 河湖水庫清淤技術(shù)規(guī)程
- 傳感器技術(shù)知到智慧樹章節(jié)測(cè)試課后答案2024年秋武漢科技大學(xué)
評(píng)論
0/150
提交評(píng)論