系統建模之程序流程圖|系統流程圖|數據流圖


具體地講,流程圖包含這么幾類:

1 程序流程圖(程序框圖)

1.1 定義

結構化程序設計方法中過程設計階段的核心建模工具之一。
歷史最悠久應用最廣泛的描述過程設計的工具。

程序流程圖又稱程序框圖,是用統一規定的標准符號描述程序運行具體步驟的圖形表示。
程序框圖的設計是在處理流程圖的基礎上,通過對輸入輸出數據和處理過程的詳細分析,將計算機的主要運行步驟和內容標識出來。
程序框圖是進行程序設計的最基本依據,因此它的質量直接關系到程序設計的質量。
程序流程圖由處理框、判斷框、起止框、連接點、流程線、注釋框等構成,並結合相應的算法,構成整個程序流程圖。
早期的非結構化語言中都有go to語句,它允許程序從一個地方直接跳轉到另一個地方去。
執行這樣做的好處是:程序設計十分方便靈活,減少了人工復雜度,但其缺點也是十分突出的,一大堆跳轉語句使得程序的流程十分復雜紊亂,難以看懂也難以驗證程序的正確性,
如果有錯,排起錯來更是十分困難。這種轉來轉去的流程圖所表達的混亂與復雜,正是軟件危機中程序人員處境的一個生動寫照。

而結構化程序設計,就是要把這團亂麻理清。

經過研究,人們發現,任何復雜的算法,都可以由【順序結構】、【選擇(分支)結構】和【循環結構】這三種基本結構組成。
因此,我們構造一個算法的時候,也僅以這三種基本結構作為“建築單元”,遵守三種基本結構的規范,基本結構之間可以並列、可以相互包含,但不允許交叉,不允許從一個結構直接轉到另一個結構的內部去。
正因為整個算法都是由三種基本結構組成的,就像用模塊構建的一樣,所以結構清晰,易於正確性驗證,易於糾錯,這種方法,就是【結構化方法】。

遵循這種方法的程序設計,就是結構化程序設計。

相應地,只要規定好三種基本結構的【程序流程圖】的畫法,就可以畫出任何算法的流程圖。

1.2 組件

1.3 樣例

2 系統流程圖

2.1 定義

系統流程圖用於描繪系統物理模型,表達數據在系統各個部件之間(程序、文件、數據庫、表格、人工過程等)流動的情況。

系統流程圖是概括的描繪系統物理模型的工具。
它的基本思想是用圖形符號以黑盒子形式描繪系統里面的每個具體部件(程序、文件、數據庫、表格、人工過程等),表達數據在系統各個部件之間流動的情況。
而不是對數據加工處理的過程,他是物理數據流圖而不是程序流程圖。
系統流程圖表達的是系統各部件的流動情況,而不是表示對信息進行加工處理的控制過程。

系統流程圖的作用表現在以下幾個方面:
  1,制作系統流程圖的過程是系統分析員全面了解系統業務處理概況的過程,它是系統分析員做進一步分析的依據。
  2,系統流程圖是系統分析員、管理員、業務操作員相互交流的工具。
  3,系統分析員可直接在系統流程圖上畫出可以有計算機處理的部分。
  4,可利用系統流程圖來分析業務流程的合理性。

2.2 組件

如果描繪的是系統流程圖代表的物理系統時,還經常會用到下列10種符號:

2.3 樣例

  • 系統流程圖案例背景
    某生鮮品牌有一個前置倉,存放其業務配送所需的各種生鮮,前置倉的各種生鮮的數量及其庫存量臨界值等數據記錄在前置倉主文件上,當前置倉中生鮮數量發生變化時,應更改庫存文件。

    若某種生鮮的庫存量少於庫存臨界值,則立即報告采購部門以便訂貨,規定每天向采購部門送一份采購報告。

  • 用系統流程圖的符號進行解釋
    生鮮的發放和接受稱為變更記錄,由鍵盤輸入到計算機中。

    系統中庫存清單程序對變更記錄進行處理,更新存儲在磁盤上的庫存清單主文件,並且把必要的訂貨信息記錄寫在聯機存儲上。

    最后,每天由報告生成程序讀一次聯機存儲,並且打印出訂貨報告。

  • 形成系統流程圖

2.4 程序流程圖 與 系統流程圖的區別

在系統流程圖中相當一部分符號與程序流程圖中符號形式相同,但是這是系統流程圖而不是程序流程圖
區別:

程序 流程圖描述的是完整的業務流程,以業務邏輯處理過程為中心。不強調數據流動,但強調控制/處理過程。

  • 程序流程圖表示對信息進行加工處理的【控制】過程,也稱為【控制流】

系統 流程圖用於描繪系統物理模型,表達數據在系統各個部件之間(程序、文件、數據庫、表格、人工過程等)流動的情況。

  • 系統流程圖表達的是信息在系統各部件之間的【流動】情況,也稱為【數據流】

3 數據流程圖(數據流圖)

3.1 定義

數據流圖:簡稱DFD,一種結構化系統分析工具,一種圖形化技術。
它描繪信息流數據從輸入移動到輸出的過程中經受的變換,數據流圖沒有具體的物理部件。
它只是描述數據在軟件中流動被處理的邏輯過程
數據流圖是系統邏輯功能的圖形表示,設計它只需考慮基本邏輯功能,不需考慮如何實現功能。

3.2 組件

3.3 樣例

  • 第0層DFD稱為系統基本模型,可以將整個軟件系統表示為一個具有輸入和輸出的黑匣子。用一個圓圈表示。
  • 上一層DFD中的每一個圓圈可以進一步擴展成一個獨立的數據流圖,以揭示系統中程序的細節部分。
  • 循序漸進繼續進行,直到最低層的圖僅描述原子過程操作為止。 每一層數據流圖必須與它上一層數據流圖保持平衡和一致,因此,子圖的所有輸入輸出流要與其父圖相匹配。

概括地說:自外向內,自頂向下,逐層細化,完善求精。

  • 點餐系統
  • 家教系統

3.4 系統流程圖 與 數據流圖的區別

  • 相同點:兩者都是描述數據的流動情況。
  • 不同點:

系統流程圖允許硬件,文檔,甚至人工的介入,有物理設備等。
數據流圖無硬件設備,系統物理部件等,只是描述數據在系統中加工變換的情況。

4 拓展實踐

4.1 頁面流程圖

X 參考文獻


免責聲明!

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



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