Top Banner
Source: geek and poke
53

Architecture for rookies

Apr 15, 2017

Download

Technology

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: Architecture for rookies

Source: geek and poke

Page 2: Architecture for rookies

Architecture for Rookies

Page 3: Architecture for rookies
Page 4: Architecture for rookies

Change in thinking Tame the terminology Convince to change

Automated tests & documentation Conquer the fear

Page 5: Architecture for rookies

Before we start…

Page 6: Architecture for rookies

Do you know who you will talk to?

Page 7: Architecture for rookies

Do you know who you will talk to?

• Any personal benefits?

• Any risks?

• Any changes?

Page 8: Architecture for rookies

Do you know who you will talk to?

• Any personal benefits?

• Any risks?

• Any changes?

Page 9: Architecture for rookies

Do you know who you will talk to?

• Any personal benefits?

• Any risks?

• Any changes?

Page 10: Architecture for rookies

Change in thinking

Page 11: Architecture for rookies

Architecture

Page 12: Architecture for rookies
Page 13: Architecture for rookies

‘Box arrow box arrow cylinder architecture’ @tedneward

Page 14: Architecture for rookies

Monoliths…

Page 15: Architecture for rookies

Monoliths… … microservices?

Page 16: Architecture for rookies

Source: geek and poke

Page 17: Architecture for rookies

Dependancies

Page 18: Architecture for rookies

Source: geek and poke

Page 19: Architecture for rookies

Tame the terminology

Page 20: Architecture for rookies

WHY?

WHAT? WHO?

Page 21: Architecture for rookies

WHY?

WHAT? WHO?

Page 22: Architecture for rookies

WHY?

WHAT? WHO?

Page 23: Architecture for rookies

WHY?

WHAT? WHO?

Page 24: Architecture for rookies

Use analogies!

Page 25: Architecture for rookies

What is the business question I need answer

for?

Page 26: Architecture for rookies

Integration Data mapping

Dictionaries Frequency

Collisions

Event based vs. scheduled

Failure strategy … other

Page 27: Architecture for rookies

System A

System B

Page 28: Architecture for rookies

System A

System B

Page 29: Architecture for rookies

Convince to change

…refactoring

Page 30: Architecture for rookies

What is core business process?

Page 31: Architecture for rookies

How refactoring will influence it?

Page 32: Architecture for rookies

How does the new feature influence the key business process?

Page 33: Architecture for rookies

How refactoring will influence it?

Page 34: Architecture for rookies

∞ ÷ 2 ≈ ∞

Page 35: Architecture for rookies
Page 36: Architecture for rookies

Automated tests

Page 37: Architecture for rookies

Documentation

…it’s outdated just after you finish it

Page 38: Architecture for rookies

Source: geek and poke

Page 39: Architecture for rookies

Conquer the fear

Page 40: Architecture for rookies

Delete the code! (unused part of the app)

Page 41: Architecture for rookies

Source: geek and poke

Page 42: Architecture for rookies

Uncertainty causes fear

Page 43: Architecture for rookies

Uncertainty causes fear

…let’s measure upfront

Page 44: Architecture for rookies

Uncertainty causes fear

…and use automatic tests!

Page 45: Architecture for rookies

How?• Identify what you can possibly ‘delete’

• Measure use of the part that you want to remove

• Check dependancies

• Hide the part you want to remove and… wait

• Remove

Page 46: Architecture for rookies

How?• Identify what you can possibly ‘delete’

• Measure use of the part that you want to remove

• Check dependancies

• Hide the part you want to remove and… wait

• Remove

Page 47: Architecture for rookies

How?• Identify what you can possibly ‘delete’

• Measure use of the part that you want to remove

• Check dependancies

• Hide the part you want to remove and… wait

• Remove

Page 48: Architecture for rookies

How?• Identify what you can possibly ‘delete’

• Measure use of the part that you want to remove

• Check dependancies

• Hide the part you want to remove and… wait

• Remove

Page 49: Architecture for rookies

How?• Identify what you can possibly ‘delete’

• Measure use of the part that you want to remove

• Check dependancies

• Hide the part you want to remove and… wait

• Remove

Page 50: Architecture for rookies

Query response t

ime

Current

2s

Response loading

on page

Max number of row

s

0,5s

5

After Refactoring

40-60% less

20% more 30% less

WHY?

WHAT? WHO?

Wrap up

Page 51: Architecture for rookies

Questions

Page 52: Architecture for rookies
Page 53: Architecture for rookies