Add Requirements to the Project

Add capabilities so that the project does something when I ask.

The Change

When you need something new from the outside world, add one new responsibility to the correct boundary.

The Value Proposition

Our code will need lots of different things from lots of different external systems. Often we build these integrations as one phase. But that big-bang delivery approach creates schedule problems. Each part that we implement after our code delays our release. Each part that we implement first will need to be updated when we build our code. And those updates are error-prone.

A better solution is to incrementally build the integration alongside our code. We have already defined the Ports, organized by their Purpose. This shift will give a clear way to add one new responsibility to a Port.

Adding responsibilities as we need them gives the following advantages:

  1. Enables incremental release for your code.
  2. Defines each responsibility fully right before implementation.
Please log in

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