Hexagonal design: Outside In ? Inside Out ?
https://gist.github.com/corlaez/32707a1c41485d056c00251206435c89
Outside In ? Inside Out ?
outside
outside
outside
https://gist.github.com/corlaez/32707a1c41485d056c00251206435c89
Outside In ? Inside Out ?
outside
outside
outside
outside
outside
outside
https://gist.github.com/corlaez/32707a1c41485d056c00251206435c89
Outside In ? Inside Out ?
outside
outside
outside
outside
outside
outside
INSIDE
Outside In ? Inside Out ?
Ingoing
(driver)
Ingoing
Ingoing
Outgoing
(driven)
Outgoing
Outgoing
CORE
DOMAIN
Ingoing
(driver)
Ingoing
Ingoing
Outgoing
(driven)
Outgoing
Outgoing
DOMAIN
Go with the Flow
Ingoing
(driver)
Ingoing
Ingoing
Outgoing
(driven)
Outgoing
Outgoing
DOMAIN
Design with the Flow
1
(1)
Driven Ports designed upon
the UI/UX, as it drives the
experience and the needs
Ingoing
(driver)
Ingoing
Ingoing
Outgoing
(driven)
Outgoing
Outgoing
DOMAIN
Design with the Flow
1
(1)
Domain-Driven Designed REST APIs
Ingoing
(driver)
Ingoing
Ingoing
Outgoing
(driven)
Outgoing
Outgoing
DOMAIN
Design with the Flow : 1, 2
1
(2)
Domain deals with invariants
(domain logic)
and Ubiquitous Language
(therefore, models)
2
Ingoing
(driver)
Ingoing
Ingoing
Outgoing
(driven)
Driven
Outgoing
DOMAIN
Design with the Flow : 1, 2, 3 !
1
(3)
Driven Ports are passive, they should be
adapted from the Use Cases
(instead of imposing their constraints)
2
3

Atelier Mob Programming_ tester dans l'hexagone, Adapters et Containers.pdf