A Methodology for Building a Repository of Object- Oriented Design Fragments Tae-Dong Han, Sandeep Purao, and Veda C. Storey J. Mack Robinson College of Business Administration, Georgia State University, P.O. Box 4015, Atlanta, Georgia 30302-4015 {than,spurao,vstorey}@gsu.edu Abstract. Reuse is as an important approach to conceptual object-oriented design. A number of reusable artifacts and methodologies to use these artifacts have been developed that require the designer to select a certain level of granularity and a certain paradigm. This makes retrieval and application of these artifacts difficult and prevents the simultaneous reuse of artifacts at different levels of granularity. A specific kind of artifact, analysis pattern, spans these levels of granularity. Patterns, which represent groups of objects, facilitate further assembly into what we call design fragments. Design fragments can then be used as reusable artifacts in their own right. A methodology for building a repository of design fragments is presented that consists of core and variant design fragments. The effectiveness of the methodology is assessed by verifying the appropriateness of the design fragments generated through a clustering process. 1. Introduction Reuse involves the design of new systems from prefabricated reusable artifacts [7]. Although a number of reusable artifacts at various granularity levels have been created, they have been less effective than desired. Class libraries and business objects, for example, are difficult to reuse since finding a component that fits into a specific application can be problematic. On the other hand, as the abstraction and granularity of an artifact increases, as found in domain and reference models, a greater degree of modification is required, either to the model or the business process itself. One kind of reusable artifact, analysis patterns [2, 3], represents an opportunity to overcome these problems. Although patterns themselves are fairly small and at a high level of abstraction, they can be used and synthesized to create a larger-grained, specific reusable artifact, which may, in turn, be supplemented with analysis patterns. Our prior research presented an approach to reuse-based design with analysis patterns [8, 9, 10]. The results suggested that analysis patterns can present many challenges to the designers, such as searching for appropriate patterns, instantiating them in the problem domain, and synthesizing them to create an initial design. In this research, we address these challenges by creating a larger and more specific artifact, that we call a design fragment. The analysis patterns provide us with a means of structuring these design fragments in an indexed repository so that they can be easily accessed in new design situations. The objective of this research, therefore, is to: J. Akoka et al. (Eds.): ER’99, LNCS 1728, pp. 203-217, 1999. c Springer-Verlag Heidelberg Berlin 1999