SlideShare a Scribd company logo
1 of 29
Download to read offline
© 2013 IBM Corporation
Continuous Delivery of a Cloud
Deployment at a Large
Telecommunications Provider
M Kevin McHugh @mkmchu
Eduardo Patrocinio @patrocinio
1717 – February 25, 2014
1
Agenda
Introduction
Continuous Delivery – what is it, how did we do it
Wrap up
Questions
2
Agenda
Introduction
Continuous Delivery – what is it, how did we do it
Wrap up
Questions
3
Solution Architecture
4
Agenda
Introduction
Continuous Delivery – what is it, how did we do it
Wrap up
Questions
5
Definition
Continuous Delivery (CD) is a design practice used in software development to
automate and improve the process of software delivery. Techniques such as automated
testing, continuous integration and continuous deployment allow software to be
developed to a high standard and easily packaged and deployed to test environments, resulting in the
ability to rapidly, reliably and repeatedly push out enhancements and bug fixes to customers at low risk
and with minimal manual overhead. The technique was one of the assumptions of extreme
programming but at an enterprise level has developed into a discipline of its own, with job descriptions
for roles such as "buildmaster" calling for CD skills as mandatory.
(Source: Wikipedia 1/2014 - http://en.wikipedia.org/wiki/Continuous_delivery)
The ability to build a releasable asset with nearly trivial effort
What about Continuous Deployment?
6
Components
Method
Continuous Integration
Process
Assets
Automated Test
Automated Build of deployable asset
Tools
7
Method: Agile
7
Team Member
Team Member
Customer
Team Member
Team Lead
Agile
Value-driven lifecycle with regular production of working software
Small, co-located team developing straightforward software
Goal is to develop a high-quality system in an evolutionary, collaborative, and self-organizing manner
Pre-requisite: can build a product backlog
Agile
Scrum Roles (pigs)
Product Owner
– Owns the product backlog
– Chooses what work to do next
Team Member
– Creates the solution
– Owns estimation of difficulty of items in the backlog
– Constrains how much work can be done
Team Lead (Scrum Master)
– Removes obstacles
– Status reporting
8
Agile terms and how the team operates
Backlog Grooming
Sprint Planning
Scrums
Velocity
Sprint Demo
Sprint Retrospective
Sample User Stories and point assignments:
8
Story
Points Summary
13 pts As a Bank Customer, I want to apply for a loan, so that I can…
8 pts As a Bank Customer, I want to deposit cash
5 pts As a Bank Customer, I want to change my PIN.
3 pts As a Bank Customer, I want to withdraw cash
1 pt As a Bank Customer, I check my account balance
5 pts As a Bank Customer, I want to buy postage stamps
Agile
Method: Tenants of Agile and its iterative cycle
Sprint 1 Sprint 2
Story Points DeliveredStory Points Delivered Story Points DeliveredStory Points Delivered
Velocity (rolling average of points delivered)Velocity (rolling average of points delivered)
9
Agile adoption – adoption by execution
Two-week sprints
Single Product Owner
Scrum Master
Rank user stories
Set up the meetings
Method: What we did Agile
Sprint 1 Sprint 2
Story Points DeliveredStory Points Delivered Story Points DeliveredStory Points Delivered
Velocity (rolling average of points delivered)Velocity (rolling average of points delivered)
10
10
Sprint by Sprint view of demonstrated progress of feature delivery
Agile
Release 1.0 - Functional Story Point Burndown
0
50
100
150
200
250
300
350
400
450
Sprint1Sprint2Sprint3Sprint4Sprint5Sprint6Sprint7Sprint8
Time
StoryPoints
Backlog Size
Remaining Backlog
Sprint Velocity
Projected Pts
Planned Pts
Method: Sample Burndown – Measured delivery
11
Continuous Integration
Continuous integration (CI) is the practice, in software
engineering, of merging all developer working copies with a
shared mainline several times a day.
(Source: Wikipedia 1/29/2014 - http://en.wikipedia.org/wiki/Continuous_integration)
Develop features or fix defects on isolated branches
Merge branches onto the main
Identify points in time on the main that represent a viable code drop
This all drives the ability to have a stable, automatically tested,
“main” which can be sent forward for Test, QA, and Production
deployment
12
Continuous Integration – what we did
Initially
Work space isolation obtained via Business Process Manager (BPM)
locking of a business process
The team is working on the main
This limited / prevented concurrent engineering
Led to Sprint-fall
Evolved into
Paired programmers working on separate tool kits, and backend
processes
13
Process: 30,000 ft view
Development Test QA Production
Main
Feature 455
Unit Test
Asset Mgmt deploy deploy deploy
Build
Customer E2E
Automated Test
- REST API
Customer
Manual Test
- UAT
Automated Test
IBM Automated
Test
- REST API
- UI
IBM Automated
Test
- REST API
- UI
Customer
Manual Test
- UAT
14
Assets
Assets include any element that the team can change on any of
the systems supporting the project. For example:
A WAR file
An executable
An environment variable
A database definition
15
Assets – what we did
BPM process application and tool kit
TWX files
Pattern
The topology of an application
Patch
Those changes to SCO software and/or associated configuration changes
Configuration
Those changes to the systems supporting the SCO product
Configuration of the VMs internally and from a VM mgmt standpoint
Images
The building block for a pattern
16
Rational Team Concert
Assets – what we did
Development
Exported as .twx
file, then checked
into RTC along with
a change
description
Import .twx from
RTC
QATest Production
17
Automated Test
Automated test provides the means to assess the quality of the
main branch or the deployed release
Through the use of Automated Test, the Continuous Delivery
framework can then decide of a particular release candidate is of
sufficient quality to be promoted to the next level
18
Automated Test – what we did
Test Architecture
Automated REST API Test
Deliver a solution that can be accessed via REST API
Verify that, through the REST API, all features work
Automated User Interface (UI) Test
Confirm that the solution works with the developed user interface
19
Automated Build of Deployable Asset
Automated build provides the means to collect the set of assets
from the development system such that they can later be
deployed to a target system
Automated deploy provides the means to place the assets onto a
target system for test and use
20
Automated Build of Deployable Asset – what we did
Use SmartCloud Orchestrator (SCO), REST based export/import
feature
Implemented a persistence layer to encapsulate differences
between deployment environments
Leverage build and version control tools
Control asset versions
Initiate automated testing
Track test results
21
Tools to integrate and support
Integrate SCM and Build management tools to
Speed the development
Deliver to the customer control systems
Automated Test
Test the User Interface – record and replay UI tool
Test the REST Interface – test harness to invoke API, record results
Automated Build
BPM – REST API based extract from SCO
Patches, etc handled more conventionally
Automated Deploy
BPM – REST API based import to SCO
Patches, etc handled more conventionally
22
Tools to integrate and support – what we did
23
Tools to integrate and support – what we did
24
Agenda
Introduction
Continuous Delivery – what is it, how did we do it
Wrap up
Questions
25
Components
Method
Continuous Integration
Process
Assets
Automated Test
Automated Build of deployable asset
Tools
26
…In Retrospect
Defect zone vs. Story zone (defect backlog vs. story backlog)
Team commitment to Agile and CD – No boycotts
Sprint granularity of CD vs. Story level of CD
Deliver both Product and Services
Difficulty grasping task ownership and delivery
27
Questions
28
Thank you!!

More Related Content

What's hot

Cloud computing case studies with ProfitBricks IaaS
Cloud computing case studies with ProfitBricks IaaSCloud computing case studies with ProfitBricks IaaS
Cloud computing case studies with ProfitBricks IaaSProfitBricks
 
Why 85% of workloads are not on public cloud, and why they will be
Why 85% of workloads are not on public cloud, and why they will beWhy 85% of workloads are not on public cloud, and why they will be
Why 85% of workloads are not on public cloud, and why they will beProfitBricks
 
Accelerate your digital transformation with IBM Cloud for CIO Focus Summit
Accelerate your digital transformation with IBM Cloud for CIO Focus SummitAccelerate your digital transformation with IBM Cloud for CIO Focus Summit
Accelerate your digital transformation with IBM Cloud for CIO Focus SummitMark Osborn
 
Practical thoughts for cloud transformation
Practical thoughts for cloud transformationPractical thoughts for cloud transformation
Practical thoughts for cloud transformationMark Osborn
 
Practical DevOps in a Hybrid World
Practical DevOps in a Hybrid World Practical DevOps in a Hybrid World
Practical DevOps in a Hybrid World Dev_Events
 
Driving client value through hybrid cloud - IBM
Driving client value through hybrid cloud - IBMDriving client value through hybrid cloud - IBM
Driving client value through hybrid cloud - IBMDiego Alberto Tamayo
 
Hybrid- and Multi-Cloud by design - IBM Cloud and your journey to Cloud
Hybrid- and Multi-Cloud by design - IBM Cloud and your journey to CloudHybrid- and Multi-Cloud by design - IBM Cloud and your journey to Cloud
Hybrid- and Multi-Cloud by design - IBM Cloud and your journey to CloudAleksandar Francuz
 
Building a hybrid, dynamic cloud on an open architecture
Building a hybrid, dynamic cloud on an open architectureBuilding a hybrid, dynamic cloud on an open architecture
Building a hybrid, dynamic cloud on an open architectureDaniel Krook
 
Swift at IBM: Mobile, open source and the drive to the cloud
Swift at IBM: Mobile, open source and the drive to the cloudSwift at IBM: Mobile, open source and the drive to the cloud
Swift at IBM: Mobile, open source and the drive to the cloudDev_Events
 
Accelerate your digital transformation September 2018
Accelerate your digital transformation September 2018Accelerate your digital transformation September 2018
Accelerate your digital transformation September 2018Aleksandar Francuz
 
IBM Bluemix Garage in London
IBM Bluemix Garage in LondonIBM Bluemix Garage in London
IBM Bluemix Garage in LondonSonia Cyrus
 
Multicloud - Understanding Benefits. Obstacles, and Best Approaches
Multicloud - Understanding Benefits. Obstacles, and Best ApproachesMulticloud - Understanding Benefits. Obstacles, and Best Approaches
Multicloud - Understanding Benefits. Obstacles, and Best ApproachesKenneth Hui
 
Pathways to Multicloud Transformation
Pathways to Multicloud TransformationPathways to Multicloud Transformation
Pathways to Multicloud TransformationIBM
 
Design - Automating Application Deployment for Hybrid Cloud Environments
Design - Automating Application Deployment for Hybrid Cloud EnvironmentsDesign - Automating Application Deployment for Hybrid Cloud Environments
Design - Automating Application Deployment for Hybrid Cloud EnvironmentsLaurenWendler
 
Cloud Foundry Foundation Keynote
Cloud Foundry Foundation KeynoteCloud Foundry Foundation Keynote
Cloud Foundry Foundation KeynoteAbby Kearns
 
IBM Relay 2015: Expect More From Private Cloud
IBM Relay 2015: Expect More From Private CloudIBM Relay 2015: Expect More From Private Cloud
IBM Relay 2015: Expect More From Private CloudIBM
 

What's hot (20)

Cloud computing case studies with ProfitBricks IaaS
Cloud computing case studies with ProfitBricks IaaSCloud computing case studies with ProfitBricks IaaS
Cloud computing case studies with ProfitBricks IaaS
 
Why 85% of workloads are not on public cloud, and why they will be
Why 85% of workloads are not on public cloud, and why they will beWhy 85% of workloads are not on public cloud, and why they will be
Why 85% of workloads are not on public cloud, and why they will be
 
Accelerate your digital transformation with IBM Cloud for CIO Focus Summit
Accelerate your digital transformation with IBM Cloud for CIO Focus SummitAccelerate your digital transformation with IBM Cloud for CIO Focus Summit
Accelerate your digital transformation with IBM Cloud for CIO Focus Summit
 
Practical thoughts for cloud transformation
Practical thoughts for cloud transformationPractical thoughts for cloud transformation
Practical thoughts for cloud transformation
 
Practical DevOps in a Hybrid World
Practical DevOps in a Hybrid World Practical DevOps in a Hybrid World
Practical DevOps in a Hybrid World
 
Driving client value through hybrid cloud - IBM
Driving client value through hybrid cloud - IBMDriving client value through hybrid cloud - IBM
Driving client value through hybrid cloud - IBM
 
Hybrid- and Multi-Cloud by design - IBM Cloud and your journey to Cloud
Hybrid- and Multi-Cloud by design - IBM Cloud and your journey to CloudHybrid- and Multi-Cloud by design - IBM Cloud and your journey to Cloud
Hybrid- and Multi-Cloud by design - IBM Cloud and your journey to Cloud
 
Building a hybrid, dynamic cloud on an open architecture
Building a hybrid, dynamic cloud on an open architectureBuilding a hybrid, dynamic cloud on an open architecture
Building a hybrid, dynamic cloud on an open architecture
 
Swift at IBM: Mobile, open source and the drive to the cloud
Swift at IBM: Mobile, open source and the drive to the cloudSwift at IBM: Mobile, open source and the drive to the cloud
Swift at IBM: Mobile, open source and the drive to the cloud
 
04 blue mixintro
04 blue mixintro04 blue mixintro
04 blue mixintro
 
Accelerate your digital transformation September 2018
Accelerate your digital transformation September 2018Accelerate your digital transformation September 2018
Accelerate your digital transformation September 2018
 
IBM Bluemix Garage in London
IBM Bluemix Garage in LondonIBM Bluemix Garage in London
IBM Bluemix Garage in London
 
App modernization methods that work
App modernization methods that workApp modernization methods that work
App modernization methods that work
 
Cloud PoV
Cloud PoVCloud PoV
Cloud PoV
 
Ibm db2update2019 icp4 data
Ibm db2update2019   icp4 dataIbm db2update2019   icp4 data
Ibm db2update2019 icp4 data
 
Multicloud - Understanding Benefits. Obstacles, and Best Approaches
Multicloud - Understanding Benefits. Obstacles, and Best ApproachesMulticloud - Understanding Benefits. Obstacles, and Best Approaches
Multicloud - Understanding Benefits. Obstacles, and Best Approaches
 
Pathways to Multicloud Transformation
Pathways to Multicloud TransformationPathways to Multicloud Transformation
Pathways to Multicloud Transformation
 
Design - Automating Application Deployment for Hybrid Cloud Environments
Design - Automating Application Deployment for Hybrid Cloud EnvironmentsDesign - Automating Application Deployment for Hybrid Cloud Environments
Design - Automating Application Deployment for Hybrid Cloud Environments
 
Cloud Foundry Foundation Keynote
Cloud Foundry Foundation KeynoteCloud Foundry Foundation Keynote
Cloud Foundry Foundation Keynote
 
IBM Relay 2015: Expect More From Private Cloud
IBM Relay 2015: Expect More From Private CloudIBM Relay 2015: Expect More From Private Cloud
IBM Relay 2015: Expect More From Private Cloud
 

Similar to Continuous Delivery of a Cloud Deployment at a Large Telecommunications Provider

Tech foundations-slides
Tech foundations-slidesTech foundations-slides
Tech foundations-slidestranquynh93
 
4.4.2013 Software Quality - Regression Testing Automated and Manual - RFT/RQM
4.4.2013 Software Quality - Regression Testing Automated and Manual - RFT/RQM4.4.2013 Software Quality - Regression Testing Automated and Manual - RFT/RQM
4.4.2013 Software Quality - Regression Testing Automated and Manual - RFT/RQMIBM Rational
 
ADM Overview - Customers
ADM Overview - CustomersADM Overview - Customers
ADM Overview - CustomersSteve Greene
 
Working Agile with Scrum and TFS 2013
Working Agile with Scrum and TFS 2013Working Agile with Scrum and TFS 2013
Working Agile with Scrum and TFS 2013Moataz Nabil
 
Surekha_haoop_exp
Surekha_haoop_expSurekha_haoop_exp
Surekha_haoop_expsurekhakadi
 
PratheshBV_Resume
PratheshBV_ResumePratheshBV_Resume
PratheshBV_Resumepradeesh bv
 
2016 Federal User Group Conference - DevOps Product Strategy
2016 Federal User Group Conference - DevOps Product Strategy2016 Federal User Group Conference - DevOps Product Strategy
2016 Federal User Group Conference - DevOps Product StrategyCollabNet
 
Practicing Agile in Offshore Environment by Himanshu Seth & Imran Mir
Practicing Agile in Offshore Environment by Himanshu Seth & Imran MirPracticing Agile in Offshore Environment by Himanshu Seth & Imran Mir
Practicing Agile in Offshore Environment by Himanshu Seth & Imran MirXebia IT Architects
 
DevOps and Build Automation
DevOps and Build AutomationDevOps and Build Automation
DevOps and Build AutomationHeiswayi Nrird
 
Webcast Automação Implantação de Aplicações (DevOps)
Webcast Automação Implantação de Aplicações (DevOps)Webcast Automação Implantação de Aplicações (DevOps)
Webcast Automação Implantação de Aplicações (DevOps)Felipe Freire
 
How Does IBM Do Agile
How Does IBM Do AgileHow Does IBM Do Agile
How Does IBM Do AgileAlan Kan
 
Dops 1033 dev-ops_review_final
Dops 1033 dev-ops_review_finalDops 1033 dev-ops_review_final
Dops 1033 dev-ops_review_finalDaniel Berg
 
SCALABLE CI CD DEVOPS
SCALABLE CI CD DEVOPSSCALABLE CI CD DEVOPS
SCALABLE CI CD DEVOPSG R VISHAL
 
Presentation 1 open source tools in continuous integration environment v1.0
Presentation 1   open source tools in continuous integration environment v1.0Presentation 1   open source tools in continuous integration environment v1.0
Presentation 1 open source tools in continuous integration environment v1.0Jasmine Conseil
 
Adaptive Development Methodology
Adaptive Development MethodologyAdaptive Development Methodology
Adaptive Development MethodologySteve Greene
 
DevOps with Microsoft Stack
DevOps with Microsoft StackDevOps with Microsoft Stack
DevOps with Microsoft StackDeepti Jain
 

Similar to Continuous Delivery of a Cloud Deployment at a Large Telecommunications Provider (20)

Tech foundations-slides
Tech foundations-slidesTech foundations-slides
Tech foundations-slides
 
Tce automation-d4
Tce automation-d4Tce automation-d4
Tce automation-d4
 
Agile at scale
Agile at scaleAgile at scale
Agile at scale
 
4.4.2013 Software Quality - Regression Testing Automated and Manual - RFT/RQM
4.4.2013 Software Quality - Regression Testing Automated and Manual - RFT/RQM4.4.2013 Software Quality - Regression Testing Automated and Manual - RFT/RQM
4.4.2013 Software Quality - Regression Testing Automated and Manual - RFT/RQM
 
ADM Overview - Customers
ADM Overview - CustomersADM Overview - Customers
ADM Overview - Customers
 
What Is Agile Scrum
What Is Agile ScrumWhat Is Agile Scrum
What Is Agile Scrum
 
Working Agile with Scrum and TFS 2013
Working Agile with Scrum and TFS 2013Working Agile with Scrum and TFS 2013
Working Agile with Scrum and TFS 2013
 
Surekha_haoop_exp
Surekha_haoop_expSurekha_haoop_exp
Surekha_haoop_exp
 
PratheshBV_Resume
PratheshBV_ResumePratheshBV_Resume
PratheshBV_Resume
 
2016 Federal User Group Conference - DevOps Product Strategy
2016 Federal User Group Conference - DevOps Product Strategy2016 Federal User Group Conference - DevOps Product Strategy
2016 Federal User Group Conference - DevOps Product Strategy
 
Practicing Agile in Offshore Environment by Himanshu Seth & Imran Mir
Practicing Agile in Offshore Environment by Himanshu Seth & Imran MirPracticing Agile in Offshore Environment by Himanshu Seth & Imran Mir
Practicing Agile in Offshore Environment by Himanshu Seth & Imran Mir
 
DevOps and Build Automation
DevOps and Build AutomationDevOps and Build Automation
DevOps and Build Automation
 
Webcast Automação Implantação de Aplicações (DevOps)
Webcast Automação Implantação de Aplicações (DevOps)Webcast Automação Implantação de Aplicações (DevOps)
Webcast Automação Implantação de Aplicações (DevOps)
 
How Does IBM Do Agile
How Does IBM Do AgileHow Does IBM Do Agile
How Does IBM Do Agile
 
Dops 1033 dev-ops_review_final
Dops 1033 dev-ops_review_finalDops 1033 dev-ops_review_final
Dops 1033 dev-ops_review_final
 
SCALABLE CI CD DEVOPS
SCALABLE CI CD DEVOPSSCALABLE CI CD DEVOPS
SCALABLE CI CD DEVOPS
 
Presentation 1 open source tools in continuous integration environment v1.0
Presentation 1   open source tools in continuous integration environment v1.0Presentation 1   open source tools in continuous integration environment v1.0
Presentation 1 open source tools in continuous integration environment v1.0
 
Upmc tpdev1
Upmc tpdev1Upmc tpdev1
Upmc tpdev1
 
Adaptive Development Methodology
Adaptive Development MethodologyAdaptive Development Methodology
Adaptive Development Methodology
 
DevOps with Microsoft Stack
DevOps with Microsoft StackDevOps with Microsoft Stack
DevOps with Microsoft Stack
 

More from M Kevin McHugh

2019 ibm io t exchange rqm - stop wasting time and take control
2019   ibm io t exchange rqm - stop wasting time and take control2019   ibm io t exchange rqm - stop wasting time and take control
2019 ibm io t exchange rqm - stop wasting time and take controlM Kevin McHugh
 
2019 ibm io t exchange - practical use case of AI in engineeringv2
2019   ibm io t exchange - practical use case of AI in engineeringv22019   ibm io t exchange - practical use case of AI in engineeringv2
2019 ibm io t exchange - practical use case of AI in engineeringv2M Kevin McHugh
 
2019 ibm io t exchange - meeting safety-related software audits
2019   ibm io t exchange - meeting safety-related software audits2019   ibm io t exchange - meeting safety-related software audits
2019 ibm io t exchange - meeting safety-related software auditsM Kevin McHugh
 
2018 think - extending rtc with corporate data
2018   think - extending rtc with corporate data2018   think - extending rtc with corporate data
2018 think - extending rtc with corporate dataM Kevin McHugh
 
2018 ibm agile engineering summit - spotlight presentation
2018   ibm agile engineering summit - spotlight presentation2018   ibm agile engineering summit - spotlight presentation
2018 ibm agile engineering summit - spotlight presentationM Kevin McHugh
 
2017 think - session 4085 - increase your agile velocity - integrate your d...
2017   think - session 4085 - increase your agile velocity - integrate your d...2017   think - session 4085 - increase your agile velocity - integrate your d...
2017 think - session 4085 - increase your agile velocity - integrate your d...M Kevin McHugh
 
2017 ice - rqm - stop wasting time and take control
2017   ice - rqm - stop wasting time and take control2017   ice - rqm - stop wasting time and take control
2017 ice - rqm - stop wasting time and take controlM Kevin McHugh
 
2017 ice - meeting safety-related software audits w video
2017   ice - meeting safety-related software audits w video2017   ice - meeting safety-related software audits w video
2017 ice - meeting safety-related software audits w videoM Kevin McHugh
 
Re-architecting an Enterprise with SOA & Agile
Re-architecting an Enterprise with SOA & AgileRe-architecting an Enterprise with SOA & Agile
Re-architecting an Enterprise with SOA & AgileM Kevin McHugh
 

More from M Kevin McHugh (9)

2019 ibm io t exchange rqm - stop wasting time and take control
2019   ibm io t exchange rqm - stop wasting time and take control2019   ibm io t exchange rqm - stop wasting time and take control
2019 ibm io t exchange rqm - stop wasting time and take control
 
2019 ibm io t exchange - practical use case of AI in engineeringv2
2019   ibm io t exchange - practical use case of AI in engineeringv22019   ibm io t exchange - practical use case of AI in engineeringv2
2019 ibm io t exchange - practical use case of AI in engineeringv2
 
2019 ibm io t exchange - meeting safety-related software audits
2019   ibm io t exchange - meeting safety-related software audits2019   ibm io t exchange - meeting safety-related software audits
2019 ibm io t exchange - meeting safety-related software audits
 
2018 think - extending rtc with corporate data
2018   think - extending rtc with corporate data2018   think - extending rtc with corporate data
2018 think - extending rtc with corporate data
 
2018 ibm agile engineering summit - spotlight presentation
2018   ibm agile engineering summit - spotlight presentation2018   ibm agile engineering summit - spotlight presentation
2018 ibm agile engineering summit - spotlight presentation
 
2017 think - session 4085 - increase your agile velocity - integrate your d...
2017   think - session 4085 - increase your agile velocity - integrate your d...2017   think - session 4085 - increase your agile velocity - integrate your d...
2017 think - session 4085 - increase your agile velocity - integrate your d...
 
2017 ice - rqm - stop wasting time and take control
2017   ice - rqm - stop wasting time and take control2017   ice - rqm - stop wasting time and take control
2017 ice - rqm - stop wasting time and take control
 
2017 ice - meeting safety-related software audits w video
2017   ice - meeting safety-related software audits w video2017   ice - meeting safety-related software audits w video
2017 ice - meeting safety-related software audits w video
 
Re-architecting an Enterprise with SOA & Agile
Re-architecting an Enterprise with SOA & AgileRe-architecting an Enterprise with SOA & Agile
Re-architecting an Enterprise with SOA & Agile
 

Recently uploaded

Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsHyundai Motor Group
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 

Recently uploaded (20)

Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 

Continuous Delivery of a Cloud Deployment at a Large Telecommunications Provider

  • 1. © 2013 IBM Corporation Continuous Delivery of a Cloud Deployment at a Large Telecommunications Provider M Kevin McHugh @mkmchu Eduardo Patrocinio @patrocinio 1717 – February 25, 2014
  • 2. 1 Agenda Introduction Continuous Delivery – what is it, how did we do it Wrap up Questions
  • 3. 2 Agenda Introduction Continuous Delivery – what is it, how did we do it Wrap up Questions
  • 5. 4 Agenda Introduction Continuous Delivery – what is it, how did we do it Wrap up Questions
  • 6. 5 Definition Continuous Delivery (CD) is a design practice used in software development to automate and improve the process of software delivery. Techniques such as automated testing, continuous integration and continuous deployment allow software to be developed to a high standard and easily packaged and deployed to test environments, resulting in the ability to rapidly, reliably and repeatedly push out enhancements and bug fixes to customers at low risk and with minimal manual overhead. The technique was one of the assumptions of extreme programming but at an enterprise level has developed into a discipline of its own, with job descriptions for roles such as "buildmaster" calling for CD skills as mandatory. (Source: Wikipedia 1/2014 - http://en.wikipedia.org/wiki/Continuous_delivery) The ability to build a releasable asset with nearly trivial effort What about Continuous Deployment?
  • 8. 7 Method: Agile 7 Team Member Team Member Customer Team Member Team Lead Agile Value-driven lifecycle with regular production of working software Small, co-located team developing straightforward software Goal is to develop a high-quality system in an evolutionary, collaborative, and self-organizing manner Pre-requisite: can build a product backlog Agile Scrum Roles (pigs) Product Owner – Owns the product backlog – Chooses what work to do next Team Member – Creates the solution – Owns estimation of difficulty of items in the backlog – Constrains how much work can be done Team Lead (Scrum Master) – Removes obstacles – Status reporting
  • 9. 8 Agile terms and how the team operates Backlog Grooming Sprint Planning Scrums Velocity Sprint Demo Sprint Retrospective Sample User Stories and point assignments: 8 Story Points Summary 13 pts As a Bank Customer, I want to apply for a loan, so that I can… 8 pts As a Bank Customer, I want to deposit cash 5 pts As a Bank Customer, I want to change my PIN. 3 pts As a Bank Customer, I want to withdraw cash 1 pt As a Bank Customer, I check my account balance 5 pts As a Bank Customer, I want to buy postage stamps Agile Method: Tenants of Agile and its iterative cycle Sprint 1 Sprint 2 Story Points DeliveredStory Points Delivered Story Points DeliveredStory Points Delivered Velocity (rolling average of points delivered)Velocity (rolling average of points delivered)
  • 10. 9 Agile adoption – adoption by execution Two-week sprints Single Product Owner Scrum Master Rank user stories Set up the meetings Method: What we did Agile Sprint 1 Sprint 2 Story Points DeliveredStory Points Delivered Story Points DeliveredStory Points Delivered Velocity (rolling average of points delivered)Velocity (rolling average of points delivered)
  • 11. 10 10 Sprint by Sprint view of demonstrated progress of feature delivery Agile Release 1.0 - Functional Story Point Burndown 0 50 100 150 200 250 300 350 400 450 Sprint1Sprint2Sprint3Sprint4Sprint5Sprint6Sprint7Sprint8 Time StoryPoints Backlog Size Remaining Backlog Sprint Velocity Projected Pts Planned Pts Method: Sample Burndown – Measured delivery
  • 12. 11 Continuous Integration Continuous integration (CI) is the practice, in software engineering, of merging all developer working copies with a shared mainline several times a day. (Source: Wikipedia 1/29/2014 - http://en.wikipedia.org/wiki/Continuous_integration) Develop features or fix defects on isolated branches Merge branches onto the main Identify points in time on the main that represent a viable code drop This all drives the ability to have a stable, automatically tested, “main” which can be sent forward for Test, QA, and Production deployment
  • 13. 12 Continuous Integration – what we did Initially Work space isolation obtained via Business Process Manager (BPM) locking of a business process The team is working on the main This limited / prevented concurrent engineering Led to Sprint-fall Evolved into Paired programmers working on separate tool kits, and backend processes
  • 14. 13 Process: 30,000 ft view Development Test QA Production Main Feature 455 Unit Test Asset Mgmt deploy deploy deploy Build Customer E2E Automated Test - REST API Customer Manual Test - UAT Automated Test IBM Automated Test - REST API - UI IBM Automated Test - REST API - UI Customer Manual Test - UAT
  • 15. 14 Assets Assets include any element that the team can change on any of the systems supporting the project. For example: A WAR file An executable An environment variable A database definition
  • 16. 15 Assets – what we did BPM process application and tool kit TWX files Pattern The topology of an application Patch Those changes to SCO software and/or associated configuration changes Configuration Those changes to the systems supporting the SCO product Configuration of the VMs internally and from a VM mgmt standpoint Images The building block for a pattern
  • 17. 16 Rational Team Concert Assets – what we did Development Exported as .twx file, then checked into RTC along with a change description Import .twx from RTC QATest Production
  • 18. 17 Automated Test Automated test provides the means to assess the quality of the main branch or the deployed release Through the use of Automated Test, the Continuous Delivery framework can then decide of a particular release candidate is of sufficient quality to be promoted to the next level
  • 19. 18 Automated Test – what we did Test Architecture Automated REST API Test Deliver a solution that can be accessed via REST API Verify that, through the REST API, all features work Automated User Interface (UI) Test Confirm that the solution works with the developed user interface
  • 20. 19 Automated Build of Deployable Asset Automated build provides the means to collect the set of assets from the development system such that they can later be deployed to a target system Automated deploy provides the means to place the assets onto a target system for test and use
  • 21. 20 Automated Build of Deployable Asset – what we did Use SmartCloud Orchestrator (SCO), REST based export/import feature Implemented a persistence layer to encapsulate differences between deployment environments Leverage build and version control tools Control asset versions Initiate automated testing Track test results
  • 22. 21 Tools to integrate and support Integrate SCM and Build management tools to Speed the development Deliver to the customer control systems Automated Test Test the User Interface – record and replay UI tool Test the REST Interface – test harness to invoke API, record results Automated Build BPM – REST API based extract from SCO Patches, etc handled more conventionally Automated Deploy BPM – REST API based import to SCO Patches, etc handled more conventionally
  • 23. 22 Tools to integrate and support – what we did
  • 24. 23 Tools to integrate and support – what we did
  • 25. 24 Agenda Introduction Continuous Delivery – what is it, how did we do it Wrap up Questions
  • 27. 26 …In Retrospect Defect zone vs. Story zone (defect backlog vs. story backlog) Team commitment to Agile and CD – No boycotts Sprint granularity of CD vs. Story level of CD Deliver both Product and Services Difficulty grasping task ownership and delivery