"As Alberto Brandolini would say, a profitable company's Core Domain is always complex. When we develop software system for a company Core Domain, we generally find one of these two cases:
(a) changes in requirements are implemented quickly and easily, or
(b) changes in requirements are delivered late, with bugs, or are met by programmers with ""sorry, it can't be done!""
The difference between these two cases lies almost certainly in MODELLING. In case (a), the system contains a MODEL of the business domain. In case (b), it's just a bunch of procedures. Now, the interesting thing is that MODELLING is not just for programmers! The model of the business should be built by both business experts and developers, working together.
Would you like to get a taste of how to do it? Would you like to try it? In this lab, we'll develop domain models for a simple but fun domain, using the time-honored CRC technique. You'll then be able to teach something to many DDD experts!"
I help organizations that write software to become more effective. I do coaching, training and mentoring on agile methods, Extreme Programming, Scrum and plain old software engineering.