With a complex web-based application, there is a lot of interaction between the user and parts of the system, the different states and events should be captured and modelled to show the possible user journeys through the system.