ACCU Home page ACCU Conference Page
Search Contact us ACCU at Flickr ACCU at GitHib ACCU at Google+ ACCU at Facebook ACCU at Linked-in ACCU at Twitter Skip Navigation

Search in Book Reviews

The ACCU passes on review copies of computer books to its members for them to review. The result is a large, high quality collection of book reviews by programmers, for programmers. Currently there are 1918 reviews in the database and more every month.
Search is a simple string search in either book title or book author. The full text search is a search of the text of the review.
    View all alphabetically
Title:
Constructing the User Interface with Statecharts
Author:
Ian Horrocks
ISBN:
0 201 34278 2
Publisher:
Addison-Wesley
Pages:
253pp
Price:
£19-95
Reviewer:
Derek Graham
Subject:
user interfaces
Appeared in:
OL35
The author of this book firmly believes that the rise of so-called 'Visual' development tools has led to the creation of GUI-based applications that are wholly dependent on the GUI framework and are constructed in a largely ad-hoc fashion. This leads to a pathological coupling between interface and application with all the associated maintenance and quality nightmares. This book then is an attempt to apply a little engineering and architectural design to an application interface in the hope of creating something that is more flexible, maintainable and robust.

The book starts with chapters on UI construction issues and introduces the idea of a 'user interface - control - model' architecture. The author uses a simple CD player application to demonstrate the superiority of the statechart notation over more conventional state transition diagrams.

Several chapters go on to discuss the statechart notation and the practical issues involved in producing consistent diagrams for an event-driven application design. This was the most useful section of the book, in my opinion, containing many heuristics and tests, which can be used to check your designs.

There are chapters devoted to three case studies; a calculator, a help-desk system and the ubiquitous student database. These serve to expand on the points made in the previous chapters. At the end of the book are chapters on coding and testing together with an evaluation of the techniques presented.

The thing that stops me from recommending this book whole-heartily is the chapter on translating the design into actual code, which is crammed into 13 pages. The argument to use statecharts is let down badly by the code examples, which are in some weird Basic-like pseudocode. This obscures rather than illustrates the intention of each example. I would like to see examples in a range of specific languages such as C++, VB and Delphi.

A very good starting point for designing and documenting an interface but not the complete answer.