Responsibility-Driven Design References

Over the last ten years many people have adopted Test-Driven Development, Refactoring and Continuous Integration but often the problems with inflexible and overcomplicated software stem from more basic problems in object-oriented design. There seems to be very little interest in helping people improve these fundamentals.

This is sad because much is known about this and plenty can be done to help people fix the software. I’ve had quite a bit of success using RRC sessions (Roles, Responsibilities and Collaborators) technique. This comes from the Responsibility-Driven Design school of thinking and is something that the original XP team used.

Many people can:

Not so many people can:

The Object Design book makes the case that design is a learned skill rather than something innate. This begs the question how can we train people to be better designers? and what exercises would help?

The (updated) book:

Object Design, Rebecca Wirfs-Brock and Alan McKean, Addison-Wesley, 2002, ISBN 0201379430

Key Papers:

See also: