continuous application delivery - biztalk usergroupbiztalkusergroup.se/blogs/info/ca release...
TRANSCRIPT
Continuous Application Delivery From concept to reality
Carsten Lentz – Sr. Solution strategist [email protected]
Agenda
- Introduction to customer case A Danish insurance company started the journey , this is why
- What is Continuous Application Delivery Why is this a game changer for many companies - especially if agile development is introduced
- How do we get to Continuous Application Delivery Is it a all or nothing solution and is my organization mature enough… ?
Introduction to customer case A Danish insurance company started the journey
3 9. december 2013 Copyright © 2013 CA. All rights reserved.
Why Continuous Application Delivery Situation at many customers
Deployment consequence
Slow and sequential
deployment process due to
lots of manual interaction and
idle time release phases
Due to lack of insight/history
into who did what and when,
error identification and
remediation takes a long time
Knowledge on deployment
procedures rely on
specialist/consultant and
introduces huge bottlenecks
Different semi automated
scripts are created for
individual projects that leads
to faulty deployments
Project consequence
Projects get delayed, releases
applies for dispensations etc.
Projects run over budget or
alternative features get
dropped/pushed for next
release
Revision marks due to non
compliant
Business Consequence
Lost of potential revenue due to
inability to quickly act upon new
market demands
Negative publicity and brand
damage due to poor application
quality and End User Experience
Unable to meet assigned budget
Etc.
Due to newly adopted agile
development methods,
deployment organization fail to
deploy frequent and fast enough
Complex deployments requires
specialised resources that are
already over utilized and in some
areas external consultants
No audit trail on the actual
changes performed in the
different environments
Deployments are done manual by
many different resources that are
all utilizing their own best practice
As-is situation
Multiple handovers between
different resources specialist in
different teams
Actual output from a Danish insurance company
Why Continuous Application Delivery
Implement a comprehensive
application deployment
framework and supporting
process
Solution
How
Define and standardise a
deployment management
process across the
organisation
Introduce “Application
Deployment as a Service” in
the organisation
Acquire an automated
release management tool
Actual output from a Danish insurance company
Benefits
Improve operational
productivity – reducing cost
and time to resolution
Provide automated audit trail
on all deployment actions
performed on any
environment in scope
Enhance change
management and improve
business acceptance of new
systems
Improved quality due to
standardized, and repetitive
deployment methods and
procedures
Remove dependency on
scarce resources (higher
throughput )
Reduce risk of delay and
overrun because of
deployment
Why Continuous Application Delivery
Enterprise
Applications
Deployment operations
Corrective operations Preventive operations
Design, manage and automate application centric operations accross physical, virtual and cloud environments
• Specialized solution for automating release
deployment operations on complex hybrid
enteprise applications (e.g. SOA & TIA) across
the entire lifecycle (SIT, UAT, QA, PROD)
• Made for dynamic infrastructure environment
– Release deployment processes are “cloud
ready”
• Full segregation between process specification
(abstract) and process run execution (specific
for environment)
• Most comprehensive solution for full release
operations automation (not just the deployment
process ...)
Actual output from a Danish insurance company
Continuous Application Delivery Why is this a game changer for many companies - especially if agile development is introduced
Continuous Application Delivery Solution: Release Automation + Test + Promotion
Development Operations
DEV PROD
Days/Weeks
Agile Development Test Automation Continuous Integration
Virtualization/Cloud Provisioning Automation Configuration Mgmt
Business demand :More Innovation, quicker time to market, better quality , reduce cost
60%
Release Errors High Costs
Long Time To
Market
CONTINUOUS DELIVERY
PROD UAT PERF INT SYS DEV
Minutes
Copyright © 2013 CA. All rights reserved.
Level 3 - Application Release Automation
Artifacts: jars, ears, dll,
aspx, war, config. ini, ...
User Input: Run type settings
verifications, prerequisites...
Environment Adaptation:
Test, QA, Acceptance, Production
Workflow: Generic process with
relationships & dependencies
Release Deployment Process
11 9. december 2013 Copyright © 2013 CA. All rights reserved.
Level 4 – Continuous Application Delivery
DEV TEST UAT PROD
Artifact Repository
Test
Automation
Change Mgmt
Config Mgmt
Infra Prov CA LISA®
Release Automation
Continuous Application Delivery
Build Automation
Continuous Integration
Continuous Delivery - PreProd
Cont. Integration
TeamCity
Cont Application Delivery
Artifact
repository
Test Automation
Selenium
Dev QA STG Prod
CA LISA® Release Automation
Continuous Delivery - Prod
Cont. Integration
TeamCity
Cont Application Delivery
Change Mgmt
ServiceNow
Artifact
repository
Test Automation
Selenium
Dev QA STG Prod
Approval
CA LISA® Release Automation
Improve business productivity – reducing time to market
All releases are fully automated – reducing risks
Improve operational productivity – reducing cost and time to
resolution
Standardization – reducing complexity of deployments
Automatic promotion – reducing idle time between release
phases
14 9. december 2013 Copyright © 2013 CA. All rights reserved.
Continuous Application Delivery Benefits
15 9. december 2013 Copyright © 2013 CA. All rights reserved.
Our Customers’ Experience
Company Application Release Business Value Before/After
Online Grocery and Wine 2.5 Days 20 Minutes
Streamlined International Updates of online grocery Apps £250K / a month
Fix Income IB division 12 Days 1.5 Minutes
Oil drilling platform application
3 Days 4 Minutes
Business information 90minutes 3minutes
On Line Gambling 2 Days 3 Minutes
Online store 2 Days 12 Minutes
£ 8.6M annually implement globally
£380K / a month
$1.3M annually
$2.3M annually implement globally
$1.2M annually
Multinational Grocer
Financial Institution
Oil and Gas
Financial Rating
Global Retailer
Online Gambling
How do we get to Continuous Application Delivery Is it a all or nothing solution and is my organization mature enough… ?
16
17 9. december 2013 Copyright © 2013 CA. All rights reserved.
Application Delivery Maturity Model
Manual
Continuous
Automation
Scripting
Level 1
Optimization
K
ey A
chie
vem
ents
Ongoing Improvement
End to End Delivery
Standardization
Process
Heroes
Delivery Levels
Level 2
Level 3
Level 4
Level 5
Phased implementation Five phased implementation strategy : from concept to reality
What is the vision for the end goal of the implementation
What is the eco-system that needs to be in place to perform Continuous Application Delivery?
– Automated release
– Automated testing
– Needed Integrations / External systems update
– Mindset & Behavior
What are the priorities
– Prerequisites (Phase 1)
– Phase 2-4 (What can be done in parallel)
Rollout governance
– Team members
– Required skillset
– Etc.
Phased implementation Phase 1 - Prerequisites
Things in place before Implementation can begin
– Configuration management:
Source repository (non-packaged software)
– Environments:
Definition of environments (Development, Test, Acceptation and Production etc.) , Is some outsourced etc.
Intake environment (packaged software) how do we cope with third party vendors
– Pre-installed software requirements on each environment:
OS requirements (windows, Unix..),
Software requirements (Java v7, native deployment tools),
Application requirements ( connection to third party / legacy systems)
– Deployment procedures:
Individual repeatable deployment procedures transformed into CA Release Automation flows
– Mindset & Behavior
The willingness to change the deployment process
Phased implementation Phase 2 – Sleep at night
Main deliverable: Automatic deployment to individual environments.
Deployment automation:
– Automated deployment of software into the different environments
– Normalize the current procedure and automate it (Repeatable process)
– Deployments should be zero touch (Manifest)
– Canary/smoke test deployment (if applicable)
Identify connection to peripheral systems:
– Monitoring , Backup , sheduling tools etc.
Phased implementation Phase 3 – Sleep trough the week-end
Main deliverable: Structured conf. management & Automated testing
Deployment automation:
– Place files in repository and deliver files from repository to staging environment
– Automated verification (dependencies & successful deployment)
Automated testing:
– Smoke tests (production)
– Functional tests (intake)
– Regression (QA)
Configuration Management /Build server:
– Building tools / File transfer servers
– Orchestration tools (Jenkins / Ca process automation)
– Code Repository / Configuration Repository
Phased implementation Phase 4 – Sleep through the day
Main deliverable: Automated promotion (Dev-Tst-Acc-Prod)
Deployment automation:
– End to end testing (chain testing)
– Performance testing (ACC)
Connection to Peripheral Systems:
– CMDB
– Discovery (TADDM)
Introduce approval workflow
Approvals from change management process triggers and controls Ca Release Automation deployment
Mindset & Behavior:
– Willingness to have a daily release candidate
Phased implementation Rollout governance
1 CA release automation expert from deployment mid-range team (governs standards)
2 Highly skilled IT experts (UNIX, scripting, powershell etc.)
CA release automation training (3 days) for IT experts
1 Project owner (sets & guards project milestones)
Central product owner
Set of standard CA release automation flows
CA release automation community
User boards
Steering committee
Faster, Better, Cheaper Agile from development to production
Carsten Lentz Sr. Solution Strategist
Focus on the Application delivery
25 9. december 2013 Copyright © 2013 CA. All rights reserved.
Common Agile approach
Test Release A D B
Sprint
A D B
Sprint
A D B
Sprint
A D B
Sprint
The last mile becomes the new bottleneck
Tests on a production like machine outside of scope scrum delivery Performance and deployment issues
are only caught at this stage
Consequences
Substantial rework may lead to delay in project delivery Insufficient testing due to project time lines may
lead to incidents in production
Common agile Situation Days/Weeks
Operation Department Development Department
Continues Application Delivery
T R A D B
Sprint
T R A D B
Sprint
T R A D B
Sprint
T R A D B
Sprint
Releases tied to business needs rather than operational Constraints
Test Release A D B
Sprint
A D B
Sprint
A D B
Sprint
A D B
Sprint
Common agile Situation Days/Weeks
Operation Department Development Department
Development and Operation Department
H H H H
28 9. december 2013 Copyright © 2013 CA. All rights reserved.
Our Customers’ Experience
Company Application Release Before/After
Online Grocery and Wine 2.5 Days 20 Minutes Fix Income IB division 12 Days 1.5 Minutes
Oil drilling platform 3 Days 4 Minutes
Business information 90minutes 3minutes
On Line Gambling 2 Days 3 Minutes
Online store 2 Days 12 Minutes
Multinational Grocer
Financial Institution
Oil and Gas
Financial Rating
Global Retailer
Online Gambling