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

Thumb
应对灯泡不亮的简单流程图

概览

流程图背后可以概括了各节点类型、其内容及其他补充用的资讯。在设计或者记录一些简单的步骤或程序都会用得上流程图。与其他图表一样,这种图表可以帮助可视化发生了什么事情,从而更易去理解中间的工序。虽然有很多𧗠生出来的版本,各目有各目的标示方式,它们大都都有以下2种的符号:

  • 步骤:通常称作“活动”,常以长方形来表示
  • 决定:常以棱形来表示

当流程图被分隔成水平或垂直的不同部分的时候通常会说是‘跨功能’的,这是用来描述不同的控制单元。特定的控制单元会随着特定的部分呈现成一个图标。一个跨功能流程图能让画图者正确地给‘执行步骤’或‘做出决定’来区分职责,并且能显示出一个流程中每个不同部分的组成单元的职责。

流程图可以图像化一些指定的过程。通常配合其他种类的图表来使用。例如,20世纪著名于质量管理的日本学者石川馨认为流程图可以并行七个质量控制工具之一。流程图与直方图柏拉图查检表管制图石川图(鱼骨图)及散布图都同等重要。而是统一塑模语言中的活动图,也可以用来与众多其他图表配搭使用。

另外,盒图Drakon图英语DRAKON也可以用来表示流程。

Thumb
在纸张上用标准尺来辅助绘图

类型

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

绘制流程图

常用符号

美国国家标准协会是1960年代就开始制定流程图及一些标准符号[3]。而在1970年,国际标准化组织采用其方案[4]。现时通用的版本ISO 5807是在1985年修订[5]。以下图例列出一些ISO常用符号[6][7]

More information 形状, 名称 ...
形状 名称 描述
Thumb 流程符号

Flowline (Arrowhead)[8]

用来表达过程的次序,用一条线由一个符号连接去到另一个符号[9]。如果不是标准的上至下、左至右图就会加上箭头[8]
Thumb 起止符号

Terminal[9]

用来表示程序或子程序的开始与完结。常以一个圆角长方形表示[9]。通常里面会标上“开始”或“结束”或其他相关字眼,如“提交查询”或“接受产品”。
Thumb 程序

Process[8]

以长方形来代表一系列程序去改变量值、形式、数据的位置[8]
Thumb 决策判断

Decision[8]

以一个菱形[8]去显示一个条件进程,用来按情况去决定下一步走向[9]。通常以“是/否”或“真/假”值去决定。
Thumb 输入/输出

Input/Output[8]

以平行四边形[9]来标示数据输入或输出的过程,即填入数据或显示工作结果的步骤[8]
Thumb 注解

Annotation[9] (Comment)[8]

用来补充某步骤的额外资讯,可用一个虚线来连接一个半闭合的长方型至想注释的符号中[8]
Thumb 已定义流程

Predefined Process[9]

用一个有2条左右垂直线长方型,来表示一个已在其他地方定义了的过程[9]
同页参考

On-page Connector[9]

用一个含有字母的小圆圈来连接目标流程画于同一页上。[9][10]
换页参考

Off-page Connector[9]

用一个倒画的屋型来表示目标流程画于另一页上[9][10]
Close

其他符号

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

More information 形状, 名称 ...
形状 名称 描述
Flowchart database 数据档或数据库

Data File or Database

用一个圆柱来表示数据库。
Thumb 文件

Document

用一个附有波浪形底的长方形来标示文件。
Thumb 用多个附有波浪形底的长方形来标示多份文件。
Thumb 显示

Display

用一个左三角正方右圆角形状来标示结果显示的过程。
Thumb 人工操作

Manual operation

用一个直角半梯形来标示需要人手录入、修正或操作的过程。
Thumb 初始化

Preparation or Initialization

用一个拉长了的六角形来代表初始化或预备的过程。
Close

绘制工具

Thumb
Flowgorithm

任何绘图软件都可以创造流程图,有些软件可以将流程图背后的数据模型记录下来,方便与数据库、项目管理电子表格等软件协作。不同的软件如yEd英语yEdInkscapeMicrosoft Office Visio都可以制作流程图。也有一些软件可以将编程原始码或指定的流程图描述码来转换出来。

有些可视化程式设计语言[13]采用流程图来显示程序的运作。这些工具都可以用来教导初学者去编程,例子有Draw.ioFlowgorithm英语FlowgorithmGitMind英语GitMindLucidchart英语Lucidchart、LARP、Raptor英语RaptorVisual Logic英语Visual Logic及VisiRule。

参见

参考来源

外部链接

Wikiwand in your browser!

Seamless Wikipedia browsing. On steroids.

Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.

Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.