Here is a suggested approach for introducing Continuous Delivery in a large, complex company that currently uses a Waterfall methodology:
Assess the Current State
- Understand the existing Waterfall process in detail - what are the key stages, handoffs, bottlenecks, and pain points?
- Identify the core business applications and systems that would be impacted by the change to CD.
- Assess the current state of the codebase, build/deploy pipelines, testing, and infrastructure.
- Understand the organizational structure, roles, and incentives that would need to change.
Develop a Phased Rollout Plan
- Start with a pilot project that is well-scoped and has executive sponsorship. Choose a team that is open to change.
- Establish a CD pipeline for the pilot, automating builds, tests, and deployments. Measure and demonstrate the benefits.
- Expand to additional teams and applications in phases, learning and iterating as you go. Celebrate successes.
- Provide training and support to help teams adopt CD practices like version control, automated testing, and infrastructure as code.
Align Incentives and Processes
- Revise job descriptions, performance reviews, and compensation to reward CD practices and outcomes.
- Esta...