Aggregate-Oriented Modeling with DDD and NoSQL
Many of the problems encountered in scaling, parallelizing and distributing systems that tend to be addressed in ad-hoc ways are actually deeply connected with the manner in which the business domain has been modeled. Domain-Driven Design (DDD) has rich modeling resources for tackling concurrency, transactional and distribution boundary issues within the domain model itself, enabling teams to be more effective in dealing with business complexity and change.
Learn about how aggregates can enrich your domain models, improve system performance and loosely couple your systems. We will give examples of how aggregate design choices are manifested in NoSQL data schemas, focusing particularly on MongoDB, and the consequences of making these choices for domain modeling, performance, and scaling.
About Paul Rayner
Paul is a seasoned design coach and leadership mentor, helping teams ignite their design skills via Domain-Driven Design (DDD) and Behavior-Driven Development (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, provides training and coaching in collaborative design for agile teams. Paul actively serves the community: teaching classes in BDD and DDD, contributing to OSS, and co-leading the DDD Denver Meetup group.
Look for him speaking at user groups and at local and international conferences. Paul is from Perth, Australia, but chooses to live, work and play with his wife and two children, in Denver, Colorado. He tweets with an Australian accent at @ThePaulRayner and blogs at thepaulrayner.com
More About Paul »