The technology changes required when implementing a microservice-based application are only one part of the equation. The business and organisation will also most likely have to fundamentally change. In an ideal world, this shouldn’t be a problem – what with the rise of agile, lean and DevOps – but this is not always the situation I encounter in my consulting travels. I would like to share some stories of successful (and not so successful) strategies and tactics I have used over the past four years when introducing service-oriented architecture into organisations.
Join me for a whistle-stop tour of the business and people challenges that I have experienced first hand when implementing a greenfield microservice project, and also breaking down a monolith. We’ll look at ‘divided companies’ vs ‘connected companies’, determine the actual impact of conway’s law, briefly touch on the lean startup/enterprise mindset, dive into change management without the management double-speak, and look at the lightweight processes needed to ensure the technical success of a microservices implementation.
Unlocking the Potential of the Cloud for IBM Power Systems
OC 2015: The Business Behind Microservices
1. The Business Behind MICRoservices:
OrganisationAL, architectural and Operational Challenges
Daniel
Bryant
@danielbryantuk
|
daniel.bryant@opencredo.com
@OpenCredo
|
www.opencredo.com
2. Today
–
Microservices…
• Awesome,
but
not
for
every
organisaDon/project?
• There
is
macro
organisaDonal
and
people
impact
• Establish
architectural/operaDonal
foundaDons
• Apply
lightweight
process
to
drive
change
23/09/15
@danielbryantuk
3. Who
Am
I?
• London
Java
Community
Associate
• Adopt
OpenJDK
and
JSR
• InfoQ
Editor
and
DZone
MVB
23/09/15
@danielbryantuk
• Principal
Consultant
at
OpenCredo
ü Agile,
CI/CD,
DevOps
ü Microservices
and
cloud
ü Docker,
Mesos
and
Kubernetes
5. So,
What
is
a
Microservice?
“Loosely coupled service oriented architecture
with bounded contexts”
Adrian Cockcroft
“Applications that fit in your head”
James Lewis
23/09/15
@danielbryantuk
6. Why
Are
Microservices
Popular?
• Enforcement
of
good
architecture/design?
• Lower
barrier
to
entry
– CogniDve
overhead
– Cost
of
experimentaDon/change
• “…first
post
DevOps
revoluDon
architecture”
– Neil
Ford
(thght.works/1j9btLx)
23/09/15
@danielbryantuk
7. A
Perfect
(Industry)
Storm
• Pain
points
– Monolith
issues
– Complex
enterprise
middleware
– Value
stream
challenges
• DisrupDon
by
the
Vanguard
– ‘DevOps’
and
prevalence
of
APIs
– Economics
of
cloud
(containers)
– Connected
companies
23/09/15
@danielbryantuk
8.
So,
are
microservices
always
the
best
approach?
23/09/15
@danielbryantuk
9. OrganisaDonal
Design
• Divided
Companies
– TradiDonal
‘enterprise’
organisaDon
– Command
and
control,
specialised,
division
of
labour
– Predictable
in
stable
environments
• Connected
Companies
– Startups
and
forward-‐thinkers
– Autonomous,
fractal,
service-‐focused
– AdapDve
in
uncertain
environments
23/09/15
@danielbryantuk
10. Is
Your
Business
Ready?
• Are
we
all
aligned
on
the
vision/goals?
• Is
‘agile’
a
dirty
word?
• Planning
and
delivery
processes
– McKinsey’s
“Three
Horizons”
– Gartner’s
“Bi-‐modal
IT”
– Simon
Wardley
“Pioneers,
Sejlers,
Townplanners”
23/09/15
@danielbryantuk
11. Microservices
for
Speed(?)
skillsmajer.com/skillscasts/6143-‐microservices-‐for-‐speed
23/09/15
@danielbryantuk
12. Architectural/Design
Skills
“If
you
can't
build
a
[well-‐structured]
monolith,
what
makes
you
think
microservices
are
the
answer?”
Simon
Brown
(bit.ly/1n7D0vp)
23/09/15
@danielbryantuk
15. On
a
Lighter
Note
Microservices
are
a
great
approach…
…given
the
correct
goals,
situaDon
and
desire
for
change
23/09/15
@danielbryantuk
16. 2. Conway was telling the truth... Deal with it!
23/09/15
@danielbryantuk
17. How
Do
Commijees
Invent?
“organizaCons
which
design
systems
...
are
constrained
to
produce
designs
which
are
copies
of
the
communicaCon
structures
of
these
organizaCons”
-‐
Melvin
Conway,
1968
23/09/15
@danielbryantuk
18. Stereotypical
Silos...
Dev
QA
Ops
Hand-‐off
delays
Hand-‐off
delays
Slow
feedback
Slow
feedback
Lack
of
cohesion,
shared
understanding
and
joint
accountability
Front-‐end
Database
Middleware
23/09/15
@danielbryantuk
19. The
Results…
23/09/15
@danielbryantuk
www.infoq.com/news/2015/06/too-‐big-‐to-‐fail
20. The
Inverse
Conway
Maneuver
“The
team
structure
dictates
the
architecture,
which
in
turn
dictates
the
team
structure…”
Raffi
Krikorian
(bit.ly/1KzGYV0)
23/09/15
@danielbryantuk
23. 3. All Technology problems are people problems
23/09/15
@danielbryantuk
24. Business
Strategy
(@swardley
style)
• SituaDonal
awareness,
strategy,
mapping
– SituaDon
Normal,
Everything
Must
Change
• One
[project
management]
size
does
not
fit
all
– Agile
vs
Lean
vs
Six
Sigma
• Enabling
innovaDon
23/09/15
@danielbryantuk
30. …and
in
the
Middle
(and
the
‘End’)
23/09/15
@danielbryantuk
www.infoq.com/news/2015/06/too-‐big-‐to-‐fail
31.
So,
we’ve
looked
at
the
business,
organisaDonal
structure,
and
people
aspects….
…how
do
we
actually
implement
this
change?
23/09/15
@danielbryantuk
33. Change
Management
is
EssenDal
• Fair
process
– Engagement
– ExplanaDon
– ExpectaDon
• Leading
change
– TransformaDon
is
a
process
– “Change
is
coming
to
IT”
(bit.ly/1QZovXr)
– Communicate,
empower,
plan,
consolidate
23/09/15
@danielbryantuk
34. A
Look
into
My
Toolbox
• (Over-‐)communicate
vision
– Engage,
explain,
expectaDons
(Dmescale
+
KPIs)
• FoundaDon
workshops
– Empower
and
support
champions
• Show
by
doing
(and
teaching)
• Take
the
team
pulse
regularly…
23/09/15
@danielbryantuk
35. A
Look
into
My
Toolbox
23/09/15
@danielbryantuk
36. A
Look
into
My
Toolbox
• MoSCoW
• RASCI
– Responsible
– Accountable
– Support
– Collaborate
– Informed
• RAG
status
23/09/15
@danielbryantuk
37. Leadership
–
Oxen
Undervalued
“Management
is
doing
things
right;
leadership
is
doing
the
right
things”
-‐ Peter
Drucker
23/09/15
@danielbryantuk
39. The
Business
Behind
Microservices
• Ask
‘can
we
benefit
from
microservices’?
– TransformaDon
is
a
process
• Agile,
Design
Skills,
CI/CD,
DevOps
prerequisites
• Cross-‐funcDonal
goal-‐oriented
teams
FTW
• Lightweight
change
management
processes
help
23/09/15
@danielbryantuk