Any org that designs a system will produce a design whose structure is a copy of the org's communication structure. - M. Conway #conwaysLaw
many times in this situation especially #legacySystems doing modernization in the enterprise, you get different teams with different understandings and povs of the system i.e. diff #domainmodels trying to integrate a large system
we got one system that follows one model, and our system follows our model, what can we do to keep everything vibing the right way?
💡 we need a mechanism for translating from that domain model, to ours --- so we create an #antiCorruptionLayer between ours and the other system
this is where for example we could define (properly domain named) Service classes for each of whatever functions we need from the other system
these would translate from one language to the other using our #ubiquitousLanguage
then we could create a class for jumping through the technical hoops needed for the actual connection/ communication with the other system .. this would prolly be another service off of the #pureFabrication pattern
at the end of the day, introducing this ACL would keep our application/model from having to interact directly with the other's, maintaining a clean, clear UL and domain model.
and we all live happily ever after - the end 🤓🤪🙏🏾
#ddDesign #ddDesignRefresher #NotesToAYoungerMe
Share this Scrolly Tale with your friends.
A Scrolly Tale is a new way to read Twitter threads with a more visually immersive experience.
Discover more beautiful Scrolly Tales like this.
