Impact of Architecture on Continuous Delivery
May 2014 • Presentation
Presentation at SATURN 2014. The speaker has been leading the construction of a SaaS application. This presentation highlights key lessons learned.
Software Engineering Institute
The speaker has been leading the construction of a SaaS application. Guided by lean principles and the need to release small, experimental changes, continuous delivery was a prerequisite. When the project began, we knew that DevOps practices would be required to achieve continuous delivery—that is, full automation of building, testing, configuration, and deployment. But we did not fully appreciate the need for an architecture that lends itself to small batches. Lean principles state that batch size impacts the ability to flow from concept to delivery. A greater up-front appreciation for the impact of architecture on batch size—and, in turn, flow—would have led us to make deeper investments in certain parts of the architecture sooner. This presentation highlights key lessons learned in the following areas:
- aspects of architecture and design that impact batch size
- strategies for minimizing batch size in an evolving architecture
- other related design techniques that impact flow
It is not enough to have great DevOps. Architecture significantly impacts the likelihood of achieving continuous delivery goals. This session explains how specific investments in the architecture and design can decrease batch size. Smaller batch size increases flow. And the goal of lean, continuous delivery is the predictable, fast flow of improvements into user hands.