Summary
In this chapter, we looked at a set of techniques to start transforming architecture principles into working software components. DDD is a pretty complete framework that is used to define objects and the way they interact with each other. It puts a number of clever ideas down on paper, such as layered architectures, patterns, and bounded contexts.
Following this, we moved on to Test Driven Design and BDD. You now understand specific ways of structuring the development of new code and mapping it to business features. Finally, we looked at user story mapping as a way to pick functionalities to implement and link them to tasks and activities.
All of these techniques will be better framed in the next chapter, where we will discuss Agile methodologies, which include some of the practices that we have just discussed.