Integrating UX
in Agile Software
Development
Reasons for this presentation
Introduction to what User Experience (UX) is
How UX can help to achieve your business goals
How to integrate UX in an agile development environment
What is UX?
User experience design (UXD)
is any aspect
of a user's experience with a given system, including the interface,
graphics, industrial design, physical interaction, and the manual.In most cases, User Experience Design fully encompasses traditional Human-Computer Interaction (HCI) design, and extends it by addressing all aspects of a product or service as perceived by users.
What does UX encompass?
UX: the gatekeeper
UX components during development
How can UX help
achieve business goals?
Don't make customers happy.
Make happy customers.
Why does UX matter?
The additional value
Differentiate from competitors
Increase brand value
Increase of Sales
Increase of productivity
Increase perceived customer value
Increase of customer loyalty
Know your user
Personas
Identify the user's pain points
Scenarios
Stories describing one or more tasks in a specific environmental situation.
They should focus on the activities people do and the context in which they do them.
For the design of services and systems we can use scenarios to
understand and communicate what activities our system needs to support.
Why are we doing this?
Using personas, stories and scenarios is a way to pull the entire team
into a user-centric process.
Rather than simply concentrating on
features and structures from the top down, a user-centric environment
builds the entire experience from the ground up.
By creating a
foundation based in user-centric principles we have a much better chance
of producing an effective and satisfying product in the first
iteration.
Understanding leads to insight
Who's our customer?
What pain points do they have related to our product?
How will our product solve their pain points?
What features are important?Align business goals with user's needs
--> leads to features
How to integrate UX
in Agile development
Our Scrum process
- Preparation phase
- Guesstimate
- UX workshop
- Sprint planning
- Sprint!
- Demo
- Retrospective
Our Scrum process
-
Preparation phase leads to stories
-
Guesstimate leads to re-prioritization
-
UX workshop leads to tasks
-
Sprint planning leads to estimation & sprint planning
-
Sprint! leads to completed tasks
-
Demo leads to sign off by Product Owner
-
Retrospective leads to Improving the way we work
Process leading up to a story
Preparation phase
-
Business case
-
Concept
- Vision
- Release plan
-
Initial product backlog (stories)
Who's prepping
Product owner
with help from
Project Manager, Architect, UX Designer & Requirements Analist
Vision
Role of Product Owner
- Is market focused
- Develops long-term and short-term product strategy & road map
- Helps position the product against competition
- Thinks about long-term viability of the product
- Does NOT make "knee jerk"* decisions
- Is responsible for the preparation phase and the product backlog
* an immediate unthinking emotional reaction produced by an event or statement to which the reacting person is highly sensitiveRole of Architect
in the preparation phase
- Safe guards that other systems, 3rd party applications, external partners and consumers of the application's data are all included
- Advises the PO in prioritizing the issues by assessing the possible technical solutions and effort required
- Assesses the roles & skills required to complete the project
Role of UX Designer
- Assesses & safeguards the users' interests & needs
- Communicates a vision for the product by building a shared
understanding across the team
- Engages in regular conversations and discussions around early design idea
Stories
Are specified by Product Owner
with the assistance of the Requirements Analist
and help of UX Designer (when users' needs have to be researched/assessed)
"As an [user type] I want to [do some action]
so that [business value]"
Stories state WHAT needs to be built.
Road travelled
Guesstimate stories
Development team will 'guesstimate' (roughly estimate) the stories at
the top of the backlog to give PO a rough idea so that he can
prioritize these stories.
We guesstimate based on T-shirt sizes
S | M | L | XL
Business value vs effort
The guesstimate enables the PO to weigh value vs effort and
base prioritization of the stories in the backlog on the relation
between these two factors. The guesstimate supports the PO in
prioritizing the stories.
UX workshop
Team picks up storiesWhat we do during a UX workshop
- UX Designer explains user & his problem to the team
- UX Designer presents possible solution/sketch to get started (optional)
- Each team member thinks of possible solution (sketch)
- Every one gets few minutes to present his solution
- Come to best solution by choosing/merging ideas
- Team asks PO questions if necessary
Collaborate
Development team breaks down the story into tasks.
Sprint planning
- Estimate tasks in hours
- Pull tasks into the sprint
- Break them down further (if needed) into tasks of 2 - 16 hours
Determining the goals of the sprint is a process of negotiation
between the product owner and the team.
Sprint
-
2-4 week sprints
-
Developers pick up tasks based on expertise and priority
- Tasks move from status TO DO to DONE
Scrum Master
Keep the wolves of scope creep at bay
Role of Scrum Master
- Establishes practices and rules
- Ensures everyone plays by the rules
- Resists adding new features
- Coaches & shields the team
- Removes impediments
- Ensures code inspections happen
- Runs daily Scrum meetings