We all use heuristics (even if we haven’t articulated them to others) to discover, understand, explore, create, modify, or extend complex software systems. Billy Vaughn Koen, in Discussion of the Method: Conducting the Engineer’s Approach to Problem Solving, defines a heuristic as, “anything that provides a plausible aid or direction in the solution of a problem but is in the final analysis unjustified, incapable of justification, and potentially fallible.

-Rebecca Wirfs-Brock

Domain-Driven Design Heuristics is a community driven site to document and discuss about Design Heuristics. For now we divide into two different heuristics:

If you want to submit your own heuristics go to Submit Heuristics for explanations.

If you have any questions please feel free to contact: kenny@baasie.com