Hexagonal Architecture

The hexagonal architecture, or ports and adapters architecture, is an architectural pattern used in software design.