Geeks With Blogs
Blog Moved to Blog Moved to
For those like me interested in Domain Driven Design (DDD), I have worked to compile a list of videos and podcasts to learn more about it.  For those unfamiliar with DDD, the idea was founded by Eric Evans in his 2004 book, Domain-Driven Design: Tackling Complexity in the Heart of Software.  Jimmy Nilsson followed this with a very nice book using C# called Applying Domain-Driven Design and Patterns: With Examples in C# and .NET that is well worth reading. 

DDD was founded on two principles:
  • For most software projects, the primary focus should be on the domain and domain logic (as opposed to being the particular technology used to implement the system)
  • Complex domain designs should be based on a model.
Also, DDD should use a common language for describing system requirements that works for both business analysts and software developers alike.  DDD also includes the design patterns such as the following:
  • Entities - An object in the domain model that is not defined by its attributes, but rather by a thread of continuity and identity.
  • Value Objects - An object that has no conceptual identity. These objects describe a characteristic of a thing.
  • Repository - methods for retrieving domain objects should delegate to a specialized repository object such that alternative implementations may be easily interchanged.
  • Factory - methods for creating domain objects should delegate to a specialized factory object such that alternative implementations may be easily interchanged.
  • Service - when an operation does not conceptually belong to any object. Following the natural contours of the problem, you can implement these operations in services.
Ok, now that the introduction is out of the way, onto the links and videos:
  • Eric Evans on Domain Driven Design
    Ever since Eric Evans wrote the book Domain-Driven Design in 2004 he has been a significant voice advancing domain modeling and design concepts. In this interview with Floyd Marinescu he talks about some of the recent refinements in Domain-Driven Design and how people are advancing the field today.
  • Eric Evans on .NET Rocks
    Eric Evans offers his insights on good software development using Domain Driven Design techniques.

  • Eric Evans on DDD: Strategic Design
    This talk introduces two broad principles for strategic design. 'Context mapping' addresses the fact that different groups model differently. 'Core domain' distills a shared vision of the system's "core domain" and provides a systematic guide to when "good enough" is good enough versus when to push for excellence.

  • Eric Evans on DDD: Putting the Model to Work
    This talk will outline some of the foundations of domain-driven design:How models are chosen and evaluated;How multiple models coexist;How the patterns help avoid the common pitfalls, such as overly interconnected models;How developers and domain experts together in a DDD team engage in deeper exploration of their problem domain and make that understanding tangible as a practical software design.

  • Eric Evans - Three Practical Steps Toward Domain-Driven Design (torrent)
    Eric Evans has a talk from JavaZone 2005 available via torrent with three practical steps toward DDD.

  • Jimmy Nilsson on Domain Driven Design
    Jimmy Nilsson, author of 'Applying Domain-Driven Design', talks about the value proposition of Domain Driven Design and how DDD integrates with Agile. Jimmy also answers questions on OOD vs. DDD and the symbiotic relationship of domain specific relationships with DDD.

  • Software Engineering Radio - Episode 8 - Eric Evans
    In this interview, Eric talks about the essential building blocks of domain-driven design as well as about a set of best practices on how to address complex projects. In a third part, he elaborates on the relationship of domain-driven design and MDSD/MDA.

  • .NET Rocks! - Jimmy Nilsson on Domain Driven Design
    In this episode, Jimmy Nilsson gets into Domain Driven Design, and how it relates to Test Driven Development, extreme programming, and the future of programming techniques in general.

  • Aspects of Domain Model Management (Not a video, but interesting)
    Using a domain model is rarely as easy as just creating the actual domain model classes and then using them. Soon enough one discovers that sizable amounts of infrastructure code will also be required in support of the domain model.

  • Domain Driven Design Yahoo Group
    Most of your DDD related questions can be answered here.
So, as you can see, there is a lot to read and listen to.  I know for my long rides to and from work that they are quite good listens.  Develop, mentor and inspire!

kick it on Posted on Friday, December 28, 2007 12:06 PM ALT.NET , Domain Driven Design | Back to top

Comments on this post: Domain Driven Design Videos & Podcasts & Links

# re: Domain Driven Design Videos & Podcasts & Links
Requesting Gravatar...
Thanks for the post
Left by Russell on Mar 06, 2009 12:19 PM

# re: Domain Driven Design Videos & Podcasts & Links
Requesting Gravatar...
Because I'm the new comer to DDD, so this is the best stuff for me. Thank a lot!
Left by thangchung on Jan 19, 2010 10:35 PM

# re: Domain Driven Design Videos & Podcasts & Links
Requesting Gravatar...
Thanks for the post. Are there any sample applications available with source code in .Net?
Left by Pranjal R Nigam on Feb 18, 2012 12:55 PM

Your comment:
 (will show your gravatar)

Copyright © Matthew Podwysocki | Powered by: