資源描述:
《結(jié)構(gòu)化分析建?!酚蓵T上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。
1、分析建模的方法冇很多,其屮最重要的兩種方法是結(jié)構(gòu)化分析和面向?qū)ο蠓治觥=Y(jié)構(gòu)化分析方法捉供實體關(guān)系圖、數(shù)據(jù)流圖和狀態(tài)轉(zhuǎn)換圖三種圖形模型,分別進行數(shù)據(jù)建模、功能建模和動態(tài)建模;面向?qū)ο蠓治龇椒ㄒ杂美P蜑楹诵?,提供類圖、對彖圖、狀態(tài)圖、時序圖、協(xié)作圖、活動圖、構(gòu)件圖和分布圖等圖形模型,建立設(shè)計視圖、進程視圖、實現(xiàn)視圖和分布視圖等。需求分析產(chǎn)生的模型使人們可以更好地理解將要建造的系統(tǒng),它有助于系統(tǒng)分析員理解系統(tǒng)的信息、功能和行為,成為確定需求規(guī)格說明完整性、i致性和粘確性的重要依據(jù),奠定了軟件設(shè)計的娠礎(chǔ)。實體關(guān)系圖數(shù)據(jù)流圖數(shù)據(jù)字典狀態(tài)轉(zhuǎn)換圖行為模型結(jié)構(gòu)化分析導出的分析模型包括數(shù)據(jù)模型、功能模型和行為
2、模型,具體形式如上圖所示。該模型以”數(shù)據(jù)字典”為核心,它描述了軟件使用的所冇數(shù)據(jù)對象,圍繞這個核心的是“實體關(guān)系圖”、”數(shù)據(jù)流圖”和”狀態(tài)轉(zhuǎn)換圖”。*實體關(guān)系圖(Entity-RelationshipDiagram,ERD):作為數(shù)據(jù)建模的基礎(chǔ),描述數(shù)據(jù)對象及其關(guān)系;*數(shù)據(jù)流圖(Da〔aFlowDiagram,DFD):作為功能建模的基礎(chǔ),描述數(shù)據(jù)怎樣轉(zhuǎn)換以及轉(zhuǎn)換的功能;*狀態(tài)轉(zhuǎn)換圖(S皿e-Tnmsi(ionDiagram,STD):作為行為建模的基礎(chǔ),表示系統(tǒng)的各種行為狀態(tài)以及狀態(tài)間的轉(zhuǎn)換方式。3.3.1.1實體關(guān)系圖(ERD)數(shù)據(jù)模型包括?三種基木元素:數(shù)據(jù)對彖、屬性和關(guān)系,它們對理解問
3、題的信息域提供了基礎(chǔ)。數(shù)據(jù)對象表示具有不同屬性的事物,ERD用帶有標記的矩形來表示。關(guān)系表示數(shù)據(jù)對象之間的相互連接,ERD用直線連接相關(guān)聯(lián)的數(shù)據(jù)對象,并在直線上用帶標記的菱形框來表示關(guān)系。兩個數(shù)據(jù)對象之間有以下三種關(guān)聯(lián),ERD在數(shù)據(jù)對象之間的連線上用數(shù)字或字母表示:*一對一(1:1):對象A的一個實例只能關(guān)聯(lián)到對象B的一個實例,對象B的一個實例也只能關(guān)聯(lián)到對象A的一個實例,如一個丈夫只能有一個妻子,一個妻子也只能有一個丈夫。*一對多(1:N):對象A的一個實例可以關(guān)聯(lián)到對象B的一個或多哥實例,而對彖B的一個實例只能關(guān)聯(lián)到對象A的一個實例,如一個母親可以有多個孩子,而一個孩子只能有一個母親。*多
4、對多(M:N):對象A的一個實例可以關(guān)聯(lián)到對象B的一個或多個實例,同時對象B的一個實例也可以關(guān)聯(lián)到對象A的一個或多個實例,如一個叔叔可以冇多個侄子,一個侄子也可以冇多個叔叔。3.3.1.2數(shù)據(jù)流圖(DFD)數(shù)據(jù)流圖是結(jié)構(gòu)化分析的基本工具,它描述了信息流和數(shù)據(jù)轉(zhuǎn)換,通過對加工進行分解可以得到數(shù)據(jù)流圖。第0層DFD稱為基本系統(tǒng)模型,可以將整個軟件系統(tǒng)表示為一個具有輸入和輸出的黑匣子,用一個圓圈表示。上一層DFD中的每一個関圈可以進一步擴展成一個獨立的數(shù)據(jù)流圖,以揭示系統(tǒng)屮程序的細節(jié)部分。這種循序漸進的細化過程可以繼續(xù)進行,直到最低層的圖僅描述原子過程操作為止。每一層數(shù)據(jù)流圖必須與它上一層數(shù)據(jù)流圖保
5、持平衡和一致,因此,子圖的所冇輸入輸出流要與其父圖相兀配。DFD冇四種元素,其基木符號如下圖所示。外部實體數(shù)據(jù)存儲*外部實體:與系統(tǒng)進行交互,但系統(tǒng)不對英進行加工和處理的實體,用帶標記的矩形表示;*加工:對數(shù)據(jù)進行的變換和處理,用帶標記的圓圈表示;*數(shù)據(jù)流:在數(shù)據(jù)加工之間或數(shù)據(jù)存儲和數(shù)據(jù)加工之間進行流動的數(shù)據(jù),用帶標記的箭頭表示;*數(shù)據(jù)存儲:在系統(tǒng)中需要存儲的實體,用帶標記的雙實線表示。3.3.1.3狀態(tài)轉(zhuǎn)換圖(STD)狀態(tài)轉(zhuǎn)換圖通過描述狀態(tài)以及導致系統(tǒng)改變狀態(tài)的事件來表示系統(tǒng)的行為,它沒有表示出系統(tǒng)所執(zhí)行的處理,只表示了處理結(jié)果可能的狀態(tài)轉(zhuǎn)換。STD用帶標記的圓圈或矩形表示狀態(tài),用箭頭表示從
6、一種狀態(tài)到另一種狀態(tài)的變換,箭頭上的文本標記表示引起變換的條件。轉(zhuǎn)換條件分析建模是實現(xiàn)真實世界模型向計算機模型轉(zhuǎn)換的核心壞節(jié),也是一種處理軟件復雜性的有效手段。在需求開發(fā)階段,分析建模的關(guān)鍵是針對用戶需求建立抽象的分析模型,從而有助于開發(fā)人員理解用戶需求,同時增強自然語言的需求規(guī)格說明。分析模型往往采用一些圖形化的表示方式,從數(shù)據(jù)、功能和行為等不同角度表達用戶需求。結(jié)構(gòu)化分析是而向數(shù)據(jù)流進行需求分析的方法,經(jīng)過20多年的發(fā)展,己經(jīng)成為廣泛應(yīng)用的技術(shù)之一。結(jié)構(gòu)化分析方法以數(shù)據(jù)字典為核心,采用實體關(guān)系圖、數(shù)據(jù)流圖和狀態(tài)轉(zhuǎn)換圖等圖形來表達需求,直觀明了且易于理解和掌握。其中,數(shù)據(jù)流圖是結(jié)構(gòu)化分析的基
7、本工具,體現(xiàn)了IT頂向下逐步求糟的分析過程,確定了系統(tǒng)的任務(wù)流和數(shù)據(jù)流;實體關(guān)系圖描述了系統(tǒng)的數(shù)據(jù)關(guān)系,從而幫助開發(fā)人員分析和理解系統(tǒng)數(shù)據(jù)的組成,并為系統(tǒng)設(shè)計階段定義系統(tǒng)數(shù)據(jù)庫的物理結(jié)構(gòu)打下基礎(chǔ);狀態(tài)轉(zhuǎn)換圖描述了系統(tǒng)狀態(tài)之間的變化過程,它對于實時系統(tǒng)和控制系統(tǒng)尤為重要。數(shù)據(jù)字典描述數(shù)據(jù)流圖的數(shù)據(jù)存儲、數(shù)據(jù)加工(最底層加工)和數(shù)據(jù)流,它記錄的主耍內(nèi)容冇:*基本信息:名字、別名、描述;*定義:數(shù)據(jù)長度