[[blog/video-event-sourcing-you-are-doing-it-wrong-david-schmitz.md|Video_ Event Sourcing You are doing it wrong by David Schmitz]] [[article-effective-aggregate-design-part-i-modeling-a-single-aggregate-vaughn-vernon.md|Article_ Effective Aggregate Design Part I_ Modeling a Single Aggregate - Vaughn Vernon]] [[article-effective-aggregate-design-part-i-modeling-a-single-aggregate-vaughn-vernon.md|]][[paper-effective-aggregate-design-part-ii-making-aggregates-work-together.md|Paper_ Effective Aggregate Design Part II_ Making Aggregates Work Together]] [[paper-effective-aggregate-design-part-ii-making-aggregates-work-together.md|]][[video-effective-aggregate-design-part-ii-making-aggregates-work-together.md|Video_ Effective Aggregate Design Part II_ Making Aggregates Work Together]] [[paper-effective-aggregate-design-part-ii-making-aggregates-work-together.md|]][[paper-effective-aggregate-design-part-iii-gaining-insight-through-discovery.md|Paper_ Effective Aggregate Design Part III_ Gaining Insight Through Discovery]] [[paper-effective-aggregate-design-part-iii-gaining-insight-through-discovery.md|]][[video-effective-aggregate-design-part-iii-gaining-insight-through-discovery.md|Video_ Effective Aggregate Design Part III_ Gaining Insight Through Discovery]] ![[./resources/article-effective-aggregate-design-vaughn-vernon.resources/unknown_filename.3.png]]Effective ![[./resources/article-effective-aggregate-design-vaughn-vernon.resources/unknown_filename.1.png]]Aggregate ![[./resources/article-effective-aggregate-design-vaughn-vernon.resources/unknown_filename.2.png]]Design ![[./resources/article-effective-aggregate-design-vaughn-vernon.resources/unknown_filename.7.png]]by ![[./resources/article-effective-aggregate-design-vaughn-vernon.resources/unknown_filename.5.png]]Vaughn ![[./resources/article-effective-aggregate-design-vaughn-vernon.resources/unknown_filename.6.png]]Vernon Posted on: 10-1-2011 ![[./resources/article-effective-aggregate-design-vaughn-vernon.resources/unknown_filename.4.png]]Aggregates are one of the more challenging aspects of tactical modeling. Developers often end up with large clusters of objects that do not give good performance and scalability. In this three-part series, Vaughn Vernon walks through some common design pitfalls, discusses the pros and cons of various aggregate modeling choices, and provides rules of thumb to guide modeling of aggregates. He de-emphasizes such concerns as navigation through object graphs and instead focuses on digging out real consistency constraints in the business domain, with tips to help the team sift through the usual pile of competing use-cases. Vaughn’s concrete rules spell out the current consensus view of DDD leaders on the style of aggregates that help place development on a more solid footing. Part I considers the modeling of an aggregate [Read Part I (.pdf)] [[article-effective-aggregate-design-part-i-modeling-a-single-aggregate-vaughn-vernon.md|Effective Aggregate Design Part I_ Modeling a Single Aggregate]] Part II looks at the model and design issues of how different aggregates relate to each other. [Read Part II (.pdf)] [[paper-effective-aggregate-design-part-ii-making-aggregates-work-together.md|Effective Aggregate Design Part II_ Making Aggregates Work Together]] [View Vaughn’s 12-Dec-2011 presentation on Part II at the Denver/Boulder DDD Meetup] [[video-effective-aggregate-design-part-ii-making-aggregates-work-together.md|DDD Meetup - Effective Aggregate Design Part II_ Making Aggregates Work Together]] Part III discusses the discovery process: how to recognize when a design problem is a hint of a new insight, and how different aggregate models are tried and then superseded. [Read Part III (.pdf)] [[paper-effective-aggregate-design-part-iii-gaining-insight-through-discovery.md|Effective Aggregate Design Part III_ Gaining Insight Through Discovery]] [View Vaughn’s 13-Feb-2012 presentation on Part III at the DDD Denver Meetup] [[video-effective-aggregate-design-part-iii-gaining-insight-through-discovery.md|DDD Meetup - Effective Aggregate Design Part III_ Gaining Insight Through Discovery]] Categories: Article, Building Blocks, Featured, Learning DDD, Library Tags: Aggregates, Vaughn Vernon