Domain-driven design (DDD) focuses on what matters in enterprise applications: the core business domain. Using object-oriented principles, you can develop a domain model that all team members-including business experts and technical specialists-can understand. Even better, this model is directly related to the underlying implementation.
But if you've tried building a domain-driven application then you'll know that applying the DDD principles is easier said than done. Naked Objects, an open-source Java framework, lets you build working applications simply by writing the core domain classes. Naked Objects automatically renders your domain object in a generic viewer--either rich client or HTML. You can use its integration with Fitnesse to test-drive the development of your application, story-by-story. And once developed, you can deploy your application either to the full Naked Objects runtime, or within your existing application infrastructure.
In this book, Dan Haywood first gives you the tools to represent your domain as plain old Java objects, expressing business rules both declaratively and imperatively. Next, you'll learn the techniques to deepen your design while keeping it maintainable as the scope of your application grows. Finally, you'll walk through the development practices needed to implement your domain applications, taking in testing, deployment, and extending Naked Objects itself. Throughout the book, you'll build a complete sample application, learning key DDD principles as you work through the application step by step. Every chapter ends with exercises to gain further experience in your own projects.
Through its focus on the core business domain, DDD delivers value to your business stakeholders, and Naked Objects makes using DDD easy to accomplish. Using Naked Objects, you'll be ready in no time to build fully featured domain-driven applications.
Dan Haywood started his IT career in 1989 working on big systems development with Accenture (then Andersen Consulting). After 5 years working on two big systems, he decided to stay technical and moved to Sybase UK. There he worked for 4 years as a senior consultant the Sybase ASE RDBMS, taking in multiple roles from project manager to performance-and-tuning specialist.
In 1998 Dan went freelance, and has since developed his interests in object-oriented technologies (Java, .NET, Naked Objects), tools (TogetherJ) and agile development. He also likes to keep up his Sybase skills up-to-date; the combination of strong Java and also RDBMS skills seems to be pretty rare.
Dan's latest initiative is working on Apache Isis: moving the Naked Objects framework (and the sister projects that he wrote for his 'Domain Driven Design' book) into the Apache Software Foundation. Isis is now in the Apache incubator.
To date Dan has authored or co-authored four books. Every time he says "never again"... only to forget several years later.
Dan is married with one daughter; together they all live in Oxfordshire with two elderly dogs.




