10600 Westminster Blvd
Westminster, CO 80020
Domain Modeling Using Domain-Driven Design (DDD)
This presentation seeks to provide a solid introduction to the fundamentals of DDD. Learn why modeling a complex business domain in software is so advantageous to your business and ways in which your team can go about delivering software models to give your business a competitive edge.
The philosophy of domain-driven design (DDD) – first described by Eric Evans in his book [of the same name – is about placing our attention at the heart of the application, focusing on the complexity that is intrinsic to the business domain itself. We also distinguish the core domain (unique to the business) from the supporting sub-domains (typically generic in nature, such as money or time), and place appropriately more of our design efforts on the core.
Domain-driven design consists of a set of patterns for building enterprise applications from the domain model out. In your software career you may well have encountered many of these ideas already, especially if you are a seasoned developer in an OO language. But applying them together will allow you to build systems that genuinely meet the needs of the business.
The premise of domain-driven design is two-fold:
- For most software projects, the primary focus should be on the domain and domain logic; and
- Complex domain designs should be based on a model.
Domain-driven design is not a technology or a methodology. It is a way of thinking and a set of priorities, aimed at accelerating software projects that have to deal with complicated domains.
Note: Laptops are not required - there is no hands-on coding for this workshop.
This session is a workshop. Please come prepared.
This workshop consists of lecture and participation exercises.
Note that there is no hands-on coding for this workshop so laptops will not be required. Bring materials for taking notes.
About Paul Rayner
Paul is a seasoned design coach and leadership mentor, helping teams ignite their design skills via DDD and BDD. He gets teams unstuck through intensive coaching workshops and hands-on pair programming, combined with focused one-on-one leadership mentoring. His company Virtual Genius is a software solutions provider, specializing in custom Ruby applications. Paul actively serves the community: co-authoring the upcoming Addison Wesley book, BDD with Cucumber, teaching classes in BDD and DDD, contributing to OSS, and co-leading the DDD Denver Meetup group.
Look for him speaking at user groups, on the No Fluff Just Stuff conference tour in the United States, and at local and international conferences. Paul is from Perth, Australia, but chooses to live, work and play with his amazing wife and two children in Denver. He tweets with an Australian accent at @ThePaulRayner and blogs at thepaulrayner.comMore About Paul »