Many object-oriented frameworks exhibit a high density of design pattern applications. Usually, there are more instances in a framework than there are abstract classes. Yet, only little has been done so far to better cope with pattern density and the resulting interaction and composition problems. We illustrate the problem by describing the design of an object transport service, which provides functionality to copy objects across process boundaries. The service is used by higher-level services like object migration and remote request execution. It is designed and implemented as an object-oriented framework based on the composition of several interlocking design pattern applications. We argue that we need better ways of describing patterns and composing them than available today. We report on describing patterns as role models. This approach eases pattern composition and simplifies framework design. Our experience indicates that a pattern-based framework description using role models m...
Dirk Riehle, Roger Brudermann, Thomas R. Gross, Ka