Describe StateFlow here. I (BillHamaker) took name from the article http://www.ibissoft.se/publications/Cases.pdf by Tomas Anderson, Annika Andersson-Ceder, and Ilia Bider. It is a particular approach to organizing business processes in a computer system intended as an alternative to traditional workflow models. Some key concepts are that a process has "state" which is driven forward toward a final state by activities. The state of a process includes planned activities. When planned activities are completed they create events which can be collected into a chronicle. From a system analysis and design point of view the idea is the pattern is that you identify the information that comprises the state of the process and put this on the main display screen for the application. You then provide ways to display and update the planned activities and to display the chronicle of events. In thinking about it I would suggest that the design might include expected events as well as completed events. So that instead of waiting until an activity is completed to create event records you would instead create the expected event records when the planned activity record is created. Then when the activity completes you can change the status of the event record from "expected" to "occurred".