TecEd White Paper User-Centered Design and the Agile Software Development Process: 7 Tips for Success



Similar documents
Agile Software Development with Scrum. Jeff Sutherland Gabrielle Benefield

Agile in Financial Services A Framework in Focus

Digital Transformation of the Enterprise for SMAC: Can Scrum help?

D25-2. Agile and Scrum Introduction

When User Experience Met Agile: A Case Study

Agile user-centred design

History of Agile Methods

Introduction to Agile Software Development. EECS 690 Agile Software Development

Scrum for Managers, Zurich March 2010

Agile QA s Revolutionary Impact on Project Management

Scrum and Agile methods The real world

Agile & the Declaration of Interdependence: A new approach to Process Improvement

PMP vs. Scrum Master

Ingegneria del Software Corso di Laurea in Informatica per il Management. Agile software development

How User Experience Fits in Agile

PENETRATION TESTING IN AGILE SOFTWARE DEVELOPMENT PROJECTS

Agile Project Management

Agile Project Management: Adapting project behaviors to the software development environment

Agile to the Bone. Introduction to Agile by Pietari Kettunen

User Experience Design in Agile Development. Sean Van Tyne

USAGE OF KANBAN METHODOLOGY AT SOFTWARE DEVELOPMENT TEAMS

Distributed Agile Development. Bapiraju Nandury Product Development Manager Bangalore Development Centre

SWEN - Software Engineering Network Donnerstag 06. Mai. 2010

TSG Quick Reference Guide to Agile Development & Testing Enabling Successful Business Outcomes

On the Agile Development of Virtual Reality Systems

Persona driven agile development

Agile Project Management Jim Highsmith. Chapter 1. The Agile Revolution

Agility? What for? And how? > Warm-up Session Agile Tour Vienna 2014

INF5120 Modellbasert Systemutvikling

WHITEPAPER GET MORE WORK DONE: A MANAGER S GUIDE TO MIXING AGILE AND WATERFALL

Project Management in Software: Origin of Agile

Lean UX - The Next Generation of User-Centered Agile?

PROJECT RISK MANAGEMENT MODEL BASED ON PRINCE2 AND SCRUM FRAMEWORKS

Agile Project Management By Mark C. Layton

AGILE PHILOSOPHY APPLIED TO PROJECT MANAGEMENT

Agile Engineering Introduction of a new Management Concept

The traditional project management uses conventional methods in software project management process.

When is Agile the Best Project Management Method? Lana Tylka

the team level and is characterized by self organizing, cross functional teams doing iterative development in what are called Sprints.

This handbook is meant to be a quick-starter guide to Agile Project Management. It is meant for the following people:

Introduction to Agile Methods

Introduction to Agile Scrum

Agile project management is a style of project management that focuses

CSSE 372 Software Project Management: Managing Agile Projects

Agile Projects 7. Agile Project Management 21

SCRUM BODY OF KNOWLEDGE (SBOK Guide)

Agile Software Development Approaches and Their History. Volkan Günal

"Bezpieczny Projekt"

Issues in Internet Design and Development

Agile Software Project Management Methodologies

CHAPTER 3 : AGILE METHODOLOGIES. 3.3 Various Agile Software development methodologies. 3.4 Advantage and Disadvantage of Agile Methodology

Comparison and problems between Traditional and Agile software development methods

Capstone Agile Model (CAM)

Who Doesn t Want to be Agile? By: Steve Dine President, Datasource Consulting, LLC 7/10/2008

Development. Lecture 3

Statistics New Zealand is Agile Continued Implementation of AGILE Process at Statistics NZ

Agile Software Development

CSPO Learning Objectives Preamble. Scrum Basics

Agile and Secure: Can We Be Both?

WHAT MAKES AGILE DEVELOPMENT DIFFERENT?: A CASE STUDY OF

Agile Development Overview

TESTING IN AGILE SOFTWARE DEVELOPMENT

STATE OF MICHIGAN SUITE

A Viable Systems Engineering Approach. Presented by: Dick Carlson

User and Client Satisfaction in Agile Development

Continuous User Experience Development

Agile Software Development Methods, Comparison with Traditional Methods & Implementation in Software Firm

Agile Software Development in the Large

Agile Execution for and Beyond IT

Laboratório de Desenvolvimento de Software

The Agile Drupalist. Methodologies & Techniques for Running Effective Drupal Projects. By Adrian AJ Jones (Canuckaholic)

ScrumMaster Certification Workshop: Preparatory Reading

Adopting a Continuous Integration / Continuous Delivery Model to Improve Software Delivery

Sometimes: 16 % Often: 13 % Always: 7 %

Course Title: Managing the Agile Product Development Life Cycle

Waterfall to Agile. DFI Case Study By Nick Van, PMP

Usability Evaluation Practices within Agile Development

Strategy. Agility. Delivery.

5 Levels of Agile Planning: From Enterprise Product Vision to Team Stand-up

Chapter 6. Iteration 0: Preparing for the First Iteration

BI Dashboards the Agile Way

The Scrum Guide. The Definitive Guide to Scrum: The Rules of the Game. July Developed and sustained by Ken Schwaber and Jeff Sutherland

Governments information technology

Agile for Project and Programme Managers

2. AGILE ADOPTION CASE STUDIES

Agile Software Development compliant to Safety Standards?

Preface Agile Testing Review

Transcription:

TecEd White Paper User-Centered Design and the Agile Software Development Process: 7 Tips for Success At-a-Glance Agile software development teams deliver successful products and applications through their innovative and iterative approach to incremental development. The agile approach is well-suited to those teams looking to enhance UX and usability through user centered design. This paper provides practical tips and resources that can help incorporate user-centered design into an Agile development process.

The Agile methodology has taken the software development world by storm over the last two decades, and with good reason. The focus on iterative and incremental development, cross-functional teams, and working software over laborious documentation fits well with our need to respond rapidly to an ever-changing technological landscape. However, the move to Agile has left many product owners, development teams, and user experience (UX) professionals scratching their heads over the best way to incorporate user-centered design into the process while balancing the demands of an aggressive development schedule. At first, this might seem like an impossible task how do you fit a usability study, which could take months to prepare, conduct, and report on, into a development cycle where the product is different after each sprint? Believe it or not, building a customer feedback loop into the Agile process is not only possible, but is a natural extension of the Agile philosophies of incremental changes and iterative development. However, building this feedback loop in takes some thoughtful changes to your team composition, work processes, and deliverables. The Right Process Because each Agile team works a little (or a lot) differently, finding the right process for your team may take some experimentation. In the past decade, many organizations have begun reporting on their successes and challenges integrating UX work into their Agile process see, for example, some of the seminal case studies by Desirée Sy and Lynn Miller, as well as Aviva Rosenstein s more recent Boxes and Arrows article and Janet Six s UXmatters article, both of which are based on interviews with UX experts working in Agile environments. Out of these case studies and interviews, some interesting trends and best practices have started to emerge. If you are part of an Agile team seeking to add UX work into your current process, or if you are a UX professional working with a Waterfall development team that would like to convert to Agile, here are tips to work with an Agile team. 1 Build a team of collaborative, cross-functional people. Work with your organization to build a team of people who are naturally curious about other disciplines, work well with others, and are flexible. The team should include everyone needed to get the project done product owner, developers, analysts, quality assurance, UX specialists, designers, etc. Many organizations achieve success by integrating UX work into their Agile process. Agile is by nature a highly collaborative approach to project execution, and therefore requires team members who enjoy offering up their specialized insight into all aspects of the project work. Cross-functional teams provide multidisciplinary perspectives on all project ideas, which lead to better design solutions. If possible, co-locate team members to encourage interaction. However, when co-location is not possible or economical, having good remote meeting solutions works well too.

2 3 Bring UX designers and researchers onto the team early on. Be sure to bring UX specialists and designers onto your team from the very beginning so they can help establish and test the big picture vision for the product, and help keep the team s eye on this vision as the project unfolds. Bringing UX specialists onto your team early helps the team work together in setting up work processes that maximize collaboration and efficiency between the testers, designers, and developers. In addition, it gives the UX team members time to establish their own testing/design protocols and develop study participant lists, which is difficult to do in the thick of sprinting. (In the Agile world, a sprint is a set period of time during which specific work must be completed and made ready for review, usually a matter of a few weeks.) Take a collaborative, not a siloed approach to doing the work. While team member specialists are still responsible for delivering their pieces of the work, the difference comes in how Agile teams approach the work. Teams that successfully integrate UX into their process do so by involving all team members in the usability studies and design work, and by iterating the design based on solutions agreed on by the team. UX specialists and designers, in turn, work hand in hand with analysts and developers as they build the design into a working product. This type of close collaboration helps foster a shared vision for the product, build trust, and increase team efficiency. In addition, it helps ensure that the design is constantly accounting for the realities of development, while development is always informed by the user needs. Aviva Rosenstein s Boxes and Arrows article cited above, The UX Professionals Guide to Working with Agile Scrum Teams, provides some recommendations for developing strong team relationships based on understanding of and respect for one another s strengths. 4 Encourage experimentation. As Jeff Gothelf in his book Lean UX points out, Permission to fail breeds a culture of experimentation. Experimentation breeds creativity. Creativity, in turn, yields innovative solutions. Because there is no onesize-fits-all Agile methodology, it s important to make sure the team has the freedom to experiment with their processes, deliverables, and sprint rhythm. Establish a culture where taking risks and progressive elaboration of team processes and deliverables is encouraged after all, you re unlikely to get it right the first time, but if you experiment, eventually you will. For example, some Agile UX practitioners advocate a staggered sprints approach to integrating UX and design activities with development activities, where design activities take place one or two sprints ahead of development work (as noted in both Lynn Miller s and Desirée Sy s articles).

But Jeff Gothelf in Lean UX talks about the disadvantages his team encountered with this approach, and describes the experimentation they engaged in to find a sprinting process that allowed everyone to focus on the same problems at the same time. Your team can, and probably should, start with someone else s model for incorporating UX work into the sprint cycle but, like Jeff s team, don t be afraid to evolve your process to suit the needs of your team and your project. 5 Find the optimal sprint rhythm for your team. Establishing a sprint rhythm that allows the team to make adequate progress while maintaining a sustainable pace is critical. This is especially important when introducing UX activities into the sprinting process. Finding the right rhythm requires choosing the appropriate scope for each sprint, picking the right UX activities, figuring out how best to chunk the design work (Desirée Sy s article has helpful advice on this), finding the right level of documentation, and playing with sprint duration. Some teams might find that a two-week sprint cycle with UX testing every other sprint works well for them; others may prefer a three- or four-week sprint cycle with testing during every sprint. As mentioned above, some teams might prefer to use a staggered sprint approach to incorporating UX activities into the sprint rhythm; others may prefer a model more like the one Jeff Gothelf describes. 6 Make sure user experience activities are focused and actionable. Working on Agile time scales necessitates modifying the timing and granularity of UX activities that are performed. For example, your team may need to: Streamline study planning processes. Develop smaller-scale studies that focus on a few key design elements. Test on low-fidelity mock-ups instead of polished prototypes (see Garett Dworman s UsabilityGeek blog post for more on the advantages of using low-fidelity mock-ups to iterate design solutions). Use methodologies such as the Rapid Iterative Testing and Evaluation (RITE) method to test and iterate designs more quickly. There s business value in building a customer feedback loop into the Agile process.

Supplement formal usability testing with quick-turnaround online tests using products like User Testing, or through informal tests using in-house participants (especially when testing early designs). Think about faster ways to recruit members of your target audience to participate in more formal studies (for example, creating a bank of participants available for studies). To be sure the UX activities meet your team s informational needs, all team members must be involved in articulating the study questions for each round of UX testing. Once the results are in, the whole team should go through the findings and come up with realistic, actionable solutions to the issues identified. 7 Experiment with appropriate quality for user experience study materials and deliverables. While long and detailed documentation has its place, Agile values working software over comprehensive documentation (see the Manifesto for Agile Software Development). Values like this plus short release cycles means there is rarely time to write a tome by the time you finish writing, your report will be moot. So instead, UX practitioners working on Agile teams need to think creatively about how they can produce lighter-weight study materials and deliverables that give the team only what they need in order to move forward. For example, in her article, Desirée Sy talks about using verbal stories and demonstrations of observed behavior, along with index cards documenting each issue, to communicate test results to her team. Findings should be succinct and prioritized by the team so everyone buys into the findings and knows which problems to focus on first and which should go into the backlog. In Janet Six s interview with Carol Barnum, Carol describes her team s process of debriefing together at the end of each study day to agree on the findings and prioritize the issues the development team needs to fix. The developers, when present, walk out with their list of issues to address in the next or a future sprint. If done properly, light-weight reporting is by no means synonymous with lack of quality; it is simply a different, and often more effective, way to communicate your results. With this approach, there s business value in building a customer feedback loop into the Agile process. Winning product develop teams approach this process as a natural extension of the Agile philosophies of incremental changes and iterative development. In all, the process works best with a careful approach to your team composition, work processes, and deliverables.

About TecEd, Inc. TecEd s usability experts bring multidisciplinary skills to the task of creating splendid user experiences. Application, website and product developers trust TecEd researchers, designers, content developers, information architects, usability test facilitators, accessibility specialists, participant recruiters, and project managers. We serve more than 160 organizations including major Fortune 500 companies. Customized services range from competitive usability analysis, major website design overhauls, multi-location or multi-continent user research studies, to launching a corporate accessibility program. TecEd provides broad geographic presence to serve large multinational and local organizations alike. TecEd maintains a usability lab centrally located in the U.S. Visit teced.com to learn more. References and Resources Agile Development and User Experience (class offered by the Nielsen Norman Group) 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., Thomas, D. (2001), Manifesto for Agile Software Development. Dworman, G. (2014), When To Prototype, When To Wireframe How Much Fidelity Can You Afford? UsabilityGeek.com. Gothelf, J. (2013), Lean UX: Applying Lean Principles to Improve User Experience. Sebastopol, CA: O Reilly Media, Inc. Medlock, M.C., Wixon, D., Terrano, M., Romero, R., and Fulton, B. (2002), Using the RITE method to improve products: A definition and a case study. Presented at the Usability Professionals Association 2002 Conference, Orlando, FL. Miller, L. (2005), Case Study of Customer Input for a Successful Product. Proceedings of Agile 2005. Denver: Agile Alliance. Rosenstein, A. (2013), The UX Professionals Guide to Working with Agile Scrum Teams. Boxesandarrows.com. Six, J.M. (2011), Integrating UX into Agile Development. UXmatters.com. Sy, D. (2007), Adapting Usability Investigations for Agile User-centered Design. Journal of Usability Studies, Vol. 2(3), pp. 112-132.