Now that Agile methods have become mainstream in software development, working code is considered the most important team artifact. There is still a need for modeling. Kenji Hiranabe explores the spaces where modeling fits and plays an important role in this Agile age. With focus on development scaling to multiple teams where a shared understanding of the system’s “Big Picture” becomes essential.
Implementing Domain Driven Design, has brought clarity to an important but little understood area of software design. As a measure of Software Design literature, Vaughn's work is educational and fun. With real world code samples and sage advice, IDDD guides the reader through the sometimes murky waters of DDD and helps them gain the insight required to start a DDD journey of their own.
Domain modelling is a powerful technique that many IT professionals have in their toolkit. Unfortunately a couple of issues with domain modelling have caused it to fall out of favour over the past few years, especially in Agile circles. Two real problems with the approach are that it takes too long, and that it is prone to “analysis paralysis”. This is an approach that addresses these issues.
Five success factors for systematic reuse which help capture domain variations, ease integration, delve deeper into design context, work effectively as a team, and manage domain complexity.
In this article, author Alberto Brandolini discusses the many sides of bounded contexts and how to use them to build a context map to support key decisions in a software development project. 6
In this article, Srini Penchikala discusses Domain Driven Design from a practical stand-point. The article looks at architectural guidelines and best practices that can be used in a DDD project. 53