Top Banner
Real World Design Patterns A History of Creating & Using Design Patterns at eBay James Reffell & Micah Alpern User Experience & Design Group, eBay Marketplaces March 25, 2006
42

Real World Design Patterns

Jan 27, 2015

Download

James Reffell and Micah Alpern from the
User Experience & Design Group at eBay Marketplaces share lessons they have learned working with design patterns over the past few years.
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Real World Design Patterns

Real World Design PatternsA History of Creating & Using Design Patterns at eBay

James Reffell & Micah AlpernUser Experience & Design Group, eBay MarketplacesMarch 25, 2006

Page 2: Real World Design Patterns

2

Design Patterns | Why are we here?

• Talk with you about design patterns!

• History of design patterns at eBay

• Share lessons we’ve learned

• Show an example pattern

• Lively discussion!

Page 3: Real World Design Patterns

3

Design Patterns | Who are we?

• eBay user:

• Working at eBay since 11/1/02

• UI Designer– User Experience & Design, eBay Marketplaces– My group focuses on Tailored Shopping Experiences

(e.g. Half.com, Kijiji, eBay Express)

• eBay user:

• Working at eBay since 6/30/03

• UI Designer– Selling Team & Disruptive Technologies, User Experience

& Design, eBay Marketplaces

Page 4: Real World Design Patterns

4

People

Page 5: Real World Design Patterns

5

Design Patterns | eBay Marketplace’s UED Group

• 5 disciplines– User Experience

Research– Content Management– Creative Design– Prototyping– UI Design

• Buying

• Selling

• Platform & International

Page 6: Real World Design Patterns

6

Design Patterns | In the beginning …

• There were a lot fewer of us in 2002!

• But we already needed something:– Too many designers & too much complexity

• “just talking” wasn’t working any more– Doing lots of design very, very quickly– Designs were (unintentionally) inconsistent– People were always reinventing the wheel

Page 7: Real World Design Patterns

7

Design Patterns | … there was the book.

Page 8: Real World Design Patterns

8

Design Patterns | … there was the book.

Page 9: Real World Design Patterns

9

Design Patterns | … the book (cont’d)

• The book didn’t work!– Obsolete the day it was printed.– Actively dangerous within 6 months– Now a collector’s item

• Why didn’t it work?– Obvious:

• Static (printed)

• Hard to use (big & unwieldy)– Less obvious

• Too general (well-lit path)

• Too specific (5-pixel padding)

• Not a lot of ‘just right’

• Some things were just wrong

Page 10: Real World Design Patterns

10

Patterns

Page 11: Real World Design Patterns

11

Design Patterns | Patterns

• Example: Buttons!

Inconsistent style forgraphical buttons does notreinforce the eBay brand.

Multiple undifferentiatedbuttons with inconsistentpositioning of primary actiondo not prioritize the actionsfor the user.

Page 12: Real World Design Patterns

12

Design Patterns | Patterns

Page 13: Real World Design Patterns

13

Design Patterns | Patterns

• The patterns worked … a little bit.– A few important patterns got nailed down– Made some important discoveries– Those were used … when designers remembered to– Good design habits

• Why didn’t it work better?– Obvious:

• PowerPoint (static)

• No knowledge management system– Less obvious

• Investigations were slow, long, and included too much vetting

• Little or no user research

• Hard to get into actual designs

Page 14: Real World Design Patterns

14

Code

Page 15: Real World Design Patterns

15

Design Patterns | Code

Logic Toolbox

EML<eml:title> Sell Your Item: Enter Payment &amp; Shipping</eml:title>

<table border="0" cellpadding="0"cellspacing="0" width="100%"bgcolor="#D6DEFF"><tr><tdcolspan="5"bgcolor="#9999CC"><imgborder="0"src="https://titan.corp.ebay.com/ui/en_us/default/images/spacer.gif,DanaInfo=toolbox.corp.ebay.com+"height="2"width="1"></td></tr><tr><td><imgborder="0"src="https://titan.corp.ebay.com/ui/en_us/default/images/leftLine_16x3.gif,DanaInfo=toolbox.corp.ebay.com+"width="13" height="3"align="center"></td><td><imgborder="0"src="https://titan.corp.ebay.com/ui/en_us/default/images/spacer.gif,DanaInfo=toolbox.corp.ebay.com+"height="25" width="6"></td><tdwidth="100%"><bxmlns:fo="http://www.w3.org/1999/XSL/Format"><font face="arial,sans-serif" size="+1">Sell Your Item:Enter Payment &amp;Shipping</font></b></td><td><imgborder="0"src="https://titan.corp.ebay.com/ui/en_us/default/images/spacer.gif,DanaInfo=toolbox.corp.ebay.com+"height="1"width="6"></td></tr><tr><tdcolspan="5"bgcolor="#9999CC"><imgborder="0"src="https://titan.corp.ebay.com/ui/en_us/default/images/spacer.gif,DanaInfo=toolbox.corp.ebay.com+"height="2"width="1"></td></tr></table>

Data

Page 16: Real World Design Patterns

16

Design Patterns | Code

• The code worked … better.– Working with developers and code made patterns deeper– Some designers picked it up – even non-techies– Used extensively in certain site areas– Encouraged reuse

• Why didn’t it work better?– Done in “spare time” by 1 designer & 1 developer– XML language required training and was not a transferable skill.– We made it too hard to be flexible– The what without the how and the why can be frustrating

Page 17: Real World Design Patterns

17

Process

Page 18: Real World Design Patterns

18

Design Patterns | Process

Page 19: Real World Design Patterns

19

Design Patterns | Process

Page 20: Real World Design Patterns

20

Design Patterns | Putting It Together

Page 21: Real World Design Patterns

21

Final Thoughts

Page 22: Real World Design Patterns

22

Design Patterns | Now

• What we’ve got now– Patterns– Process– (cross-functional) People

• UI, visual design, content,research, development,product

– Code• Developer-led, designer

adoption optional

Page 23: Real World Design Patterns

23

Design Patterns | What Have We Learned?

• What to do– Have process, patterns, people, & code– Move quickly and don’t think too hard– Incent mass documentation– Allow and acknowledge messiness– Document the pattern and the specification and the code

• This is worth it!– Organic adoption– Joy of watching team solve hard problems– Great design (which is the point)

Page 24: Real World Design Patterns

24

Example Pattern

Page 25: Real World Design Patterns

25

Sell Your Item

• No longer static– The application grows

with sellers experience

• Rich & deep– Many many possible

features– 27 countries with

regional differences

Page 26: Real World Design Patterns

26

How you’re selling: Experienced

Page 27: Real World Design Patterns

27

Sample pattern: Input

Page 28: Real World Design Patterns

28

Sample pattern: Input

Page 29: Real World Design Patterns

29

Sample pattern: Input

Title

Data

Actions

Page 30: Real World Design Patterns

30

Sample pattern: Input

Title

DataPrefix

Required Control

Page 31: Real World Design Patterns

31

Sample pattern: Input

Title

DataPrefix

Required Control

Page 32: Real World Design Patterns

32

Sample pattern: Input

Title

DataPrefix

Required Control

Page 33: Real World Design Patterns

33

Sample pattern: Input

TitleData

Actions

Page 34: Real World Design Patterns

34

Sample pattern: Input

TitleData

Actions

Page 35: Real World Design Patterns

35

Sample pattern: Input

TitleData

Actions

TitleSubtitleToolbar

Required Controls Fees

Data

Data

Data

Actions

Prefix

Prefix

Prefix

Suffix

Suffix

Suffix

Page 36: Real World Design Patterns

36

Sample pattern: Input

TitleData

Actions

Input

Lets keep building…

GroupTwo or more inputs with some kind of relationship

Page 37: Real World Design Patterns

37

Sample pattern: Group

Input Input

Input Input

Group: Compound input

GroupTwo or more inputs with some kind of relationship

Group: Related inputs

Group: Parent / Child

Input

Input

Page 38: Real World Design Patterns

38

Keep building…

How Your Selling Page

Build chunks of functionality.. And assemble chunks into pages

Page 39: Real World Design Patterns

39

Sample pattern

Page 40: Real World Design Patterns

40

Developing a pattern language helps you– Think structurally– See relationships– Create a predictable UI– Manage complexity

Page 41: Real World Design Patterns

41

Design Patterns | Inspiration & Thanks

• Many thanks to:– eBay UED, and the UED Platform Team (past and present),

especially Larry Cornett, Jamie Hoover, Luke Wroblewski, &Peter Stahl

– IA Summit organizers

Inspiration from:– The Yahoo Design Pattern Library and Platform team

http://developer.yahoo.com/ypatterns/– Jared Spool, “Elements of a Design Pattern”

http://www.uie.com/articles/elements_of_a_design_pattern/– “The Design of Sites”, Van Duyne, Landay, and Hong

http://www.designofsites.com/

Page 42: Real World Design Patterns

42

Design Patterns | Questions?

Questions about– the history?– design patterns?– input pattern?

Contact:– [email protected][email protected]