02 — Capability · BC-1220
Release & Deployment
Move a finished change from a merged commit to running in front of customers, in a controlled, reversible way, at whatever cadence the product promises — and know at every moment which version each customer is on. This is product release for a software company, not internal IT change control.
- Release Engineering
- Continuous Delivery
- Deployment Pipeline
- Release Train
In scope
- Versioning, release trains and the decision that a build is fit to ship
- Progressive rollout, feature flags and the ability to roll back fast
- Environment promotion from build through staging to production and customer-facing release notes
- Packaging and distribution for on-premises, embedded or app-store delivery where the product needs it
Out of scope
- Change advisory and release control for internal corporate systems (see BC-740 and BC-720)
- The build infrastructure and pipeline tooling itself (see BC-1210)
- Deciding what goes into a release and when (see BC-510 and BC-530)
Realized by · 1
- GitHub · GitHub Packagesstrong via BC-1220.40
Used in · 3
- Commit-to-Production · 03 Package & Promote via BC-1220.40
- Commit-to-Production · 04 Release Progressively via BC-1220.30
- Commit-to-Production · 06 Communicate & Learn via BC-1220.50
Build it · 6
- pattern Blue-Green Deployment via BC-1220.30.40
- pattern Canary Release via BC-1220.30.20
- pattern Feature Flags via BC-1220.30.10
- stack Cross-platform mobile via BC-1220.40.20
- book Continuous Delivery via BC-1220.20
- book The DevOps Handbook via BC-1220.20
Decomposes into · 5
- BC-1220.10Release Planning & VersioningDecide how versions are numbered, how often the product ships and what makes a build a release candidate, so customers and partners can plan against a predictable rhythm.
- BC-1220.20Environment PromotionCarry the same artifact through development, test, staging and production with configuration applied per environment, so what was tested is what ships.
- BC-1220.30Progressive DeliveryExpose a change to a small slice of traffic or tenants first, watch it, and widen or withdraw it on evidence, so a bad release reaches few customers and reaches them briefly.
- BC-1220.40Packaging & DistributionProduce the installers, images, packages and store submissions that customers who do not run the hosted product need, and keep every distributed artifact signed and traceable.
- BC-1220.50Release CommunicationTell customers, partners and internal teams what changed, what it means for them and what they must do, in time to act on it.