Delegate a new Project

State the purpose of one system interaction to simplify integration.

The Change

When integrating code, use the Ports and Adapters template with one stated Purpose.

The Value Proposition

Integrating code is difficult. Both sides can have bugs or expect different things from the other. Even more, each problem has its own complexities and nuances. Integrating requires making choices for each nuance and dealing with all the combinations of complexities.

Even if we use a Hexagonal Architecture, there are many integration points and simplifications. This can require a lot of code to build and test at each boundary.

We simplify that by working incrementally. Just like a good manager, we first create an empty project, in our case defined by a Port. We state its clear Purpose, even though it doesn’t do anything yet. Then we will be able to extend the project over time.

Starting with an empty boundary that has a single clear purpose give the following advantages:

  1. Makes it easy to add capabilities incrementally.
  2. Ensures you will get feedback about problems before they start happening.
  3. Rapidly implements a new boundary without requiring deep thinking.
  4. Organizes your boundaries by purpose, making it easy to find the right one for any new need.
Please log in

This content is only available to students. Please log in to access it.