Conversation patters for ubiquitous language

21

description

It's a summary a small talk about language skills I gave during iDDD Tour in Poland. Thanks to @VaughnVernon for sharing his time.

Transcript of Conversation patters for ubiquitous language

Page 1: Conversation patters for ubiquitous language
Page 2: Conversation patters for ubiquitous language
Page 3: Conversation patters for ubiquitous language
Page 4: Conversation patters for ubiquitous language

A domain is here!

Page 5: Conversation patters for ubiquitous language

A domain is here!

Page 6: Conversation patters for ubiquitous language

Techniques for Exploring UL• Concretisation Technique– DE uses a lot of unknown business terms– DE gives you only generic or simplified information

• Whitebox Technique– You explore parts of the domain where step by step process is

important

• Generalisation Technique– DE is focused on „how” not „what”– DE gives you a lot of details which seem to have nothing in

common

Page 7: Conversation patters for ubiquitous language

Techniques for Exploring UL• Framing Technique– DE confuses domain concepts

• Pacing Techique– DE for some reason doesn’t want to talk openly; – s/he might be affraid, shy or might not trust you;

• Leading Technique– You want to lead conversation to a specific place

Page 8: Conversation patters for ubiquitous language

Techniques for Exploring UL• Finding Real Intention Technique– You don’t know why something is important– DE said or did something and you found it ratty

• Specifying Problems Technique– You want to define business outcome and DE is problem-

centric motivation type

• Specyfing Benefits Technique– You want to define business outcome and DE is benefit-

centric motivation type

Page 9: Conversation patters for ubiquitous language

Techniques for Exploring UL• Transform Problem Into Benefit– You defined problem DE tries to solve and DE doesn’t buy it

• Transform Benefit Into Problem– You defined benefit DE tries to achieve and DE doesn’t buy it

• Extend Solution Space– DE is strongly focused on only one aspect of domain– DE has his or her own „solution” and wants to force you to

apply it– You want DE to learn from model

Page 10: Conversation patters for ubiquitous language

Techniques for Exploring UL• Suggest Alternative– You want DE to learn from model– DE’s solution seems to be not the best option

• Build Analogy– You want to understand how two or more domains

play together– You do Context Mapping and you need some domain

knowledge from a DE

Page 11: Conversation patters for ubiquitous language

A Flavour of Concretisation Technique

As a PO I use… But I saw…

Publish Serial

Publish Episode

Labels

Time Remaining: h 35 min.

Dr Home. Season 1 Epsiode 29

Page 12: Conversation patters for ubiquitous language

A Flavour of Concretisation Technique

As a PO I use… But I saw…

Publish Serial Add Category

Publish Episode

Labels

Time Remaining: h 35 min.

Dr Home. Season 1 epsiode 29

Page 13: Conversation patters for ubiquitous language

A Flavour of Concretisation Technique

As a PO I use… But I saw…

Publish Serial Add Category

Publish Episode Add flv File

Labels

Time Remaining: h 35 min.

Dr Home. Season 1 epsiode 29

Page 14: Conversation patters for ubiquitous language

A Flavour of Concretisation Technique

As a PO I use… But I saw…

Publish Serial Add Category

Publish Episode Add flv File

Labels Tag Claud

Time Remaining: h 35 min.

Dr Home. Season 1 epsiode 29

Page 15: Conversation patters for ubiquitous language

A Flavour of Concretisation Technique

As a PO I use… But I saw…

Publish Serial Add Category

Publish Episode Add flv File

Labels Tag Claud

Time Remaining: h 35 min. Length: 2 100 000 ms

Dr Home. Season 1 epsiode 29

Page 16: Conversation patters for ubiquitous language

A Flavour of Concretisation Technique

As a PO I use… But I saw…

Publish Serial Add Category

Publish Episode Add flv File

Labels Tag Claud

Time Remaining: h 35 min. Lenght: 2 100 000 ms

Dr Home. Season 1 epsiode 29 87a1b230ff910912.flv

Page 17: Conversation patters for ubiquitous language

Take Care About the Words!• Take a word as it is, don’t distort it

• Developers tends to use verbs which are synonyms of:– Create– Retrieve– Update– Delete

• Sometimes these might be a part of UL but mostly are only distortion you made missing „real” business word

Page 18: Conversation patters for ubiquitous language

What happens then in the code?

Set<Item> items...

//...

class Backlog extends Entity {

private Set<Item> items;

//business operations}

//...

Page 19: Conversation patters for ubiquitous language

What happens then in business?

Page 20: Conversation patters for ubiquitous language

How much are worth words in domain you’re working on?

Page 21: Conversation patters for ubiquitous language

Currently in Polish, by we’re working on…

Michał [email protected]@bnsit.pl

Mariusz Sieraczkiewiczmsieraczkiewicz.blogspot.com@[email protected]

How to talk to the customer who doesn’t know what he wants?