Radar: Integrate to Innovate: Continuous Delivery
-
Upload
michael-medin -
Category
Data & Analytics
-
view
203 -
download
3
description
Transcript of Radar: Integrate to Innovate: Continuous Delivery
© Connecta – Michael Medin
Continuous DeliveryConnecta
Stockholm, 2014-05-22
Michael Medin
(@mickem)
http://www.medin.name
SOA/Middleware Architect
© Connecta – Michael Medin
Michael Medin (@mickem)[email protected]
http://www.medin.name
SOA/Middleware
Architect
DEVELOPER
CONTINUOUS
MICHAEL MEDIN
delivery
OUTSIDE THE BOX
© Connecta – Michael Medin
Platinum
Gold
Silver
Remarketer
2009
2010
2011
2012Fusion MiddleWare:Partner of the year2011
2012
Fusion MiddleWare:Most Certified
Implementation Specialists
Speaker and Keynote at many Conferences and Partner Events
In the Oracle SOA Suite 12c Beta program
2013
© Connecta – Michael Medin
Service Oriented ArchitectureApplication Integration ArchitectureWebLogic/Exa
Siebel CRMCRM On Demand
BI
© Connecta – Michael Medin
2014Challenge
s
INTEGRATION
© Connecta – Michael Medin
SOA REST
MOBILECLOUD
HYBRID CLOUD
PRIVATE CLOUD
IntegrationGATE WAYS
API
© Connecta – Michael Medin
Hybrid integration
platform capabilities
Cloud
On-premises
Existing Silos
New Silos
© Connecta – Michael Medin
COMPLICATED
MORE
© Connecta – Michael Medin
What’s the link?
GLITCH
© Connecta – Michael Medin
GMAIL OUTAGE 2014-01-14
NEVER FORGET
© Connecta – Michael Medin
WHOS TO BLAME?
WE ARE!
© Connecta – Michael Medin
AVALIBILITYINCREASED
COMPLICATED
MORE
© Connecta – Michael Medin
OUT SOURCING CUTS
CUSTOMERS
OFF SHORING
CHANNELS
INNOVATIONCost?
SERVICES
NEAR SHORING
© Connecta – Michael Medin
perspectives
most significant external pressures
Source: IBM C-suite Studyhttp://www-935.ibm.com/services/us/en/c-suite/csuitestudy2013/
© Connecta – Michael Medin
Cost?Innovation
Facilitating
© Connecta – Michael Medin
AVALIBILITYINCREASED
COMPLICATED
MORE
COSTREDUCED
© Connecta – Michael Medin
CHANGE
TIME FOR
© Connecta – Michael Medin
DELIVERYCONTINUOU
S HISTORY
© Connecta – Michael Medin
1990: Classic software development
Gather Requirements
Write SpecificationBuild
softwareTest software
Deliver SoftwareAcceptance Test
Done
© Connecta – Michael Medin
2000: Iterative projects
Gather Requirements
Write Specification
Build softwareTest software
Deliver Software
Acceptance Test
© Connecta – Michael Medin
2000: Modularized architecture
Frontend
Business logic
Backend
© Connecta – Michael Medin
2000: Agile projects not code
Gather Requirements
Write Specification
Build softwareTest software
Deliver Software
Acceptance Test
© Connecta – Michael Medin
2000: Waterfall Waterfalls
Frontend
Business logic
Backend
© Connecta – Michael Medin
INTEGRATIONCONTINUOU
S
© Connecta – Michael Medin
Continuous Integration
Code
IntegrateBuild
Test
© Connecta – Michael Medin
2010: Enterprise Development
Code
IntegrateBuild
Test Code
IntegrateBuild
Test
Code
IntegrateBuild
TestCode
IntegrateBuild
Test
Mobile Integration
ERPCRM
© Connecta – Michael Medin
2020: Agile Enterprise Software development
Code
IntegrateBuild
Test
Code
IntegrateBuild
Test
Mobile
ERP
Code
IntegrateBuild
Test
Code
IntegrateBuild
Test
CRM
Code
IntegrateBuild
Test
Integration
© Connecta – Michael Medin
DELIVERYCONTINUOU
S
© Connecta – Michael Medin
Continuous Delivery
Code
Integrate
Build
Unit-test
Deploy
Acceptance/Integration
test
Release
© Connecta – Michael Medin
DELIVERYCONTINUOU
SPRACTICE
© Connecta – Michael Medin
AUTOMATECode
Test
Release
InstallConfiguration
DeployAcc. Test Migration
Everything
© Connecta – Michael Medin
PIPELINE
DEPLOYWORKFLOW
© Connecta – Michael Medin
HOW?
© Connecta – Michael Medin
Best Practices
Patterns
Build
Release DeployAutomate
SmartTemplates
© Connecta – Michael Medin
Version Control Test
InstallationConfigurationMaintenance
Automate
Setup
Governance
© Connecta – Michael Medin
Your
Yourprocess
Way
© Connecta – Michael Medin
DELIVERY
CONTINUOUSCOST
© Connecta – Michael Medin
FREEPays it self
There is a free lunch!
© Connecta – Michael Medin
Deploy:
Time:
Consultants:
1 per week
3-4
20h
Every week!
© Connecta – Michael Medin
Accumulated cost for delivery
1 2 3 4 5 6 70
20
40
60
80
100
120
140
Manual Automated
© Connecta – Michael Medin
Project cost after implementing Continuous Delivery
Project A Project B Project C Project D Project E0
50
100
150
200
250
300
350
400
Ho
urs
© Connecta – Michael Medin
Practice Build management and CI
Environments and deployment
Release management Testing Data management Configuration Management
Level 3 – Optimizing: Focus
on process improvement
Teams regularly meet to discuss integration problems
and resolve them with automation, faster feedback,
and better visibility
All environments managed effectively.
Provisioning fully automated. Virtualization
used if applicable.
Operations and delivery teams regularly collaborate to manage risks and reduce
cycle time.
Production rollbacks rare. Defects found and
fixed immediately.
Release to release feedback loop of database
performance and deployment process
Regular validation that CM policy supports effective
collaboration, rapid development, and auditable
change management processes.
Level 2 – Quantitatively
managed: Process measured
and controlled
Build metrics gathered, made visible, and acted on. Build s
are not left broken.
Orchestrated deployments managed. Release and rollback
processes tested.
Environment and application health monitored and proactively managed.
Cycle time monitored.
Quality metrics and trends tracked. Non
functional requirements defined and measured.
Database upgrades and rollbacks tested with every
deployment. Database performance monitored
and optimized.
Developers check in to mainlined at least once a
day. Branching only used for releases.
Level 1 – ConsistentAutomated
processes applied across whole
application lifecycle
Automated build and test cycle very time a change is
committed. Dependencies managed, Re-use of scripts
and tools.
Fully automated, self-service push-button
process for deploying software. Same process
to deploy to every environment.
Change management and approvals processes defined and enforced.
Regulatory and compliance conditions met.
Automated unit and acceptance tests, the
latter written with testers. Testing part of development process.
Database changes performed automatically as part of deployment
process.
Libraries and dependencies managed. Version control usage policies determined by change management
process.
Level 0 – Repeatable:
Process documented and partly automated
Regular automated build and testing. Any build can be re-created from source control using automated process.
Automated deployment to some environments.
Creation of new environments is cheap.
All configuration externalized / versioned
Painful and infrequent, but reliable, releases. Limited
traceability from requirements to release.
Automated tests written as part of story development.
Changes to databases done with automated scripts versioned with
application.
Version control in use for everything required to
recreate software: source code, configuration, build and deploy scripts, data
migrations.
Level -1 – RegressiveProcesses
unrepeatable, poorly controlled, and
reactive
Manual process for building software. No management of
artifacts and reports.
Manual process for deploying software.
Environment-specific binaries. Environments provisioned manually
Infrequent and unreliable releases.
Manual testing after development.
Data migration unversioned and
performed manually.
Version control either not used, or check-in happens
infrequently.
Capability Maturity ModelLevel 1ConsistentAutomated
processes applied across whole
application lifecycle
Automated build and test cycle very time a change is committed. Dependencies managed, Re-use
of scripts and tools.
Fully automated, self-service push-button
process for deploying software. Same process to
deploy to every environment.
Level 0Repeatable:
Process documented and partly automated
Regular automated build and testing. Any build can be re-
created from source control using automated process.
Automated deployment to some environments.
Creation of new environments is cheap. All
configuration externalized / versioned
Level -1RegressiveProcesses
unrepeatable, poorly controlled,
and reactive
Manual process for building software. No management of
artifacts and reports.
Manual process for deploying software.
Environment-specific binaries. Environments provisioned manually
Level 1ConsistentAutomated
processes applied across whole
application lifecycle
Automated build and test cycle very time a change is committed. Dependencies managed, Re-use
of scripts and tools.
Fully automated, self-service push-button
process for deploying software. Same process to
deploy to every environment.
Level 0Repeatable:
Process documented and partly automated
Regular automated build and testing. Any build can be re-
created from source control using automated process.
Automated deployment to some environments.
Creation of new environments is cheap. All
configuration externalized / versioned
Level -1RegressiveProcesses
unrepeatable, poorly controlled,
and reactive
Manual process for building software. No management of
artifacts and reports.
Manual process for deploying software.
Environment-specific binaries. Environments provisioned manually
© Connecta – Michael Medin
DELIVERYCONTINUOU
SBENEFITS
© Connecta – Michael Medin
AgilityTime To Market
Iterative
Lowerincreased
reduced
enterprise development
cost
Qualityincreased
© Connecta – Michael Medin
Time
MoneyQuality
AUTOMATEREDUCE
COST
MORETIME
INCREASEAVALIBILIT
Y
© Connecta – Michael Medin
process
productnot
© Connecta – Michael Medin
THANK YOU
© Connecta – Michael Medin
Events: Workshop
Open World
OOW Reunion
10 September
September/October
Q4
Middleware Consolidation & Innovation workshop
Yogesh Sontakke
© Connecta – Michael Medin
Our job is to automatebusiness processes.
Why do we do thismanually?
Michael Medin (@mickem)[email protected]
http://www.medin.nameSOA/Middleware Architect
© Connecta – Michael MedinPhoto by Olga Berrios
Our job is to automatebusiness processes.
Why do we do thismanually?
Michael Medin (@mickem)[email protected]
http://www.medin.nameSOA/Middleware Architect