打开主菜单

流程图

表示演算法、工作流或流程的一種框圖表示
应对灯泡不亮的简单流程图

流程图是表示算法工作流或流程的一种框图表示,它以不同类型的框代表不同种类的步骤,每两个步骤之间则以箭头连接。这种表示方法便于说明解决已知问题的方法。流程图在分析、设计、记录及操控许多领域的流程或程序都有广泛应用。[1]


概覽编辑

流程圖背後可以概括了各節點類型、其內容及其他補充用的資訊。在設計或者記錄一些簡單的步驟或程序都會用得上流程圖。與其他圖表一樣,這種圖表可以幫助視覺化發生了甚麼事情,從而更易去理解中間的工序。雖然有很多𧗠生出來的版本,各目有各目的標示方式,它們大都都有以下2種的符號:

  • 步驟:通常稱作「活動」,常以長方形來表示
  • 決定:常以鑽石形來表示

流程圖可以圖像化一些指定的過程。通常配合其他種類的圖表來使用。例如,20世紀著名於品質管理的日本學者石川馨認為流程圖可以並列七個品質控制工具之一。流程圖與直方圖柏拉圖查檢表英语check sheet管制圖石川圖(魚骨圖)及散佈圖英语Scatter plot都同等重要。而是統一塑模語言中的活動圖,也可以用來與眾多其他圖表配搭使用。

另外,盒圖Drakon圖英语Drakon也可以用來表示流程。

 
在紙張上用標準尺來輔助繪圖

类型编辑

Sterneckert (2074703)认为流程图可以分为以下四种类型:[2]


繪制流程圖编辑

常用符號编辑

美國國家標準協會是1960年代就開始制定流程圖及一些標準符號[3]。而在1970年,國際標準化組織採用其方案[4]。現時通用的版本ISO 5807是在1985年修訂[5]。以下圖例列出一些ISO常用符號[6][7]

形狀 名稱 描述
  流程符號

Flowline (Arrowhead)[8]

用來表達過程的次序,用一條線由一個符號連接去到另一個符號[9]。如果不是標準的上至下、左至右圖就會加上箭頭[8]
  起止符號

Terminal[9]

用來表示次要或程式的開始與完結。常以一個圓角長方形表示[9]。通常裏面會標上「開始」或「結束」或其他相關字眼,如「提交查詢」或「接受產品」。
  程序

Process[8]

以長方形來代表一系列程序去改變數值、形式、數據的位置[8]
  決策判斷

Decision[8]

以一個菱形[8]去顯示一個條件進程,用來按情況去決定下一步走向[9]。通常以「是/否」或「真/假」值去決定。
  輸入/輸出

Input/Output[8]

以平行四邊形[9]來標示數據輸入或輸出的過程,即填入數據或顯示工作結果的步驟[8]
  註解

Annotation[9] (Comment)[8]

用來補充某步驟的額外資訊,可用一個虛線來連接一個半閉合的長方型至想註釋的符號中[8]
  已定義流程

Predefined Process[9]

用一個有2條左右垂直線長方型,來表示一個已在其他地方定義了的過程[9]
  同頁參考

On-page Connector[9]

用一個含有字母的小圓圈來連接目標流程畫於同一頁上。[9][10]
  換頁參考

Off-page Connector[9]

用一個倒畫的屋型來表示目標流程畫於另一頁上[9][10]

其他符號编辑

除了上述的基本符號,舉例以下[11][12]

形狀 名稱 描述
  數據檔或資料庫

Data File or Database

用一個圓柱來表示數據庫。
  文件

Document

用一個附有波浪形底的長方形來標示文件。
  用多個附有波浪形底的長方形來標示多份文件。
  顯示

Display

用一個左三角正方右圓角形狀來標示結果顯示的過程。
  人工操作

Manual operation

用一個直角半梯形來標示需要人手錄入、修正或操作的過程。
  初始化

Preparation or Initialization

用一個拉長了的六角形來代表初始化或預備的過程。

繪制工具编辑

 
Flowgorithm

任何繪圖軟件都可以創造流程圖,有些軟件可以將流程圖背後的數據模型記錄下來,方便與數據庫、專案管理電子試算表等軟件協作。不同的軟件如yEd英语yEdInkscapeMicrosoft Office Visio都可以製作流程圖。也有一些軟件可以將編程原始碼或指定的流程圖描述碼來轉換出來。

有些視覺化程式設計語言[13]採用流程圖來顯示程式的運作。這些工具都可以用來教導初學者去編程,例子有Flowgorithm英语FlowgorithmRaptor英语Raptor、LARP、Visual Logic英语Visual Logic及VisiRule。

参见编辑

参考来源编辑

  1. ^ SEVOCAB: Software Systems Engineering Vocabulary. Term: Flow chart. Retrieved 31 July 2008.
  2. ^ Alan B. Sterneckert (2003) Critical Incident Management. p. 126
  3. ^ Gary B. Shelly; Misty E. Vermaat. Discovering Computers, Complete: Your Interactive Guide to the Digital World. Cengage Learning. 2011: 691–693. ISBN 1-111-53032-7. 
  4. ^ Harley R. Myler. 2.3 Flowcharts. Fundamentals of Engineering Programming with C and Fortran. Cambridge University Press. 1998: 32–36. ISBN 978-0-521-62950-8. 
  5. ^ ISO 5807:1985. International Organization for Standardization. February 1985 [23 July 2017]. 
  6. ^ 建立基本流程圖. support.office.com. [2019-04-09] (中文(台灣)‎). 
  7. ^ LAZYweb. 做事是雜亂無章?還是井然有序? —流程圖 迅速掌握任務全貌 - 今周刊. www.businesstoday.com.tw. 2018-05-04 [2019-04-09] (中文(台灣)‎). 
  8. ^ 8.0 8.1 8.2 8.3 8.4 8.5 8.6 8.7 8.8 8.9 Harley R. Myler. 2.3 Flowcharts. Fundamentals of Engineering Programming with C and Fortran. Cambridge University Press. 1998: 32–36. ISBN 978-0-521-62950-8. 
  9. ^ 9.00 9.01 9.02 9.03 9.04 9.05 9.06 9.07 9.08 9.09 9.10 9.11 Gary B. Shelly; Misty E. Vermaat. Discovering Computers, Complete: Your Interactive Guide to the Digital World. Cengage Learning. 2011: 691–693. ISBN 1-111-53032-7. 
  10. ^ 10.0 10.1 What do the different flowchart shapes mean?. RFF Electronics. [23 July 2017]. 
  11. ^ Flowcharting Techniques GC20-8152-1. IBM. March 1970: 10. 
  12. ^ What do the different flowchart shapes mean?. RFF Electronics. [23 July 2017]. 
  13. ^ Myers, Brad A. "Visual programming, programming by example, and program visualization: a taxonomy." ACM SIGCHI Bulletin. Vol. 17. No. 4. ACM, 1986.

外部链接编辑