Does Agile Enterprise Architecture = Agile + Enterprise Architecture?

Post on 04-Jul-2015

1.054 views 9 download

description

Does Agile EA Equal Agile Plus EA? Confusion over the word “agile” is actually one of the challenges with Enterprise Architecture (EA) today. So, what does "agile" -- or in some quarters, "Agile" -- mean today, and how do we apply Agile to architecture? Most people use the phrase "Agile Architecture" to refer to software architecture appropriate for Agile software development projects -- not EA at all. Nevertheless, there is a growing Agile EA movement that extends the core principles of the Agile manifesto to EA more broadly. This approach deemphasizes the role of frameworks and other artifacts, and instead treats the enterprise as a complex adaptive system. Agile EA thus leverages complex systems theory, including the role of emergent properties, to rethink how organizations innovate and otherwise deal with change within the context of market and regulatory constraints. Attendees of this session will: * Gain clear differentiators between Agile software architecture and Agile EA * Understand the role of complex systems theory to the practice of Agile EA * Learn how Bloomberg Agile Architecture(tm) can support organizations' agility requirements in the future

Transcript of Does Agile Enterprise Architecture = Agile + Enterprise Architecture?

Copyright © 2014, Intellyx, LLC

1

Does Agile EA = Agile + EA?

Jason Bloomberg

President

jason@intellyx.com

@theebizwizard

About Jason Bloomberg

• President of Intellyx

• Advise companies on their digital transformation initiatives & help vendors communicate their agility stories

• Write for Forbes, Wired, & DevX on Digital Transformation

• Buy my latest book, The Agile Architecture Revolution

Copyright © 2014, Intellyx, LLC2

The Agile Manifesto

Manifesto for Agile Software Development

We are uncovering better ways of developingsoftware by doing it and helping others do it.Through this work we have come to value:

– Individuals and interactions over processes and tools

– Working software over comprehensive documentation

– Customer collaboration over contract negotiation

– Responding to change over following a plan

That is, while there is value in the items onthe right, we value the items on the left more.

Copyright © 2014, Intellyx, LLC3

Sourc

e:

htt

p:/

/ww

w.a

gilem

anifesto

.org

Context: Software Development

• Focus on small teams that crank out code

• Iterative, self-organizing, collaborative

• Focus on creating working software

Copyright © 2014, Intellyx, LLC4

Well-run Agile development means producing a lot of good software

quickly

Photo

Cre

dit:

Phil W

hitehouse h

ttps:/

/ww

w.f

lickr.

com

/photo

s/p

hilliecasabla

nca/2

473728872/s

izes/l

What about Architecture on Agile Projects?

• We don’t need no stinkin’ architecture!

• Architecture lumped in with documentation (less is more)

• Architects slow down developers

• Architects produce artifacts that aren’t Agile

– Lead to extra work

Copyright © 2014, Intellyx, LLC5

Photo

Cre

dit:

Yort

whtt

ps:/

/ww

w.f

lickr.

com

/photo

s/y

ort

w/5

470226807/s

izes/l

Widespread belief that Agile and Architecture don’t mix

But we Do Need Architecture!

• Software architecture

– Appropriate modularization of code

– Selection of appropriate components & libraries

– Integration strategy

• Systems architecture

– Scalability of distributed application

– Cloud deployment issues

– Availability, caching, etc.

Copyright © 2014, Intellyx, LLC6

Create Minimum Viable Architecture

• All documentation, artifacts, diagrams, etc. are means to an end

• Don’t architect more than the stakeholders want

• Problems:

– Shortsighted

– Leads to legacy issues

– Limits agilityCopyright © 2014, Intellyx, LLC7 P

hoto

Cre

dit:

Cam

era

Eye P

hoto

gra

phy h

ttps:/

/ww

w.f

lickr.

com

/photo

s/c

am

era

_is

_a_m

irro

r_w

ith_m

em

ory

/6628934195/s

izes/l

Defer Commitment on Design Decisions

• Traditional architecture completed before development

• On Agile projects, tentative architecture good enough

• Commit to design decisions in appropriate iteration/sprint

Copyright © 2014, Intellyx, LLC8

Photo

Cre

dit:

Wade R

ockett

htt

ps:/

/ww

w.f

lickr.

com

/photo

s/w

adero

ckett

/2947370316/s

izes/o

/

The Overbuilding Paradox

• How do stakeholders know what flexibility they will require?

• How generalized should code be?

• When to build capabilitiesvs. when to build affordances?

Copyright © 2014, Intellyx, LLC9

Photo

Cre

dit:

Ishik

aw

a K

en h

ttps:/

/ww

w.f

lickr.

com

/photo

s/c

hid

ori

an/1

9898378/s

izes/l

Capabilities vs. Affordances

• Capability

– Ability to perform or achieve certain outcomes through features or functions

– Apps have capabilities

• Affordance

– A property of an object which allows an individual to perform an action

– Tools have affordances

– Depends upon how user wants to use tool

Copyright © 2014, Intellyx, LLC10 Photo

Cre

dit:

Era

Phern

alia

Vin

tage h

ttps:/

/ww

w.f

lickr.

com

/photo

s/e

raphern

alia_vin

tage/3

034341310/s

izes/o

/

Why Agile Software Architecture isn’t Agile

• Agile movement focuses on working software

– Focus on getting the software to meet its requirements

– Get all roadblocks out of the way

• Agile-built software is coded to be fit for purpose

Copyright © 2014, Intellyx, LLC11

Photo

Cre

dit:

B4bees h

ttps:/

/ww

w.f

lickr.

com

/photo

s/b

rizo_th

e_scot/

4013939756/s

izes/l

Instant Legacy

• Difficult to upgrade

• Systems are inflexible

• Impossible to replace

• Difficult to customize

• Challenge to integrate

• Expensive over time

Copyright © 2014, Intellyx, LLC12

Photo

Cre

dit:

LH

OO

N h

ttps:/

/ww

w.f

lickr.

com

/photo

s/l

hoon/2

288339151/s

izes/l

The Goal of Agile Software

• Requirement to build software that responds to changing requirements

• Inherent flexibility vs. rapid development & deployment

Copyright © 2014, Intellyx, LLC13 Photo

Cre

dit:

Robert

Couse-B

aker

htt

ps:/

/ww

w.f

lickr.

com

/photo

s/2

9233640@

N07/1

4859431605/s

izes/z

/

Scaling Agile for the Enterprise

• Enterprise Architecture context

– Organization, process, technology, and information

• Legacy context

– Existing applications, middleware, systems of record

• Business focused, iterative, get stuff to work, iconoclastic

Copyright © 2014, Intellyx, LLC14

Photo

Cre

dit:

Bosto

n P

ublic L

ibra

ry h

ttps:/

/ww

w.f

lickr.

com

/photo

s/b

osto

n_public_libra

ry/8

962106164/s

izes/l

Different Meanings of “Agile”

• “Agile-with-a-capital-A”

– Software development that follows the Agile Manifesto

• General meaning of “agile”

• Business agility as property of an organization

Copyright © 2014, Intellyx, LLC15

Photo

Cre

dit:

Earl

McG

ehee

htt

ps:/

/ww

w.f

lickr.

com

/photo

s/e

jmc/1

0653135183/s

izes/l

Business Agility

• Responsiveness

– Tactical value

• Resilience

– Risk mitigation

• Innovativeness

– Strategic value

Copyright © 2014, Intellyx, LLC16 Photo

Cre

dit:

Masonite B

urn

htt

ps:/

/ww

w.f

lickr.

com

/photo

s/m

asonite-b

urn

/6273626739/s

izes/l

Ability to respond to change in the business environment and leverage change for competitive advantage

Responsiveness

• The ability to respond quickly and efficiently to (potentially) positive change in the business environment

– Changing customer demand

– Changing marketplace environment

– Changing supply chain factors

• Tactical driver

Copyright © 2014, Intellyx, LLC17

Photo

Cre

dit:

Good E

ye M

ight

htt

ps:/

/ww

w.f

lickr.

com

/photo

s/b

ritt

anyg/1

796000993/s

izes/l

Resilience

• The ability to respond quickly and efficiently to negative change in the business environment

– Managing risk

– Bouncing back from adverse events

– Disaster recovery

– Security breach response

– Regulatory change response

• Tactical driverCopyright © 2014, Intellyx, LLC18

Photo

Cre

dit:

Joe h

ttps:/

/ww

w.f

lickr.

com

/photo

s/b

itshaker/

167480266/s

izes/o

/

Innovativeness

• The ability to introduce change into the business environment in order to achieve a strategicadvantage

– New products or services

– Expand market share

– Enter new markets

Copyright © 2014, Intellyx, LLC19

Photo

Cre

dit:

Kay K

im h

ttps:/

/ww

w.f

lickr.

com

/photo

s/k

aykim

/3883340152/s

izes/o

/

Where’s Our Business Agility?

• Organizations must be responsive, resilient, and innovative

• Business agility is a property of the enterprise

• People and technology can be flexible as well, but we must architect our organizations to be agile

Copyright © 2014, Intellyx, LLC20

Photo

Cre

dit:

Stu

art

Berw

ick h

ttps:/

/ww

w.f

lickr.

com

/photo

s/l

aple

ader/

793507962/s

izes/l

Introducing Complex Adaptive Systems

• Systems of systems that exhibit emergent properties

– Properties of system as a whole

• Component systems can be human, technology, etc.

• Self-organizing

Copyright © 2014, Intellyx, LLC21

Photo

Cre

dit:

Dir

ectD

ish

htt

ps:/

/ww

w.f

lickr.

com

/photo

s/1

3800911@

N08/3

557789021/s

izes/l

Enterprise as Complex Adaptive System

• Business agility is property of organization as a whole, hence an emergent property of the organization

• Enterprise is system of systems that exhibits emergent properties

• System of people and technology

Copyright © 2014, Intellyx, LLC22

Photo

Cre

dit:

agu2000_de h

ttps:/

/ww

w.f

lickr.

com

/photo

s/3

8123550@

N00/1

66930597/s

izes/o

/

Engineering a Complex System

• Architecture focuses on the overall design of a system

– How all components of the system must work together to achieve business goals

• Engineering focuses on the best way to build and run a system

– Lifecycle best practices (quality assurance, deployment, updates, etc.)

– Compliance with architecture

Copyright © 2014, Intellyx, LLC23

Agile principle: respond to change over following a plan

Photo

Cre

dit:

Bre

nt

2.0

htt

ps:/

/ww

w.f

lickr.

com

/photo

s/b

rentinoz/4

221291984/s

izes/o

/

At the Heart of Agile Architecture

• Think of the enterprise as a system of systems

• Component systems are people and technology systems

• We must architect the organization so entire enterprise exhibits business agility

• We can only engineerbusiness agility via its component systems

• Change is constant & how changes to component systems affect the enterprise is unpredictable

Copyright © 2014, Intellyx, LLC24

Photo

Cre

dit:

nic

kodohert

yhtt

ps:/

/ww

w.f

lickr.

com

/photo

s/n

ick-o

d/9

151191333/s

izes/l

Complex vs. Traditional Systems

• Avoid emergent properties in traditional systems

• Traditional system: given requirements, build to requirements

• Complex system: establish initial conditions and rules for behavior of component systems, and emergence takes care of itself

• Feedback loops are common

Copyright © 2014, Intellyx, LLC25

Photo

Cre

dit:

Fra

nco F

olinihtt

ps:/

/ww

w.f

lickr.

com

/photo

s/l

ivenatu

re/8

064660509/s

izes/l

The Secret to Emergence

• Rules that affect behavior of component systems can be very simple

• Emergent behaviors often unpredictable

• Try something, see what happens, repeat

• Feedback loops & iterative approaches

Copyright © 2014, Intellyx, LLC26

Photo

Cre

dit:

Juan L

eis

htt

ps:/

/ww

w.f

lickr.

com

/photo

s/k

aib

ara

/4632384645/s

izes/l

Sound Agile to You?

Attractors for Complex Systems

• Stable

– Emergent behaviors die out or never occur

– Not applicable to enterprise

• Cyclical

– System bounces between two or more well-defined states

– Also not applicable

• Chaotic

– Unpredictable, few discernable patterns

– “Normal” state for enterprise

• Agile

– Exhibiting desired emergent behaviorsCopyright © 2014, Intellyx, LLC27

Photo

Cre

dit:

Anders

Sandberg

htt

ps:/

/ww

w.f

lickr.

com

/photo

s/a

renam

onta

nus/2

73180669/s

izes/o

/

Architecting Complex Systems

• Coherence of system

– If emerging behavior strays from desired outcome, have pre-established means for bringing organization back in line

• Feedback loops

– Gather & analyze data on emergent behavior to correlate with initial constraints and determine next course of action

• Mimics natural selection

– Favor desired behavior and discourage undesirable behavior, and system will adapt to changed environment

Copyright © 2014, Intellyx, LLC28

Agility vs. Flexibility

• Flexibility is the ability of a component system to deal with change within a specified set of parameters

– People can be flexible vs. rigid in their decision making

– Software can be flexible if it is configurable to behave differently given different requirements

Copyright © 2014, Intellyx, LLC29

Photo

Cre

dit:

Joe G

old

berg

htt

ps:/

/ww

w.f

lickr.

com

/photo

s/g

old

berg

/43948299/s

izes/o

/

Does Flexibility Lead to Agility?

• If your people and your software are flexible, does that make your organization agile?

– Necessary, perhaps, but definitely not sufficient

• Being able to change inflexible software quickly doesn’t necessary make it flexible

Copyright © 2014, Intellyx, LLC30

Photo

Cre

dit:

A.

Dra

uglis

htt

ps:/

/ww

w.f

lickr.

com

/photo

s/a

rtdra

uglis/4

193261266/s

izes/l

Architecting Enterprise as Complex System

• Architect people as well as technology

– Very different sets of activities

• Emergent behaviors often unpredictable

– Continual adjustment necessary

– Automation critical for ensuring agility

• Small changes to component system behavior may lead to significant emergent behaviors

– Butterfly effect

Copyright © 2014, Intellyx, LLC31

Too slow and you’re not agile!

Photo

Cre

dit:

Dig

anta

Talu

kdar

htt

ps:/

/ww

w.f

lickr.

com

/photo

s/n

agaon/4

394582833/s

izes/l

Architecting People?

• Governance: creating, communicating, and enforcing policies

– Apply to both human & technology behavior

– Policy-related processes

• Automated & lightweight

• Focus on important policies

– Security

– Regulatory compliance

– Software interface standards

Copyright © 2014, Intellyx, LLC32

Not a traditional approach to governance!

Photo

Cre

dit:

Dave C

atc

hpole

htt

ps:/

/ww

w.f

lickr.

com

/photo

s/y

akety

yakyak/5

913250849/s

izes/l

Governance as Agility Enabler

• Simple rules & policies lead to complex emergent behavior

– Which ones lead to agility?

• Levels of governance

– Low-level rules & policies

– Departmental

– Organizational

• Governance has negative connotation

– Reputation for limiting productivity

– Governance, Risk, & Compliance tools integrated in traditional manner

Copyright © 2014, Intellyx, LLC33

Photo

Cre

dit:

Mik

e L

ew

inski htt

ps:/

/ww

w.f

lickr.

com

/photo

s/i

kew

inski/

9430887561/s

izes/l

Bimodal IT: The Wrong Way

• Digital Team

– Self-organizing

– Fast-moving

– May follow Agile at least in spirit

– Little governance

• Traditional IT

– Hierarchical

– Slow-moving

– Waterfall-centric

– Formal, bureaucratic governance

Copyright © 2014, Intellyx, LLC34

Photo

Cre

dit:

Keith W

illiam

son h

ttps:/

/ww

w.f

lickr.

com

/photo

s/e

lwillo

/

Ungoverned Shadow IT is Result

Rethinking Bimodal IT

• Business-driven transformation of traditional IT

– Iterative

– Opportunistic legacy modernization

– Cross-cutting reorganization to DevOps culture

– Increased collaboration with digital teams

– Move toward continuous development & integration

Copyright © 2014, Intellyx, LLC35

Photo

Cre

dit:

Andre

w M

agill htt

ps:/

/ww

w.f

lickr.

com

/photo

s/a

magill/

Increased automation of governance

Shifting Role of Governance

• Old Way

– Paperwork-heavy

– Morale-killing policies & procedures

– Bureaucratic & slow

– “Scar tissue” that impedes innovation

• New Way

– Highly automated

– Focus on “edge cases” where governance is essential

– Depends on dynamic constraint satisfaction

Copyright © 2014, Intellyx, LLC36

Photo

Cre

dit:

Pascal htt

ps:/

/ww

w.f

lickr.

com

/photo

s/p

asukaru

76/

Governance & Agility?

• Do we get business agility?

• Agility doesn’t mean chaos

– If everybody in an organization did whatever they wanted to without any rules or policies

– Rules & policies inconsistently communicated or applied

• Secret to business agility is to empower people to innovate within constraints of organizational policy

Copyright © 2014, Intellyx, LLC37

Photo

Cre

dit:

Pascal htt

ps:/

/ww

w.f

lickr.

com

/photo

s/p

asukaru

76/

Introducing Bloomberg Agile Architecture

• Bloomberg Agile Architecture™ reinvents Enterprise Architecture (EA) to drive business agility across the organization

• New architecture paradigm

• EA technique focused on architecting agility

Copyright © 2014, Intellyx, LLC38

Extending the Agile Manifesto

• Individuals and interactions over processes and tools

– As a system of people & technology, the enterprise is more about people

• Working software over comprehensive documentation

– Technology must actually work to enable agility

• Customer collaboration over contract negotiation

– Slice across the silos

• Responding to change over following a plan

– Architect for change

Copyright © 2014, Intellyx, LLC39

Photo

Cre

dit:

Mary

Marg

ret

htt

ps:/

/ww

w.f

lickr.

com

/photo

s/d

ouble

-m2/4

384578534/s

izes/l

Bloomberg Agile ArchitectureMind Map

Copyright © 2014, Intellyx, LLC40

Goal of Agile Architecture

• BAA is a technology-driven technique

– Specific approaches for leveraging modern technologies like Cloud Computing & Big Data Analytics to achieve business agility goals of the organization

• Goal of architecture

– Connect the dots between the enterprise agility drivers & necessary technology changes to achieve goals of business

Copyright © 2014, Intellyx, LLC41

Photo

Cre

dit:

Whitney W

aller

htt

ps:/

/ww

w.f

lickr.

com

/photo

s/w

hitneyw

aller/

4269947837/s

izes/l

Agile EA & Architecture Frameworks

• Architecture frameworks (TOGAF, Zachman, DoDAF, etc.) do not adequately address business agility

– Difficult to use properly

– Can help achieve baseline or specific business outcomes

• Take subtractive approach

– You need to figure out which bits to use

• BAA Technique is additive

– Works within context of frameworksCopyright © 2014, Intellyx, LLC42

Photo

Cre

dit:

Ste

phanie

Overt

on h

ttps:/

/ww

w.f

lickr.

com

/photo

s/s

lovert

on/7

303570930/s

izes/l

BAA as Agile Technique

• BAA is itself an Agile technique

– Favors an iterative, problem-focused approach that seeks to achieve real progress in a practical, step-by-step manner

– Even the most intractable of legacy rats’ nests can benefit from the BAA Technique

• If your plan is to follow BAA, you must be willing to change the plan!

Copyright © 2014, Intellyx, LLC43

Photo

court

esy O

range C

ounty

Arc

hiv

es.

Jason Bloomberg

President, Intellyx

jason@intellyx.com

@theebizwizard

Send email NOW to afei@intellyx.com to download this presentation

Thank You!