Wrap Up
Well, that's a pretty encouraging start with DDD. I think by now you probably have gotten a good feeling that you and your team can actually succeed with an advanced software development technique. I agree.
Of course we aren't going to oversimplify things. Implementing DDD takes real concerted effort. If it was easy, everybody would be writing great code, and we both know that just doesn't happen. So get ready. It will be worth it, because your design will be exactly how your software works.
Here's what you've learned so far:
- You've discovered what DDD can do for your projects and your teams to help you grapple with domain complexity.
- You found out how to score your project to see if it deserves the DDD investment.
- You considered the common alternatives to DDD and why using those approaches often leads to problems.
- You've grasped the foundations of DDD, and are prepared to take the first steps on your project.
- You've found out how to sell DDD to your management, domain experts, and technical team members.
- You are now armed with knowledge of how to succeed while facing the challenges of DDD.
Here's where we're going next. The next two chapters are on the all-important strategic design, followed by a chapter on software architectures with DDD. This is really important stuff to get a handle on before you move to the subsequent chapters on tactical modeling.