11 Intermission: An insurance policy for free
This chapter covers
- A broken system where no parts were broken
- Context mapping to understand what’s going on
- Risk of myopic views of microservices
So far, we’ve covered lots of different ways to use design to make software more secure. We’ve collected designs from different areas, like cloud architecture, Domain-Driven Design (DDD), and reactive systems, where security wasn’t the original focus. The nice thing is that all these designs can be used in ways that increase security as a beneficial side effect. All in all, we’ve covered a lot of ground, and we’ll soon turn to applying these fundamentals to some different scenarios, such as legacy systems and microservices architectures. But before doing that, let’s take a quick break and look at how a system of systems can break without any specific part being broken. We’ll do that by examining a case study of a real-life system.
If you’re in a hurry, you can safely skip this chapter. Otherwise, hang on, it’s a fun story with some interesting details. This is a real-life story about how an insurance company came to give away policies without payment. It’s also about how that disaster could have been avoided.