Transcript .ppt
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 – 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 usercentered development (UCD) User-Centered Development • UCD process (ISO 13407) lists 4 activities undertaken during a project 1. 2. 3. 4. 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