https://levelup.gitconnected.com/what-means-domain-in-the-context-of-domain-driven-design-6d604685f5ca