Taming the Monolith – Are Microservices Just an Implementation Detail?

Post on 30-Jul-2015

1.260 views 1 download

Transcript of Taming the Monolith – Are Microservices Just an Implementation Detail?

TAMING THE MONOLITHAre microservices just an implementation detail?

#GOTOnight Cologne | June 22nd, 2015 | Dennis Traub | @DTraub

EVERYBODY TALKS ABOUT MICROSERVICES

2

https://i2.wp.com/www.aydinstone.com/vic20.jpg

http://www.weihenstephan.org/~michaste/pagetable/64er/64er_1984-04.jpg | http://www.c64-wiki.de/images/thumb/4/43/listing_shape.jpg/300px-listing_shape.jpg

- A sphere of knowledge, influence, or activity - - What an organisation does, and the world it does it in -

DOMAIN

- A system of abstractions describing selected aspects of a Domain - - Used to solve problems related to that Domain -

MODEL

SIT DOWN WITH THE EXPERTS & LISTEN

http://wikimediafoundation.org/wiki/File:Commodore-VIC-20-FL.jpg

http://wikimediafoundation.org/wiki/File:Commodore-VIC-20-FL.jpghttp://backgrounds.1nova.com/wp-content/uploads/sites/27/2015/02/One-Ring-to-Rule-them-All.jpg

ONE MODEL TO RULE THEM ALL

- A language structured around the Domain Model - - Used by all team members and throughout the code -

UBIQUITOUS LANGUAGE

Customer

Customer

Marketing

Target Group

Customer

Marketing

Target Group

Website

Visitor

Customer

Marketing

Target Group

Website

Visitor

Shopping Cart

Buyer

Customer

Recipient

ShippingMarketing

Target Group

Website

Visitor

Shopping Cart

Buyer

Customer

Recipient

ShippingMarketing

Target Group

Hotline

Caller

Website

Visitor

Shopping Cart

Buyer

Customer

Recipient

ShippingMarketing

Target Group

Hotline

Caller

Website

Visitor

Shopping Cart

Buyer

Purchasing

Customer

- An explicit boundary within which a Domain Model exists - - Inside, all terms have a specific meaning -

- They are part of the Ubiquitous Language -

BOUNDED CONTEXT

Customer

Recipient

ShippingMarketing

Target Group

Hotline

Caller

Website

Visitor

Shopping Cart

Buyer

Purchasing

Customer

Customer

Recipient

ShippingMarketing

Target Group

Hotline

Caller

Website

Visitor

Shopping Cart

Buyer

Purchasing

Customer

KEY ATTRIBUTES OF A BOUNDED CONTEXT

High Cohesion Loose Coupling

Represents Business Capability Context-specific Model

KEY ATTRIBUTES OF A MICROSERVICE

High Cohesion Loose Coupling

Represents Business Capability Context-specific Model

We don’t model reality We model useful abstractions

We don’t build a model that works for everyone

THANK YOU! Dennis Traub | @DTraub | #GOTOnight