54
WORKPLACE STUDIES WITH SOFTWARE TEAMS Integrating Agile development with User Experience design Jennifer Ferreira [email protected] Helen Sharp, Hugh Robinson

Integrating Agile development with User Experience design Jennifer Ferreira [email protected] Helen Sharp, Hugh Robinson

Embed Size (px)

Citation preview

Page 1: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

WORKPLACE STUDIES WITH SOFTWARE TEAMS

Integrating Agile development

with User Experience design

Jennifer [email protected]

Helen Sharp, Hugh Robinson

Page 2: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

• Integrating Agile development with UX design

Outline

Page 3: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

• Integrating Agile development with UX design

• Problem?

Outline

Page 4: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

• Integrating Agile development with UX design

• Problem?• Workplace studies

Outline

Page 5: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

• Integrating Agile development with UX design

• Problem?• Workplace studies• Achieving integration

Outline

Page 6: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

• Integrating Agile development with UX design

• Problem?• Workplace studies• Achieving integration• Implications

Outline

Page 7: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

IntroAgile development + UX design

Page 8: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

XP Scrum FDD ASD

Agile development

Page 9: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

• 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

Page 10: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

ISO CD 9241-210

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

User Experience (UX) Design

Page 11: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

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

Page 12: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

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

Page 13: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

CombinationAgile development + UX design

Page 14: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

Debates

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

Page 15: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

Debates

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

- Up front

- In the Agile iterations

Page 16: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

Debates

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

- Up front BDUF

- In the Agile iterations

Page 17: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

Debates

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

- Up front BDUF

- In the Agile iterations

BAD

Page 18: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

Debates

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

- Up front BDUF

- In the Agile iterations too short

BAD

Page 19: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

Debates

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

- Up front BDUF

- In the Agile iterations too short

BAD

BAD

Page 20: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

comparisons of values and principles process

e.g. both Agile and UX are iterative

and both focus on the customer/end user

Simplistic view

Page 21: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

“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

Page 22: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

Workplace studiesPhD thesis

Page 23: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

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.

Page 24: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

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

Page 25: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

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

Page 26: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

Workplace studies

Page 27: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

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

Page 28: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

Same same but different

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

different experiences of practice

Page 29: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

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

Page 30: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

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

Page 31: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

Integration as…

• Expectations about acceptable behaviour

• Mutual awareness• Negotiating progress• Engaging with each other

Page 32: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

Integration as…

• Expectations about acceptable behaviour

• Mutual awareness• Negotiating progress• Engaging with each other

Page 33: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

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

Page 34: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

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

Page 35: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

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

Page 36: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

Integration as…

• Expectations about acceptable behaviour

• Mutual awareness• Negotiating progress• Engaging with each other

Page 37: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

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

Page 38: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

“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

Page 39: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

bonded team

fluid role boundaries

relaxed

Together

Mutual awareness

on-going conversations

Page 40: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

Integration as…

• Expectations about acceptable behaviour

• Mutual awareness• Negotiating progress• Engaging with each other

Page 41: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

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

Page 42: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

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

Page 43: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

Negotiating progress

“I think they wantedmore pop.”

“What do youremember from

the client meeting?”

informal

on-the-fly

agreed together

Together

Page 44: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

Integration as…

• Expectations about acceptable behaviour

• Mutual awareness• Negotiating progress• Engaging with each other

Page 45: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

Engaging with each other

• developers and designers do 2 types of work:

• own• together

• input• decision-making• expertise

switch

Page 46: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

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

Page 47: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

Engaging with each other

implicitstatus updates

solution is negotiated

“I think they wantedmore pop.”

“What do youremember from

the client meeting?”

Together

clarifications

Page 48: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

Achieving integration

“We're moving deskstoday.”

“Are the designsready?”

Apart

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

Page 49: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

Together

Achieving integration

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

technical constraints• shared decision-making

Page 50: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

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

Page 51: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

Implications

views on how best to create software• Implications

• for processes and tools• team arrangements

Page 52: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

Implications: processes and tools

• Supporting and maintaining• expectations about acceptable

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

Page 53: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

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

Page 54: Integrating Agile development with User Experience design Jennifer Ferreira jen.ferreira@ucalgary.ca Helen Sharp, Hugh Robinson

thank you