Upload
bryce-robertson
View
218
Download
2
Tags:
Embed Size (px)
Citation preview
Agile Usability
Jason Chong Lee
Dept. of Computer ScienceCenter for HCIVirginia Tech
CS 3724: Introduction to HCI, November16, 2006
Introduction
Software Engineering Disasters Agile Software Methods Extreme Programming What about Usability? Making Usability Agile/Making Agile
Usable Extreme Scenario-Based Design
BackgroundOverview Approach SBD+XP Wrap-up
Software Engineering Disasters Windows Vista
Too many features Haphazard development Development “reset” in 2004-2005
FAA Advanced Automation System Cost overruns, delays and failures (1982-
1994) $3-6 billion before project scrapped
Duke Nukem Forever Development begins in 1997 Two project resets, staff overturns
Software Engineering Disasters
Increasing complexity Project mismanagement Staff overturn Changing and Ill-defined
requirements Miscommunication …
Agile Software Development
We are uncovering better ways of developing software by doing it and helping others to do it. Individuals and interactions over processes and tools. Working software over comprehensive
documentation. Customer collaboration over contract
negotiation. Responding to change over following a plan.
Extreme Programming
Widely adopted agile development method Communication Simplicity Feedback Courage
One way of tackling problems of Software Engineering
What about Usability?
Concerned with: efficiency, effectiveness, learnability, ease of use, satisfaction
How are these addressed in agile methods? Customer = End User?
How can agile methods and usability play together?
Conflicts
Usability Engineering Agile Software Development
Broad understanding of system Incremental software delivery
Needs of end user Needs of clients
Interface design and development
System design and development
Agile Usability
The integration of usability and agile development processes will lead to: Emergent development of interaction
architecture Rapid and repeatable usability testing
within constraints of agile development
“depth-first” approach to interface design congruent with agile development
Key Issues to Address
Maintaining interface architecture through incremental development
Disseminating design goals & rationale between stakeholders
Usability evaluations in an agile framework
Accommodating ill-defined and changing requirements
Extreme Scenario-Based Design
Combine best practices of SBD and XP SE and UE concurrency Central Design Record
to support communication
Targeted usability evaluations within agile framework
EndUsers
Clients
Agile Software
Developers
UsabilityEngineers
CentralCentralDesignDesignRecordRecord
21
3
UE and SE Concurrency
Root Concept
Scenarios,Claims
User Stories
Release Planning
Iteration
Small releases
Acceptance Tests
Usability Tests
Central Design Record
Common design representation shared by developers Derived from SBD and XP design
artifacts Support communication among
stakeholders Maintain interaction architecture
coherency
Usability Testing
Light-weight analytic evaluations to test usability between iterations
Comprehensive empirical evaluations planned at each release cycle
Evaluations target only select areas of interface
SBD+XP Process
BackgroundOverview Approach SBD+XP Wrap-up
User StoriesAcceptance
Tests
Feature Development
Test Driven Development
Project Scoping
Release
Iteration
Acceptance& Usability Testing
Summative Evaluation &Acceptance
Central Design Record
Root ConceptDesign Goals
Claims & ScenariosUsability
Tests
Contributions
Incremental approach to scenario-based design usable in agile development projects
More usable systems developed by agile development teams
Improved dissemination of design rationale between agile and usability professionals
References (1) Auer, K., and Miller, R. Extreme Programming Applied: Playing to Win.
Addison Wesley, Boston, MA, 2001. Constantine, L. L., Process Agility and Software Usability: Toward
Lightweight Usage-Centered Design. Information Age, 8 (2) 2002. Bass, L., and John, B.E. Linking usability to software architecture
patterns through general scenarios. Journal of Systems and Software 66(3), 2003.
Beck, K., Beedle, M., van Bennekum, A., Cockburn, A., Cunningham, W., Fowler, M., Grenning, J., Highsmith, J., Hunt, A., Jeffries, R., Kern, J., Marick, B., Martin, R.C., Mellor, S., Schwaber, K., Sutherland, J., and Thomas, D. The Agile Manifesto. 2001. Available at http://agilemanifesto.org
Beck, K. Embracing change with extreme programming. Computer. Oct. ’99. 32 (10), 70-77, 1999.
Lee, J. C., Chewar, C. M., and McCrickard, D. S. Image is Everything: Advancing HCI Knowledge and Interface Design Using the System Image. Proc. ACMSE 2005, Vol. 2, 376-381, 2005.
Lee, J. C., Wahid, S., Chewar, C. M., Congleton, B., and McCrickard, D. S.. Spiraling Toward Usability: An Integrated Design Environment and Management System. Technical Report TR-05-15, Computer Science, Virginia Tech, 2005.
Miller, L. Case Study of Customer Input for a Successful Product. In Proc. Agile 2005 Conference, 2005.
References (2)
Nelson, E. Extreme Programming vs. Interaction Design. Fawcette Technical Publications, 2002. http://www.fawcette.com/interviews/beck_cooper/.
Nielsen, J. Usability Engineering. Morgan Kaufman, San Diego, CA, 1993.
Patton, J. Improving on Agility: Adding Usage-Centered Design to a Typical Agile Software Development. In Proc. Second International Conference on Usage-Centered Design (forUSE 2003), 2003.
Payne, C., Allgood, C. F., Chewar, C. M., Holbrook, C., and McCrickard, D. S. Generalizing Interface Design Knowledge: Lessons Learned from Developing a Claims Library. Proc. IRI 2003, 362-369, 2003.
Preece, J., Rogers, Y., Sharp, H., Benyon D., Holland, S., Carey, T. Human-Computer Interaction. Addison-Wesley, Wokingham, England, 1994.
Rosson, M. B. and Carroll, J. M. Usability Engineering: Scenario-Based Development of Human-Computer Interaction. Morgan Kaufman, New York, NY, 2002.
Shneiderman, B., and Plaisant, C. Designing the User Interface. Addison Wesley, Boston, MA, 2005.
Wahid, S., Allgood, C. F., Chewar, C. M., and McCrickard, D. S. Entering the Heart of Design: Relationships for Tracing Claim Evolution. In Proc. SEKE 2004, 167-172, 2004.