3. boston upa
What does it mean to “be agile”?
• Agile is not a specific method you can follow. No team practices the Agile method.
There is no such thing.
• Agile is philosophy, a set of values and principles, a mindset.
• To “be agile”, you need to put the agile values and principles into practice.
Source: The Art of Agile Development by Shore and Warden
3
4. boston upa
(Very Brief) History of Agile Principles and Practices
Inspired by Japanese industry and specifically Toyota’s Lean Thinking, agile evolved from the
development community in the mid-90’s as a reaction to “heavyweight” methods.
“ At the "mushy” stuff, aboutMethodologists are really
about
core, I believe Agile
delivering good products
to customers by operating in an environment that
does more than talk about ‘people as our most
important asset’ but actually ‘acts’ as if people were
the most important, and lose the word ‘asset’
”
Source: The Agile Manifesto
4
5. boston upa
(Very Brief) History of Agile Principles and Practices
• Work at a sustainable pace
• Self-organize
• Work cross-functionally as a team
• Recognize that we will never know everything upfront, and be flexible enough
to adapt and change course when new information surfaces
• Realize business value quicker by decreasing the time to market
• Create higher quality work
• Work in a way that makes sense for the types of products being created in
today’s market
5
6. boston upa
Agile Values
• Individuals and interactions over processes and tools
Translation: Great products come from great teams
• Working software over comprehensive documentation
Translation: Get to high-functional fidelity quickly. Provide just
enough documentation to produce great work.
Source: The Agile Manifesto
6
7. boston upa
Agile Values
• Customer Collaboration over contract negotiation
Translation: Involve end-users, decision makers, and stakeholders
throughout the entire process
• Responding to change over following a plan
Translation: Existing in a mindset that is always ready for change
Source: The Agile Manifesto
7
8. boston upa
Agile Values
Although unwritten, one of the major agile values is continuous improvement, at the
individual, team, and organizational levels.
8
9. boston upa
Agile Practices
• A method, or process, is a way of working. Whenever you do something, you are
following a process.
• Agile methods are processes that support the agile philosophy. Examples include
Extreme Programming (XP) and Scrum.
Source: The Art of Agile Development by Shore and Warden
9
10. boston upa
A Few Key Agile Practices
• Co-Location / Pairing
• Story Creation
• Real Customer Involvement
• Stand-Up Meetings
• Continuous Testing
• Retrospectives
10
11. boston upa
Agile Practice – Co-Location/ Pairing
Principle: Individuals and interactions over processes and tools &
continuous improvement
11
12. boston upa
Agile Practice – Story Creation
Principles: Individuals and interactions over processes and tools & Working
software over comprehensive documentation
12
13. boston upa
Agile Practice – Real Customer Involvement
Principle: Customer collaboration over contract negotiation
13
14. boston upa
Agile Practice – Stand-Up Meetings
Principles: Individuals and interactions over processes and tools &
Responding to change over following a plan
14
15. boston upa
Agile Practice – Continuous Testing
Principles: Working software over comprehensive documentation &
Responding to change over following a plan
15
16. boston upa
Agile Practice – Retrospectives
Principle: Individuals and interactions over processes and tools &
continuous improvement
16
17. boston upa
Lifecycles
Waterfall $
Plan Analysis Design Code Test Deploy
3- 24 months, Features 1-30
Agile $
$
Analysis Analysis
Design Design
Plan Deploy Plan Deploy
Code Code
Test Test
1 - 3 months 1 - 3 months
Features 1-15 Features 15-30
Source: The Art of Agile Development by Shore and Warden
17
18. boston upa
Value Propositions
• Higher productivity, lower cost
• Improved employee engagement, and job satisfaction
• Faster time to market
• Higher quality
• Improved stakeholder satisfaction
• What we have been doing no longer works
Source: The Art of Agile Development by Shore and Warden
18
19. boston upa
Main Value Proposition
In Waterfall the designer/developer wall creates an “us” vs “them” mindset
Design Development
In Agile, everyone works as a team
Design
Build
19
20. boston upa
Challenges with Agile
• Agile is not a silver bullet
• Few tried and tested agile practices for UX designer
• Unclear role of UX in process
• Requirements gathering process is not defined
• Setting up a successful implementation of agile practices is difficult
• Agile practices are pervasive throughout the entire organization
• Organization upheaval and change
• Any transition to agile must come both from top-down and bottom-up
• Better for refining not defining
20
21. boston upa
Can We Change Our Mindset to be Agile?
Yes We Can!
21
23. boston upa
Agile UX (AUX)
The question is not “how do you fit UX into Agile”, its “how do you fit Agile into UX”
• There is an assumption that the standard set of UX activities and outputs should simply
slot into agile development practices unchanged
• Lets flip the question and ask what would a UX Design project look like if you were
following Agile principals.
23
24. boston upa
The Role of UX
• UX practitioners are most successful in the customer role on an agile team. The
customer defines the software, and determine what stakeholders find valuable.
• The customers most important job is release planning which includes
• Evangelize product vision
• Identify features and stories
• Group features into small, frequent releases
• Manage risk
• Create an achievable plan
• Ratio: 2 customers per 3 developers
24
25. boston upa
Agile UX – Beginning of Project
Discovery (1-2 Weeks) Iteration 0 (2-4 Weeks)
UX Inception UX Prototype UX Prototype UX Prototype
Workshops Iteration 1 Iteration 2 Iteration 3
Scoping
Initial Discovery Research Ongoing Discovery Research
Context, Customer, Scenarios Time boxed analysis, development and user testing cycles focusing on collaboration, testing and fast feedback
Customer journey sketch boards Design analysis Design analysis Design analysis
UX Prototype Stories
UX Prototype UX Prototype UX Prototype
Prioritize Usability Test Usability Test Usability Test
Interaction design & wireframes
Interactive Prototype Development
Usability Test Showcase Usability Test Showcase Usability Test Showcase Usability Test Showcase
25
26. boston upa
Objection
Agile methods do not provide enough time for UX practitioners to conduct necessary
research and discovery
Answer
Agile does not provide as much time upfront to conduct research and discovery, this is
an ongoing activity
26
27. boston upa
The ‘Just-Enough’ Mindset
Release 1 Release 2
Analysis Analysis
Design Design
Plan Deploy Plan Deploy
Code Code
Test Test
Conduct enough research to start
Conduct enough research to start
designing for release 2, continue to
designing for release 1, continue to
research during iterations
research during iterations
27
28. boston upa
Agile UX – Middle of a Project
iterating the UX design
and Dev
implementation tracks Dev
simultaneously
Short iterative design
steps and regular
testing cycles, ensuring
we craft UX in a
collaborative manner
UX
Source: Adapting Usability Investigation for Agile User Centered Design by Sy (2007)
28
29. boston upa
Objection
If I break up my design into pieces that can be fit into an iteration, it is difficult for me
to picture the holistic system
Answer
Sketch your initial understanding of the holistic system, then begin to dive deep into
the parts of the system that are prioritized
29
30. boston upa
Think Holistically, Work Incrementally
Wireframe or Prototype Sketches Post-It Notes or Storyboards
Next Iteration Entire System
30
31. boston upa
Objection
Some designs are too complex to fit within one iteration
Answer
Break large designs into small, cycle-size pieces called design chunks that
incrementally add elements to the overall design over several iterations
Source: Adapting Usability Investigations for Agile User Centered Design by Sy
(2007)
31
32. boston upa
Objection
There is not enough time to conduct formative usability testing and then create a
usability report.
Answer
Employ light-weight usability techniques, and progressively engage in defining test
protocols and recruitment.
32
33. boston upa
Objection
Working software over comprehensive documentation means no more wireframes
or mockups
Answer
Use the tools that will help you produce good work
33
34. boston upa
Can We Adopt Our Practices to be Agile?
Yes We Can!
34
36. boston upa
Resistance to Agile
• Like the status quo
• I like who I work with
• I like the power and prestige that comes with my current role
• This is the way I was trained to do it and the only way I know how
• I don’t like change of any sort
• I don’t want to start another change initiative because they always fail anyway
• Don’t like Agile Practices
• I think agile is a fad and we’ll just have to switch back in three years
• Agile is a bad idea for our products
• I got into the field so that I could put on headphones on and not talk to people
36
37. boston upa
Can We Be Honest With Ourselves?
Yes We Can!
37
38. boston upa
Can We Be Successful with Agile?
Yes We Can!
38
39. boston upa
Can We Gain Benefits from Agile?
Yes We Can!
39
40. boston upa
Agile UX, Yes We Can!
alla@madpow.net
40
Editor's Notes
Hello, my name is Alla Zollers and I am experience designer at Mad*Pow. Mad*Pow is a great experience design agency working with a number of clients across a variety of industries. I am here today because I have been quietly practicing agile ux for the last two years, recently, as the popularity of agile has increased, so has the amount of confusion and occasional negativity towards agile from the ux community. My goals for tonight are three fold: 1) Get everyone on the same page by establishing a baseline understanding of agile principles and practices; 2) Provide practical techniques for working in agile; 3) Directly addressing some of the emotional aspects around transitioning to a new methodology. As we I go through these slides, I want everyone to notice how much overlap exists between existing UCD principles and agile principles.
I broke my talk up into 3 parts, I will stop to answer questions at the end of each section. So let’s all establish a baseline understanding of agile. Here I present the educational portion of our program.
Heavyweight methods were perceived to be bureaucratic, Dilbertesque, slow, demeaning, and inconsistent with the ways that software developers actually perform effective work. The functioning principles of Agile can be found in lean manufacturing (Toyota 1950s) and six sigma. These concepts include error proofing, eliminating waste, creating flow, adding customer value, and empowering workers. The concepts were first formally espoused in the 14 principles of the Toyota Way, and the two pillars of the Toyota Production System (Just-in-time and smart automation).
The developers that came up with the agile philosophy wanted to work in a better work environment
In order to achieve a new type of work environment where everyone was treated as a person, not an asset, the first thing that needed to change was the mindset. In 2001, 17 prominent figures in the field of agile development created the Agile manifesto, and formed the Agile Alliance. Teamwork is at the heart of every agile process, think in terms of skills, not roles. There is no “my work” and “your work”, there is only “our work”. Answer the question “Who is responsible for …” with “the team”
Customers mean something different in agile, a customer is not someone who is external to the product team who purchases or uses the product. A customer is a role filled by one or more members of the product team, whose duties include acting as the voice of the end-use for the development team, and helping to prioritize and plan.
When starting out in agile, it is often recommended that you follow established practices until you feel comfortable with the new process. Then begin to change things based on feedback from the team, the organizational culture, and goals. Work to continuously improve and refine the process. A team that is agile is never complacent and stagnant.
It is difficult to internalize and truly understand agile practices without having actually gone through a few iterations and truly performed them. However, I would like to highlight some of the unique practices that take place on a regular basis in an agile environment, and how those practices directly support the agile principles.
At the core, agile really is about the people. Design quality, learning and training, overcoming difficult problems, improved morale, decreased management risk, increased discipline and better time management, resilient flow, fewer interruptions
As a [Persona] I would like to ____ so that I can ___ Have conversations
Customers mean something different in agile, a customer is not someone who is external to the product team who purchases or uses the product. A customer is a role filled by one or more members of the product team, whose duties include acting as the voice of the end-use for the development team, and helping to prioritize and plan.
Daily meetings where everyone reports on their progress and most important lets everyone know of their impediments
Both within the code and with end-users. Continuous feedback is a key component of agile.
At the end of every iteration and release, the entire team gets together to understand what has went well, what didn’t go well, and what can be improved. This promotes continuous improvement.
In Waterfall, each stage waits for the one previously to be finished and all documentation to be handed off. In Agile, multiple stages are going on simultaneously and in smaller chunks.
The value propositions come directly from the originators desire to be treated like people within an organization vs an asset
Barriers get broken down, there is a blurring of roles and lots of knowledge exchange. Developers get a better sense for design, designers get a greater appreciation of code. This is where trust and mutual respect between people gets developed within an organization. Agile is truly all about the people, and that can be a double-edged sword.
You don’t do agile because its more efficient, or a fad, you do it because it’s different and what you have been doing is not working
The next step is to understand how to be a ux practitioner in an agile environment
The cadence or rhythm of an agile project might at first feel really rushed or uncomfortable. However, its there to promote a sustainable pace and will soon become second nature.
The next step is to understand how to be a ux practitioner in an agile environment