軟件工程 --軟件工程用圖


目錄

數據流圖
ER圖
層次方框圖
狀態轉換圖
Warnier圖
Petri圖
網HIPO圖
判定樹
盒圖(N-S圖)
PAD圖


數據流圖

 簡介:

數據流圖是結構化分析方法中使用的工具,它以圖形的方式描繪數據在系統中流動和處理的過程,由於它只反映系統必須完成的邏輯功能,所以它是一種功能模型

數據流程圖中有以下幾種主要元素:

  • :  數據流。數據流是數據在系統內傳播的路徑,因此由一組成分固定的數據組成.如訂票單由旅客姓名、年齡、單位、身份證號、日期、目的地等數據項組成.由於數據流是流動中的數據,所以必須有流向,除了與數據存儲之間的數據流不用命名外,數據流應該用名詞或名詞短語命名
  • :  數據源(終點).代表系統之外的實體,可以是人、物或其他軟件系統
  • :  對數據的加工(處理).加工是對數據進行處理的單元,它接收一定的數據輸入,對其進行處理,並產生輸出
  • :  數據存儲.表示信息的靜態存儲,可以代表文件、文件的一部分、數據庫的元素等

例子:

 


實體-聯系圖(ER圖)

目的:

為了把用戶的數據要求清楚准確地描述起來系統分析員通常建立一個概念性的數據模型

要素:

  • 實體型:用矩形表示,矩形框內寫明實體名;
  • 屬性:用橢圓形或圓角矩形表示,並用無向邊將其與相應的實體連接起來;多值屬性由雙線連接;主屬性名稱下加下划線;
  • 聯系:用菱形表示,菱形框內寫明聯系名,並用無向邊分別與有關實體連接起來,同時在無向邊旁標上聯系的類型

在E-R圖中要明確表明1對多關系,1對1關系和多對多關系:

  • 1對1關系在兩個實體連線方向寫1;
  • 1對多關系在1的一方寫1,多的一方寫N
  • 多對多關系則是在兩個實體連線方向各寫N,M

例子:

 


層次方框圖

 概述:

層次方框圖用樹形結構的一系列多層次的矩形描述數據的層次結構.樹形結構的頂層是一個單獨的矩形框,它代表完整的數據結構,下面的各層矩形框代表這個數據的子集,最底層的各個框代表組成這個數據的實際數據元素(不能再分割的元素)

例子:

 


狀態轉換圖

概述:

通過描繪系統的狀態及引起系統狀態轉換的事件,來表示系統的行為.此外狀態轉換圖還指明了作為特定事件的結果系統將做那些動作(例如,處理數據).因此狀態轉換圖提供了行為建模機制

在狀態轉換圖中,每一個節點代表一個狀態,其中雙圈是終結狀態

例子:

 


Warnier圖

概述:

是表示數據層次結構的一種圖形工具,它用樹形結構來描繪數據結構.它還能指出某一類數據或某一數據元素重復出現的次數,並能指明某一特定數據在某一類數據中是否是有條件的出現.在進行軟件設計時,從Warnier圖入手,能夠很容易轉換成軟件的設計描述

例子:

 


Petri圖網

Petri網模型3種基本元素:

  • 位置集P(Place Set)
  • 轉換集T(Transition Set)
  • 標記集M(Marker Set或Token Set)
  • 三元組模型 S = (P,T,M)

Petri網用一個八元組來表示知識間的因果關系,形式為:

  • n P:位置的有限集
  • n T:轉換的有限集
  • n D:命題的有限集
  • n I:輸入函數,表示從位置到轉換的映射
  • n O:輸出函數,表示從轉換到位置的映射
  • n f:相關函數,表示強度,0-1之間
  • n α:相關函數,表示位置對應命題的可信度,0-1之間
  • β:相關函數,表示位置到命題的映射,位置對應的命題

例子:

IF dj THEN dk (CF=ui),若dj的可信度為0.8,規則強度ui=0.9

圖2 Petri網表示例示

P={Pj,Pk}
T={ti}
D={dj,dk}
I(ti)={Pj}
O(ti)={Pk}
f(ti)=ui=0.9
(Pj)=0.8
(Pj)=dj (Pk)=dk

 


HIPO圖

概述:

HIPO(Hierarchy Plus Input/Processing/Output)圖是美國IBM公司70年代發展起來的表示軟件系統結構的工具。它既可以描述軟件總的模塊層次結構--H圖(層次圖),又可以描述每個模塊輸入/輸出數據、處理功能及模塊調用的詳細情況--IPO圖。HIPO圖以模塊分解的層次性以及模塊內部輸入、處理、輸出三大基本部分為基礎建立的

例子:

 


判定樹

概要:

判定樹又稱決策樹,是一種描述加工的圖形工具,適合描述問題處理中具有多個判斷,而且每個決策與若干條件有關。使用判定樹進行描述時,應該從問題的文字描述中分清哪些是判定條件,哪些是判定的決策,根據描述材料中的聯結詞找出判定條件的從屬關系、並列關系、選擇關系,根據它們構造判定樹

例子:

 


盒圖(N-S圖)

簡介:

流程圖由一些特定意義的圖形、流程線及簡要的文字說明構成,它能清晰明確地表示程序的運行過程.在使用過程中,人們發現流程線不一定是必需的,為此,人們設計了一種新的流程圖,它把整個程序寫在一個大框圖內,這個大框圖由若干個小的基本框圖構成,這種流程圖簡稱N-S圖

N-S圖的特點:

  • 功能域明確
  • 很容易確定局部和全局數據的作用域
  • 不可能任意轉移控制
  • 很容易表示嵌套關系及模塊的層次關系

種基本程序結構的N-S圖:

順序結構N-S圖:

選擇結構N-S圖:

if條件:

多分支:

循環結構N-S圖:
當型循環:

直到型循環:

例子:

 


PAD圖

定義:

PAD是問題分析圖(Problem Analysis Diagram)的英文縮寫,自1973年由日本日立公司發明以來,已經得到一定程度的推廣。它用二維數形結構的圖表示程序的控制流,將這種圖轉換為程序代碼比較容易

優點:

  • 使用表示結構優化控制結構的PAD符號所設計出來的程序必然是程序化程序
  • PAD圖所描述的程序結構十分清晰.圖中最左邊的豎線是程序的主線,即第一層控制結構。隨着程序層次的增加,PAD圖逐漸向右延伸,每增加一個層次,圖形向右擴展一條豎線.PAD圖中豎線的總條數就是程序的層次數
  • 用PAD圖表現程序邏輯,易讀、易懂、易記.PAD圖是二維數型結構的圖形,程序從圖中最左邊上端的結點開始執行,自上而下,從左到右順序執行
  • 很容易將PDA圖轉換成高級程序語言源程序,這種轉換可由軟件工具自動完成,從而可省去人工編碼的工作,有利於提高軟件可靠性和軟件生產率
  • 可用於表示程序邏輯,也可用於描述數據結構
  • PAD圖的符號支持自頂向下、逐步求精方法的使用.開始時設計者可以定義一個抽象程序,隨着設計工作的深入而使用“def”符號逐步增加細節,直至完成詳細設計

流圖含義:

例子:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM