Project Butterfly Baby Activity Diagram

We can argue the merits of UML 2.0 all day, especially in the context of Agile, but activity diagrams are very useful and I highly recommend drawing them and keeping them handy.  In Agile, developers build new features and data flows in the application so quickly it is difficult to keep a mental flow of the overall application.  Activity diagrams communication with stakeholders, developers, and others as to the overall shape of the flow without adding too much overall detail.  They do get big quickly, though.

Advanced activity diagrams can include concurrency and timing for threaded applications.  Super useful when picking out possible timing issues.

I made this one for Project Butterfly's very basic functionality with's UML set and identified all the possible REST calls.  Nothing complicated here at all but it makes a nice example of the technique.

Project Butterfly Activity

Project Butterfly Activity

This is the point where I'm generally done futzing around with drawing tools and get down to the work of producing an actual application.