Better programs through better interaction design
- By Jack Vaughan
Programmers Report spoke recently with Dick Berry, an IBM distinguished engineer working on that holiest of Holy Grails: ease of use.
Berry and his colleagues have worked on an Object View Interaction Design (Ovid) method that seeks to address the age-old challenge of successfully culling system requirements from users, and then rapidly converting those requirements into useful interactive systems. Despite an army of effort and the advent of object-oriented design and UML, these problems have not been solved. Ovid turns new ground, but also seeks to build on these past efforts.
In the Ovid method, analysts produce UML models that contain user model classes, view classes, tasks and goals. Code generation tools then quickly create prototypes that provide navigable views of the systems at work. With this approach, immediate and all-important customer evaluations can be quickly undertaken. The tools are intended to help both application developers and specialist user-experience designers.
"Look and feel," those bellwether characteristics of the user interface (UI), used to get a lot more attention until the Web took over and the Web browser became the interface. But even if look and feel was successfully met -- and the endless series of dialog Web windows that pass for navigation today is hardly a success in this writer's book -- look and feel is just part of the interface. In fact, Berry contends that visuals and interaction techniques are a small part of the total picture. Most important to user interaction is the user's working conceptual model of what a system does and how it does it.
"Users have conceptual models in their minds about how things work," said Berry. In the conceptual model are beliefs, goals, and even emotions and superstitions, he said.
The elements that make up the conceptual model are far different than those in a designer's model or a developer's toolkit. Yet the gap must be bridged if developers are to deliver truly useful systems. Berry's work has identified a series of distinct "views" that help translate user input into good design -- and development -- phase choices.
Berry has been at work trying to produce a type of RAD tool that can generate low-fidelity (at least) interfaces from well-hewn UML use cases. In 2002, Berry and others created an Ovid-with-automation proof of concept using Rational Rose, a plug-in that converts UML to XML, and a XSLT-to-XForms processor (using WebSphere Studio to create interface layouts). Subsequently, that work has been further refined and higher-fidelity prototypes have been built.
Over the years, more than a few developers have been in a rush to code, and some of these perhaps have not been entirely open to user input. But such a view may not reflect the full weight of the trend at work these days.
Said Berry: "I think we as developers are getting better at listening to what users are saying and recording it as part of the development process."
For more on UIs and Ovid, try these Web sites:
"User Engineering" found on IBM's Web site at http://www-306.ibm.com/ibm/easy/eou_ext.nsf/Publish/1996
"Designing for the User with OVID" on the Amazon.com Books Web site at http://www.amazon.com/exec/obidos/tg/detail/-/1578701015/103-633374433917466?v=glance
"Strike a balance: Users' expertise on interface design" found on IBM's Web site at http://www-106.ibm.com/developerworks/web/library/wa-ui/
Jack Vaughan is former Editor-at-Large at Application Development Trends magazine.