Вы находитесь на странице: 1из 74

Lean UX: A Seasoned Approach to Designing in Agile

Je Gothelf
Proof

Monday, April 23, 2012

Lean UX: A seasoned approach to designing in Agile!


or How To Get Out of the Deliverables Business!

UX Immersion! Portland, OR!


April 23rd, 2012!

How big is your UX team?

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

How long have you been practicing Agile?

#LeanUX | @jboogie

Hows that been working out for you?

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

Part I: What is Lean UX?

#LeanUX | @jboogie

What is Agile software development?

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

[slide about history of Agile find a pic of the signatories if possible]

#LeanUX | @jboogie
http://blog.benmorris.net/the-agile-manifesto-signatory-list-looks-like!

Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

User Experience & Design was never factored in during Agiles inception.

#LeanUX | @jboogie

Exercise 1: On small sticky pads, write down all the deliverables you create for each project you work on.

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

Exercise 1: Give each deliverable a ranking of 1-4 based on how valuable it is to the project. (1 is most valuable)

#LeanUX | @jboogie

Exercise 1: Put your stickies on the wall in the order you create/ need them. Compare your documents/rankings with the other people at your table.

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

Exercise 1: Discussion How much overlap is there between different companies? When comparing your documents to the Agile manifesto, which ones fit into the Agile philosophy?

#LeanUX | @jboogie

Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

What is Lean?

#LeanUX | @jboogie

#LeanUX | @jboogie
http://www.1tech.eu/clients/casestudy_toyota3!

UX Immersion Conference, April 2012" All materials 2012

#LeanUX | @jboogie

Lean Startup
The Lean Startup has as a premise that every startup is a grand experiment that attempts to answer a question. The question is not "Can this product be built?" Instead, the questions are "Should this product be built?" and "Can we build a sustainable business around this set of products and services?" This experiment is more than just theoretical inquiry; it is a first product.

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

Lean Startup techniques start to sound a lot like UX techniques when you dig a little bit.

#LeanUX | @jboogie

with these two crucial additions

REDUCE WASTE

DONT BUILD THINGS PEOPLE DONT WANT

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

10

These are philosophies, not methodologies.

#LeanUX | @jboogie

Lean UX
Lean UX is solution to the Agile UX problem. practice of one bringing the true nature of design work to light faster,
with less emphasis on deliverables and greater focus on the actual experience being designed. Inspired by Lean Startup and Agile development theories, its the

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

11

It goes a little something like this!


Do this. Quickly. Many times.!

Just the UX process!

Concept!

Validate Internally!

Prototype!

Test Externally!

Learn from user behavior!

Iterate!

#LeanUX | @jboogie

Go that way. Really fast. If something gets in your way, turn.


-Charles DeMar (Curtis Armstrong) to Lane Myer (John Cusack) in Better Off Dead

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

12

In fast-paced Agile environments, traditional UX is a bottleneck!


Were getting in our own way!

#LeanUX | @jboogie
http://www.freakingnews.com/Bottle-Neck-Pics-36343.asp!

With interactive experiences evolving rapidly!


The traditional design deliverable is an inefcient obstacle!

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

13

You have to change perspective on how to do UX!


Agile requires a new way of looking at our processes!

#LeanUX | @jboogie
http://offroadinghome.blogspot.com/2011/04/geo-tography-forced-perspective.html!

Designers cant hide behind their monitor any more!!


This is a designer-led initiative!

#LeanUX | @jboogie
http://www.ickr.com/photos/yamagatacamille/4799648425/sizes/l/!

UX Immersion Conference, April 2012" All materials 2012

14

Get design work out there. Fast.!


In public. Yep, where others can see it.!

#LeanUX | @jboogie

This is the goal!


Moving towards parallel pathing development and design.!

http://www.greatoutdoors.com/les/imagecache/display/les/images/articles/Wong%20leading%20a%20Powder%208%20win%20%20photo %20-%20Wong%20Collection.jpg!

UX Immersion Conference, April 2012" All materials 2012

15

OK. Im intrigued. But how does it really work? First 5 things you need to do

#LeanUX | @jboogie

Solve the problem together!


As opposed to implementing someone elses solution!

1!

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

16

Sketching!
Its all the rage!!

2!

#LeanUX | @jboogie

Example of sketching at work!


V1 of the UI!

2!

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

17

Sketching brings experiences to life faster!


Launched UI!

2!

#LeanUX | @jboogie
http://www.ickr.com/photos/mims/326748812/sizes/l/!

Get the experience out there, not the document!


Validate your hypotheses!

3!

#LeanUX | @jboogie
http://www.macdavidpro.com/wp-content/uploads/2010/02/4355664150_68b8aa58a9_o-600x337.jpg!

UX Immersion Conference, April 2012" All materials 2012

18

Pair up!!
But do it, cross-functionally!

4!

#LeanUX | @jboogie
http://photond.com/featured-photo/20-uncomfortable-moments-in-sports!

Pairing saves time!


Builds a common language!

4!

#LeanUX | @jboogie
http://hoveringartdirectors.tumblr.com/page/2!

UX Immersion Conference, April 2012" All materials 2012

19

Pairing sets designers free, man!


and empowers developers!!

4!

#LeanUX | @jboogie
http://www.clydekellerphotos.com/images/AP_Kesey_HippiesDancing_GALLERY_CGW.jpg!

Style guides!!
The cause of, and solution to, all your UX problems!

5!

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

20

Theyre good for developers too!!


Creates a reusable asset library and point from which to start!

5!

#LeanUX | @jboogie

More specifically, Lean UX is

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

21

Critique Early and often on designs that dont feel finished

#LeanUX | @jboogie

Designers shouldnt be expected to get it right the rst time!


Nobody else has to!

From Design Criticism and the Creative Process by Cassie McDaniel on A List Apart, 11 Jan, 2011. http://www.alistapart.com/articles/design-criticism-creative-process/

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

22

Control Designers still facilitate the design process

#LeanUX | @jboogie

Its not The Spec that gives control!


Lead with conversation, trail with documentation!

#LeanUX | @jboogie
http://talkingtrafc.org/wp-content/images/stack_documents.jpg!

UX Immersion Conference, April 2012" All materials 2012

23

Momentum
Everyones engaged. Everyones motivated.

#LeanUX | @jboogie

Keep everybody moving forward!


Developers, stakeholders, designers and team.!

#LeanUX | @jboogie
http://www.ickr.com/photos/37541410@N03/3901861703/sizes/l/!

UX Immersion Conference, April 2012" All materials 2012

24

Quality No compromises

#LeanUX | @jboogie

Speed first. Aesthetics second.


Jason Fried, 37Signals.com

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

25

Going for the bronze. A Creative Director I used to work with

#LeanUX | @jboogie

What about the quality of the design?!


Iterations mean quality continually improves.!

#LeanUX | @jboogie
http://stockthemind.les.wordpress.com/2008/04/project-cartoon.jpg!

UX Immersion Conference, April 2012" All materials 2012

26

Is it viable?!
Yes, but does anybody actually want it?!

Minimally viable

Minimally desirable

Feasibility Make sure it can be built (and built well)

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

27

Prototype it!!
But not all of it.!

#LeanUX | @jboogie
hthttp://3.bp.blogspot.com/_mQ4dc8irsc0/S_TZkx7B_3I/AAAAAAAAAM0/lwh7NTbtKMo/s1600/PopGlider+assembled+2.jpgtp:// www.ickr.com/photos/alshepmcr/4561517216/sizes/l/!

Once validated, demo to the team.!


Presto! Instant documentation.!

No additional deliverables are needed!!

#LeanUX | @jboogie
http://www.ickr.com/photos/koolwaaij/152426460/sizes/o/!

UX Immersion Conference, April 2012" All materials 2012

28

Customer validation Your design is a hypothesis

#LeanUX | @jboogie

Validate your hypothesis with customers!


Keep it light and cheap.!

#LeanUX | @jboogie
http://www.ickr.com/photos/forakerdesign/3657336793/sizes/l/!

UX Immersion Conference, April 2012" All materials 2012

29

Use data to settle subjective issues!


A/B testing can settle these Pepsi challenges!

#LeanUX | @jboogie
http://2.bp.blogspot.com/__3p5_gzemps/TLpuaIolhlI/AAAAAAAAA-o/smDfmM8xqQM/s1600/Coke-vs-Pepsi.jpg!

Fill in the gaps Build a shared understanding

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

30

The more you talk about it!


The easier it is for the team to put the pieces together (and nd missing ones)!

#LeanUX | @jboogie
http://www.ickr.com/photos/adysmiles/4822749055/sizes/l/!

Form factor is ultimately irrelevant!


There are many ways to validate hypotheses!

UX Immersion Conference, April 2012" All materials 2012

31

Whether its software or hardware, how lean can you go?!


There are many ways to validate hypotheses!

Informal and quick is better than.!


Delayed feedback loops!

UX Immersion Conference, April 2012" All materials 2012

32

Informal and quick is better than.!


Delayed feedback loops!

What Lean UX is NOT

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

33

Lazy.!
Sorry. You still have to work hard.!

the best part is that the team is doing a F@&K-TON of UX. They document a ton of stuff explicitly on the walls and implicitly in shared understanding among team members.
-!Austin Govella
commenting on Whitney Hesss Why I Detest the Term Lean UX
http://whitneyhess.com/blog/2011/02/27/why-i-detest-the-term-lean-ux/

#LeanUX | @jboogie
http://www.steadyburn.net/wp-content/uploads/2008/12/lazy-cat5.jpg!

The only thing being removed is waste.!


Leave the toolbox intact. Use the tools as necessary.!

#LeanUX | @jboogie
http://www.ickr.com/photos/mims/326748812/sizes/l/!

UX Immersion Conference, April 2012" All materials 2012

34

This is NOT design-by-committee!!


That never leads to anything pretty.!

#LeanUX | @jboogie
http://www.ickr.com/photos/mims/326748812/sizes/l/!

Can I make this happen in my organization?!


Short answer: Yes. Long answer: Yessssssssss!!

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

35

Youre an in-house designer!


Start small and internal. Ask for forgiveness.!

#LeanUX | @jboogie
http://sarah.theworkexperiment.com/wp-content/uploads/2011/07/think-big-start-small1.jpg!

You are in the problem-solving business and you dont solve problems with design documentation. You solve them with elegant, efficient and sophisticated software.

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

36

Startups!
This is the only way to work!

#LeanUX | @jboogie
http://militarytobusiness.blogspot.com/2010/12/start-ups-at-hbs.html!

Distributed teams do it remotely!!


If theyre a part of you, its on! If not, it aint bloody likely.!

#LeanUX | @jboogie
http://farm3.static.ickr.com/2361/2076450897_be1b8ace7c.jpg!

UX Immersion Conference, April 2012" All materials 2012

37

Is this good for every project?!


Use it where it makes sense.!

#LeanUX | @jboogie
http://www.krackblog.com/wp-content/uploads/2010/05/david_hasselhoff_gary_coleman-e1275077640952.jpg!

Functional, task-ow projects work well.!


Theres a clear end goal.!

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

38

Highly experiential marketing projects will struggle.!


Time to ideate and create options is essential.!

#LeanUX | @jboogie

What about content heavy experiences?!


Some up front planning is necessary.!

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

39

Designers are used to being heroes. !


Lean UX is distinctly, anti-hero.!

#LeanUX | @jboogie
http://www.abegoodman.com/Images/greatest-american-hero.jpg!

This is Design Thinking brought to a broader audience.


Which creates empathy for: -! The customer -! The problem space -! The design discipline

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

40

Q&A Whats on your mind?

#LeanUX | @jboogie

Exercise 1 (cont): How lean can you go?

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

41

Exercise 1 (cont): Discussion Lean UX facilitates conversation and surfaces misunderstandings quickly. If this was the case in your organization, which of your documents becomes unnecessary?

#LeanUX | @jboogie

{BREAK}

UX Immersion Conference, April 2012" All materials 2012

42

Part Deux: UX in Iterations

#LeanUX | @jboogie

Todays project: Jobs R Us


Closing the communication gap

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

43

Synopsis: Jobs R Us is an online job board servicing the toy industry. It functions much like a conventional job board. Specifically, it allows hiring managers and recruiters to send messages to candidates via the site and for candidates to respond back. Currently, job seeker response rate is at an abysmal 14%. Your team has been tasked with remedying this situation.
#LeanUX | @jboogie

Exercise 2: What do you need to know to get started?

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

44

Exercise 2: As a team, create a list of activities that need to happen before you can get started on this project.

Wait!

#LeanUX | @jboogie

Exercise 2: As a team, create a list of activities that need to happen to start this project.

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

45

Exercise 2: Provide a time estimate for each activity. (Assume 5 developers, 1 product manager, 2 UX people)

#LeanUX | @jboogie

Exercise 2: Add up all the time for each team. What are your activities? How long will they take?

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

46

The mechanics of Scrum!


And how UX ts in!

#LeanUX | @jboogie
http://1.bp.blogspot.com/_FfetiF7C9vo/SEeOU0ew8KI/AAAAAAAAILU/CE_tq46wDYM/S600/Washington+DC+auto+mechanic,+1942.JPG!

First, some denitions!


Everyone loves denitions!!

Scrum
An agile methodology promoting timeboxed cycles, team self-organization and high team accountability.

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

47

First, some denitions!


Everyone loves denitions!!

User Story
The smallest unit of work expressed as a benefit to the end-user.

#LeanUX | @jboogie

First, some denitions!


Everyone loves denitions!!

Backlog
A prioritized list of user stories.

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

48

First, some denitions!


Everyone loves denitions!!

Sprint
A single team cycle.*

*The goal of each sprint is to deliver working software.


#LeanUX | @jboogie

First, some denitions!


Everyone loves denitions!!

Stand-up
A daily, short team meeting where each member addresses the days challenges.

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

49

First, some denitions!


Everyone loves denitions!!

Retrospective
A meeting at the end of each sprint that takes an honest look at what went well, what went poorly and how the team will try to improve process in the next sprint.

#LeanUX | @jboogie

First, some denitions!


Everyone loves denitions!!

Iteration Planning Meeting*


A meeting at the beginning of each sprint where the team plans what theyll be doing during the upcoming sprint.

*sometimes this meeting includes estimation and story gathering


#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

50

Sprint Zero/Staggered sprints are not the answer!


Thats just miniaturized waterfall development!

#LeanUX | @jboogie

Scrum is rhythmic !
Cadences provide a framework and predictability!

Theme

2 week sprint

2 week sprint

2 week sprint

Iteration planning meeting UX Sketching/Ideation Testing: usability/value


#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

51

Every design is a hypothesis!


Dont design things people dont want!

#LeanUX | @jboogie
http://deggan.blogspot.com/2011/01/three-giant-paper-airplanes-and.html!

Exercise 2 (cont): Take a look at your list of project documents/ activities. How can we use Lean UX tactics to make them work in an Agile framework?

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

52

Prioritiztion!
You must be involved!

#LeanUX | @jboogie

What artifacts need to be created?!


What have you created?!

#LeanUX | @jboogie
www.giffconstable.com!

UX Immersion Conference, April 2012" All materials 2012

53

Working with developers!


Design is a team sport.!

#LeanUX | @jboogie

Working with management/biz owners!


Manage up and out!

Your team Stakeholders Product owners/business line leaders Executives Other departments

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

54

Whats worked well for you? Where have you struggled?

{LUNCH}

UX Immersion Conference, April 2012" All materials 2012

55

Part III: Collaborative Problem Solving

#LeanUX | @jboogie

Exercise 3: But first, a sketching warm up!

Telepictionary!

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

56

Synopsis: Jobs R Us is an online job board servicing the toy industry. It functions much like a conventional job board. Specifically, it allows hiring managers and recruiters to send messages to candidates via the site and for candidates to respond back. Currently, job seeker response rates are at an abysmal 14%. Your team has been tasked with remedying this situation.
#LeanUX | @jboogie

To get started we need some constraints. Lets start with personas. -! Could be research based -! Ad-hoc personas are OK
-! -! You must test your hypotheses with representative people A good tactic for Agile UX

-! Some sense of who youre designing for is needed to get underway

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

57

Persona 1: Randy, the store worker


Randy is a single, 27 year old, full-time salesperson in a toy store. Hes worked in the toy business for 3 years and has spent most of his time in the stock room or on the sales floor. He has a smart phone and gets sporadic chances throughout the course of a shift to check his email/social networks. Randy aspires to become a store manager and is actively looking for his next opportunity in the toy business. Hes posted his resume to Jobs R Us but has not seen much activity in the 3 months since. Hes growing disenchanted with the service and doesnt believe hes going to find his next job through it which has translated into less time spent on the site.
#LeanUX | @jboogie

Persona 2: Roxanne, the store manager


Roxanne is a married, 34 year old manager at a big toy store in the mall. Shes been in the toy business for nearly 10 years and is aggressively pursuing a district manager role. She spends half of her day in front of her computer in the back office with a the other half spent on the sales floor. She communicates regularly through email for both business and personal as well as SMS with her husband. Shes used Jobs R Us in the past to find her next role in the toy industry and this time is no different. Her biggest concerns are her boss finding out about her current search and finding the time during her busy day to stay on top of it.
#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

58

Exercise 3: Collaborative sketching

#LeanUX | @jboogie

Exercise 3: Each team will sketch solutions to our business problem. We will follow a design studio methodology.

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

59

Exercise 3: First round: 6 low-fidelity sketches created individually

#LeanUX | @jboogie

Exercise 3: First round: Everyone presents their sketches to their team mates, discuss and critique

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

60

Exercise 3: Second round: synthesize the critique you received along with ideas gleaned from your team mates to create one sketch for a proposed solution

#LeanUX | @jboogie

Exercise 3: Second round: Everyone presents their sketches to their team mates, discuss and critique

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

61

Exercise 3: Final round: combine the teams ideas into one big sketch (on the big sticky pads)

#LeanUX | @jboogie

Exercise 3: Final round: each team presents their ideas to one other table

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

62

We just spent roughly 90 minutes solving a business problem as a team. How far along have we gotten on this project started in that time frame? Compare this with the time we thought it would take to create the list of deliverables we made earlier.
#LeanUX | @jboogie

{BREAK}

UX Immersion Conference, April 2012" All materials 2012

63

Part IV: Prioritize, validate, refine, present

#LeanUX | @jboogie

Agile is an exercise in prioritization!


But you must be informed!

#LeanUX | @jboogie
www.giffconstable.com!

UX Immersion Conference, April 2012" All materials 2012

64

UX must be involved in prioritization!


Logic, workow and resource allocation depend on it!

#LeanUX | @jboogie
https://www.sandbox-learning.com!

Negotiate for the time you need!


What stories require less of your time, can they go rst?!

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

65

Push back when necessary!


Arguments based on data always win!

#LeanUX | @jboogie

Exercise 4: Story cards!

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

66

Exercise 4: An example

#LeanUX | @jboogie

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

67

Exercise 4: Take all the ideas you generated in your design studio (the big sketch) and write story cards for each element. (get granular!)

#LeanUX | @jboogie

Exercise 4: As a _____________ I want to__________ So that___________

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

68

Exercise 4: Prioritize your stories into a backlog for your next sprint.

#LeanUX | @jboogie

Exercise 4: What did you find challenging about the prioritization? How did you resolve it?

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

69

Research is an ongoing stream!


Not a one-time event!

Quantitative insight

2 week sprint

2 week sprint

2 week sprint

Testing: usability/value
#LeanUX | @jboogie

Bring your customers to your team!


Make it easy to hear their voice!

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

70

Lean UX makes Agile UX possible!


Use what you need, when you need it!

#LeanUX | @jboogie

Conversation and collaboration support the rest!


Build transparent work relationships, build trust!

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

71

How Lean UX successfully merges Agile and UX:


1.! Solve your problems together (as a team) 2.! Sketch early and often (as a team) 3.! Validate your design hypotheses quickly 4.! Cross-functional pairing (design and dev) 5.! Create a style guide 6.! Build a UX rhythm across Scrums cadenced meeting structure 7.! Participate! (in story gathering, estimation and prioritization) 8.! You can always go leaner 9.! Research is on-going activity (quant and qual) 10.! Manage up and out 11.! DONT DESIGN/BUILD THINGS PEOPLE DONT WANT

#LeanUX | @jboogie

Q&A Whats on your mind?

#LeanUX | @jboogie

UX Immersion Conference, April 2012" All materials 2012

72

@jboogie jeff@proof-nyc.com Thank you www.leanuxbook.com www.jeffgothelf.com slideshare.net/jgothelf

Im writing a book! Pre-order here

UX Immersion Conference, April 2012" All materials 2012

73

Вам также может понравиться