Software Releasability: Scaling Continuous Delivery
Organisations are starting to recognise the need to not only maintain client -facing systems running 24x7 in production but also keep them releasable to production 24x7. To meet this new demand on software development & testing, we need to put in place a reliable delivery pipeline.
In practice, this means our delivery system needs to follow the same good practices as our software does, incorporating the ability to test changes to a pipeline in isolation, to test for regressions, to understand use cases from both technical and non -technical stakeholders, to decouple the architecture, to reduce the blast radius of failures, to version control our configuration (pipeline-as-code), to manage tools integration, and to aggregate logging & monitoring.
In this workshop, Manuel Pais will give insights into software releasability and will explain proven patterns and techniques for ensuring software is always releasable, incorporating a delivery chain that is resilient to disasters, scalable and with minimum time to recover from errors. He’ll show you how to treat a pipeline as a production-grade system in itself, while taking care of the quality of the system with the same rigor as before.
Manuel will also explain how to continuously ensure not only that the pipeline system serves its core purpose of safely progressing our client-facing systems from commit to production, but also that its performance, reliability and usability are of the highest standard.
From practical experience, he will present a set of techniques for treating a delivery chain as a first-class citizen in the value stream, including how to compose, scale and monitor a delivery system. Practical demos included!
He’ll be covering the following topics:
- Release often and recover quickly.
- Build and release from zero to production.
- Treat a pipeline as a value stream map.
- Treat a pipeline as a production system, including:
- Pipeline usability.
- Aggregated logging.
- Blue/green deployment.
- Monitor performance.
Participants of this workshop learn how to:
- Understand why software releasability is important for modern software systems.
- Gain practical experience on techniques to treat the delivery chain as a first -class citizen in the value stream.
- Learn about testing, scaling and monitoring the delivery system while maintaining high quality.
Testers, Developers, Project Managers, Product Owners Scum Masters and QA or Development Managers that are interested in understanding how to release software 24x7, incorporating techniques to build quality in our delivery pipelines, just as we built in quality in our production systems.
Manuel Pais, MS in Software Engineering by Carnegie Mellon University, is an independent DevOps and Continuous Delivery consultant, focused on teams and flow first, practices and tools second.
DevOps practitioner with a diverse background of 18 years as developer, build manager, test engineer and QA lead. Manuel has helped large organizations in finance, legal, and manufacturing adopt test automation and continuous delivery, as well as understanding DevOps from both technical and human perspectives. He has worked on a range of technologies (Java, .Net, web, mobile) and industries (banking, telecom, legal, manufacturing, defense and aviation).
Manuel is co-author of the upcoming book "Team Guide to Software Releasability" and co - curator of the well-known DevopsTopologies.com.
Manuel is also the DevOps lead editor at InfoQ.com, occasional conference speaker and regular contributor for publications including InfoQ, DZone and TechBeacon.
Tweets @manupaisable and blogs at medium.com/@manupaisable.