Tutorial: "Domain-Driven Design"
Time: Monday 09:00 - 16:00
Location: Stanford
Large information systems need a domain model. Development teams know this, yet they often end up with little more than data schemas which do not deliver on the productivity promises for object design. This tutorial delves into how a team, developers and domain experts together, can engage in progressively deeper exploration of their problem domain while making that understanding tangible as a practical software design. This model is not just a diagram or an analysis artifact. It provides the very foundation of the design, the driving force of analysis, even the basis of the language spoken on the project.
The tutorial will look at both tactical and strategic issues. Tactically, we will examine the use of language on the project to refine and communicate models and strengthen the connection with the implementation, and iterative redesign and refactoring aimed at deepening model insight (in addition to making technical improvements to the code). Strategically, we will look at context mapping and distilling the core domain. These are the decisions where design and politics often intersect.
The tutorial will include presentation and discussion of selected patterns from the book "Domain-Driven Design," Addison-Wesley 2004, and reenactments of domain modeling scenarios.