SOLID Principles, from Code to Systems
Starting from this chapter, we are going to step away from the theoretical part and, while we are not yet starting to code (this will start in Chapter 13), we will start applying the theory to designing a small information system made of several applications. We will decompose the different functions, show how they help produce business process outcomes and create the software behind these functions. To do so, we will design the different components and the API contracts for the services involved, and think of how the data should be designed and governed. And in Chapter 13, we will use all of this design phase to actually implement the sample information system.
Of course, this information system will be reduced in perimeter and complexity, but the exercise has been designed to include most of the important decisions that should be made. You will find strict responsibility separation, nice separation between processes and functions, decoupling...