Accelerating the successful reuse of problem solving knowledge through the domain lifecycle

The inability of software reuse to reach its full potential lies partially in the product-centric way in which we view software development. Methods are needed that help us reason about product families and degrees of support that can be offered for problem domains. This paper uses a "domain lifecycle" to formalize a process in which increasing levels of formality can be provided as a domain matures. The first step in this process is to collect and disseminate project experiences that can accelerate the process of identifying and refining application domains with significant impact in a software development organization. This approach facilitates the reuse of a broad spectrum of knowledge at multiple levels of formality. Based on empirical investigations of a software development organization, a prototype of a case-based organizational memory repository for software development practices is presented and assessed for its impact on reusing software development knowledge.

[1]  Gerhard Fischer,et al.  Supporting Software Designers with Integrated Domain-Oriented Design Environments , 1992, IEEE Trans. Software Eng..

[2]  Fred P. Brooks,et al.  The Mythical Man-Month , 1975, Reliable Software.

[3]  David R. Schwartz,et al.  The use of guidelines in interface design , 1991, CHI.

[4]  Ted J. Biggerstaff,et al.  The library scaling problem and the limits of concrete component reuse , 1994, Proceedings of 1994 3rd International Conference on Software Reuse.

[5]  Larry Kerschberg,et al.  Domain modeling for software reuse and evolution , 1995, Proceedings Seventh International Workshop on Computer-Aided Software Engineering.

[6]  Chris F. Kemerer,et al.  Now the learning curve affects CASE tool adoption , 1992, IEEE Software.

[7]  Guillermo Arango,et al.  A process for consolidating and reusing design knowledge , 1993, Proceedings of 1993 15th International Conference on Software Engineering.

[8]  Scott Henninger,et al.  An Organizational Learning Approach to Domain Analysis , 1995, 1995 17th International Conference on Software Engineering.

[9]  Charles W. Krueger,et al.  Software reuse , 1992, CSUR.

[10]  William J. Tracz Collected confessions of a used program salesman - institutionalizing software reuse , 1995 .

[11]  Colin Potts,et al.  Software-engineering research revisited , 1993, IEEE Software.

[12]  Terry Bollinger,et al.  Making reuse cost-effective , 1991, IEEE Software.

[13]  Victor R. Basili,et al.  A reference architecture for the component factory , 1992, TSEM.

[14]  Scott Henninger,et al.  A framework for developing experience-based usability guidelines , 1995, Symposium on Designing Interactive Systems.

[15]  Scott Henninger,et al.  Using iterative refinement to find reusable software , 1994, IEEE Software.

[16]  Nicholas J. Belkin,et al.  Retrieval techniques , 1987 .

[17]  W. Myers Taligent's CommonPoint: The Promise of Objects , 1995, Computer.

[18]  Scott Henninger,et al.  Information access tools for software reuse , 1995, J. Syst. Softw..

[19]  Brian R. Gaines Social and cognitive processes in knowledge acquisition , 1989 .

[20]  Loren G. Terveen,et al.  Living Design Memory: Framework, Implementation, Lessons Learned , 1995, Hum. Comput. Interact..

[21]  M. D. Lubars Wide-spectrum support for software reusability , 1988 .

[22]  Janet L. Kolodner,et al.  Improving Human Decision Making through Case-Based Decision Aiding , 1991, AI Mag..

[23]  Victor R. Basili,et al.  Support for comprehensive reuse , 1991, Softw. Eng. J..

[24]  Martin L. Griss,et al.  Software Reuse: From Library to Factory , 1993, IBM Syst. J..

[25]  P. Chaiyasut,et al.  A computational architecture to support conceptual data model reuse by analogy , 1995, Proceedings Seventh International Workshop on Computer-Aided Software Engineering.

[26]  M. S. Ackerman,et al.  Answer Garden: a tool for growing organizational memory , 2015, COCS '90.

[27]  W. Kozaczynski,et al.  Architecture specification support for component integration , 1995, Proceedings Seventh International Workshop on Computer-Aided Software Engineering.

[28]  P. Kidwell,et al.  The mythical man-month: Essays on software engineering , 1996, IEEE Annals of the History of Computing.

[29]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[30]  G. Arango Domain analysis: from art form to engineering discipline , 1989, IWSSD '89.

[31]  Raymond McCall,et al.  Making argumentation serve design , 1991 .

[32]  Neil A. M. Maiden,et al.  Exploiting reusable specifications through analogy , 1992, CACM.

[33]  Frederick P. Brooks,et al.  No Silver Bullet: Essence and Accidents of Software Engineering , 1987 .