I'll add Dependency *Inversion* to Ilja's suggestion.
HERE is something I did for my team because it is important to "plug in" new products and user groups for our system without changing the core. See if you spot Dependency *Injection* in the
testing section. I didn't call it out by name because I hadn't heard of it yet when I made this.
If this kind of research & conversation grabs your interest, scroll on down to the OO, UML, etc. forum. We love this stuff down there.
[ June 07, 2005: Message edited by: Stan James ]