![]() |
![]() |
Learn to put the domain model to work.
Finding and exploiting domain models is key to success with large software systems. By cultivating a strong connection between the language used by experts, users, and developers, the right kind of models can dramatically accelerate the process of translating the customers' needs into working software. Strong domain modeling coupled with programming best practices such as exploiting design patterns, refactoring, and test-driven development yield a principled yet practical approach to the development of large software systems.
This intensive course will aid participants in striking a healthy balance between digging into their subject matter and addressing technological issues, which, while unavoidable, cannot be allowed to dominate the development process for commercially viable systems.
We weave together lecture, discussion and classroom exercises, including hands-on coding projects. In discussions, attendees have the oportunity to discuss their own experiences and relate their own work to the principles and techniques presented in the class.
Basic knowledge of object modeling and design.
We encourage non-technical managers and analysts to attend. A mixed class
is ideal. To make the code exercises work, we only need half of the attendees
to have programming skills on the target platform (Java or C#).
Some exposure to medium to large-scale software development in a multi-team environment. Familiarity with J2EE, .Net or other framework for large scale application development.
In order to tune the class to the level and circumstances of the participants, we will ask some of your developers to fill out a brief (10-15 minutes) on-line questionnaire to give us an idea of their proficiency level in the class prerequisites. We will also have the team leader answer a few questions about the project's goals, history and processes.
Since it is essential that participants be free to discuss their real project challenges in the classroom, we make any needed nondisclosure agreements prior to the class.
Finally, we recommend buying each attendee a copy of the book, Domain-Driven Design, as part of the package. This is the text book for the course and makes a very valuable reference in the following months.![]() |
![]() |
This class will have a much greater impact on the project if it is followed up with mentoring, to help team members anchor it in their own work, and to help them over the practical obstacles that frustrate, and frequently stop, people doing these things for the first time. Valuable new ideas fail to take hold for lack of some practical detail.
We recommend at least two weeks of hands-on work with the team, starting no more than 2 weeks after the end of the class. A typically ratio is at least one mentor per 10 developers (or one per team, whichever is more).
more »![]() |
![]() |
Note: This course is offered in two forms: one for Java/J2EE; one for C#/.Net