Top Banner
When UX (guy) Meets Operations Tim Sheiner Velocity Conference 27 May 2015
51
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: When UX (guy) Meets Operations

When UX (guy) Meets Operations

Tim Sheiner Velocity Conference 27 May 2015

Page 2: When UX (guy) Meets Operations

When UX guy meets DevOps

2

Page 3: When UX (guy) Meets Operations

?

When UX guy meets DevOps

2

DevOps

, he has a lot to learn

Page 4: When UX (guy) Meets Operations

He uses a time-tested design process1. Personas

2. Mental Model

3. Analogy

4. Prototype

3

Page 5: When UX (guy) Meets Operations

What are personas?Personas are fictitious characters that are used to help teams design products.

• Personas are as fake and as real as the characters in your favorite TV show.

• They don’t actually exist, and yet, you learn to care about them and have many of the same expectations about them as the real people in your life.

4

Page 6: When UX (guy) Meets Operations

Why personas?Personas were created to address a too common product design communication problem.

5

Users want feature x.

Nope.

Page 7: When UX (guy) Meets Operations

Why personas?The human instinct for empathy means we know how to share ideas about the behavior of people we know in common.

6

Kyle wants feature x.

Yup.

Page 8: When UX (guy) Meets Operations

We use personas to tell product storiesTo help us create an accountable connection between the needs we gather during research and the agile stories we implement.

7

Mental Modelvalidate

iterate

Features

Prototypesvalidate

iterate

Page 9: When UX (guy) Meets Operations

DevOps Persona

8

Customers

System

Increase capacity and resilience of the System

Protect the System Use the System to deliver features to customers

Future System

Thomas - The Architect

Kyle - The Ops Guy Jenny - The Dev Gal

Page 10: When UX (guy) Meets Operations

What is their mental model of the system?

9

System

Thomas - The Architect

Kyle - The Ops Guy Jenny - The Dev Gal

Page 11: When UX (guy) Meets Operations

Mental models help us understand the world.

10

Illustration and argument from Hugh Dubberly, Models of Models, 2009

Page 12: When UX (guy) Meets Operations

Mental models help us make sense of things.

11

Illustration and argument from Hugh Dubberly, Models of Models, 2009

Page 13: When UX (guy) Meets Operations

We use mental models to make decisions.

12

Illustration and argument from Hugh Dubberly, Models of Models, 2009

Page 14: When UX (guy) Meets Operations

Mental models are the basis for learning.

13

Illustration and argument from Hugh Dubberly, Models of Models, 2009

Page 15: When UX (guy) Meets Operations

Mental models are the basis for learning.

13

Illustration and argument from Hugh Dubberly, Models of Models, 2009

Page 16: When UX (guy) Meets Operations

We learn relative to our existing models.

14

Illustration and argument from Hugh Dubberly, Models of Models, 2009

Page 17: When UX (guy) Meets Operations

We communicate by telling stories about models.

15

Illustration and argument from Hugh Dubberly, Models of Models, 2009

Page 18: When UX (guy) Meets Operations

Before I understand the jargon, descriptions don’t help much.

16

Kyle, tell me about the system.

System

Page 19: When UX (guy) Meets Operations

Before I understand the jargon, descriptions don’t help much.

16

Blah blah data center blah blahmicroservices blah blah high

availability blah blah ipsec mesh

blah blah horizontal duplication

blah blah…

System

Page 20: When UX (guy) Meets Operations

Stories about challenges are the thing.

17

Kyle, tell me a story about what happens when you get an alert?

System

Page 21: When UX (guy) Meets Operations

In Kyle’s model the ops space has 3 dimensions!

18

1. Who is being affected?

2. How are they being affected?

3. How long have they been affected?

Services - Logical

Hardware - Physical

Time

Customers

Page 22: When UX (guy) Meets Operations

In Kyle’s model the ops space has 3 dimensions!

18

1. Who is being affected?

2. How are they being affected?

3. How long have they been affected?

Services - Logical

Hardware - Physical

Time

Customers

Keep going, what happens next?

Page 23: When UX (guy) Meets Operations

Stories in this space are about nested operation sequences.

19

Log In Stream MediaMedia Query1. Applications

Page 24: When UX (guy) Meets Operations

Stories in this space are about nested operation sequences.

19

Log In Stream MediaMedia Query

Parse Optimize Build Execution Plan Run Plan

Syntax Check Semantic Check

Shared Pool Check

SC 1 SC 2 SC 3

Services - Logical

Hardware - Physical

1. Applications

2. Nested Services &sub-services

3. Steps aretransactions

4. Logical to Physical

Return Results

Page 25: When UX (guy) Meets Operations

To me, the model is sensible but novel.

20

Hmm.

Services, steps, transactions…

Page 26: When UX (guy) Meets Operations

I find a familiar model by analogy.

21

Oh!

I see. Like Fedex!

Sure.

Page 27: When UX (guy) Meets Operations

I need to validate that I understand the model.

22

Illustration and argument from Hugh Dubberly, Models of Models, 2009

Page 28: When UX (guy) Meets Operations

The Power of AnalogyAnalogy is a critical design thinking method.

• A way to validate congruence in mental models

• A method to bring past experience to bear on present circumstances

• A source of inspiration for developing solutions

23

Design by Analogy - Georgia Tech - KBAI:

Page 29: When UX (guy) Meets Operations

This is inspiration for a prototype.

24

Page 30: When UX (guy) Meets Operations

What is a prototype?Prototypes are simple, focused, tools for testing ideas visually.

• every prototype has a specific learning objective

• prototype scope is the simplest thing you can create to achieve that objective

• a series of prototypes can be used to iterate towards a final solution

25

http://zurb.com/word/prototyping

http://boltgroup.com/product/work-product/studies-product/kobalt-tools-product#.VWXzi1xVhBc

https://www.behance.net/gallery/4323339/iPhone-App-ConceptPrototypehttp://www.infoq.com/articles/guest-simon-sketchflow

Page 31: When UX (guy) Meets Operations

I want to test an experience based on this model

26

Page 32: When UX (guy) Meets Operations

//jut.io

Dashboard

Last 24 hours

Canvas Admin

Blog Community Documentation 27

Service Monitor

Hardware Health

Customer KPIs

Service Monitor

Visitors

Tota

l Vis

itors

(x10

00)

0

5

11

16

06:00 10:00 14:00 18:00 22:00 02:00 06:00

Streams

Tota

l Stre

ams

(x10

00)

0

5

9

14

06:00 10:00 14:00 18:00 22:00 02:00 06:00

Login Success Rate

99%

Media Query Execution Time

800ms

Stream Lag Ratio

2%

Page 33: When UX (guy) Meets Operations

//jut.io

Dashboard

Last 24 hours

Canvas Admin

Blog Community Documentation 27

Service Monitor

Hardware Health

Customer KPIs

Service Monitor

Visitors

Tota

l Vis

itors

(x10

00)

0

5

11

16

06:00 10:00 14:00 18:00 22:00 02:00 06:00

Streams

Tota

l Stre

ams

(x10

00)

0

5

9

14

06:00 10:00 14:00 18:00 22:00 02:00 06:00

Login Success Rate

99%

Media Query Execution Time

800ms

Stream Lag Ratio

2%

Page 34: When UX (guy) Meets Operations

//jut.io

Dashboard

Last 24 hours

Canvas Admin

Blog Community Documentation 28

Service Monitor

Visitors

Tota

l Vis

itors

(x10

00)

0

5

11

16

06:00 10:00 14:00 18:00 22:00 02:00 06:00

Streams

Tota

l Stre

ams

(x10

00)

0

5

9

14

06:00 10:00 14:00 18:00 22:00 02:00 06:00

Login Success Rate

99%

Media Query Execution Time

800ms

Stream Lag Ratio

2%

Service Monitor

Hardware Health

Customer KPIs

Page 35: When UX (guy) Meets Operations

//jut.io

Canvas Admin

Last 24 hours

Dashboard

Blog Community Documentation 29

Service Monitor > Query ServiceService Monitor

Login Service

Query Service

Streaming Service

Hardware Health

Customer KPIs

Query Steps/Time (ms) by Region

Step Americas EU APAC

Parse 120 1200 130

Optimize 120 120 100

Build Plan 100 100 100

Run Plan 90 90 90

Return Results 60 60 80

Query Steps = average for last month

Optimize Run Plan Return ResultsBuild Execution PlanParse

Page 36: When UX (guy) Meets Operations

//jut.io

Canvas Admin

Last 24 hours

Dashboard

Blog Community Documentation 29

Service Monitor > Query ServiceService Monitor

Login Service

Query Service

Streaming Service

Hardware Health

Customer KPIs

Query Steps/Time (ms) by Region

Step Americas EU APAC

Parse 120 1200 130

Optimize 120 120 100

Build Plan 100 100 100

Run Plan 90 90 90

Return Results 60 60 80

Query Steps = average for last month

Optimize Run Plan Return ResultsBuild Execution PlanParse

Page 37: When UX (guy) Meets Operations

//jut.io

Canvas Admin

Last 24 hours

Dashboard

Blog Community Documentation 30

Service Monitor > Query ServiceService Monitor

Login Service

Query Service

Streaming Service

Hardware Health

Customer KPIs

Query Steps/Time (ms) by Region

Step Americas EU APAC

Parse 120 1200 130

Optimize 120 120 100

Build Plan 100 100 100

Run Plan 90 90 90

Return Results 60 60 80

Query Steps = average for last month

Optimize Run Plan Return ResultsBuild Execution PlanParse

Page 38: When UX (guy) Meets Operations

//jut.io

Canvas Admin

Last 24 hours

Dashboard

Blog Community Documentation 31

Service Monitor > Query Service > ParseService Monitor

Login Service

Query Service

Parse

Optimize

Build Plan

Run Plan

Return

Streaming Service

Hardware Health

Customer KPIs

Parsing Service Steps = average for last month

Syntax Check Semantic Check Shared Pool Check

Syntax Check Shared Pool CheckPOP Semantic Check

ENG1

ENG2

FR1

GER1

IR1

ITA2

SPA1

SPA2

40

30

3500

30

30

40

45

45

Physical location

London, England

Bristol, England

Paris, France

Berlin, Germany

Dublin, Ireland

Milan, Italy

Madrid, Spain

Barcelona, Spain

40

30

30

30

30

40

45

45

40

30

30

30

30

40

45

45

EURegion

Page 39: When UX (guy) Meets Operations

//jut.io

Canvas Admin

Last 24 hours

Dashboard

Blog Community Documentation 31

Service Monitor > Query Service > ParseService Monitor

Login Service

Query Service

Parse

Optimize

Build Plan

Run Plan

Return

Streaming Service

Hardware Health

Customer KPIs

Parsing Service Steps = average for last month

Syntax Check Semantic Check Shared Pool Check

Syntax Check Shared Pool CheckPOP Semantic Check

ENG1

ENG2

FR1

GER1

IR1

ITA2

SPA1

SPA2

40

30

3500

30

30

40

45

45

Physical location

London, England

Bristol, England

Paris, France

Berlin, Germany

Dublin, Ireland

Milan, Italy

Madrid, Spain

Barcelona, Spain

40

30

30

30

30

40

45

45

40

30

30

30

30

40

45

45

EURegion

Page 40: When UX (guy) Meets Operations

//jut.io

Canvas Admin

Last 24 hours

Dashboard

Blog Community Documentation 32

Service Monitor > Query Service > ParseService Monitor

Login Service

Query Service

Parse

Optimize

Build Plan

Run Plan

Return

Streaming Service

Hardware Health

Customer KPIs

Parsing Service Steps = average for last month

Syntax Check Semantic Check Shared Pool Check

Syntax Check Shared Pool CheckPOP Semantic Check

ENG1

ENG2

FR1

GER1

IR1

ITA2

SPA1

SPA2

40

30

3500

30

30

40

45

45

Physical location

London, England

Bristol, England

Paris, France

Berlin, Germany

Dublin, Ireland

Milan, Italy

Madrid, Spain

Barcelona, Spain

40

30

30

30

30

40

45

45

40

30

30

30

30

40

45

45

EURegion

Page 41: When UX (guy) Meets Operations

//jut.io

Dashboard

Last 24 hours

Canvas Admin

Blog Community Documentation 33

Hardware Health > By POP

CPU

% L

oad

0

4

7

11

06:00 10:00 14:00 18:00 22:00 02:00 06:00

host 1 host 2 host 3 host 4 host 5 host 6host 7 host 8

Memory

% U

sed

0

33

67

100

06:00 10:00 14:00 18:00 22:00 02:00 06:00

host 1 host 2 host 3 host 4 host 5 host 6host 7 host 8

FR1POP

Service Monitor

Hardware Health

By Pop

By Host

Customer KPIs

Page 42: When UX (guy) Meets Operations

The prototype moves the conversation forward.

34

Hmmm. OK.Interesting.

Not entirely plausible.

Page 43: When UX (guy) Meets Operations

Why prototype?Prototypes improve communication.

• They produce a shared reference for communication

• They encourage thinking in terms of stories

• They bring attention to interaction

35

Beginning Middle End

Page 44: When UX (guy) Meets Operations

The design process creates a conversation around value.

By iterating models, the UX guy learns how to build tools for the Ops guy.

36

Featuresvalidate

iterate

validate

iterate

Page 45: When UX (guy) Meets Operations

How can you use this process?1. Learn about your customers

2. Understand their perspectives

3. Find a shared understanding of the problem

4. Use a low risk, collaborative method to get to a solution

38

Page 46: When UX (guy) Meets Operations

Learn about your customers1. Ask to interview them

1. Ask about their role

2. Ask about the background on their need

3. Ask them to describe success

2. Observe

1. Ask them to show you how they work

2. Pay attention to the difference between what they say and what they do

39

Page 47: When UX (guy) Meets Operations

Understand their perspective1. Be humble

2. There are no dumb questions

3. Get them telling stories about their work, about challenges

4. Visualize your understanding

40

Page 48: When UX (guy) Meets Operations

Find a shared understanding of the problem 1. Focus on understanding the problem first

2. Search for analogous problems

3. Use analogy to restate the problem

4. Validate that your customer agrees with the restatement

41

Page 49: When UX (guy) Meets Operations

Use a low risk, collaborative method to get to a solution

1. Define learning objectives for each prototype or iteration

2. Use the lowest fidelity approach that captures the detail you need to understand

3. Tell stories with and about your prototype

4. Share your prototypes and encourage feedback

42

Page 50: When UX (guy) Meets Operations

Be a modeler!Use models to communicate.

• Recognize models

• Build models

• Draw models

• Share models

• Talk about models

43

Page 51: When UX (guy) Meets Operations

At Jut these we are using these design practices to build an operations data hub for unified analytics on logs, metrics and events.

Check it out at www.jut.io and let me know what you think.

Tim Sheiner

@tsheiner

44