Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca...

Preview:

Citation preview

WORKPLACE STUDIES WITH SOFTWARE TEAMS

Integrating Agile development

with User Experience design

Jennifer Ferreirajen.ferreira@ucalgary.ca

Helen Sharp, Hugh Robinson

• Integrating Agile development with UX design

Outline

• Integrating Agile development with UX design

• Problem?

Outline

• Integrating Agile development with UX design

• Problem?• Workplace studies

Outline

• Integrating Agile development with UX design

• Problem?• Workplace studies• Achieving integration

Outline

• Integrating Agile development with UX design

• Problem?• Workplace studies• Achieving integration• Implications

Outline

IntroAgile development + UX design

XP Scrum FDD ASD

Agile development

• interaction design [Patton 2002a] • usage centered design [Patton 2002b]• discount usability engineering [Kane 2003]• rapid contextual design [Beyer et al. 2004]• user experience design [Hodgetts 2005]• user centered design [Miller 2005]• scenario-based design [Lee and McCrickard

2007]• goal-directed design [Cho 2009]

*Design

ISO CD 9241-210

“all aspects of the user’s experience when interacting with the product, service, environment or facility.”

User Experience (UX) Design

indicative of the collection of methods, tools, techniques, etc. for involving and maintaining focus on the end user in software development

- understand users- design- evaluate

User Experience (UX) Design

indicative of the collection of methods, tools, techniques, etc. for involving and maintaining focus on the end user in software development

- understand users- design- evaluate

User Experience (UX) Design

WORK

CombinationAgile development + UX design

Debates

• The place of UX design in Agile development• When what happens

Debates

• The place of UX design in Agile development• When what happens

- Up front

- In the Agile iterations

Debates

• The place of UX design in Agile development• When what happens

- Up front BDUF

- In the Agile iterations

Debates

• The place of UX design in Agile development• When what happens

- Up front BDUF

- In the Agile iterations

BAD

Debates

• The place of UX design in Agile development• When what happens

- Up front BDUF

- In the Agile iterations too short

BAD

Debates

• The place of UX design in Agile development• When what happens

- Up front BDUF

- In the Agile iterations too short

BAD

BAD

comparisons of values and principles process

e.g. both Agile and UX are iterative

and both focus on the customer/end user

Simplistic view

“The two-track organization is what we aimed for, although in reality it was a little more complex. Some designs needed longer than a single cycle to complete. For example, one particularly troublesome feature took us over 5 cycles before the design passed all of its goals.”

Lynn Miller, "Case Study of Customer Input For a Successful Product," Agile Development Conference, pp. 225-234, Agile Development Conference (ADC'05), 2005.

Simplistic view

Workplace studiesPhD thesis

How are Agile development and UX design combined?

• How is integration accomplished on a day-to-day basis?

• Singer et al. “… little is known about how software engineers perform their work. In order to improve software engineering tools and practice, it is therefore essential to conduct field studies, i.e., to study real practitioners as they solve real problems.”

Janice Singer, Susan E. Sim, and Timothy C. Lethbridge (2008) Software Engineering Data Collection for Field Studies. Guide to Advanced Empirical Software Engineering. Forrest Shull, Janice Singer, Dag I.K. Sjøberg Editors. Pages 9—34, ISBN-13: 978-1-84800-043-8.

How are Agile development and UX design combined?

• How is integration accomplished on a day-to-day basis?

• Only 4 of 23 empirical studies included observations of practice in work settings

How are Agile development and UX design combined?

• How is integration accomplished on a day-to-day basis?

• Only 4 of 23 empirical studies included observations of practice in work settings

Study practitioners in the workplace

Workplace studies

Workplace studies

Team1 Team2 Team3 Team4

project web web mobile mobile

size 16 4 7 6

Agile method Scrum Scrum Scrum Scrum

UX role yes yes yes no

organisation >1000 50 <50

Same same but different

all three organisations• successful at delivering software• highly valued UX design• used Scrum

different experiences of practice

Same same but different

all three organisations• successful at delivering software• highly valued UX design• used Scrum

different experiences of practicethe best way to create software

How are Agile development and UX design combined?

• Integration• On-going – negotiated, day-to-day,

individuals• Achieved – variety of conditions:

1. Developers and designers were kept apart2. Developers and designers were working

closely together3. Developer designers were trialling working

closely together

Integration as…

• Expectations about acceptable behaviour

• Mutual awareness• Negotiating progress• Engaging with each other

Integration as…

• Expectations about acceptable behaviour

• Mutual awareness• Negotiating progress• Engaging with each other

Expectations about acceptable behaviour

• expectations about how the other group behaves

• what developers expect-- due to Scrum commitments

• what UX designers expect-- due to UX design commitments

Expectations about acceptable behaviour

“What kind of feedbackdo you want to give?”

“Could we have ameeting to give yousome feedback?”

developers: expectedto provide feedback as issues arose

Apart

designers: expectedto hand over designsand move onto thenext project

developers: expecteddesigners to providetimely redesigns

designers: not expecting on-going conversations

Expectations about acceptable behaviour

“Either wouldbe fine.”

“Which would beeasier to

implement?”

Together

designers: expected developer to answer their questions

designers: expected that the developer could answer their questions

designers: expecteddeveloper to have useful input

developer: expectedthat the designerswould havequestions

Integration as…

• Expectations about acceptable behaviour

• Mutual awareness• Negotiating progress• Engaging with each other

Mutual awareness

• UX designers being aware of what constitutes work for Agile developers

• Agile developers being aware of what constitutes work for UX designers

• levels vary between the teams

“We're moving deskstoday.”

“Are the designsready?”

rigid role boundaries

Agile developers andUX designers on separate teams

Agile developers and UX designers seated on different floors

Apart

tense

Mutual awareness

bonded team

fluid role boundaries

relaxed

Together

Mutual awareness

on-going conversations

Integration as…

• Expectations about acceptable behaviour

• Mutual awareness• Negotiating progress• Engaging with each other

Negotiating progress

• Maintaining workflow under uncertainty• client expectations? (market,

dependencies on other projects)• requirements

• decision-makers are not always available

• teams make progress in spite of this – they HAVE to

Negotiating progress

“What kind of feedbackdo you want to give?”

“Could we have ameeting to give yousome feedback?”

Apart

phased

formal

a set of activities

constrained

reluctant

Negotiating progress

“I think they wantedmore pop.”

“What do youremember from

the client meeting?”

informal

on-the-fly

agreed together

Together

Integration as…

• Expectations about acceptable behaviour

• Mutual awareness• Negotiating progress• Engaging with each other

Engaging with each other

• developers and designers do 2 types of work:

• own• together

• input• decision-making• expertise

switch

Engaging with each other

“What kind of feedbackdo you want to give?”

“Could we have ameeting to give yousome feedback?”

Apart

explicitrequire design expertise to proceeddesigners leading,

developers releasing software developers

approaching designers

Engaging with each other

implicitstatus updates

solution is negotiated

“I think they wantedmore pop.”

“What do youremember from

the client meeting?”

Together

clarifications

Achieving integration

“We're moving deskstoday.”

“Are the designsready?”

Apart

Systematic, separatist approach• walking around, finding• meetings, logistics• communicating via documents, up to date

Together

Achieving integration

Subtle, on-going effort• shared awareness of design values and

technical constraints• shared decision-making

Findings

• Not just about process• Teams are not isolated• Not just about seating the developers

with designers (i.e. colocation)• Integration is shaped by organisational

and team-level factors views on how best to create software

Implications

views on how best to create software• Implications

• for processes and tools• team arrangements

Implications: processes and tools

• Supporting and maintaining• expectations about acceptable

behaviour• mutual awareness• negotiating progress• engaging with each other

Implications: team arrangements

• Not about co-location working closely together achieved in different ways

1. Valuing input from different roles2. Enabling roles to work together3. Understanding and sharing

responsibilities

thank you

Recommended