Defining IBM® Rational® design patterns requires some knowledge of Unified Modeling Language (UML) 2.0 elements and object-oriented language concepts. Default Java™ code is provided for the basic pattern model. Pattern libraries, pattern bodies, pattern parameters, and parameter dependencies are expressed as Java classes. Mechanisms are provided for documentation and packaging of the pattern, and the potential distribution, archiving, and retrieval of the pattern.