How Does This Help Me Build Maintainable Software?
With incoming and outgoing ports acting as gatekeepers between the layers of our application, they define how the layers communicate with each other and thus whether and how we map between layers.
With narrow ports in place for each use case, we can choose different mapping strategies for different use cases, and even evolve them over time without affecting other use cases, thus selecting the best strategy for a certain situation at a certain time.
This selection of mapping strategies per situation certainly is harder and requires more communication than simply using the same mapping strategy for all situations, but it will reward the team with a codebase that does just what it needs to do and is easier to maintain, as long as the mapping guidelines are known.