140 likes | 259 Views
Software Usability By: Robert J. Remington. EEL6883 – Software Engineering II Dr. Turgut – University of Central Florida Presented By: Adam Radwan 19 February 2007. Introduction. Initial thoughts
E N D
Software UsabilityBy: Robert J. Remington EEL6883 – Software Engineering II Dr. Turgut – University of Central Florida Presented By: Adam Radwan 19 February 2007
Introduction • Initial thoughts • Frequently software engineers would like to know if there are any good resources and documentation for designing a good GUI • No magic bullet in design, rather there is a set of rules and suggestions outlined in SWEBOK • IBM Report: 42% of users avoided ordering from the web when presented with a poorly designed user interface
Software Quality • Six ISO Standard high-level characteristics to describe software quality • Functionality • Reliability • Efficiency • Maintainability • Portability • Usability
Usability • Usability definition: “characteristics relating to the effort needed for use, and on the individual assessment of such use, by a stated or implied set of users” • Discussion: What does this definition actually mean? Do the users have any implied prerequisites for system use?
Usability • Five characteristics • Understandability • Learnability • Operability • Attractiveness(misspelled in the article) • Compliance to application-related standards, conventions, regulations in law, and protocols
Usability Engineering (UE) • Human-Computer Interaction (HCI) mismatches have caused fatal mistakes • Casey (Santa Barbara, CA ’93) reports a case where a radiotherapy accelerator proton beam delivered a lethal 25 M eV as a result of a poorly designed, buggy user interface • Usability Professionals Association (UPA) formed at ACM SIG-CHI ’92 by 30 delegates; now over 2000 members
UPA resources • Body of Knowledge spans studies done at 63 research and development centers • Over 350 articles and laboratory reviews • Human-Computer Interaction journal publishes many up-to-date articles • As a result, UE has expanded its process models, design standards, and evaluation methodology all combines into user-centered development (UCD)
User-Centered Development • UCD process (ISO 13407) lists 4 activities undertaken during a project • Understand and specify the context of use • Specify the user and organizational requirements • Produce design solutions • Evaluate designs against requirements
Usability Design Standards • ISO 9241 lists standards and guidelines for: • Displayed colors • Dialog principles • Presentation of information • User Guidance • Menu Dialogs • Form-filling Dialogs
Rapid Prototyping • Creation of a limited, functional user interface for a “test drive” proven effective • Allows for feedback to be obtained in earlier stages of development • Helps avoid errors resulting in design problems from miscommunication about user requirements
Software Usability Evaluation • Evaluation should take places at all stages of development • Research centers often use laboratories with one-way mirrors, microphones, and cameras to monitor how a user may interact with a system for the first time • Fitted curve can estimate the number of problems uncovered based on the number of evaluated users • 5 users usually uncover approx. 80% of errors
Future Challenges • Web-based user interfaces have been a limiting factor compared to traditional GUI development • Smaller display size and limited input of mobile applications are current drawbacks with many portable implementations • Some systems for I/O and control may best be kept on larger form-factor equipment
Summary • No single proven technique for development of high-usability software • Usability Engineering becoming more advanced, contributions have increased overall software product quality • Further HW/SW advances may solve some known limitations and drawbacks
Questions? • Any questions? • Time permitting, brief navigation to several websites displaying examples of usability