Behind most non-trivial user interface screens lie complex webs of code that many practitioners in the software industry find difficult to control. Despite the obvious power and sophistication of user interface development tools, the majority of user interface software is difficult to understand because it is coded without an overall design.In this book, Ian Horrocks presents a proven technique for designing event-driven software using the UCM architecture and the statechart notation. The state chart approach to constructing user interface software results in code that can be: written quickly and easily, tested using white box techniques, repeatedly enhanced over the lifetime of a system, modified with a minimal risk of introducing unwanted side-effects, regression tested without the need for full re-tests. This book provides a practical guide to constructing real user interfaces for real projects.It is primarily written for practicing software engineers, but will also be invaluable to students wishing to gain an insight into user interface construction.