流程图

流程图，又称程序框图是表示算法、工作流或流程的一种框图表示，它以不同类型的框代表不同种类的步骤，每两个步骤之间则以箭头连接。这种表示方法便于说明解决已知问题的方法。流程图在分析、设计、记录及操控许多领域的流程或程序都有广泛应用。SEVOCAB: Software Systems Engineering Vocabulary . Term: Flow chart. Retrieved 31 July 2008.

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

 步驟：通常稱作「活動」，常以長方形來表示
 決定：常以棱形來表示

當流程圖被分隔成水平或垂直的不同部份的時候通常會說是『跨功能』的，這是用來描述不同的控制單元。特定的控制單元會隨著特定的部份呈現成一個圖示。一個跨功能流程圖能讓畫圖者正確地給『執行步驟』或『做出決定』來區分職責，並且能顯示出一個流程中每個不同部份的組成單元的職責。

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

另外，盒圖與也可以用來表示流程。
缩略图|在紙張上用標準尺來輔助繪圖

 类型 
Sterneckert (2003) 认为流程图可以分为以下四种类型：Alan B. Sterneckert (2003) Critical Incident Management. p. 126 
 文件流程图
 資料流程圖
 系统流程图
 程序流程图

 繪制流程圖 

 常用符號 
美國國家標準協會是1960年代就開始制定流程圖及一些標準符號。而在1970年，國際標準化組織採用其方案。現時通用的版本ISO 5807是在1985年修訂。以下圖例列出一些ISO常用符號。
形狀名稱描述链接=https://en.wikipedia.org/wiki/File:Flowchart_Line.svg|85x85像素流程符號
Flowline (Arrowhead)用來表達過程的次序，用一條線由一個符號連接去到另一個符號。如果不是標準的上至下、左至右圖就會加上箭頭。链接=https://en.wikipedia.org/wiki/File:Flowchart_Terminal.svg|74x74像素起止符號
Terminal用來表示程式或子程式的開始與完結。常以一個圓角長方形表示。通常裏面會標上「開始」或「結束」或其他相關字眼，如「提交查詢」或「接受產品」。链接=https://en.wikipedia.org/wiki/File:Flowchart_Process.svg|76x76像素程序
Process以長方形來代表一系列程序去改變數值、形式、數據的位置。链接=https://en.wikipedia.org/wiki/File:Flowchart_Decision.svg|75x75像素決策判斷
Decision以一個菱形去顯示一個條件進程，用來按情況去決定下一步走向。通常以「是/否」或「真/假」值去決定。链接=https://en.wikipedia.org/wiki/File:Flowchart_IO.svg|74x74像素輸入/輸出
Input/Output以平行四邊形來標示數據輸入或輸出的過程，即填入數據或顯示工作結果的步驟。链接=https://en.wikipedia.org/wiki/File:Flowchart_Annotation.svg|80x80像素註解
Annotation (Comment)用來補充某步驟的額外資訊，可用一個虛線來連接一個半閉合的長方型至想註釋的符號中。链接=https://en.wikipedia.org/wiki/File:Flowchart_Predefined_Process.svg|76x76像素已定義流程
Predefined Process用一個有2條左右垂直線長方型，來表示一個已在其他地方定義了的過程。链接=https://en.wikipedia.org/wiki/File:Flowchart_Connector.svg|50x50像素同頁參考
On-page Connector用一個含有字母的小圓圈來連接目標流程畫於同一頁上。链接=https://en.wikipedia.org/wiki/File:Off_page_connector.png|56x56像素換頁參考
Off-page Connector用一個倒畫的屋型來表示目標流程畫於另一頁上。

 其他符號 
除了上述的基本符號，舉例以下：
形狀名稱描述54x54像素|Flowchart database數據檔或資料庫
Data File or Database用一個圓柱來表示數據庫。64x64像素|Flowchart Document文件
Document用一個附有波浪形底的長方形來標示文件。64x64像素|Flowchart Document multiple用多個附有波浪形底的長方形來標示多份文件。71x71像素|Flowchart display顯示
Display用一個左三角正方右圓角形狀來標示結果顯示的過程。66x66像素|Flowchart manual input人工操作
Manual operation用一個直角半梯形來標示需要人手錄入、修正或操作的過程。70x70像素|Flowchart Preparation初始化
Preparation or Initialization用一個拉長了的六角形來代表初始化或預備的過程。

 繪製工具 
链接=https://en.wikipedia.org/wiki/File:Flowgorithm_Editor.png|右|缩略图|273x273像素|Flowgorithm
任何繪圖軟件都可以創造流程圖，有些軟件可以將流程圖背後的數據模型記錄下來，方便與數據庫、專案管理或電子試算表等軟件協作。不同的軟件如、Inkscape及Microsoft Office Visio都可以製作流程圖。也有一些軟件可以將編程原始碼或指定的流程圖描述碼來轉換出來。

有些視覺化程式設計語言Myers, Brad A. "Visual programming, programming by example, and program visualization: a taxonomy. " ACM SIGCHI Bulletin. Vol. 17. No. 4. ACM, 1986.採用流程圖來顯示程式的運作。這些工具都可以用來教導初學者去編程，例子有Draw.io、、、、LARP、、及VisiRule。

 参见 
 算法状态机
 Microsoft PowerPoint
 工作流技术 
 符号
 过程流程图
 控制流程圖

 参考来源 

 外部链接 

Flowcharting Techniques  An IBM manual from 1969 (5MB PDF format)
 FlowChart Symbols List 

Category:建模语言
Category:图表
Category:技術通信
Category:计算机编程
Category:带有代码示例的条目
Category:美国发明