Abstract
We present an experimental software repository system that provides organization, storage, management, and access facilities for reusable software components. The system, intended as part of an applications development environment, supports the representation of information about requirements, designs and implementations of software, and offers facilities for visual presentation of the soft-ware objects. This article details the features and architecture of the repository system, the technical challenges and the choices made for the system development along with a usage scenario that illustrates its functionality. The system has been developed and evaluated within the context of the ITHACA project, a technology integration/software engineering project sponsored by the European Communities through the ESPRIT program, aimed at developing an integrated reuse-centered application development and support environment based on object-oriented techniques.
Similar content being viewed by others
References
Ader, M., Nierstrasz, O., McMahon, S., Mueller, G., and Proefrock, A-K. The Ithaca technology: A landscape for object-oriented application development.Proceedings of the ESPRIT 1990 Conference, Dordrecht, The Netherlands, 1990.
Ader, M., Murthy, S., Murthy, N., Bergnes, C., and Monguio, J. Organization model reference manual, ITHACA Report, ITHACA.Bull.91.D.1.4#1.2, 1991.
Attardi, G. and Simi, M. Completeness and consistency of OMEGA: A logic for knowledge representation.Proceedings of the International Joint Conference on Artificial Intelligence, Vancouver, British Columbia, 1981.
Barletta, R. An introduction to case-based reasoning,AI Expert, August, 1991, pp. 43–49.
Bigelow J. Hypertext and CASE.IEEE Software, 5(2):23–29, 1988.
Biggerstaff T.J. and Perlis, A.J.Software Reusability, Volume I: Concepts and Models, Volume 2: Applications and Experience, ACM Press Frontier Series, Reading, MA: Addison-Wesley, 1989.
Biggerstaff, T.J. and Richter, C. Reusability framework, assessment, and directions. In: Biggerstaff, T.J. and Perlis, A.J., eds,Software Reusability, Volume I: Concepts and Models, ACM Press Frontier Series, Reading, MA: Addison-Wesley, 1989, pp. 1–17.
Brodie, M. and Rifjanovic, D. On the design and specification of database transactions. In: Brodie, M., Mylopoulos, J., and Schmidt, J., eds.,On Conceptual Modelling: Perspectives from Artificial Intelligence, Databases, and Programming Languages, New York: Springer-Verlag, 1984.
Booch, G.Object Oriented Design with Applications, Redwood City, CA: Benjamin/Cummings Publishing Company, 1991.
Borgida, A., Brachman, R., McGuiness, D., and Resnick, L. CLASSIC: A structural data model for objects.Proceedings of the ACM SIGMOD Conference, Portaland, OR, 1989.
Charalabidis, Y., Petra, E., and Vlodakis, G. Populating software repositories: The SIB-WooRKS case.Proceedings of the ERCIM Workshop on Methods and Tools for Software Reuse, Heraklion, Crete, 1992.
Chen, P.P. The entity-relationship model: Towards a unified view of data.ACM Transactions on Database Systems, 1 (1):9–36, 1976.
Conklin J. Hypertext: An introduction and survey.IEEE Computer, 20(9):17–42, 1987.
CooL 0.2 Language Description, Report ITHACA.SNI.90.L2.#4, Siemens-Nixdorf, 1990.
Constantopoulos, P., Doerr, M., and Vassiliou, Y. Repositories for software reuse: The software information base.Proceedings of the IFIP WG 8.1 Conference on Information System Development Process, Como, Italy, 1993.
Dadouris, C., Doerr, M, Kizlaridou, S. Mavroidis, D., Pataki, E., Theodorakis, E., and Yeorgiannakis, G. Implementation of the SIB System, Report ITHACA.FORTH. 92.E2.#2, Institute of Computer Science, FORTH, January 1992.
De Antonellis, V., Pernici, B., and Samarati, P. Object Orientation in the Analysis of Work Organization and Agent Cooperation,Proceedings of the International Conference on Dynamic Aspects in Information Systems, Washington, D.C., 1991.
de Mey, V. Junod, B., Renfer, S., Stadelmann, M., and Simitsek, I. The implementation of VISTA: A visual scripting tool. In: Tsichritzis, D., ed.,Object Composition, Centre Universitaire d'Informatique, Universite de Geneve, 1991, pp. 31–56.
Devanbu, P., R. J. Brachmann, P. Selfridge, and B. Ballard. LaSSIE: A knowledgebased software information system,Communications of the ACM, 34(5):34–49, 1991.
Dittrich, K. et al. DAMOKLES: A database system for software engineering environments.Lecture Notes in Computer Science, 244, 1987.
Esposito, F., Malerba, D., and Semeraro, G. Classification in noisy environments using a distance measure between structural symbolic descriptions.IEEE Transactions on Pattern Analysis and Machine Intelligence, 14(3):390–402, 1992.
Fichman, R.G. and Kemerer, C.F. Object-oriented and conventional analysis and design methodologies.IEEE Computer, 25(10):22–39, 1992.
Fugini, M., Niestrasz, O., and Pernici, B. Application development through reuse: The ITHACA tools environment.SIGOIS Bulletin, 13(2):00-00?, 1992.
Garg, P. and Scacchi, W. On designing intelligent hypertext systems for information management in software engineering, DIF.Proceedings of Hypertext 87, November 1987.
Garg, P. and Scacchi, W. ISHYS: Designing an intelligent software hypertext system,IEEE Expert, 4(3):52–62, 1989.
Hudson, S.E. and King, R. Cactis: A self-adaptive, concurrent implementation of an object-oriented database management system.ACM Transactions on Database Systems, 14(3):291–321, 1989.
Jarke, M., Mylopoulos, J., Schmidt, J., and Vassiliou, Y., DAIDA: An environment for evolving information systems.ACM Transactions on Information Systems, 10(1):1–50, 1992.
Jarke, M., ed.,Database Application Development with DAIDA, Heidelberg: Springer-Verlag, 1993.
Jeusfeld, M. Change Control in Deductive Object Bases, DISKI Vol. 17, St. Augustin, Germany, INFIX Publ., 1992 (in German, also Doctoral Dissertation, University of Passau).
Jobes, B. Repository comes of Age.Database Programming and Design, March, 1990, pp. 18–30.
Jones, M.R. Unveiling repository technology.Database Programming and Design, April, 1992, pp. 28–35.
Katevenis, M., Sorilos, T., Georgis, C. and Kalogerakis, P.LABY User's Manual, Version 2.10, ITHACA Report, ITHACA.FORTH.90.E.3.3.#7, 1990.
Katz, R. Towards a unified framework for version modelling in engineering databases.ACM Computing Surveys, 22(4):375–408, 1990.
Katalagarianos, P. and Vassiliou, Y. Employing genericity and case-based reasoning to effectively reuse code.Proceedings of the International Computer Science Conference, Hong Kong, 1992.
Khosafian S. and Copeland G.P. Object identity.Proceedings of the ACM OOPSLA, 1986.
Khosafian S. and Frank, D. Implementation techniques for object-oriented Databases.Proceedings of the AOODS, Springer, 1988.
Kim, W., Kim K.-C., and Dale A. Indexing techniques for object-oriented databases. In: Kim, W. and Lochovsky, F., eds.,Object-Oriented Concepts, Databases, and Applications, New York: ACM Press, 1989.
Korson, T. and McGregor, J. Technical criteria for the specification and evaluation of object-oriented Libraries.Software Engineering Journal, 1992.
Krueger, C.W. Software reuse.ACM Computing Surveys, 24(2):131–183, 1992.
Low C. A shared, persistent object store.Proceedings of the European Conference on Object-Oriented Programming, 1988.
Merrow T. and Laursen J. A pragmatic system for shared persistent objects.Proceedings of OOPSLA, 1987.
Meyer, B. Software knowledge bases.Proceedings of the International Conference on Software Engineering, London, 1985.
Michalski, R. Learning from observation: Conceptual clustering. In:Machine Learning: An AI Approach, Vol. 1, San Mateo, CA: Morgan Kaufmann, 1986.
Mylopoulos, J., Borgida, A., Jarke, M. and Koubarakis, M. Telos: Representing knowledge about information systems.ACM Transactions on Information Systems, 8(4):325–362, 1990.
Ostertag, E., Hendler, L., Prieto-Diaz, R., and Brown, C. Computing similarity in a reuse library system: An AI-based approach.ACM Transactions on Software Engineering and Methodology, 1(3):205–228, 1992.
Patil, R., Fikes, R., Patel-Schneider, P., McKay, D., Finin, T., Gruber, T. and Neches, R. The DARPA knowledge sharing effort: Progress report.Proceedings of the Third International Conference on Knowledge Representation and Reasoning, Boston, 1992.
Pernici, B. Class design and metadesign. In: Tsichritzis, D., ed.,Object Management, Centre Universitaire d'Informatique, Universite de Geneve, 1990.
Plotkin, D. Selecting a repository.Database Programming and Design, 1992, pp. 28–35.
Prieto-Diaz, R. Implementing faceted classification for software reuse.Communications of the ACM, 34(5):88–97, 1991.
Proefrock, K. and McMahon, S.,ITHACA Final Report, Berlin: Siemens-Nixdorf, 1992.
Rose, T., Jarke, M., Gosek, M., Maltzahn, C., and Nissen, H. A decision-based configuration process environment. Special Issue on Software Environments and Factories,Software Engineering Journal, 6(5):332–346, 1991.
Ross, D.T. Structured analysis (SA): A language for communicating ideas.IEEE Transactions on Software Engineering, 1977.
Russel, S. Analogy by similarity. In: Hellman, D.H., ed.,Analogical Reasoning, Dordrecht, The Netherlands: Kluwer Academic, 1988.
Schwanke, R. An intelligent tool for re-engineering software modularity.Proceedings of the International Software Engineering Conference, Austin, TX, 1991.
Skarra A.H. and Zdonik S.B. The management of changing types in an objectoriented database.Proceedings of the OOPSLA, 1986.
Spanoudakis, G. and Constantopoulos, P. Similarity for analogical software reuse: A conceptual modelling approach.Proceedings of the Fifth International Conference on Advanced Information Systems Engineering, Paris, 1993.
Tsichritzis, D., ed.,Object Composition, Centre Universitaire d' Informatique, Universite de Geneve, 1991.
Tversky, A. Features of similarity.Psychological Review, 1977.
Wegner, P. The object-oriented classification paradigm. In: Shriver, J. and Wegner, P., eds,Research Directions in Object-Oriented Programming, MIT Press, 1987.
Winston, M. and Chaffin, R. A taxonomy of part-whole relations.Cognitive Science, 11:417–444, 1987.
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Constantopoulos, P., Jarke, M., Mylopoulos, J. et al. The software information base: A server for reuse. VLDB Journal 4, 1–43 (1995). https://doi.org/10.1007/BF01232471
Received:
Revised:
Accepted:
Issue Date:
DOI: https://doi.org/10.1007/BF01232471