I just thought about an idea for a generic model to design graphical user interface. I would would like to hear your opinion. i am new to this forum and if it is not the place for such posts feel free to tell me.
The method is based on the idea that the GUI of a system can be modeled as tree, where every node represents a window and every edge represent a navigation option. Every leave node represents a functional window which allows the user to achieve his use case and the non-leave node represent a navigation menu. The best way to illustrate this will be via an example.
Assuming we want to implement the GUI of a system with the following use cases:Show transactions over time, Show transactions per user, Update user information, Add transaction, Add user.
The matching tree will be
Explanation: in the following example we can see the root node will be the main menu of our system that will have three navigation options view, update, add. View represents a menu with two navigation options view transaction over time and view transactions per user. Update node represent a menu with only one option update user (still we would like to keep this menu in case there will be additional update use cases in the future). Add represents a menu with two navigation options add user and add transaction.