Creating domain specific libraries: a methodology and design guidelines

We present an approach for building libraries of reusable software components that addresses the tension between design-with-reuse and design-for-reuse. The approach is based on a hierarchical model that assumes four levels of reusability. The design guidelines for developing components according to this methodology are summarized and an application demonstrating how the products of a domain analysis technique can be mapped into this hierarchical model is described. The application is a reactive scheduling architecture for manufacturing operations, and the domain analysis technique selected is the feature oriented domain analysis developed by the Software Engineering Institute at Carnegie Mellon University. The main objective of the paper is to establish the connection between the domain analysis products and the different reusable levels identified by the proposed methodology.<<ETX>>