A flowchart is a graphical representation of an algorithm (e.g., process, workflow, or procedure) in the form of boxes connected by arrows. Flow charts are a type of diagram. They are often employed in the design, analysis, documentation, or management of a project or large task. They are also referred to as process maps, process charts, process models, and workflow diagrams.
Frank Gilbreth is credited with introducing flowcharts into popular usage. He presented the concept of flowcharts to members of ASME (American Society of Mechanical Engineers) in 1921. It caught on very quickly after this presentation. It became a part of engineering curricula, and then it was introduced to the world of business. Today, virtually every industry and discipline employs flowcharts.
Flowcharts organize the steps of a process in a clear and simple way. They allow the user to visualize what is happening and have a better understanding of the overall process. Through this tool they can easily spot a wide variety of problems, and also refine a process.
A flowchart utilizes a large set of boxes and notation. The most common of these types are listed below for review:
Rectangular box: This is used to enclose a step in the process; for example, a step in an application could be get user input, so it would be placed inside a rectangle box.
Diamond box: This is used to enclose a decision; for example, a decision in an application could be input missing numeric value, so it would be placed in a diamond box and paired with appropriate arrows.
Arrow line: This is a line that extends from one box to another to indicate order or control; for example, a yes arrow may extend from a decision box to another box to indicate what should happen if the decision box's condition is true.
There are many more symbols utilized in flowcharts: circle connectors, annotations, terminal ovals, input/output parallelograms, preparation hexagons, and more.
There are many opinions on the matter of flowchart classification, but it is fair to say that there are essentially 4 types of flow charts:
Program: These flowcharts reveal the controls within a program.
Data: These flowcharts reveal the controls within the data of a system.
System: These flowcharts reveal the resource or physical controls within a system.
Document: These flowcharts reveal the controls within a document.