There is an application based on multiple screen model with pretty complex net of transitions between these screens.
It has some similarities to a web page or Football Manager like games. Its main properties are:
- It has screen stack and it has back/history like function.
- Events cause screen transitions.
- Some of screens can work in different contexts (the source screen and external conditions influence what transitions are possible).
- Loops are possible
Due to a lack of better idea I have started with a state diagram and PlantUML and it worked good until the scale started to become a problem. In the mean time I catched many bugs very often related to screen transitions. The application development is probably already suffering from this complexity and lack of this kind of documentation.
After two weeks of pretty intensive analysis and map drawing the map is totally in progress and it becomes harder and harder to maintain it even when I have a fresh knowledge about it.
What approach should I adopt to produce a useful GUI map of this application? How do people manage such things in a time efficient way?