On the boundaries of the software system
Each software system has its boundaries: the places where input comes from and output is written to. If you follow a model like Hexagonal architecture (also known as Ports and Adapters) or Clean architecture, then you know that you need to introduce adaptation layers in the software. These layers serve a number of purposes. For…