SlideShare a Scribd company logo
Building the Agile Enterprise:
  Combining Kanban and tooling to scale
  Agile beyond your team
  Gil Irizarry

  Constant Contact

  June 2012




Copyright © 2012 Constant Contact Inc.    1
The Goal

  • We want to release more features more frequently

  • Why?

          • React quicker to changing market conditions
          • Get new features to users more quickly
          • Frequent releases are smaller releases: users often
          cannot absorb a large set of changes

  • We also want teams to work more smoothly and
  continuously



Copyright © 2012 Constant Contact Inc.                            2
The Challenge at the Enterprise Level

  For example, at Constant Contact:

  •13 software development teams

          • 5 development and testing environments

                  • 2 production environments

                         • A code base that was first created around
                         2004 and built up over time

  This creates a large set of interdependencies.



Copyright © 2012 Constant Contact Inc.                                 3
How to address the challenge



  • Kanban at the team level

  • Release and Configuration Management at the org level

  • Manage the intersection of the two




Copyright © 2012 Constant Contact Inc.                      4
Kanban at the Team Level

  • Teams implement Kanban following the 5 principles:
      • Visualize the workflow
      • Limit work-in-progress (WIP)
      • Manage Flow
      • Make Process Policies Explicit
      • Improve Collaboratively

  • Aim is to have teams work continuously and not be
  affected by software releases

  • However, with multiple, interdependent teams,
  release management is necessary.


Copyright © 2012 Constant Contact Inc.                   5
Release Management


  • Prioritized project list

  • Dependency Planning

  • Continuous integration and automated regression
  testing

  • Dependency and deliverable review

  • Release train



Copyright © 2012 Constant Contact Inc.                6
Prioritized Project List


  • Product Management, Development and Operations
  leads meet regularly to prioritize all development
  projects

  • This becomes the organizational backlog, which in
  turn drives each team’s backlog




Copyright © 2012 Constant Contact Inc.                  7
Dependency Planning


  • Prior to the start of a release, teams use the
  prioritized project list to plan their upcoming work

  • Planning involves the identification of deliverables
  and dependencies

  • Dependencies are discussed with dependent teams

  • A meeting is held in which all development and
  operations teams present their dependencies to each
  other



Copyright © 2012 Constant Contact Inc.                     8
Dependency Planning



  • At the end of the meeting, each team has their
  planned deliverables and incoming dependencies

  • If they haven’t already, they determine their capacity
  and, based on the priorities, commit to a set of work

  • This means that a team may have capacity to do
  work, but may not get to it in a release if that work
  pushes the operations team beyond its capacity




Copyright © 2012 Constant Contact Inc.                       9
Dependency Review


     • Project leads review dependencies regularly and
     determine if teams are on track or not.

     • It is tempting to meet and discuss impediments, but
     dependencies are what affect other teams.
     Deliverable and dependency review provides a better
     view of the state of the release.




Copyright © 2012 Constant Contact Inc.                       10
Release Train




  • The dilemma: Releases are iterative but development is
  continuous




Copyright © 2012 Constant Contact Inc.                       11
Release Train
  • If a deliverable misses a release (the train), it simply
  waits to capture the next one

  • Don’t penalize a team if a deliverable is not done at
  the end of a release and misses the release train

  • Teams should plan and test continuously

  • It’s OK if a team pulls functionality from a release
  within a release cycle

  • It’s OK if a team starts work for the next release in
  the current release


Copyright © 2012 Constant Contact Inc.                         12
Release Train


  • To make this work:

          • Releases must be short

          • Must have tooling for automated builds and
          deployments

          • Other areas of the organization must be flexible
          enough to react to last-minute product changes




Copyright © 2012 Constant Contact Inc.                         13
The Infrastructure to Make This Work




Copyright © 2012 Constant Contact Inc.                  14
Update Your Tooling

                                                      Consider
                                                      moving to:
                                     Source Control       GIT
                                     Continuous         Jenkins
                                     Integration
                                     Builds              Maven

                                     Environments     Macs/Vagrant

                                     SQL               Liquibase




Copyright © 2012 Constant Contact Inc.                               15
Update Architecture and Infrastructure


   • Transition from a monolithic codebase to a service-
   based architecture

   • Move from a single database to application specific
   databases

   • Package Code, Configuration, SQL, and Tests together

   • Automated deployments




Copyright © 2012 Constant Contact Inc.                      16
Increase Emphasis on Testing

  • Monitor code coverage

  • Automate test tooling; JUnit, Selenium and Rspec

  • Unit tests run at build time

  • Automated Smoke and Integration tests run in a CI
  environment

  • Code not advanced if tests fail

  • Regular emails to entire team on testing status


Copyright © 2012 Constant Contact Inc.                  17
Branching Strategy


  • Branch per application/team

  • Initial development in developer’s local branch

  • Team integration in Development branch

  • Multi-Team integration in the Integration branch

  • On the train – promoted to Release branch

  • A Master branch for current production



Copyright © 2012 Constant Contact Inc.                 18
Development workflow




Copyright © 2012 Constant Contact Inc.   19
Continuous Delivery

  Brings together:

          • Continuous integration
          • Automated testing
          • Automated deployment

  Resulting in:

          • Stable test environments
          • Increased developer productivity
          • Higher quality releases
          • Smaller, more frequent releases


Copyright © 2012 Constant Contact Inc.         20
Takeaways


  • Decouple team planning from releases

  • Make releases small and frequent

  • Code, architecture and infrastructure must work
  together to make small, frequent releases possible

  • Plan and prioritize continuously

  • Automate Everything! (Building, Testing, and
  Deploying)



Copyright © 2012 Constant Contact Inc.                 21

More Related Content

What's hot

Upgrading PeopleSoft Financials from 8.9 to 9.2 – Advice You Need to Know fro...
Upgrading PeopleSoft Financials from 8.9 to 9.2 – Advice You Need to Know fro...Upgrading PeopleSoft Financials from 8.9 to 9.2 – Advice You Need to Know fro...
Upgrading PeopleSoft Financials from 8.9 to 9.2 – Advice You Need to Know fro...
NERUG
 
Appendix A: Introduction to Collaborative Lifecycle Management
Appendix A: Introduction to Collaborative Lifecycle ManagementAppendix A: Introduction to Collaborative Lifecycle Management
Appendix A: Introduction to Collaborative Lifecycle Management
IBM Rational software
 
IBM Innovate 2013 Session: DevOps 101
IBM Innovate 2013 Session: DevOps 101IBM Innovate 2013 Session: DevOps 101
IBM Innovate 2013 Session: DevOps 101
Sanjeev Sharma
 
Application Lifecycle Transformation...a DevOps Discussion - By David Miller ...
Application Lifecycle Transformation...a DevOps Discussion - By David Miller ...Application Lifecycle Transformation...a DevOps Discussion - By David Miller ...
Application Lifecycle Transformation...a DevOps Discussion - By David Miller ...
Melissa Luongo
 
Continuous Application Delivery to WebSphere - Featuring IBM UrbanCode
Continuous Application Delivery to WebSphere - Featuring IBM UrbanCodeContinuous Application Delivery to WebSphere - Featuring IBM UrbanCode
Continuous Application Delivery to WebSphere - Featuring IBM UrbanCode
IBM UrbanCode Products
 
What is DevOps? What is DevOps CoE?
What is DevOps? What is DevOps CoE? What is DevOps? What is DevOps CoE?
What is DevOps? What is DevOps CoE?
7Targets AI Sales Assistants
 
DTS-1778 Understanding DevOps - IBM InterConnect Session
DTS-1778 Understanding DevOps - IBM InterConnect SessionDTS-1778 Understanding DevOps - IBM InterConnect Session
DTS-1778 Understanding DevOps - IBM InterConnect Session
Sanjeev Sharma
 
Avoiding the Release Weekend
Avoiding the Release Weekend Avoiding the Release Weekend
Avoiding the Release Weekend
IBM UrbanCode Products
 
UrbanCode Deploy course and product overview slides
UrbanCode Deploy course and product overview slidesUrbanCode Deploy course and product overview slides
UrbanCode Deploy course and product overview slides
IBM Rational software
 
PeopleSoft 9.1 upgrade best practices
PeopleSoft  9.1 upgrade best practicesPeopleSoft  9.1 upgrade best practices
PeopleSoft 9.1 upgrade best practices
Smart ERP Solutions, Inc.
 
VMworld 2013: Best Practices for Application Lifecycle Management with vCloud...
VMworld 2013: Best Practices for Application Lifecycle Management with vCloud...VMworld 2013: Best Practices for Application Lifecycle Management with vCloud...
VMworld 2013: Best Practices for Application Lifecycle Management with vCloud...
VMworld
 
Resources slides
Resources slidesResources slides
Resources slides
IBM Rational software
 
Agile India 2015 Conference - Scaling agile in a mainframe product developm...
Agile India 2015 Conference  -  Scaling agile in a mainframe product developm...Agile India 2015 Conference  -  Scaling agile in a mainframe product developm...
Agile India 2015 Conference - Scaling agile in a mainframe product developm...
PoojaUppalapati
 
Upgrading to 9.2 - Setting Yourself Up For Success
Upgrading to 9.2 - Setting Yourself Up For SuccessUpgrading to 9.2 - Setting Yourself Up For Success
Upgrading to 9.2 - Setting Yourself Up For Success
Cedar Consulting
 
Il paradigma DevOps e Continuous Delivery Automation
Il paradigma DevOps e Continuous Delivery Automation Il paradigma DevOps e Continuous Delivery Automation
Il paradigma DevOps e Continuous Delivery Automation
HP Enterprise Italia
 
PeopleSoft 9.1 Upgrade for a Leading Education Services Company
PeopleSoft 9.1 Upgrade for a Leading Education Services CompanyPeopleSoft 9.1 Upgrade for a Leading Education Services Company
PeopleSoft 9.1 Upgrade for a Leading Education Services Company
Hazelknight Media & Entertainment Pvt Ltd
 
Going agile with scrum
Going agile with scrumGoing agile with scrum
Going agile with scrum
Mayur Sand
 
IBM Innovate - Adoption of Continuous Delivery at Scale at a large telco v0 3
IBM Innovate - Adoption of Continuous Delivery at Scale at a large telco v0 3IBM Innovate - Adoption of Continuous Delivery at Scale at a large telco v0 3
IBM Innovate - Adoption of Continuous Delivery at Scale at a large telco v0 3
Mirco Hering
 
Cobol agile
Cobol agileCobol agile
Cobol agile
Candi Rai
 
Innovating the Software Development Process at Cadence Design Systems
Innovating the Software Development Process at Cadence Design SystemsInnovating the Software Development Process at Cadence Design Systems
Innovating the Software Development Process at Cadence Design Systems
Rahul Razdan
 

What's hot (20)

Upgrading PeopleSoft Financials from 8.9 to 9.2 – Advice You Need to Know fro...
Upgrading PeopleSoft Financials from 8.9 to 9.2 – Advice You Need to Know fro...Upgrading PeopleSoft Financials from 8.9 to 9.2 – Advice You Need to Know fro...
Upgrading PeopleSoft Financials from 8.9 to 9.2 – Advice You Need to Know fro...
 
Appendix A: Introduction to Collaborative Lifecycle Management
Appendix A: Introduction to Collaborative Lifecycle ManagementAppendix A: Introduction to Collaborative Lifecycle Management
Appendix A: Introduction to Collaborative Lifecycle Management
 
IBM Innovate 2013 Session: DevOps 101
IBM Innovate 2013 Session: DevOps 101IBM Innovate 2013 Session: DevOps 101
IBM Innovate 2013 Session: DevOps 101
 
Application Lifecycle Transformation...a DevOps Discussion - By David Miller ...
Application Lifecycle Transformation...a DevOps Discussion - By David Miller ...Application Lifecycle Transformation...a DevOps Discussion - By David Miller ...
Application Lifecycle Transformation...a DevOps Discussion - By David Miller ...
 
Continuous Application Delivery to WebSphere - Featuring IBM UrbanCode
Continuous Application Delivery to WebSphere - Featuring IBM UrbanCodeContinuous Application Delivery to WebSphere - Featuring IBM UrbanCode
Continuous Application Delivery to WebSphere - Featuring IBM UrbanCode
 
What is DevOps? What is DevOps CoE?
What is DevOps? What is DevOps CoE? What is DevOps? What is DevOps CoE?
What is DevOps? What is DevOps CoE?
 
DTS-1778 Understanding DevOps - IBM InterConnect Session
DTS-1778 Understanding DevOps - IBM InterConnect SessionDTS-1778 Understanding DevOps - IBM InterConnect Session
DTS-1778 Understanding DevOps - IBM InterConnect Session
 
Avoiding the Release Weekend
Avoiding the Release Weekend Avoiding the Release Weekend
Avoiding the Release Weekend
 
UrbanCode Deploy course and product overview slides
UrbanCode Deploy course and product overview slidesUrbanCode Deploy course and product overview slides
UrbanCode Deploy course and product overview slides
 
PeopleSoft 9.1 upgrade best practices
PeopleSoft  9.1 upgrade best practicesPeopleSoft  9.1 upgrade best practices
PeopleSoft 9.1 upgrade best practices
 
VMworld 2013: Best Practices for Application Lifecycle Management with vCloud...
VMworld 2013: Best Practices for Application Lifecycle Management with vCloud...VMworld 2013: Best Practices for Application Lifecycle Management with vCloud...
VMworld 2013: Best Practices for Application Lifecycle Management with vCloud...
 
Resources slides
Resources slidesResources slides
Resources slides
 
Agile India 2015 Conference - Scaling agile in a mainframe product developm...
Agile India 2015 Conference  -  Scaling agile in a mainframe product developm...Agile India 2015 Conference  -  Scaling agile in a mainframe product developm...
Agile India 2015 Conference - Scaling agile in a mainframe product developm...
 
Upgrading to 9.2 - Setting Yourself Up For Success
Upgrading to 9.2 - Setting Yourself Up For SuccessUpgrading to 9.2 - Setting Yourself Up For Success
Upgrading to 9.2 - Setting Yourself Up For Success
 
Il paradigma DevOps e Continuous Delivery Automation
Il paradigma DevOps e Continuous Delivery Automation Il paradigma DevOps e Continuous Delivery Automation
Il paradigma DevOps e Continuous Delivery Automation
 
PeopleSoft 9.1 Upgrade for a Leading Education Services Company
PeopleSoft 9.1 Upgrade for a Leading Education Services CompanyPeopleSoft 9.1 Upgrade for a Leading Education Services Company
PeopleSoft 9.1 Upgrade for a Leading Education Services Company
 
Going agile with scrum
Going agile with scrumGoing agile with scrum
Going agile with scrum
 
IBM Innovate - Adoption of Continuous Delivery at Scale at a large telco v0 3
IBM Innovate - Adoption of Continuous Delivery at Scale at a large telco v0 3IBM Innovate - Adoption of Continuous Delivery at Scale at a large telco v0 3
IBM Innovate - Adoption of Continuous Delivery at Scale at a large telco v0 3
 
Cobol agile
Cobol agileCobol agile
Cobol agile
 
Innovating the Software Development Process at Cadence Design Systems
Innovating the Software Development Process at Cadence Design SystemsInnovating the Software Development Process at Cadence Design Systems
Innovating the Software Development Process at Cadence Design Systems
 

Viewers also liked

Agile The Kanban Way - Central MA PMI 2011
Agile The Kanban Way - Central MA PMI 2011Agile The Kanban Way - Central MA PMI 2011
Agile The Kanban Way - Central MA PMI 2011
Gil Irizarry
 
Graphics on the Go
Graphics on the GoGraphics on the Go
Graphics on the Go
Gil Irizarry
 
From Silos to DevOps: Our Story
From Silos to DevOps:  Our StoryFrom Silos to DevOps:  Our Story
From Silos to DevOps: Our Story
Gil Irizarry
 
Make Cross-platform Mobile Apps Quickly - SIGGRAPH 2014
Make Cross-platform Mobile Apps Quickly - SIGGRAPH 2014Make Cross-platform Mobile Apps Quickly - SIGGRAPH 2014
Make Cross-platform Mobile Apps Quickly - SIGGRAPH 2014
Gil Irizarry
 
Make Mobile Apps Quickly
Make Mobile Apps QuicklyMake Mobile Apps Quickly
Make Mobile Apps Quickly
Gil Irizarry
 
Beginning Native Android Apps
Beginning Native Android AppsBeginning Native Android Apps
Beginning Native Android Apps
Gil Irizarry
 
Board Deck Templates for Startups
Board Deck Templates for StartupsBoard Deck Templates for Startups
Board Deck Templates for Startups
NextView Ventures
 

Viewers also liked (7)

Agile The Kanban Way - Central MA PMI 2011
Agile The Kanban Way - Central MA PMI 2011Agile The Kanban Way - Central MA PMI 2011
Agile The Kanban Way - Central MA PMI 2011
 
Graphics on the Go
Graphics on the GoGraphics on the Go
Graphics on the Go
 
From Silos to DevOps: Our Story
From Silos to DevOps:  Our StoryFrom Silos to DevOps:  Our Story
From Silos to DevOps: Our Story
 
Make Cross-platform Mobile Apps Quickly - SIGGRAPH 2014
Make Cross-platform Mobile Apps Quickly - SIGGRAPH 2014Make Cross-platform Mobile Apps Quickly - SIGGRAPH 2014
Make Cross-platform Mobile Apps Quickly - SIGGRAPH 2014
 
Make Mobile Apps Quickly
Make Mobile Apps QuicklyMake Mobile Apps Quickly
Make Mobile Apps Quickly
 
Beginning Native Android Apps
Beginning Native Android AppsBeginning Native Android Apps
Beginning Native Android Apps
 
Board Deck Templates for Startups
Board Deck Templates for StartupsBoard Deck Templates for Startups
Board Deck Templates for Startups
 

Similar to Building The Agile Enterprise - LSSC '12

Gil Irizarry, Constant Contact presentation from MassTLC seminar on taking yo...
Gil Irizarry, Constant Contact presentation from MassTLC seminar on taking yo...Gil Irizarry, Constant Contact presentation from MassTLC seminar on taking yo...
Gil Irizarry, Constant Contact presentation from MassTLC seminar on taking yo...
MassTLC
 
DevOps Overview in my own words
DevOps Overview in my own wordsDevOps Overview in my own words
DevOps Overview in my own words
SUBHENDU KARMAKAR
 
Mark Andersen DFW DevOps Days 2017
Mark Andersen DFW DevOps Days 2017Mark Andersen DFW DevOps Days 2017
Mark Andersen DFW DevOps Days 2017
Mark Andersen
 
Transitioning to Kanban - Aug 11
Transitioning to Kanban - Aug 11Transitioning to Kanban - Aug 11
Transitioning to Kanban - Aug 11
Gil Irizarry
 
Devops
DevopsDevops
Continuos Delivery
Continuos DeliveryContinuos Delivery
Continuos Delivery
Andrés Callejas González
 
Developer want change Ops want control - devops
Developer want change Ops want control - devopsDeveloper want change Ops want control - devops
Developer want change Ops want control - devops
Venkat Janardhanam, MS, MBA
 
Change Management in Hybrid landscapes 2017
Change Management in Hybrid landscapes 2017Change Management in Hybrid landscapes 2017
Change Management in Hybrid landscapes 2017
Chris Kernaghan
 
MassTLC DevOps Peer Session - Progress Software - 9/9/15
MassTLC DevOps Peer Session - Progress Software - 9/9/15MassTLC DevOps Peer Session - Progress Software - 9/9/15
MassTLC DevOps Peer Session - Progress Software - 9/9/15
MassTLC
 
Enterprise DevOps and the Modern Mainframe Webcast Presentation
Enterprise DevOps and the Modern Mainframe Webcast PresentationEnterprise DevOps and the Modern Mainframe Webcast Presentation
Enterprise DevOps and the Modern Mainframe Webcast Presentation
Compuware
 
10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust
10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust
10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust
dennisn129
 
Linking Upstream and Downstream Agile
Linking Upstream and Downstream AgileLinking Upstream and Downstream Agile
Linking Upstream and Downstream Agile
CollabNet
 
Lessons Learned from Large Scale Adoption of DevOps for IBM z Systems Software
Lessons Learned from Large Scale Adoption of DevOps for IBM z Systems SoftwareLessons Learned from Large Scale Adoption of DevOps for IBM z Systems Software
Lessons Learned from Large Scale Adoption of DevOps for IBM z Systems Software
DevOps for Enterprise Systems
 
Test automation lessons from WebSphere Application Server
Test automation lessons from WebSphere Application ServerTest automation lessons from WebSphere Application Server
Test automation lessons from WebSphere Application Server
Robbie Minshall
 
Metrics to Power DevOps
Metrics to Power DevOpsMetrics to Power DevOps
Metrics to Power DevOps
CollabNet
 
Continuous Testing: A Key to DevOps Success
Continuous Testing: A Key to DevOps SuccessContinuous Testing: A Key to DevOps Success
Continuous Testing: A Key to DevOps Success
TechWell
 
NRB - BE MAINFRAME DAY 2017 - Compuware Dev Ops
NRB - BE MAINFRAME DAY 2017 - Compuware Dev OpsNRB - BE MAINFRAME DAY 2017 - Compuware Dev Ops
NRB - BE MAINFRAME DAY 2017 - Compuware Dev Ops
NRB
 
NRB - LUXEMBOURG MAINFRAME DAY 2017 - Compuware DevOps presentation
NRB - LUXEMBOURG MAINFRAME DAY 2017 - Compuware DevOps presentationNRB - LUXEMBOURG MAINFRAME DAY 2017 - Compuware DevOps presentation
NRB - LUXEMBOURG MAINFRAME DAY 2017 - Compuware DevOps presentation
NRB
 
DevOps in the Hybrid Cloud
DevOps in the Hybrid CloudDevOps in the Hybrid Cloud
DevOps in the Hybrid Cloud
Richard Irving
 
DevOps: Retooling the End-to-End IT Model
DevOps: Retooling the End-to-End IT ModelDevOps: Retooling the End-to-End IT Model
DevOps: Retooling the End-to-End IT Model
CA Technologies
 

Similar to Building The Agile Enterprise - LSSC '12 (20)

Gil Irizarry, Constant Contact presentation from MassTLC seminar on taking yo...
Gil Irizarry, Constant Contact presentation from MassTLC seminar on taking yo...Gil Irizarry, Constant Contact presentation from MassTLC seminar on taking yo...
Gil Irizarry, Constant Contact presentation from MassTLC seminar on taking yo...
 
DevOps Overview in my own words
DevOps Overview in my own wordsDevOps Overview in my own words
DevOps Overview in my own words
 
Mark Andersen DFW DevOps Days 2017
Mark Andersen DFW DevOps Days 2017Mark Andersen DFW DevOps Days 2017
Mark Andersen DFW DevOps Days 2017
 
Transitioning to Kanban - Aug 11
Transitioning to Kanban - Aug 11Transitioning to Kanban - Aug 11
Transitioning to Kanban - Aug 11
 
Devops
DevopsDevops
Devops
 
Continuos Delivery
Continuos DeliveryContinuos Delivery
Continuos Delivery
 
Developer want change Ops want control - devops
Developer want change Ops want control - devopsDeveloper want change Ops want control - devops
Developer want change Ops want control - devops
 
Change Management in Hybrid landscapes 2017
Change Management in Hybrid landscapes 2017Change Management in Hybrid landscapes 2017
Change Management in Hybrid landscapes 2017
 
MassTLC DevOps Peer Session - Progress Software - 9/9/15
MassTLC DevOps Peer Session - Progress Software - 9/9/15MassTLC DevOps Peer Session - Progress Software - 9/9/15
MassTLC DevOps Peer Session - Progress Software - 9/9/15
 
Enterprise DevOps and the Modern Mainframe Webcast Presentation
Enterprise DevOps and the Modern Mainframe Webcast PresentationEnterprise DevOps and the Modern Mainframe Webcast Presentation
Enterprise DevOps and the Modern Mainframe Webcast Presentation
 
10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust
10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust
10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust
 
Linking Upstream and Downstream Agile
Linking Upstream and Downstream AgileLinking Upstream and Downstream Agile
Linking Upstream and Downstream Agile
 
Lessons Learned from Large Scale Adoption of DevOps for IBM z Systems Software
Lessons Learned from Large Scale Adoption of DevOps for IBM z Systems SoftwareLessons Learned from Large Scale Adoption of DevOps for IBM z Systems Software
Lessons Learned from Large Scale Adoption of DevOps for IBM z Systems Software
 
Test automation lessons from WebSphere Application Server
Test automation lessons from WebSphere Application ServerTest automation lessons from WebSphere Application Server
Test automation lessons from WebSphere Application Server
 
Metrics to Power DevOps
Metrics to Power DevOpsMetrics to Power DevOps
Metrics to Power DevOps
 
Continuous Testing: A Key to DevOps Success
Continuous Testing: A Key to DevOps SuccessContinuous Testing: A Key to DevOps Success
Continuous Testing: A Key to DevOps Success
 
NRB - BE MAINFRAME DAY 2017 - Compuware Dev Ops
NRB - BE MAINFRAME DAY 2017 - Compuware Dev OpsNRB - BE MAINFRAME DAY 2017 - Compuware Dev Ops
NRB - BE MAINFRAME DAY 2017 - Compuware Dev Ops
 
NRB - LUXEMBOURG MAINFRAME DAY 2017 - Compuware DevOps presentation
NRB - LUXEMBOURG MAINFRAME DAY 2017 - Compuware DevOps presentationNRB - LUXEMBOURG MAINFRAME DAY 2017 - Compuware DevOps presentation
NRB - LUXEMBOURG MAINFRAME DAY 2017 - Compuware DevOps presentation
 
DevOps in the Hybrid Cloud
DevOps in the Hybrid CloudDevOps in the Hybrid Cloud
DevOps in the Hybrid Cloud
 
DevOps: Retooling the End-to-End IT Model
DevOps: Retooling the End-to-End IT ModelDevOps: Retooling the End-to-End IT Model
DevOps: Retooling the End-to-End IT Model
 

More from Gil Irizarry

A Rose By Any Other Name.pdf
A Rose By Any Other Name.pdfA Rose By Any Other Name.pdf
A Rose By Any Other Name.pdf
Gil Irizarry
 
[Apple-organization] and [oranges-fruit] - How to evaluate NLP tools - Basis ...
[Apple-organization] and [oranges-fruit] - How to evaluate NLP tools - Basis ...[Apple-organization] and [oranges-fruit] - How to evaluate NLP tools - Basis ...
[Apple-organization] and [oranges-fruit] - How to evaluate NLP tools - Basis ...
Gil Irizarry
 
[Apple|organization] and [oranges|fruit]: How to evaluate NLP tools for entit...
[Apple|organization] and [oranges|fruit]: How to evaluate NLP tools for entit...[Apple|organization] and [oranges|fruit]: How to evaluate NLP tools for entit...
[Apple|organization] and [oranges|fruit]: How to evaluate NLP tools for entit...
Gil Irizarry
 
Ai for Good: Bad Guys, Messy Data, & NLP
Ai for Good: Bad Guys, Messy Data, & NLPAi for Good: Bad Guys, Messy Data, & NLP
Ai for Good: Bad Guys, Messy Data, & NLP
Gil Irizarry
 
DevSecOps Orchestration of Text Analytics with Containers
DevSecOps Orchestration of Text Analytics with ContainersDevSecOps Orchestration of Text Analytics with Containers
DevSecOps Orchestration of Text Analytics with Containers
Gil Irizarry
 
Towards Identity Resolution: The Challenge of Name Matching
Towards Identity Resolution: The Challenge of Name MatchingTowards Identity Resolution: The Challenge of Name Matching
Towards Identity Resolution: The Challenge of Name Matching
Gil Irizarry
 
RapidMiner - Don’t Forget to Pack Text Analytics on Your Data Exploration Jou...
RapidMiner - Don’t Forget to Pack Text Analytics on Your Data Exploration Jou...RapidMiner - Don’t Forget to Pack Text Analytics on Your Data Exploration Jou...
RapidMiner - Don’t Forget to Pack Text Analytics on Your Data Exploration Jou...
Gil Irizarry
 
Transitioning to Kanban: Theory and Practice - Project Summit Boston 2011
Transitioning to Kanban: Theory and Practice - Project Summit Boston 2011Transitioning to Kanban: Theory and Practice - Project Summit Boston 2011
Transitioning to Kanban: Theory and Practice - Project Summit Boston 2011
Gil Irizarry
 
Transitioning to Kanban
Transitioning to KanbanTransitioning to Kanban
Transitioning to Kanban
Gil Irizarry
 
Beyond Scrum of Scrums
Beyond Scrum of ScrumsBeyond Scrum of Scrums
Beyond Scrum of Scrums
Gil Irizarry
 

More from Gil Irizarry (10)

A Rose By Any Other Name.pdf
A Rose By Any Other Name.pdfA Rose By Any Other Name.pdf
A Rose By Any Other Name.pdf
 
[Apple-organization] and [oranges-fruit] - How to evaluate NLP tools - Basis ...
[Apple-organization] and [oranges-fruit] - How to evaluate NLP tools - Basis ...[Apple-organization] and [oranges-fruit] - How to evaluate NLP tools - Basis ...
[Apple-organization] and [oranges-fruit] - How to evaluate NLP tools - Basis ...
 
[Apple|organization] and [oranges|fruit]: How to evaluate NLP tools for entit...
[Apple|organization] and [oranges|fruit]: How to evaluate NLP tools for entit...[Apple|organization] and [oranges|fruit]: How to evaluate NLP tools for entit...
[Apple|organization] and [oranges|fruit]: How to evaluate NLP tools for entit...
 
Ai for Good: Bad Guys, Messy Data, & NLP
Ai for Good: Bad Guys, Messy Data, & NLPAi for Good: Bad Guys, Messy Data, & NLP
Ai for Good: Bad Guys, Messy Data, & NLP
 
DevSecOps Orchestration of Text Analytics with Containers
DevSecOps Orchestration of Text Analytics with ContainersDevSecOps Orchestration of Text Analytics with Containers
DevSecOps Orchestration of Text Analytics with Containers
 
Towards Identity Resolution: The Challenge of Name Matching
Towards Identity Resolution: The Challenge of Name MatchingTowards Identity Resolution: The Challenge of Name Matching
Towards Identity Resolution: The Challenge of Name Matching
 
RapidMiner - Don’t Forget to Pack Text Analytics on Your Data Exploration Jou...
RapidMiner - Don’t Forget to Pack Text Analytics on Your Data Exploration Jou...RapidMiner - Don’t Forget to Pack Text Analytics on Your Data Exploration Jou...
RapidMiner - Don’t Forget to Pack Text Analytics on Your Data Exploration Jou...
 
Transitioning to Kanban: Theory and Practice - Project Summit Boston 2011
Transitioning to Kanban: Theory and Practice - Project Summit Boston 2011Transitioning to Kanban: Theory and Practice - Project Summit Boston 2011
Transitioning to Kanban: Theory and Practice - Project Summit Boston 2011
 
Transitioning to Kanban
Transitioning to KanbanTransitioning to Kanban
Transitioning to Kanban
 
Beyond Scrum of Scrums
Beyond Scrum of ScrumsBeyond Scrum of Scrums
Beyond Scrum of Scrums
 

Recently uploaded

Dandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity serverDandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity server
Antonios Katsarakis
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
Zilliz
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
saastr
 
Digital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Digital Banking in the Cloud: How Citizens Bank Unlocked Their MainframeDigital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Digital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Precisely
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
Postman
 
“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...
“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...
“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...
Edge AI and Vision Alliance
 
The Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptxThe Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptx
operationspcvita
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
ssuserfac0301
 
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
Edge AI and Vision Alliance
 
Apps Break Data
Apps Break DataApps Break Data
Apps Break Data
Ivo Velitchkov
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
Pixlogix Infotech
 
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
Jason Yip
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
DanBrown980551
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
Zilliz
 
Public CyberSecurity Awareness Presentation 2024.pptx
Public CyberSecurity Awareness Presentation 2024.pptxPublic CyberSecurity Awareness Presentation 2024.pptx
Public CyberSecurity Awareness Presentation 2024.pptx
marufrahmanstratejm
 
Leveraging the Graph for Clinical Trials and Standards
Leveraging the Graph for Clinical Trials and StandardsLeveraging the Graph for Clinical Trials and Standards
Leveraging the Graph for Clinical Trials and Standards
Neo4j
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
Jason Packer
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
Tatiana Kojar
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
Brandon Minnick, MBA
 

Recently uploaded (20)

Dandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity serverDandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity server
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
 
Digital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Digital Banking in the Cloud: How Citizens Bank Unlocked Their MainframeDigital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Digital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
 
“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...
“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...
“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...
 
The Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptxThe Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptx
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
 
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
 
Apps Break Data
Apps Break DataApps Break Data
Apps Break Data
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
 
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
 
Public CyberSecurity Awareness Presentation 2024.pptx
Public CyberSecurity Awareness Presentation 2024.pptxPublic CyberSecurity Awareness Presentation 2024.pptx
Public CyberSecurity Awareness Presentation 2024.pptx
 
Leveraging the Graph for Clinical Trials and Standards
Leveraging the Graph for Clinical Trials and StandardsLeveraging the Graph for Clinical Trials and Standards
Leveraging the Graph for Clinical Trials and Standards
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
 

Building The Agile Enterprise - LSSC '12

  • 1. Building the Agile Enterprise: Combining Kanban and tooling to scale Agile beyond your team Gil Irizarry Constant Contact June 2012 Copyright © 2012 Constant Contact Inc. 1
  • 2. The Goal • We want to release more features more frequently • Why? • React quicker to changing market conditions • Get new features to users more quickly • Frequent releases are smaller releases: users often cannot absorb a large set of changes • We also want teams to work more smoothly and continuously Copyright © 2012 Constant Contact Inc. 2
  • 3. The Challenge at the Enterprise Level For example, at Constant Contact: •13 software development teams • 5 development and testing environments • 2 production environments • A code base that was first created around 2004 and built up over time This creates a large set of interdependencies. Copyright © 2012 Constant Contact Inc. 3
  • 4. How to address the challenge • Kanban at the team level • Release and Configuration Management at the org level • Manage the intersection of the two Copyright © 2012 Constant Contact Inc. 4
  • 5. Kanban at the Team Level • Teams implement Kanban following the 5 principles: • Visualize the workflow • Limit work-in-progress (WIP) • Manage Flow • Make Process Policies Explicit • Improve Collaboratively • Aim is to have teams work continuously and not be affected by software releases • However, with multiple, interdependent teams, release management is necessary. Copyright © 2012 Constant Contact Inc. 5
  • 6. Release Management • Prioritized project list • Dependency Planning • Continuous integration and automated regression testing • Dependency and deliverable review • Release train Copyright © 2012 Constant Contact Inc. 6
  • 7. Prioritized Project List • Product Management, Development and Operations leads meet regularly to prioritize all development projects • This becomes the organizational backlog, which in turn drives each team’s backlog Copyright © 2012 Constant Contact Inc. 7
  • 8. Dependency Planning • Prior to the start of a release, teams use the prioritized project list to plan their upcoming work • Planning involves the identification of deliverables and dependencies • Dependencies are discussed with dependent teams • A meeting is held in which all development and operations teams present their dependencies to each other Copyright © 2012 Constant Contact Inc. 8
  • 9. Dependency Planning • At the end of the meeting, each team has their planned deliverables and incoming dependencies • If they haven’t already, they determine their capacity and, based on the priorities, commit to a set of work • This means that a team may have capacity to do work, but may not get to it in a release if that work pushes the operations team beyond its capacity Copyright © 2012 Constant Contact Inc. 9
  • 10. Dependency Review • Project leads review dependencies regularly and determine if teams are on track or not. • It is tempting to meet and discuss impediments, but dependencies are what affect other teams. Deliverable and dependency review provides a better view of the state of the release. Copyright © 2012 Constant Contact Inc. 10
  • 11. Release Train • The dilemma: Releases are iterative but development is continuous Copyright © 2012 Constant Contact Inc. 11
  • 12. Release Train • If a deliverable misses a release (the train), it simply waits to capture the next one • Don’t penalize a team if a deliverable is not done at the end of a release and misses the release train • Teams should plan and test continuously • It’s OK if a team pulls functionality from a release within a release cycle • It’s OK if a team starts work for the next release in the current release Copyright © 2012 Constant Contact Inc. 12
  • 13. Release Train • To make this work: • Releases must be short • Must have tooling for automated builds and deployments • Other areas of the organization must be flexible enough to react to last-minute product changes Copyright © 2012 Constant Contact Inc. 13
  • 14. The Infrastructure to Make This Work Copyright © 2012 Constant Contact Inc. 14
  • 15. Update Your Tooling Consider moving to: Source Control GIT Continuous Jenkins Integration Builds Maven Environments Macs/Vagrant SQL Liquibase Copyright © 2012 Constant Contact Inc. 15
  • 16. Update Architecture and Infrastructure • Transition from a monolithic codebase to a service- based architecture • Move from a single database to application specific databases • Package Code, Configuration, SQL, and Tests together • Automated deployments Copyright © 2012 Constant Contact Inc. 16
  • 17. Increase Emphasis on Testing • Monitor code coverage • Automate test tooling; JUnit, Selenium and Rspec • Unit tests run at build time • Automated Smoke and Integration tests run in a CI environment • Code not advanced if tests fail • Regular emails to entire team on testing status Copyright © 2012 Constant Contact Inc. 17
  • 18. Branching Strategy • Branch per application/team • Initial development in developer’s local branch • Team integration in Development branch • Multi-Team integration in the Integration branch • On the train – promoted to Release branch • A Master branch for current production Copyright © 2012 Constant Contact Inc. 18
  • 19. Development workflow Copyright © 2012 Constant Contact Inc. 19
  • 20. Continuous Delivery Brings together: • Continuous integration • Automated testing • Automated deployment Resulting in: • Stable test environments • Increased developer productivity • Higher quality releases • Smaller, more frequent releases Copyright © 2012 Constant Contact Inc. 20
  • 21. Takeaways • Decouple team planning from releases • Make releases small and frequent • Code, architecture and infrastructure must work together to make small, frequent releases possible • Plan and prioritize continuously • Automate Everything! (Building, Testing, and Deploying) Copyright © 2012 Constant Contact Inc. 21