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

Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Speck&Tech
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems S.M.S.A.
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
Edge AI and Vision Alliance
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
名前 です男
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
sonjaschweigert1
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
Neo4j
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Aggregage
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
DianaGray10
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
Uni Systems S.M.S.A.
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
Neo4j
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
Matthew Sinclair
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 

Recently uploaded (20)

Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 

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