UI model discovery is a lightweight formal method in which a model of an interactive system is automatically discovered by exploring the system’s state space, simulating the actions of a user; such models are then amenable to automatic analysis targetting structural usability concerns. This paper specifies UI model discovery in some detail, providing a formal, generic and language-neutral API and discovery algorithm. The technique has been implemented in prototype systems on several programming platforms, yielding valuable usability insights. The API described here supports further development of these ideas in a systematic manner. Author Keywords Discovery tools; interaction programming; structural usability; reverse engineering. ACM Classification Keywords
Andy Gimblett, Harold W. Thimbleby