CTO and Co-Founder, WSO2
paul@wso2.com
@pzfreo
Paul Fremantle
Enabling Agile Integration Teams
http://2011.igem.org/Team:UNIPV-Pavia/Project/Modelling
Biology is fundamentally the
study of complex systems
Agile is here
- just not very
evenly distributed
CONSUMER DEMAND
SUPPLIERS DISAGGREGATE ARCHITECTURE TO MEET DEMAND
1
10
102
103
105
109
MONOLITHIC
BUSINESS APP
ENTERPRISE APPS DEPARTMENTAL
APPS
SAAS APPS PUBLIC / PRIVATE APIS SERVERLESS &
MICROSERVICES
1970s
|
MAINFRAME
1980s
|
IT AWAKENING
1990s
|
INTERNET
2000s
|
MOBILE
2010s
|
IoT/AI
2020+
|
DIGITAL NATIVE
Physical
Functional
Linux/OS
Virtualization
Cloud
Containers
K8s, Cloud
Orchestration
ABIs Web Services SOA APIs Endpoints
Cloud Native
Niels Bohr “ “An expert is a man who has
made all the mistakes which
can be made, in a narrow
field.
Agile - Developer Flow
Agile Flow for
Development Teams
What Interrupts Team Flow?
The wrong organization interrupts flow
App Logic
. . .
Scaling HA Resilience Observability
Scaling HA Resilience Observability
HA Resilience Observability
Compute Network Storage
Ops Infrastructure
Centralized
Dev Org
Middleware
& Integration
CoE Teams
Ops
Team
HA Resilience ObservabilityScaling
INTEGRATION
HA Resilience ObservabilityScaling
MESSAGING
HA Resilience ObservabilityScaling
DATA
HA Resilience ObservabilityScaling
SECURITY
App LogicApp Logic
App 1 App 2 App (n)
Fast Waterfall
“Wagile”
Complex processes
interrupt flow Step 1 Step 1 Step 1
Step 2 Step 2 Step 2
… … …
Step n Step p Step q
SGMM
SOA
Governance
Planning
Assessment
SOA
Governance
Capabilities
Heat Map
SOA
Governance
Transition
Plan
SOA
Governance
Assets Techniques, Checklist,
Guidance, Examples
Governance Process
Models
The wrong
technology stack
interrupts flow
The best architectures, requirements, and designs emerge from
self-organizing teams.
The Agile Manifesto
Agile processes promote sustainable development. The sponsors,
developers, and users should be able to maintain a constant
pace indefinitely.
Deliver working software frequently with a preference to the
shorter timescale.
“
“
“
Physical
Functional
Linux/OS
Virtualization
Cloud
Containers
K8s, Cloud
Orchestration
ABIs Web Services SOA APIs Endpoints
O
rganizational
Composable Enterprise
The best architectures, requirements, and designs emerge
from self-organizing teams.
The Agile Manifesto
Agile processes promote sustainable development. The sponsors,
developers, and users should be able to maintain a constant
pace indefinitely.
Deliver working software frequently with a preference to the
shorter timescale.
“
“
“
A team which:
● Manages its own work
● Pulls work
● Doesn’t require “command and control”
● Communicates effectively with each other
● Is not afraid to ask questions
● Continuously evolves skills and capabilities
What is a “self-organizing” team?
https://www.scrumalliance.org/community/articles/2013/january/self-organizing-teams-what-and-how
Self Organizing Teams
https://www.testingexcellence.com/10-traits-agile-self-organizing-team/
Two Pizza Rulehttps://flic.kr/p/X9B7CH
n(n-1)
2
Simple maths
A self-organising team doesn’t make
every decision...
Governance vs
Autonomy
29Governance can interrupt team flow
The cell is the basic structural,
functional, and
biological unit of all known
living organisms
Cell boundaries
Transmembrane receptors and signalling
Why did SOA fail to
live up to its potential?
APIs are designed for boundaries
● Authentication required and expected
● Authorization
● Rate limiting / Throttling
● Analytics and Observability
● No assumption that others will use it:
○ Developer-friendly portals
■ SDKs, samples, forums
○ Developer-friendly governance
■ Versioning, Deprecation notification, etc
Control Plane
Data Plane
API-driven integration agile architecture
ESB / Centralised Integration
Legacy systems / Layered Architecture
API Management Global
Control
and
Data
Planes
Cell
Self-contained
Deployable as a unit
Independently elastic
Data plane and control plane
Cells Are Building Blocks For The Composable Enterprise
Enabling
agile teams
44
“If You Can't Measure It,
You Can't Improve It”
Peter Drucker
45
https://www.tasktop.com/blog/5-best-metrics-youve-never-met/
MTTR
46
https://dzone.com/articles/reducing-mttr
Flow efficiency
47
Boundaries for Agile Integration
● Have a clear global data and control plane
○ An API Management platform provides an effective global control
plane
● Ensure teams offer clear boundaries
○ Versioned APIs managed through the global control plane
● Give teams freedom to evolve within those
boundaries
○ Within a cell they are free to use any approach
Cell boundary =
Team boundary
Developer first integration
Edit, ShareObserve
BuildDeploy
Debug
And Test
Developer
Flow
IDE integration:
Eclipse, IntelliJ,
VSCode
CI/CD:
Jenkins, Travis,
Codefresh
Test Frameworks:
SOAPUI, TestNG
Code repos:
Github, Gitlab
Binary repos:
Maven, Ballerina
Central, JFrog
Cloud
Orchestration:
Docker,
Kubernetes,
PCF, AWS CF, etc
Observability:
Splunk,
Prometheus,
Jaeger, ELK
Staging:
Blue/Green Deploy
Canary
Continuous Deploy
Developer first integration at WSO2
● Ballerina
● Microservices product stack
○ MicroIntegrator
○ MicroGateway
○ MicroBroker
○ MicroStreaming / Siddhi
● Developer tooling that produces immutable
containers
Timelapse of Sponge Reaggregation - https://www.youtube.com/watch?v=SvtDMo7fjAc
The recoupling of
decoupled components
into new agile teams
Based on teams, with
devops, cloud
infrastructure and intra-cell
comms
Agile inside the cell,
versioned and gatewayed
at the boundary
https://blog.cirm.ca.gov/
“Remember that every science is
based upon an abstraction... All
sciences are differentiated by their
abstraction.”
Fulton J. Sheen
Everyone is on a journey towards agility
Integration agility needs to catch up with project agility
This means a shift towards enabling integration agile teams
Reaggregating with a cellular architecture and
self-organising teams creates a composable enterprise
Flow metrics allow you to understand cell health
THANK YOU
wso2.com

[WSO2Con EU 2018] Enabling Agile Integration Teams