The company has been in existence since 1982 and used the traditional “waterfall” development process (I’ll talk about on the next slide). Looking to remain competitive for an increasingly complex software, the UX team wanted to develop their design process by incorporating the current Agile methods. Very user intensive software. Need for UCD is high. Also, the company is active in UX and Tech Comm circles because of their desire to learn and use the most current UCD methods. For example, they have a very active Social Documentation Wiki.
Case study method of research.Other methodologies include the following: Extreme Programming, DSDM, Adaptive Software Development, Crystal, Feature-Driven Development, and Pragmatic Programming.The most traditional development lifecycle is waterfall. This process contains the phases “Analysis,” “Design,” “coding,” and “QA” (quality assurance). Those four phases are one cycle that constitutes a “full release.” It’s important to understand how the other major development processes work because Agile borrows from many of them. It’s also good to be able to recognize the different processes as you work with other departments and companies who may be using other methods.Iterative: The first is an “iterative” development process, which means, “to step through one design version after another” (Nielsen 1993). Scrum: The other is Scrum, which is a short stand-up meeting. These meetings become more important within an Agile framework.Waterfall I’ll discuss more on the next slide
Waterfall did not work well for the Autodesk UX designers because of the time of the design schedule. The process’s primary investigations used contextual inquiry and formative testing and the developers would often begin coding before the design specifications were finished. Furthermore, trying to complete a design specification well in advance (to combat the coding being started before the designers were finished) meant that many out-of-date specifications would be tested (because the designers would be trying to anticipate future features). Finally, in waterfall, all development would begin at the same time (after all of the design specifications were completed) but since there are more developers than designers, not all features were reviewed by designers (so complete UX was not accomplished).
What is Agile:That is, while there is value in the items on the right, we value the items on the left more.This is taken from (Beck and Beedle 2001)Two of the methods that carry over from waterfall to Agile are contextual investigations and formative testing. Contextual inquiry: seeing how people use the design in real-world situations. Formative testing: identifying or diagnosing the problems, making recommendations, and then evaluating again. (this was discussed quite a lot in our Measuring UX book)EXPLAIN THIS IN NORMAL TERMSEssentially, Agile takes the similar iterative techniques as the contextual and formative frameworks and adapts them to Agile’s more rapid methodology. This is quite a change because contextual inquiry methodologies can be very time consuming (Garrett 2010).
WHAT IS AGILE: primary difference is timeDon’t necessarily test full workflows in Agile (as opposed to waterfall), but in chunks and this allows for more contextual information that can be used during the development of the current release (with waterfall, that information wouldn’t be used until the next release, which means out-of-date more often and hence a waste of time). Autodesk’s original method used focus groups to evaluate a feature after it was implemented—this was a time-consuming formative and contextual method.
p120 UX designers are used to looking at everything as a whole and how everything works together for the overall UX--but in Agile, you design in chunks so you can't see the whole picture, but just a small piece of it--but this is something you do in AgileA customer isn’t necessarily an external person—through personas, a member of the UX team can fill the role of the customer when applicable. The designer is the voice of the customer. Also, use internal users (QA, training, support, or SMEs) to evaluate chunks (120)—this is often sufficient for chunks.p126 Breaking designs down into cycle-sized chunks gives us the freedom to mix and match different types of usability investigations into the same session—such as contextual, field data, user groups, usability tests, market research et cetera. So, the difference would be having many incomplete features in the product versus fewer, completed features?Each cycle is a mini-release (as opposed to waterfall which is a full release).p115 Other differences: the fixed nature of the cycle end dates, and the highly collaborative and document-light form of project planning and implementation. p117 Agile timing challenge: need to formative test but before coding (see graphic)--but coding begins immediately in Agile; so they had to separate DESIGN iterations from IMPLEMENTATION iterationshere's how: basically a step behind (or UX is a step ahead depending on your viewpoint ;)p120 Agile gathers requirements 2 cycles ahead
p123 Agile UCD presents particular challenges in protocol design for usability investigations, because of two considerations:The progressively incremental character of both implementation and design.because as seen in Figure X, you can be working on non-incremental designs which makes it impossible to do contextual testing (seeing how people use the design in real-world situations)The fixed number of usability investigations that fit within the timeframe of a cycle.fewer opportunities to test full workflows before they are implemented.
p123 cont. How to overcome this? -- With agile: we use usability testers who get progressively closer to our end-users. Personas. Agile allows the designers to give the customers a voice. Start with in-house and then use external users “to test only mid- to late-stage design chunks, and the focus of those usability tests is on validating design goals that can only be determined by an actual user.”Contextual = actual users
The most important stage of contextual inquiries is the last stage, which allows “the ability to observe how using the actual implemented product changes the work behavior of users—is unique to Agile contextual investigations.”p126 how to provide the following all the information needed without going against the principles of Agile--namely, less documentation with detailed results (because those details should be implemented into the design, which can be SHOWN, not on a piece of paperp127 Information is reported from the meeting with the other designers the day after the review meeting that follows a scrum. More people show up for these meetings because they show analysis of results, not just data.With these stories and demos, we replace personas with people, and scenarios with workflows and sample work files.Agile communication (Agile isn’t just a method, but a whole new way to communicate information as well): decreases the gap between gathering data and being able to use it –by making it easier to communicate that information in a form that will allow it to be acted on
ConclusionJust as formative usability test results allow us to iterate on the design of a product, now the Agile team’s responsiveness to contextual inquiry results allow us to iterate on the requirements for a product.The Autodesk UX designers determined that Agile UCS (user-centered design) methods are better than waterfall methods for producing better-designed products.
Fer O’NeilArticle Review:Sy, Desiree. 2007. “Adapting Usability Investigations for Agile User-centered Design.” Journal of Usability Studies 2 (3) (May): 112-132.
Autodesk makes AutoCAD (http://usa.autodesk.com/) http://images.amazon.com/images/G/01/software/detail-page/read-write-to-past_large.jpg
Waterfall QA Analysis Design Coding Testing AgileFeatures 1-5 Features 16-20 Features 6-10
What is Agile?Individuals and interactions over processes and toolsWorking software over comprehensive documentationCustomer collaboration over contract negotiationResponding to change over following a plan (Beck and Beedle 2001)
The Agile processes: • Chunks • Cycle mini-releases • Personas • Using different usability investigations http://www.flickr.com/photos/rosenfeldmedia/4459197943/
Limitations of Agile Features Workflow 1 Coding
How Agile overcomes the limitations Contextual Usability tests In-house
Why Agile is better More people show up for these meetings because they show analysis of results, not just data. Report Information With these stories and Review demos, we replace personas Meeting with people, and scenarios with workflows and sampleScrum work files.
Working BibliographyBeck, Kent, and Mike Beedle. 2001. “Manifesto for Agile Software Development.”http://agilemanifesto.org/.Garrett, Jesse James. 2010. The Elements of User Experience: User-Centered Design for the Weband Beyond (2nd Edition). 2nd ed. New Riders Press.Gilbane Group. 2011. “MindTouch Case Studies & Customers | Collaboration and Product Help -MindTouch, Inc.” http://www.mindtouch.com/resources/customers.Highsmith, J., and A. Cockburn. 2001. “Agile software development: the business of innovation.”Computer 34 (9) (September): 120-127.McInerney, Paul, and Frank Maurer. 2005. “UCD in agile projects: dream team or odd couple?”interactions 12 (6) (November): 19–23.Nielsen, Jakob. 1993. “Iterative user-interface design.” IEEE Computer 26 (11) (November): 32-41.Sharp, Helen, Robert Biddle, Phil Gray, Lynn Miller, and Jeff Patton. 2006. “Agile development:opportunity or fad?” In CHI ’06 extended abstracts on Human factors in computing systems, 32–35. CHI EA ’06. New York, NY, USA: ACM.Sy, Desiree. 2007. “Adapting Usability Investigations for Agile User-centered Design.” Journal ofUsability Studies 2 (3) (May): 112-132.Tullis, Thomas, and William Albert. 2008. Measuring the User Experience:Collecting, Analyzing, and Presenting Usability Metrics. 1st ed. Morgan Kaufmann.Vijayan, A T. 2011. “Agile Developer Notes: Scrum Roles and Responsibilities”. Blog. AgileDeveloper Notes. http://www.agiledevelopernotes.com/2011/07/scrum-roles-and-responsibilities.html.