Domain Driven Design: the fundamental solution for long term stable products
Today’s applications are undoubtedly sophisticated and rely on many technologies to do what they do. As developers we focus more on the technical implementation of the software, starting from what language, framework or tool we use for the implementation. This happens because developers are problem solvers and enjoy this part of the job. But, the truth is that a system that doesn’t solve the business need is of no use to anyone, no matter how pretty it looks or how well-architected it is implemented. When we think about a project, there are many things which can delay that project: for example bureaucracy, unclear objective, lack of resources and so on.