Chapter 6. Activities and Environments

This chapter takes a quick look at some of the testing and proving activities involved in the development lifecycle, and some potential environments where they can be carried out. You can use this information to flesh out tooling and configuration requirements, as well as to add to the testing and deployment approach, essentially working backwards from the production environment.

Once the system (or a particular release) is in live service, the live production environment is essentially deemed out-of-bounds for any testing activities, unless they are carried out during periods of scheduled down-time. Many different types of testing and proving activities are performed on a project prior to "go-live," and these include functional testing, technical testing, and acceptance testing. Each activity requires a fit-for-purpose environment where it can be carried out without impacting the live service, especially if you are developing multiple releases. To reduce costs, a single environment might even be used to perform multiple activities. However, the various activities would generally require careful planning and scheduling to avoid interfering with each other. Furthermore, each activity will have its own specific environment requirements that are driven by the individual scenarios being tested and proven. For example, to test the cluster failover, a clustered environment is required. To effectively test and gauge the overall performance characteristics ...

Get Design – Build – Run: Applied Practices and Principles for Production-Ready Software Development now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.