Integrating scenario-based usability engineering and agile software development

In recent years, agile software development methodologies such as extreme programming and SCRUM have emerged as one way to mitigate major risks of software development such as changing requirements, communication breakdowns and cost and scheduling overruns. These methodologies have become increasingly popular within the software development community and have been used in a variety of projects because they have helped in delivering software on-time that meets customer requirements. However, agile development methodologies—which focus on the design, implementation and maintenance of software, have marginalized the role of usability—which focuses on optimizing the interaction and information design of a system. This often results in software systems that meets functional requirements, but are difficult or frustrating to use. There is a need to develop a way to integrate usability into agile development practices without compromising the benefits they bring to software engineering. I have developed an approach to integrate extreme programming (XP)—a widely practiced agile design method with scenario-based design (SBD)—a well established usability engineering process. Key to this extreme scenario-based design (XSBD) approach is the central design record (CDR), a shared design representation I developed based on my work in rationale-based usability engineering. I hypothesize that this approach will enable the creation of agile development teams that include usability engineers who can work effectively with other stakeholders to develop usable software systems efficiently. This work will address three key issues: (1) How to satisfy the requirements from different stakeholders (specifically usability and software engineers) when they have different motivations, needs and concerns (2) How to maintain project velocity and a focus on the delivery of working software with the addition of usability practices and tools to the development process (3) How to develop & maintain a coherent interface and interaction architecture design in an agile development environment The successful integration of SBD and XP depends not only on shared design representations, but also on how they are used throughout the development cycle. Proposed efforts will focus on how the CDR can be used effectively in practice and will focus on how usability artifacts and results should be shared with agile developers and how project velocity can be maintained. This work will be validated with a comprehensive case study conducted at Meridium, Inc and results will be disseminated through journal and conference paper submissions and workshops at leading agile and usability venues. Design principles and practices that are developed will be broadly applicable to the agile community and will also contribute to and make connections with the HCI research community.

[1]  Thomas P. Moran,et al.  Design rationale: the argument behind the artifact , 1989, CHI '89.

[2]  Christopher J. Harvey Waste of time , 1988 .

[3]  Clayton Lewis,et al.  Designing for usability—key principles and what designers think , 1983, CHI '83.

[4]  D. Scott McCrickard,et al.  Generalizing interface design knowledge: lessons learned from developing a claims library , 2003, Proceedings Fifth IEEE Workshop on Mobile Computing Systems and Applications.

[5]  Sourabh A. Pawar A Common Software Development Framework For Coordinating Usability Engineering and Software Engineering Activities , 2004 .

[6]  Lynne P. Cooper,et al.  Knowledge Reuse for Innovation , 2004, Manag. Sci..

[7]  Roger S. Pressman,et al.  Software Engineering: A Practitioner's Approach , 1982 .

[8]  L. Suchman Plans and situated actions , 1987 .

[9]  Andrew F. Monk,et al.  Common Ground in Electronically Mediated Communication: Clark's Theory of Language Use , 2003 .

[10]  Mary Beth Rosson,et al.  Usability Engineering: Scenario-based Development of Human-Computer Interaction , 2001 .

[11]  Andraž Cej,et al.  Agile software development with Scrum , 2010 .

[12]  R. Yin Case Study Research: Design and Methods , 1984 .

[13]  Gerard Meszaros,et al.  Adding usability testing to an agile project , 2006, AGILE 2006 (AGILE'06).

[14]  Ivar Jacobson,et al.  Object-Oriented Software Engineering , 1991, TOOLS.

[15]  D. Scott McCrickard,et al.  Unpacking critical parameters for interface design: evaluating notification systems with the IRC framework , 2004, DIS '04.

[16]  P. Kidwell,et al.  The mythical man-month: Essays on software engineering , 1996, IEEE Annals of the History of Computing.

[17]  D. Scott McCrickard,et al.  Educating Novice Developers of Notification Systems: Targeting User-Goals with a Conceptual Framework , 2003 .

[18]  Keith Duncan,et al.  Cognitive Engineering , 2017, Encyclopedia of GIS.

[19]  Frank Maurer,et al.  Agile Methods and User-Centered Design: How These Two Methodologies are Being Successfully Integrated in Industry , 2008, Agile 2008 Conference.

[20]  Kent Beck,et al.  Extreme Programming Explained: Embrace Change (2nd Edition) , 2004 .

[21]  James Noble,et al.  The XP customer role in practice: three studies , 2004, Agile Development Conference.

[22]  John T. Stasko,et al.  Establishing tradeoffs that leverage attention for utility: empirically evaluating information display in notification systems , 2003, Int. J. Hum. Comput. Stud..

[23]  Elizabeth Furtado,et al.  RUPi - A Unified Process that Integrates Human-Computer Interaction and Software Engineering , 2003, ICSE Workshop on SE-HCI.

[24]  D. Scott McCrickard,et al.  Intelligent library navigation using location-aware systems: the Newman project , 2006, ACM-SE 44.

[25]  Jakob Nielsen,et al.  Usability engineering , 1997, The Computer Science and Engineering Handbook.

[26]  Larry L. Constantine,et al.  Beyond Chaos - The Expert Edge in Managing Software Development , 2001 .

[27]  Steve Harrison,et al.  Picking Up Artifacts: Storyboarding as a Gateway to Reuse , 2009, INTERACT.

[28]  D. Scott McCrickard,et al.  Alumni campus tour: capturing the fourth dimension in location based notification systems , 2006, ACM-SE 44.

[29]  James Noble,et al.  The XP Customer Team: A Grounded Theory , 2009, 2009 Agile Conference.

[30]  Martin Fowler,et al.  Is design dead , 2001 .

[31]  Richard Baskerville,et al.  Investigating Information Systems with Action Research , 1999, Commun. Assoc. Inf. Syst..

[32]  Kent L. Beck,et al.  Embracing Change with Extreme Programming , 1999, Computer.

[33]  Mary Poppendieck,et al.  Lean Software Development: An Agile Toolkit , 2003 .

[34]  Susan Harker Requirements specification and the role of prototyping in current practice , 1991 .

[35]  Scott W. Ambler Tailoring Usability into Agile Software Development Projects , 2008, Maturing Usability.

[36]  Eric D. Ragan,et al.  Easing Team Politics in Agile Usability: A Concept Mapping Approach , 2009, 2009 Agile Conference.

[37]  Susan Elliott Sim,et al.  Case studies for software engineers , 2005, Proceedings. 26th International Conference on Software Engineering.

[38]  John Millar Carroll HCI Models, Theories, and Frameworks: Toward a Multidisciplinary Science , 2003 .

[39]  Shvetha Soundararajan,et al.  Agile Requirements Generation Model: A Soft-structured Approach to Agile Requirements Engineering , 2008 .

[40]  Neil A. M. Maiden,et al.  Towards a Framework for Integrating Agile Development and User-Centred Design , 2006, XP.

[41]  Karen Holtzblatt,et al.  An Agile Customer-Centered Method: Rapid Contextual Design , 2004, XP/Agile Universe.

[42]  Barry W. Boehm,et al.  A spiral model of software development and enhancement , 1986, Computer.

[43]  John M. Carroll,et al.  Designing claims for reuse in interactive systems design , 1999, Int. J. Hum. Comput. Stud..

[44]  Dennis R. Wixon Evaluating usability methods: why the current literature fails the practitioner , 2003, INTR.

[45]  Lynn Miller,et al.  Agile user experience SIG , 2009, CHI Extended Abstracts.

[46]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[47]  Saul Greenberg,et al.  The notification collage: posting information to public and personal displays , 2001, CHI.

[48]  D. Scott McCrickard,et al.  Image is everything: advancing HCI knowledge and interface design using the system image , 2005, ACM-SE 43.

[49]  Desirée Sy,et al.  Adapting usability investigations for agile user-centered design , 2007 .

[50]  Thomas Erickson,et al.  Lingua Francas for design: sacred places and pattern languages , 2000, DIS '00.

[51]  Mary Beth Rosson,et al.  Design Rationale as Theory , 2003 .

[52]  R. Yin Case Study Research: Design and Methods, 3rd Edition , 2002 .

[53]  Bo Leuf,et al.  The Wiki Way: Quick Collaboration on the Web , 2001 .

[54]  Larry Constantine,et al.  Process Agility and Software Usability: Toward Lightweight Usage-Centered Design , 2001, OOPSLA 2001.

[55]  James Noble,et al.  XP Customer Practices: A Grounded Theory , 2009, 2009 Agile Conference.

[56]  Allen Newell,et al.  The psychology of human-computer interaction , 1983 .

[57]  Jacob P. Somervell,et al.  A model for notification systems evaluation—assessing user goals for multitasking activity , 2003, TCHI.

[58]  Leonard J. Bass,et al.  Linking usability to software architecture patterns through general scenarios , 2003, J. Syst. Softw..

[59]  James D. Arthur,et al.  A structured approach to adopting agile practices: the agile adoption framework , 2007 .

[60]  Alan Cooper,et al.  About Face 3: the essentials of interaction design , 1995 .

[61]  Helen Sharp,et al.  The role of physical artefacts in agile software development: Two complementary perspectives , 2009, Interact. Comput..

[62]  John Karat,et al.  Taking software design seriously , 1991 .

[63]  J. C. Flanagan Psychological Bulletin THE CRITICAL INCIDENT TECHNIQUE , 2022 .

[64]  Barry W. Boehm,et al.  Get Ready for Agile Methods, with Care , 2002, Computer.

[65]  T. Russell,et al.  From my perspective. , 2006, Bulletin of the American College of Surgeons.

[66]  John M. Carroll,et al.  Designing Interaction: Psychology at the Human-Computer Interface , 1991 .

[67]  Yvonne Rogers,et al.  Interaction Design: Beyond Human-Computer Interaction , 2002 .

[68]  G. Susman,et al.  An Assessment of the Scientific Merits of Action Research. , 1978 .

[69]  Jan O. Borchers A pattern approach to interaction design , 2001, DIS '00.

[70]  Jakob Nielsen,et al.  Severity Ratings for Usability Problems , 2006 .

[71]  Robert M. Davison,et al.  Principles of canonical action research , 2004, Inf. Syst. J..

[72]  John M. Carroll,et al.  Artifact as theory-nexus: hermeneutics meets theory-based design , 1989, CHI '89.

[73]  Jakob Nielsen,et al.  Enhancing the explanatory power of usability heuristics , 1994, CHI '94.

[74]  Nick Hammond,et al.  Argumentation-based design rationale: what use at what cost? , 1994, Int. J. Hum. Comput. Stud..

[75]  Ken Schwaber,et al.  Agile Project Management with Scrum , 1980 .

[76]  Patty Curthoys,et al.  Developing user interfaces: Ensuring usability through product and process , 1997 .

[77]  Scott Kelly,et al.  Enabling Opportunistic Navigation in Location-Based Notification Systems , 2009, 2009 Second International Conferences on Advances in Computer-Human Interactions.

[78]  Effie Lai-Chong Law,et al.  Maturing Usability - Quality in Software, Interaction and Value , 2008, Human-Computer Interaction Series.

[79]  Scott W. Ambler,et al.  Agile modeling: effective practices for extreme programming and the unified process , 2002 .

[80]  Larry Constantine,et al.  Structure and style in use cases for user interface design , 2001 .

[81]  Alistair Cockburn,et al.  Agile Software Development: The Business of Innovation , 2001, Computer.

[82]  Mary Beth Rosson,et al.  Paradox of the active user , 1987 .

[83]  Ben Congleton,et al.  Understanding usability: investigating an integrated design environment and management system , 2007, Interact. Technol. Smart Educ..

[84]  D. Scott McCrickard,et al.  CaBN : Disparate Information Management through Context-Aware Notifications , 2006 .

[85]  William M. Newman,et al.  Better or just different? On the benefits of designing interactive systems in terms of critical parameters , 1997, DIS '97.

[86]  T. Landauer Let's get real: a position paper on the role of cognitive psychology in the design of humanly useful and usable systems , 1991 .

[87]  Andrew Jackson,et al.  From Chaos to Cooperation: Teaching Analytic Evaluation with LINK-UP , 2004 .

[88]  Protima Banerjee,et al.  Book Review: About Face 2.0: The essentials of interaction design , 2004, Inf. Vis..

[89]  K. Todd Stevens,et al.  Examining the Foundations of Agile Usability with eXtreme Scenario-Based Design , 2009, 2009 Agile Conference.

[90]  Mary Beth Rosson,et al.  Getting around the task-artifact cycle: how to make claims and design by scenario , 1992, TOIS.

[91]  D. Scott McCrickard,et al.  Entering the Heart of Design: Relationships for Tracing Claim Evolution , 2004, SEKE.

[92]  D. Scott McCrickard,et al.  Towards Extreme(ly) Usable Software: Exploring Tensions Between Usability and Agile Software Development , 2007, Agile 2007 (AGILE 2007).

[93]  John T. Kelso,et al.  Remote evaluation: the network as an extension of the usability laboratory , 1996, CHI.

[94]  Kent L. Beck,et al.  Extreme programming explained - embrace change , 1990 .

[95]  Robert Biddle,et al.  The Social Nature of Agile Teams , 2007, Agile 2007 (AGILE 2007).

[96]  James Noble,et al.  Programmers are from Mars, customers are from Venus: a practical guide for customers on XP projects , 2006, PLoP '06.

[97]  Donald A. Norman Do companies fail because their technology is unusable? , 2005, INTR.

[98]  John M. Carroll,et al.  Making Use: Scenario-Based Design of Human-Computer Interactions , 2000 .

[99]  H. Rex Hartson,et al.  Developing user interfaces: ensuring usability through product & process , 1993 .

[100]  Lynn Miller Case study of customer input for a successful product , 2005, Agile Development Conference (ADC'05).

[101]  Pardha S. Pyla,et al.  Connecting the usability and software engineering life cycles through a communication-fostering software development framework and cross-pollinated computer science courses , 2009 .

[102]  Pekka Abrahamsson,et al.  Usability Assessment of an Extreme Programming Project: Close Co-operation with the Customer Does Not Equal to Good Usability , 2004, PROFES.

[103]  Zenon W. Pylyshyn Some remarks on the theory-practice gap , 1991 .

[104]  John M. Carroll,et al.  Softening Up Hard Science: Reply to Newell and Card , 1986, Hum. Comput. Interact..

[105]  Ann Heller,et al.  It's simple! , 1980 .

[106]  Lynn Miller,et al.  Agile development: opportunity or fad? , 2006, CHI Extended Abstracts.

[107]  Marti A. Hearst,et al.  The state of the art in automating usability evaluation of user interfaces , 2001, CSUR.

[108]  Jason Chong Lee Embracing agile development of usable software systems , 2006, CHI EA '06.

[109]  ALISTAIR SUTCLIFFE,et al.  On the effective use and reuse of HCI knowledge , 2000, TCHI.

[110]  Alan S. Koch,et al.  Agile Software Development: Evaluating the Methods for Your Organization , 2004 .

[111]  D. Scott McCrickard,et al.  Automating a Design Reuse Facility with Critical Parameters: Lessons Learned in Developing the LINK-UP System , 2004, CADUI.

[112]  D. Scott McCrickard,et al.  VTAssist: a location-based feedback notification system for the disabled , 2006, ACM-SE 44.

[113]  Matthias Finck,et al.  Scenario-based usability engineering techniques in agile development processes , 2008, CHI Extended Abstracts.

[114]  Jakob Nielsen,et al.  Guerrilla HCI: using discount usability engineering to penetrate the intimidation barrier , 1994 .

[115]  D. Scott McCrickard,et al.  Use and Reuse in Information and Interaction Design , 2005 .

[116]  Tore Dybå,et al.  Developing Software with Scrum in a Small Cross-Organizational Project , 2006, EuroSPI.

[117]  Alan Cooper,et al.  The Inmates are Running the Asylum , 1999, Software-Ergonomie.

[118]  Ken Schwaber,et al.  SCRUM Development Process , 1997 .

[119]  James D. Arthur,et al.  A disciplined approach to adopting agile practices: the agile adoption framework , 2007, Innovations in Systems and Software Engineering.

[120]  A.,et al.  Cognitive Engineering , 2008, Encyclopedia of GIS.

[121]  William Newman,et al.  A preliminary analysis of the products of HCI research, using pro forma abstracts , 1994, CHI '94.

[122]  Norman L. Kerth,et al.  Project Retrospectives: A Handbook for Team Reviews , 2001 .

[123]  Ahmed Seffah,et al.  A Framework for Rapid Mid-Fidelity Prototyping of Web Sites , 2002, Usability.

[124]  Larry L. Constantine,et al.  Software for Use - A Practical Guide to the Models and Methods of Usage-Centered Design , 1999 .

[125]  Robert Biddle,et al.  Agile Development Iterations and UI Design , 2007, Agile 2007 (AGILE 2007).

[126]  Frank Maurer,et al.  UCD in agile projects: dream team or odd couple? , 2005, INTR.

[127]  D. Scott McCrickard,et al.  Building Applications to Establish Location Awareness: New Approaches to Design, Implementation, and Evaluation of Mobile and Ubiquitous Interfaces , 2008 .

[128]  Jeff Patton,et al.  Hitting the target: adding interaction design to agile software development , 2002, OOPSLA '02.

[129]  George Olsen The emperor has no lab coat , 2002, INTR.

[130]  Austin Henderson,et al.  Interaction design: beyond human-computer interaction , 2002, UBIQ.

[131]  Loren G. Terveen,et al.  Let's Stop Pushing the Envelope and Start Addressing It: A Reference Task Agenda for HCI , 2000, Hum. Comput. Interact..

[132]  Henrik Kniberg,et al.  Scrum and XP from the Trenches: Enterprise Software Development , 2007 .

[133]  Dennis R. Wixon,et al.  Using the RITE method to improve products; a definition and a case study , 2007 .

[134]  D. Scott McCrickard,et al.  Claims Maps: Treasure Maps for Scenario-Based Design , 2006 .

[135]  Morris A. Jette Scheduling issues , 1999 .

[136]  Norman Wilde,et al.  Do design records really benefit software maintenance , 1993, 1993 Conference on Software Maintenance.

[137]  Jamie L. Smith,et al.  From Personas to Design : Creating a Collaborative Multi-disciplinary Design Environment , 2005 .