Architecting for Failure in a Containerized World
- Operations staff accept and operate new and changed software in production and are responsible for its service levels.
- Infrastructure engineers provide the infrastructure services the system relies on.
- Developers are responsible for the software, its smooth transition to production, and, ultimately, its success.
- Testers verify that both the software and the production environment as a whole will operate correctly.
- Communicators explain the system's operation to clients, in the context of developing a product for installation on client premises.
- Assessors must be satisfied that the risks of operating the system in production are acceptable and managed.
1. G. Kim, K. Behr, and G. Spafford, The Phoenix Project: A Novel about IT, DevOps, and Helping Your Business Win, IT Revolution Press, 2014.
2. L. Bass, I. Weber, and Z. Luming, DevOps: A Software Architect's Perspective, Addison-Wesley, 2015.
3. N. Rozanski and E. Woods, Software Systems Architecture, Addison- Wesley, 2011.
4. N. Rozanski and E. Woods, "The Development Viewpoint", Software Systems Architecture, 2016;
5. B. Forrest, "Bing and Google Agree: Slow Pages Lose Users", O’Reilly, 23 June 2009;
6. D. Farley and J. Humble, Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation, Addison-Wesley, 2010.