Flowchart: Difference between revisions
[pending revision] | [pending revision] |
m Reverted edits by 70.251.179.254 (talk) to last version by ClueBot |
|||
Line 90: | Line 90: | ||
*[http://office.microsoft.com/en-us/visio/HA102140011033.aspx Create flow charts using Microsoft Visio] - Create flowcharts using Microsoft Visio |
*[http://office.microsoft.com/en-us/visio/HA102140011033.aspx Create flow charts using Microsoft Visio] - Create flowcharts using Microsoft Visio |
||
*[http://haris.tv/2007/06/25/how-to-flowchart-with-microsoft-excel/ Create flow charts using Microsoft Excel] - Create flowcharts using Microsoft Excel |
*[http://haris.tv/2007/06/25/how-to-flowchart-with-microsoft-excel/ Create flow charts using Microsoft Excel] - Create flowcharts using Microsoft Excel |
||
*[http://www.smartdraw.com/specials/flowchart.asp Create flow charts using SmartDraw] - Create Flowcharts using SmartDraw |
|||
[[Category:Algorithms]] |
[[Category:Algorithms]] |
Revision as of 21:52, 24 September 2007
![](http://upload.wikimedia.org/wikipedia/commons/thumb/9/91/LampFlowchart.svg/250px-LampFlowchart.svg.png)
A flowchart (also spelled flow-chart and flow chart) is a schematic representation of an algorithm or a process. A flowchart is one of the seven basic tools of quality control, which also includes the histogram, Pareto chart, check sheet, control chart, cause-and-effect diagram, and scatter diagram (see Quality Management Glossary). They are commonly used in business/economic presentations to help the audience visualize the content better, or to find flaws in the process. Alternatively, one can use Nassi-Shneiderman diagrams.
A flowchart is described as "cross-functional" when the page is divided into different "lanes" describing the control of different organizational units. A symbol appearing in a particular "lane" is within the control of that organizational unit. This technique allows the analyst to locate the responsibility for performing an action or making a decision correctly, allowing the relationship between different organizational units with responsibility over a single process.
History
According to Herman Goldstine, he developed flowcharts with John von Neumann at Princeton University in late 1946 and early 1947.[1]
Software
Manual
Any vector-based drawing program can be used to create flowcharts. Some tools offer special support for flowcharts, e.g., ConceptDraw and SmartDraw.
Automatic
Many software packages exist that can create flowcharts automatically, either directly from source code, or from a flowchart description language:
For example, Graph::Easy, a Perl package, takes a textual description of the graph, and turns it into various output formats like HTML, ASCII or SVG. The example graph at the top of the page and listed below would be described like the text shown below. The automatically generated SVG output is shown on the right:
![](http://upload.wikimedia.org/wikipedia/commons/thumb/6/62/Lava_lamp_flowchart.svg/250px-Lava_lamp_flowchart.svg.png)
graph { flow: south; } node.start { shape: rounded; fill: #ffbfc9; } node.question { shape: diamond; fill: #ffff8a; } node.action { shape: rounded; fill: #8bef91; } [ Lamp doesn't work ] { class: start } --> [ Lamp\n plugged in? ] { class: question; } -- No --> [ Plug in lamp ] { class: action; } [ Lamp\n plugged in? ] --> [ Bulb\n burned out? ] { class: question; } -- Yes --> [ Replace bulb ] { class: action; } [ Bulb\n burned out? ] -- No --> [ Buy new lamp ] { class: action; }
There exist also various MediaWiki Extensions to incorporate flowchart descriptions directly into wiki articles. This is then automatically turned into the desired output format.
Examples
![](http://upload.wikimedia.org/wikipedia/commons/thumb/d/d6/FlowchartExample.png/250px-FlowchartExample.png)
A flowchart for computing factorial N (N!) Where N! = 1 * 2 * 3 *...* N. This flowchart would be difficult to program directly into a computer programming language since most programming languages branch on "yes" or "true" and continue on "no" or "false". Further, the flowchart represents "a loop and a half" — a situation discussed in introductory programming textbooks that requires either a duplication of a component (to be both inside and outside the loop) or the component to be put inside a branch in the loop.
Since computer programming languages do not contain all of the constructs that can be created by the drawing of flowcharts, they do not often help new programmers learn the concepts of logical flow and program structure. To try writing flowcharts for computer programs, an on-line applet for iconic programming is available that limits the flowchart components and connections to those that can be directly converted into any programming language. (Note: click on the yellow square to begin.)
References
</references>
See also
- Augmented transition network
- Recursive transition network
- Unified Modeling Language (UML)
- Business Process Mapping
- State diagram
- Control flow graph
- Data flow diagram
- Petri nets
- Process architecture
- Pseudocode
- Business process illustration
- Functional flowchart
External links
![]() | This article's use of external links may not follow Wikipedia's policies or guidelines. |
- Flowchart.com: Web Based Flowchart Software, no plugins required
- Flowcharting Techniques, an IBM manual from 1969 (5MB PDF format)
- Introduction to Programming in C++ flowchart and pseudocode (PDF)
- FlowLevel white paper
- Examples (Spanish)
- Opensource Javascript Flowchart Tool
- boxily: Web Based Diagraming Software
- Flowchart4j - Code to flowchart for Java
- devFlowcharter - Opensource Flowchart2SourceCode Tool
- PC Troubleshooting - A troubleshooting flowchart for PC boot failures
- Create flow charts using Microsoft Visio - Create flowcharts using Microsoft Visio
- Create flow charts using Microsoft Excel - Create flowcharts using Microsoft Excel
- Create flow charts using SmartDraw - Create Flowcharts using SmartDraw
- ^ Goldstine, Herman (1972). The Computer from Pascal to Von Neumann. Princeton University Press. pp. 266–267. ISBN 0-691-08104-2.