Chapter 5. Delivery Is Still an Experiment
This chapter is about all the ways that Agile delivery enables business agility. We explore how DevOps and Continuous Delivery (CD) enables endless change, making it possible to run continuous experimentation without dramatic consequences. Then, we look at how delivery teams embrace the unknown at scale by using practices like evolutionary architectures and microservices. We’ll see similar patterns of thinking as explored so far, but this time applied to how we build things instead of what things to build.
Until now, we’ve focused on customer value, identified opportunities, tried many options, embraced a learning mindset, and refined our vision and strategy to get there. You’d be forgiven for assuming that this means building working solutions at scale is merely an engineering challenge. We have validated what to build, now we just need to build it.
Software is still an experiment—just a really expensive one. Having delivery teams writing code and deploying working software in no way suggests that things won’t change. But it does mean we’re probably spending a lot more money to learn what is and isn’t working.
So, we need ways of building things that are dynamic and can adapt to change. This isn’t just about pivoting. It’s also about scaling and evolving solutions over time. If we accept that today’s solution might be different than tomorrow’s, we want to create it in a way that:
is fast and economical to meet immediate needs; ...