Technical Program
  Invited Speakers
  Technical Papers
  Practitioner Reports
Educators' Symposium
Doctoral Symposium
Student Research Comp.
Turing Lecture
Social Events
Week at a Glance
Final Program (1.5M .pdf)

Find in Program


view, help

"Domain-Driven Design"
Object-Oriented Programming, Systems, Languages and Applications
Home    Program    Housing & Transportation    Registration    Submissions    Wiki    Maps
  > Technical Program > Tutorials > All Tutorials

 : Tuesday Afternoon Tutorials (1:30 - 17:00) : Generative Programming : Tuesday : Methodologies

Domain-Driven Design

Meeting Room 8
Tuesday, 13:30, half day


Eric Evans, Domain Language, Inc.:  Eric Evans is a specialist in domain modeling and design in large business systems. Since the early 1990s, he has worked on many projects developing large business systems with objects and, since 1999, has been deeply involved in three projects committed to the Extreme Programming process (XP), and has trained teams in the Extreme Programming process. Out of this range of experiences have emerged the synthesis of principles and techniques shared in the book "Domain-Driven Design," Addison-Wesley 2003.
Ralph Johnson, University of Illinois:  On the faculty of the Department of Computer Science at the University of Illinois. Leader of the UIUC patterns/Software Architecture Group and the coordinator of the senior projects program for the department. Professional interests cover nearly all things object-oriented, especially frameworks, patterns, business objects, Smalltalk, COM and refactoring.

Tutorial number: 42

Large information systems need a domain model. Development teams know this, yet they often end up with little more than data schemas. 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 focus on three topics:

  1. The conscious use of language on the project to refine and communicate models and strengthen the connection with the implementation.
  2. A subtly different style of refactoring aimed at deepening model insight, in addition to making technical improvements to the code.
  3. A brief look at strategic design, which is crucial to larger projects. These are the decisions where design and politics often intersect.

The tutorial will include group reading and discussion of selected patterns from the book "Domain-Driven Design," Addison-Wesley 2003, and reenactments of domain modeling scenarios.

Advanced: Basic object-oriented modeling. Ability to read UML. Complex software development experience helpful. Familiarity with Agile development or Extreme Programming helpful.