Flowcharts, State Diagrams, UML and diagramming Thinking and Work Flow


We discussed flowcharts in our last meeting as a way to document the logic and flow of our LEGO programs.  Flowcharts are a graphical way to describe thinking and work flow.  There are many apps and websites that allow you to create and edit flowchart diagrams.


Each geometric shape represents a different computational function that maps directly onto our Mindstorms programming blocks (eg  parallelogram for input/output = sensors/motors).  Here are the main symbols we used:


Here is a more complete list of flowchart symbols

Here is a more detailed flowchart diagram that documents a LEGO Mindstorms program controlling a robot exploring an unknown environment from an engineering lab in Switzerland:


And flowcharts are not limited to just describing software programs, since they are often used to document business processes and workflow.  For example, here is diagram that shows the workflow for the sales process in an organization:


Finally, flowcharts are not the only way we can describe software, thought and work flow.  Unified Modeling Language (UML) is the current standard for documenting complex software that goes far beyond just software flow including things like specific architecture decisions like object, properties, methods and how they interact.  We can also describe our software in terms of state diagrams which is one of the many types of documents that UML can encompass.


State Diagram




Unified Modeling Language


UML encompasses many different documentation types


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s