Beyond manifestos

Post on 06-Jul-2015

151 views 1 download

Tags:

Transcript of Beyond manifestos

Agile Architecture Beyond the words in Manifesto…

Hasith Yaggahavita

Technology Manager – 99X Technology

Wro

ng

dis

cip

lin

e?

doing agile..

It’s

ab

ou

t

de

liv

eri

ng

bu

sin

es

s v

alu

e…

doing agile..being

Wis

e T

hin

kin

g…

Th

e f

irst

pri

nc

iple

Co

nti

nu

ou

s D

eliv

ery

?

time

Valu

e d

eliv

ere

d

12 months

days

Risky?

Right features?

competition?

cost?

Jo

b D

em

an

d‘P

up

pet’

Is this real?

Jo

b d

em

an

d‘d

evo

ps’

Not convinced yet?

C++ju

st

that

wh

ole

in

du

str

y

do

ing

go

od

?

Javaju

st

that

wh

ole

in

du

str

y

do

ing

go

od

?

just

that

wh

ole

in

du

str

y

do

ing

go

od

?.NET

Dig

es

t ti

me

!!!

3

0 s

ec

s

time

Valu

e d

eliv

ere

d

12 months

days

Risky?

Right features?

competition?

cost?

Ag

ile A

rch

itec

ture

A major responsibility of an Agile Architect is to

enable Continuous Delivery of business value

Ag

ile A

rch

itec

ture

A major responsibility of an Agile Architect is to

enable Continuous Delivery of business value

Continuous

Design

Delivery

Automation

Ag

ile A

rch

itec

ture

A major responsibility of an Agile Architect is to

enable Continuous Delivery of business value

Continuous

Design

Delivery

Automation

Core Platform

Fe

atu

re 1

Fe

atu

re 2

Fe

atu

re n

Co

nti

nu

ou

s D

esig

n

Core Platform

Fe

atu

re 1

Fe

atu

re 2

Fe

atu

re n

Fe

atu

re 1

Fe

atu

re 2

Co

nti

nu

ou

s D

esig

n

Fe

atu

re 1

Fe

atu

re 2

Core

Fe

atu

re 3

Core Platform

Fe

atu

re 1

Fe

atu

re 2

Fe

atu

re n

Co

nti

nu

ou

s D

esig

n

Fe

atu

re 1

Fe

atu

re 2

Core

Fe

atu

re 3

Core Platform

Fe

atu

re 1

Fe

atu

re 2

Fe

atu

re n

Co

nti

nu

ou

s D

esig

n

Fe

atu

re 1

Fe

atu

re 2

Core

Fe

atu

re 3

Core Platform

Fe

atu

re 1

Fe

atu

re 2

Fe

atu

re n

Fe

atu

re n

skill of effectively switching between specialization and generalization

Co

nti

nu

ou

s D

esig

n

Rule 1: I do not write any production code unless it is to make a failing unit test pass !

Rule 2: I do not write anymore of a unit test than is sufficient to fail !

Rule 3: I do not write more production code than it is sufficient to pass the failing test !

Test Driven Development (TDD)

Write test

See it fail

Write code to pass

Refactor

Co

nti

nu

ou

s D

esig

n

Last Responsible

Moment

time

Differed Decisions …C

on

tin

uo

us D

esig

n

Ag

ile A

rch

itec

ture

A major responsibility of an Agile Architect is to

enable Continuous Delivery of business value

Continuous

Design

Delivery

Automation

Ag

ile A

rch

itec

ture

A major responsibility of an Agile Architect is to

enable Continuous Delivery of business value

Continuous

Design

Delivery

Automation

Delivery

Au

tom

ati

on

Agile Development

Everyone on trunk Every commit triggers a build UT & IT automated Code quality inspected

Agile Development

Continuous Integration

Delivery

Au

tom

ati

on

Agile Development

Continuous Integration

Automated Configuration Management

Delivery

Au

tom

ati

on Single command dev env setup

Single command test env setup Single command production env setup

Agile Development

Continuous Integration

Automated Configuration Management

Tuned Processes

Delivery

Au

tom

ati

on

time

scope

sprint planned work

Scrum or Kanban?

Agile Development

Continuous Integration

Automated Configuration Management

Tuned Processes

Delivery

Au

tom

ati

on

Scrum or Kanban?

time

scope

WIP

Agile Development

Continuous Integration

Automated Configuration Management

Tuned Processes

Make Deployment Pipeline Visible

Delivery

Au

tom

ati

on

Deployment Pipeline

Developer

Machine

Delivery

Au

tom

ati

on

Unit tests

(smoke)

Integration

Machine(s)

code check-inintegration

Tests (quick)

regression

Tests (full)

feedback

feedback

code

inspectionfeedback

approval

feedbac

k

User

Acceptance

(Manual)

Production

Machine(s)

approval

Agile Development

Continuous Integration

Automated Configuration Management

Tuned processes

Make Deployment Pipeline Visible

Co

nti

nu

ou

s D

eliv

ery

of

Bu

sin

ess

Valu

e

Th

an

k Y

ou

!

ha

sith

@g

mail.

co

m

htt

p:/

/blo

g.h

asith.n

et