In the quest for quality, software developers have long focused on improving the internal architecture of their products. Larry L. Constantine--who originally created structured design to effect such improvement--now joins with well-known consultant Lucy A. D. Lockwood to turn the focus of software development to the external architecture. In this book, they present the models and methods of a revolutionary approach to software that will help programmers deliver more usable software--software that will enable users to accomplish their tasks with greater ease and efficiency.
Recognizing usability as the key to successful software, Constantine and Lockwood provide concrete tools and techniques that programmers can employ to meet that end. Much more than just another set of rules for good user-interface design, this book guides readers through a systematic software development process. This process, called usage-centered design, weaves together two major threads in software development methods: use cases (also used with UML) and essential modeling. With numerous examples and case studies of both conventional and specialized software applications, the authors illustrate what has been shown in practice to work and what has proved to be of greatest practical value.
I. TOWARD MORE USABLE SOFTWARE.1. Software for Use: Usage, Usability, and User Interfaces.
Changing Contexts. 2. Built-in Usability: A Usage-Centered Design Approach.
Interfacing with Users.
Elements of a Usage-Centered Approach.
Coordinated Activity. 3. In Principle: Rules and Principles of Usage-Centered Design.
Design as Dialogue.
Rules and Principles.
User Interface Design Principles.
Details, Details, Details.
II. ESSENTIAL MODELS FOR USABILITY.4. Users and Related Species: Understanding Users and User Roles.
Of Use and Users.
Real Users and Others.
User Role Models.
User Role Maps.
User Roles in Action.
Structured Role Models. 5. Working Structures: Task Modeling with Essential Use Cases.
Work, Work, Work.
The Use Case Map.
Building Essential Use Case Models.
Application. 6. Interface Architecture: Interface Contents and Navigation.
The Context Navigation Map.
III. CREATING THE VISUAL DESIGN.7. Designing the Dialogue: Layout and Communication.
From Abstraction to Expression.
Screen Real Estate. 8. Practical Widgetry: Choosing and Designing Visual Components.
Buy or Build.
Selecting Selection Widgets. 9. Innovative Interfaces: Creative Interface Engineering and Custom Components.
The Process of Innovation.
IV. COMPLETING THE DESIGN.10. Expressing Solutions: Implementation Modeling and Prototypes.
Prototypes and Prototyping.
Mapping the Models.
Implementation Modeling Illustrated. 11. Help Me if You Can: Designing Help and Helpful Messages.
Even Experts Need a Lift.
Use Cases for Help.
Access and Presentation Techniques.
Special Techniques and Modalities.
Helpful Messages. 12. Once a Beginner: Supporting Evolving Usage Patterns.
Skiing the Interface.
Designing for Progressive Usage.
Progressive Usage Applied. 13. In Place: Fitting the Operational Context.
Putting Context in Place. 14. Same Game, Different Fields: Special Applications, Special Issues.
Theme and Variation, Again.
Web Design for Use.
Web Wisdom Applied.
Embedded Systems Applications.
Other Special Interfaces. 15. Usage-Centered Design Applied: The TeleGuida Case.
TeleGuida Users and Uses.
Toward a TeleGuida Prototype.
V. ASSESSMENT AND IMPROVEMENT.16. Better Next Time: Improvement by Inspection and Review.
Collaborative Usability Inspections.
Focused Inspections. 17. By the Numbers: Measuring Usability in Practice.
User Interface Design Metrics.
Essential Usability Metrics Suite.
Metrics in Practice. 18. Test Scores: Laboratory and Field Testing of Usability.
Testing, One, Two.
Why Test, Why Not.
VI. ORGANIZING AND MANAGING THE PROCESS.19. Code and You're Done: Implementing Interfaces.
Objects and Interfaces.
Visual Development of Visual Designs. 20. Using Your Users: Users in the Development Process.
Use or Abuse of Users.
Requirements Dialogue, Requirements Dance.
Going to the Source.
Joint Essential Modeling. 21. Getting Organized: Usability in the Larger Context.
Standards and Style Guides.
Experts and Expertise.
Cultural Fit. Appendix A. Suggested Readings.
Appendix B. Eleven Ways to Make Software More Usable: General Principles of
Software Usability. Appendix C. Glossary.
Appendix D. Forms for Usage-Centered Design.
Appendix E. Subjective Usability Scales for Software (SUSS).