ge!ing started with ux inside agile development

Upload: fiomaravilha

Post on 03-Jun-2018

222 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/13/2019 Ge!Ing Started With UX Inside Agile Development

    1/28

  • 8/13/2019 Ge!Ing Started With UX Inside Agile Development

    2/28

    !"#"$#

    $

    Hugh Beyer, Founder

    [email protected]

    978.823.0100

    2352 Main Street, Suite 302

    Concord, MA 01742

    Copyright 2012 InContext Enterprises Inc. All rights reserved.

    www.incontextdesign.com

    www.innovationincool.com

    InContext Design

    Getting started with UX inside Agile development

    ! Pair up! Take turns finding out from each other:

    !Name!Job!Agile experience: What aspects of Agile have you done!UX experience: What aspects of UX have you done

    You get 3 minutes each

    UX Immersion Conference, April 2012

    All materials 2012

  • 8/13/2019 Ge!Ing Started With UX Inside Agile Development

    3/28

    !"#"$#

    #

    An approach to building code

    ! Created by developers for developersCreated out of frustration with traditional practice

    ! Inaccurate or changing requirements! Lots of effort on overhead activities! Long time before results become visible!Does not help you decide what to build

    Principles from theAgile Manifesto

    ! Individuals and interactions over processes and tools!

    Working software over comprehensive documentation! Customer collaboration over contract negotiation! Responding to change over following a plan

    Processes

    ! Short sprints! Plan each sprint at the start! Plans based on story cards! Each sprint delivers useful value! Daily standup meetings! Validation of sprint and re-

    evaluation of direction at end ofsprint

    ! Reflection on process at the endof sprint

    Development Practices

    ! Co-located teams! No code ownership! Test-driven design! Continuous build! Pair programming

    Agile domain

    Define problem Understandneeds Conceivesolution Designvalidate Design SWarchitecture Develop Test Deploy

    UX Immersion Conference, April 2012

    All materials 2012

  • 8/13/2019 Ge!Ing Started With UX Inside Agile Development

    4/28

    !"#"$#

    &

    Design of the entire user experience

    An approach to designing the product

    ! Look + behaviorDeveloped out of frustration with traditional usability and UI

    design

    ! No more putting lipstick on a pigKey methods provide

    ! Field research for reliable user guidance and feedback! Up-front design of structure through tail-end design of look! Provides ways to test concepts and structure

    Does not tell you how to build

    UX domain

    !Field research to know what matters!Wireframes!Conceptual design!Prototyping to validate concepts!UI architecture! Information architecture! Interaction design!Graphics design

    Define problem Understandneeds Conceivesolution Designvalidate Design SWarchitecture Develop Test Deploy

    UX Immersion Conference, April 2012

    All materials 2012

  • 8/13/2019 Ge!Ing Started With UX Inside Agile Development

    5/28

    !"#"$#

    '

    Wheres the conflict?

    UX: We can get therequirements right

    Agile: We can dowithout requirements

    UX: We can testquickly with low-fi

    prototypes

    Agile: We can codequickly and dont

    need your prototypes

    UX: We need toconceive of the UI as

    a whole

    Agile: We build inpieces without an

    overall architecture

    A match made in heaven?

    The ideal product

    User test

    What users really

    need

    UX Immersion Conference, April 2012

    All materials 2012

  • 8/13/2019 Ge!Ing Started With UX Inside Agile Development

    6/28

    !"#"$#

    !

    User feedback really?

    ! The customer isnt the user! Its hard to put the user on the team!A demo isnt a test

    Iteration really?

    ! Reworking the same story is hard!Adding and removing stories is hard

    No BDUF (Big Design Up Front) really?

    ! You need to know what problem you are solving! You write the design into the user stories

    User Research

    User

    ResearchPrototype

    Iteration

    Development

    Iteration

    Concepting Agile Development

    Pre-developmentAgile does not specify how to do this

    Field InterviewsWireframes

    Lo-fi prototypingRapid prototyping

    Quick user tests

    Usability tests

    DevelopmentAgile covers this

    Define problem Understandneeds Conceivesolution Designvalidate Design SWarchitecture Develop Test Deploy

    Sprint 0

    UX Immersion Conference, April 2012

    All materials 2012

  • 8/13/2019 Ge!Ing Started With UX Inside Agile Development

    7/28

    !"#"$#

    (

    Real user feedback

    ! Doesnt come fromproduct owners! Doesnt come from stakeholders! Doesnt come from user surrogates! Doesnt come frompeople who used to be users! Doesnt come from demos! Doesnt come from focus groups! Doesnt even come from usability tests

    With the right technique we can get reliable, stable requirements

    and valid design feedback

    UX Immersion Conference, April 2012

    All materials 2012

  • 8/13/2019 Ge!Ing Started With UX Inside Agile Development

    8/28

    !"#"$#

    )

    The interviewing process of

    Contextual Design

    ! One-on-one 2-hour field interview! Gathering detailed information about

    work practice

    ! In the workplace while people work! Through observation and discussion

    of on-going work

    ! Based on a model of apprenticeshipto the customer

    Key concepts to guide understanding the customer:

    ! Context: Collect data in the context of peoples work!Go to your user's workplace!Talk to your users while they work

    ! Partnership: Work with customers as partners in inquiry!Help users articulate their work practice!Let them lead

    ! Interpretation: Uncover the meaning and implications of customer actionand language

    !Create a shared understanding!Draw out the implications

    ! Focus: Listen and probe from a clear intention!Know your purpose!Challenge your assumptions

    UX Immersion Conference, April 2012

    All materials 2012

  • 8/13/2019 Ge!Ing Started With UX Inside Agile Development

    9/28

    !"#"$#

    *

    Get as close to the work as possible

    ! Go to the customer! Interview while they are working! Be grounded in real objects and events! Pay attention to non-verbal communication

    On-going work versus summary experience

    ! Tasks you are watching! Not summarizations with no details

    Concrete versus abstract data

    ! Retrospective accounts from the last 2 weeks guided by artifacts! Focus on what is happening, not what people think they do

    Partnership as relationship! The user is the expert

    !They know everything abouttheir work but cant tell you

    ! So follow their lead! Help the users articulate and

    see their work practice

    Avoid ineffective interview styles

    ! The Traditional Interviewer! The Expert/Novice! The Guest/Host

    Withdrawal

    Return

    UX Immersion Conference, April 2012

    All materials 2012

  • 8/13/2019 Ge!Ing Started With UX Inside Agile Development

    10/28

    !"#"$#

    +

    Interpretation is the data

    !A shared understanding of what is going on! Offer interpretations

    !Dont ask open-endedquestions

    ! Listen for the No!Huh?!Umm... could be!They would like it!Yes comes with elaboration!Watch for non-verbal clues!

    Check your design ideas as they occur

    Fact

    Hypothesis

    Implication

    DesignIdea

    Customer

    tune the interpretation

    Know your purpose

    ! We all have an entering focus!A set of preconceived assumptions and beliefs

    ! Drive interviews with your project focus!A clear understanding of what work you are trying to

    understand

    ! Expand your focus! Challenge your assumptions, probe the unexpected

    Probe to expand focus

    ! Surprises and contradictions! Nods What you assume is true! What you do not know! The problem behind solutions

    Share! Interpretations for validation! Design ideas for co-design

    UX Immersion Conference, April 2012

    All materials 2012

  • 8/13/2019 Ge!Ing Started With UX Inside Agile Development

    11/28

    !"#"$#

    $,

    Be an apprentice

    Context

    ! Go to your user's workplace! Talk to your users while they work

    Partnership

    ! Help users articulate their work practice! Let them lead

    Interpretation

    ! Create a shared understanding! Draw out the implications

    Focus! Know your purpose! Challenge your assumptions

    Traditional interview steps(5-10 minutes)

    ! Introduce yourself! Reveal your focus! Promise confidentiality! Start recording! Get an overview of their work! Look for a starting point! Deal with opinions about tools

    Switch to contextual interview! Reset the rules

    Observe and co-interpret(1 "hours)

    ! Take running notes! Follow your focus! Be nosy! Interruptions are data too

    Wrap-up(10-15 minutes)

    ! Create a large interpretation ofyour learning about

    their role

    !Ask pet questions! Give tips on system use! Thank the user

    UX Immersion Conference, April 2012

    All materials 2012

  • 8/13/2019 Ge!Ing Started With UX Inside Agile Development

    12/28

    !"#"$#

    $$

    Conduct a Contextual Interview

    ! Pair up as users & interviewers! User: Do a check in email, Facebook, twitter, etc.! Interviewer:

    !What is a check in?!What are the tools?!What gets in the way?!Why does it matter?

    Take notes!

    UX Immersion Conference, April 2012

    All materials 2012

  • 8/13/2019 Ge!Ing Started With UX Inside Agile Development

    13/28

    !"#"$#

    $#

    Assign roles:

    Interviewer tells story of

    the interview

    Notetaker captures

    important issues on- line

    Work Modelers draw work

    models

    Participants clarify what

    happened, identify important

    points and generate

    implications for design

    Moderator makes the whole

    meeting work smoothly

    Rat Hole Watchers keep on

    the mainline conversation

    U21Senior Corporate CounselBusiness UnitManagers

    Outside Counsel

    Discuss open litigation

    Discuss openli tigation

    Board of DirectorsAdministrative Assistant

    SOP

    General Counsel

    SOP Email

    Discuss legal options

    Ask forlegal advice

    Providelegaladvice

    HR Department

    Hand deliver SOP

    info requestedinSOP

    U21 Flow Model

    Remembered to start clienttracker

    Select search form

    Decide to search in federal DB

    Re-type user name and passwordin from email

    Log in doesnt work

    Type log in infoOpen online research service

    Open email to see requestand log in info

    Open email to see requestand log in info

    Intent Account forresearch time

    Intent Restrict Domain toget relevant results

    TRIGGER Receive emailfrom partner"

    "

    "

    "

    "

    "

    "

    "

    "

    U5 Sequence:Keyword SearchPg. 1 of 3

    U08-15 When she puts the camera inphoto review mode, the lens willclose after a little bit of time.

    U08-16 When testing out differentsettings, the camera displayswhat the setting is about (showsmessage on the LCD de scribingwhat the setting does).

    U08-17 When exploring new scenesettings , she notices the "kidsand pets" setting. She doesn'tthink the picture that she took inautomatic mode came out bad,

    so she doesn't know why shewould need this mode.

    Sequence

    model

    Affinity

    diagram

    Flow

    model

    Persona

    UX Immersion Conference, April 2012

    All materials 2012

  • 8/13/2019 Ge!Ing Started With UX Inside Agile Development

    14/28

    !"#"$#

    $&

    Storyboard

    Visioning

    Paper prototypes

    ! Test structure with users! Use the language of the user

    Rough paper vs. on-line prototypes

    ! Paper lets the user engage and co-design! Paper reveals structure better! Paper allows for real work, not just demo

    Iterative prototyping process

    !A series of rounds!First round: very rough, hand-drawn on Post-it notes and paper!Second round: more refined but still rough!Third round: more refined, enough UI definition to be sure the interaction works

    for the user

    !Content design also being tested

    UX Immersion Conference, April 2012

    All materials 2012

  • 8/13/2019 Ge!Ing Started With UX Inside Agile Development

    15/28

    !"#"$#

    $'UX Immersion Conference, April 2012

    All materials 2012

  • 8/13/2019 Ge!Ing Started With UX Inside Agile Development

    16/28

    !"#"$#

    $!

    Play computer using a paper mockup:

    ! ContextExplore the users own work tasks!Replay recent or current actual work events!Write the users own data into the prototype!Physically change the prototype as you go

    ! PartnershipWork out design changes together!The user is expert in their work; you are expert in design!Explore the consequences of design changes on their work

    ! InterpretationListen structurally, not just to words!Issues of structure and function often sound like UI complaints!Respond to issues by addressing the underlying problem

    ! FocusRespond to issues at the appropriate level!Early on, rough prototype tests function and structure!Later, more refined prototype tests interaction and layout!Rendered or online prototypes test look and graphics

    UX Immersion Conference, April 2012

    All materials 2012

  • 8/13/2019 Ge!Ing Started With UX Inside Agile Development

    17/28

    !"#"$#

    $(

    A 2-hour 2-on-1 interview in the users workplace

    ! IntroductionSet the stage!Introduce the prototype and a little project history!Get an overview of the users workcollect sample tasks!Invite them to replay sample tasks in your prototype

    ! Body of the interviewFollow the tasks!Give them a pen and let them explore!Articulate any problems or issues you see!Take the lead in modifying the prototype

    ! Wrap-upSummarize what youve learned!Share your primary findings!Get an estimate of value

    Define UX tasks Strategize low-

    level design

    4 users every Friday Wednesday PP for low-level design CI to understand upcoming tasks Running code for acceptance

    Check behavior Real user

    acceptance

    Refine low-leveldesign for thissprint

    Final check ofcompletedstories for thissprint

    Sprintplanning Implementation Completion

    Define problem Understandneeds Conceivesolution Designvalidate Design SWarchitecture Develop Test Deploy

    UX Immersion Conference, April 2012

    All materials 2012

  • 8/13/2019 Ge!Ing Started With UX Inside Agile Development

    18/28

    !"#"$#

    $)

    # Design one iteration ahead; validate one iteration behind!Morphs into Kanban-type thinking

    UX teamconsults

    on story 1

    UX teamdesigns

    story 1

    UX teamdesigns

    story 2

    Dev teambuilds

    story 2

    Dev teambuilds

    story 3

    UX teamtests

    story 1

    UX teamconsults

    on story 2

    UX teamdesigns

    story 3

    Dev teambuilds

    story 1

    UX teamtests

    story 2

    UX teamconsults

    on story 3

    UX teamdesigns

    story 4

    Sprint 1 Sprint 2 Sprint 3 Sprint 4Sprint

    Planning

    Release

    Planning

    UX teamprovides

    conceptualdesign

    Whole team

    prioritizesuser stories

    Whole teamwrites tasks

    UX helps sets story priority

    ! So UX people need detailed knowledge of user work practice and needsUX defines details of system behavior

    ! So UX people need detailed knowledge of user work practice and needsUX works as part of the development team

    ! UX tasks on the teams information radiators! UX involved in daily stand-up! UX problems are the teams problems

    UX generally designs a sprint ahead, tests a sprint behind

    UX Immersion Conference, April 2012

    All materials 2012

  • 8/13/2019 Ge!Ing Started With UX Inside Agile Development

    19/28

    !"#"$#

    $*

    Each story captures one element of user value

    ! Written to describe what is done for the user! Collect features that arent useful on their own! Split features that can be partially or more simply implemented

    A standard format

    !As a I want to so that I

    !A guide, not a straightjacket! So that clause may not be needed if working from a design

    Engineering tasks are notuser stories

    The product:

    !A web site to support online shopping! Should support buying from a range of stores! Should support the whole family! Should support meal planning and recipes! Should support community elements

    Write user stories for this product

    ! Choose your favorite format! Discuss and write as many stories as you can!Agree at each table on what the stories are

    UX Immersion Conference, April 2012

    All materials 2012

  • 8/13/2019 Ge!Ing Started With UX Inside Agile Development

    20/28

    !"#"$#

    $+

    Presentation of a design for online grocery shopping

    UX Immersion Conference, April 2012

    All materials 2012

  • 8/13/2019 Ge!Ing Started With UX Inside Agile Development

    21/28

    !"#"$#

    #,UX Immersion Conference, April 2012

    All materials 2012

  • 8/13/2019 Ge!Ing Started With UX Inside Agile Development

    22/28

    !"#"$#

    #$

    The product:

    !A web site to support online shopping! Defined by the UI images at your tables! Customer role gets to decide how the system behaves if theres a

    question

    Write user stories for this product

    ! Same format as before! Write as many stories as you can!Agree at each table on the stories

    UX tasks are team tasks

    !Agile principle: Theres only one team! Track them on the same board as other team tasks

    Example

    ! User story: User can see all products in store with a simple, scrollablethumbnail view

    ! Possible split: Initial implementation presents products as a simple list;add images and better navigation in a following story

    ! UX tasks:!Design graphics elements for thumbnails and scrolling!

    Choose a scrolling method!Build a detailed mockup to test the interaction

    ! Online? Using actual technology?!Run user tests!Finalize design

    ! (Dont get caught up in categories of items. Thats a different story. Keep this onesimple.)

    UX Immersion Conference, April 2012

    All materials 2012

  • 8/13/2019 Ge!Ing Started With UX Inside Agile Development

    23/28

    !"#"$#

    ##

    ! Costs are estimated in ideal days or points! Velocity is 28 ideal days / 2-week iteration

    !SW and UX squad each have 28 ideal days per iteration!4 people on a squad = 7 ideal days / iteration #2-week iterations!In the real world, UX squad will probably be smaller and have a different velocity

    ! Rolling the dice = variation caused by!Estimation errors!Real-world interruptions

    ! UX days ( ) interleaved with SW days ( ) = consultation needed duringimplementation

    !UX days planned, but not when during the iteration they happen! Incident cards

    !Real-world events out of the control of the project team

    ! Story priorities!Mandatory = Essential; theres no product without it!High = Product works but wont succeed without it!Medium = Highly desirable; differentiator!Low = Nice to have

    !All work is done to implement a story!New features, bug fixes, and re-implementation work all require writing new

    stories

    !Iteration planning prioritizes new stories against original stories! First iteration

    !Make sure the SW squad has enough to do! Last iteration

    !Make sure that you dont start work you cant complete!Make sure youll be able to test work the SW squad completes

    UX Immersion Conference, April 2012

    All materials 2012

  • 8/13/2019 Ge!Ing Started With UX Inside Agile Development

    24/28

    !"#"$#

    #&

    !Happened before the game started!Stories written based on vision and rough UI

    developed and tested through Contextual Design

    !Priorities assigned by Product Manager and usersurrogates

    !Business priorities matter

    UXtask

    Devtask

    UXtask

    UX Immersion Conference, April 2012

    All materials 2012

  • 8/13/2019 Ge!Ing Started With UX Inside Agile Development

    25/28

    !"#"$#

    #'

    !Plan the iteration:!What stories to do in this iteration

    ! Keep the user experience coherentdont just pick random stories! Agile principleevery iteration delivers user value

    !What to do in the following iteration!No more than 28 days work for each squad!UI work must precede implementation work, which must precedeuser testing work

    !Each squad starts the iteration with 4 Roll Cards!Alternate rolls, UX first!On each turn

    !Return Roll Card to the stack. Roll both dice!If a squad is out of Roll Cards, play goes back to the other squad!If a squad lands on a draw incident square, the indicated squaddraws an Incident Card

    Same rules, but this is your last iteration

    !Dont start work that cant be completed in this iteration!Make sure you wrap up work started by the other team

    !E.g., make sure you User Test any stories that have completedimplementation

    UX Immersion Conference, April 2012

    All materials 2012

  • 8/13/2019 Ge!Ing Started With UX Inside Agile Development

    26/28

    !"#"$#

    #!

    S5: User can see products in an organized, browseable list

    S5 T4: User

    Test

    S5 T3:

    Implement

    story

    S5 T2:Implement

    DB ofproducts

    S5 T1b:

    Detailed UI

    design

    S5 T1a:

    User test

    S5 T1:

    Detailed

    design &mockup

    User Test

    Holding Area

    Implementation

    Holding Area

    UI Design

    Holding Area

    S5 T4: User

    Test

    S5 T3:

    Implement

    story

    S5 Hold for

    S5 T1

    S5 T2:Implement

    DB ofproducts

    S5 T1 Hold

    for S5 T2

    S5 T1:

    Detailed UI

    design

    S5 T1a:

    User test

    S5 T1:

    Detailed

    design &mockup

    UX Immersion Conference, April 2012

    All materials 2012

  • 8/13/2019 Ge!Ing Started With UX Inside Agile Development

    27/28

    !"#"$#

    #(

    User Test

    Holding Area

    Implementation

    Holding Area

    UI Design

    Holding Area

    S5 T4: User

    Test

    S5 T3:

    Implement

    story

    S5 Hold for

    S5 T1

    S5 T2:Implement

    DB ofproducts

    S5 T1 Hold

    for S5 T2

    S5 T1:

    Detailed UI

    design

    !The UX designer orchestrates the UX effort rather than doing it all!A UX task might not be done by the UX designer!Lean on developers for less critical UI elements!Take developers on user visitstransfer the skill

    UX Immersion Conference, April 2012

    All materials 2012

  • 8/13/2019 Ge!Ing Started With UX Inside Agile Development

    28/28

    !"#"$#

    ! We developed the industry-leadingcustomer-centered design process

    ! Our clients are industry leaders including other design firms

    ! Our experience spans a wide rangeof work practices, industries and

    technologies

    ! We have a proven track record creatingsolutions for the people who use them

    The only method I have seen that really tells youhow to go out and collect customer data, and then

    what to do about it. - Don Norman

    The only generative method in the field

    -Ben Shneiderman

    Getting started with UX inside Agile development

    Hugh Beyer