<<< Previous speaker next speaker >>>

Eric Evans, Author of Domain Driven Design

 Eric  Evans

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 has been deeply involved in applying Agile processes on real projects.

Out of this range of experiences emerged the synthesis of principles and techniques shared in the book "Domain-Driven Design," Addison-Wesley 2003.

Eric now leads Domain Language, Inc., a consulting group which coaches and trains teams to make their development more productive and relevant through effective application of domain modeling and design.

Software Passion: Breaking My Own Domain Models

Website: http://www.domainlanguage.com/

Books: Domain-Driven Design: Tackling Complexity in the Heart of Software

Presentation: "Acknowledging CAP at the Root -- in the Domain Model"

Time: Thursday 14:50 - 15:40

Location: Grand Ballroom A


The techniques used to distribute software, scale it through concurrency or make it tolerant of latency are hobbled when, deep inside, the business logic is based on inappropriate assumptions of consistency. Yet it is common to do domain modeling and design business features heedless of these issues, and then patch things up after the fact with technical tricks. In DDD, we consider the the CAP tradeoffs to be central concerns of the design, and we incorporate into our domain models explicit assertions about the boundaries of consistency. When deployment reveals that additional or different CAP tradeoffs must be made, we go back to the root of the problem and modify the  domain model to reflect those tradeoffs explicitly. In this talk, I’ll discuss three DDD patterns that help us address CAP tradeoffs: Aggregates, Domain Events and Bounded Contexts. 

I will not be able to explain these patterns in depth, but I hope to give a sense of the nature of these conceptual tools and where they come into play in designing practical systems constrained by CAP.

Training: "Domain Driven Overview"

Track: Tutorial

Time: Monday 09:00 - 16:00

Location: Seacliff B

- Build your awareness of the basic concepts and value of Domain-Driven Design (DDD) in one day.
- Understand what DDD is and when and why it is valuable to software intensive organizations.
- Overview the basic principles and processes needed develop the useful sort of models, tie them into implementation and business analysis,
   and place them within a viable, realistic strategy.
Any person seriously involved in software development, including developers, technical leaders, analysts, development managers and non-technical business experts.
Recommend some experience with projects developing complex software systems. Familiarity with iterative development processes.

Morning: Ubiquitous Language & Model Discovery
•  What is DDD?
•  What makes a model useful to a software project?
•  Cultivation of a model-based language to connect domain experts, developers, and the code itself
•  Exploratory interaction of technical and business people in the modeling process
•  Aggregates: A taste of rigor. This pattern addresses, at the model level, the scaling of systems in complexity, performance, and distribution.
Afternoon: Strategic Design
•  Distilling the Core Domain: Focusing fine modeling and design into those subdomains where the organization distinguishes itself
•  Clarifying a shared vision
•  Context Mapping: A pragmatic approach to dealing with the diversity models and processes on real large projects with multi-team/multi-subsystem development.
•  Combining the Core Domain and Context Map to illuminate Strategic Design options for a project