Let’s face it, Domain Driven Design is appearing everywhere and many claim that they are either using it or that it does not work at all.
Many concepts but what really matters is understanding the Domain, implementing it as if it is a side product and might not be feasible for all projects. Some projects are very technical and have a simple domain, while others have very complex domain and somewhat obscure technical requirements.
Where does it make sense to do full Domain Driven Design then? APIs are one of the prime examples as getting the interface wrong will probably make it harder down the road. But for this it should be designed for interactions, not for what information must be passed around but what will end users or developers need to perform.
A second example would be whenever there is a Knowledge base or existing documented domain. Healthcare has this characteristic via HL7. It might be a hard thing to understand but the domain is really complex and short of natural language having all information codified is a hard problem. This is not a simple CRUD system, but something that even deciding if a value can be NULL is a hard topic.
Then there are systems where the characteristics are completely different such as whiteboards like Miro where there are layers and layers of abstraction; are we looking at the interactions of the end user or are we looking at the final diagram that might represent a mind map?
Also there are real time monitoring systems and dashboards like stock trading engines monitors or observability dashboards. The rate of change and volume of information might make the domain simple but the implementation very hard.
Just ranting again.