Abstract
A formal framework for the design of modular software systems is presented which incorporates the idea of reusing existing software components in new applications. The approach uses the representation of the development process of software as a graph and instantiates the notion of components as nodes and the notion of causal relations between these components as edges of the graph. A formal method for the systematic reuse of components is proposed. The method consists of five steps which describe how to construct for a given abstract system specification a modular implementation by reusing existing implementations available as leaves of appropriate reusable components. The retrieval of reusable components from a database particularly focuses on the correctness of software reuse. The presented method is supported by a system that covers the development and administration of components and relations in the development graph and the retrieval of components from the database.
Preview
Unable to display preview. Download preview PDF.
References
M. Broy, C. Facchi, R. Grosu, R. Hetter, H. Hußmann, D. Nazareth, F. Regensburger, O. Slotosch, and K. Stølen. The Requirement and Design Specification Language SPECTRUM: An Informal Introduction, Version 1.0, Part I. Technical report TUM-I9311, Technische Universität München, 1993.
M. Broy, C. Facchi, R. Grosu, R. Hettler, H. Hußmann, D. Nazareth, F. Regensburger, O. Slotosch, and K. Stølen. The Requirement and Design Specification Language SPECTRUM: An Informal Introduction, Version 1.0, Part II. Technical report TUM-I9312, Technische Universität München, 1993.
M. C. Gaudel, Th. Moineau. A theory of software reusability. In H. Ganzinger (ed.), Proc. ESOP '88. Lecture Notes in Computer Science 300, pp. 115–130, 1988.
R. Hennicker, F. Nicki. A Behavioural Algebraic Framework for Modular System Design with Reuse. Technical report LMU-9206, Ludwig-Maximilians-Universität München, 1992.
R. Milner, M. Tofte, R. Harper: The Definition of Standard ML. MIT Press, 1990.
P. Pepper, M. Wirsing. KORSO: A Methodology for the Development of Correct Software. Technical report 94-36, Technische Universität Berlin, 1994.
M. Wirsing. Algebraic description of reusable software components. Invited paper. In P. Wodon and E. Milgrom (ed.), COMPEURO 88, System Design: Concepts, Methods and Tools, pp. 300–312. IEEE Computer Society Press, No. 834, 1988. Also: Technical report, Universität Passau, Fakultät für Mathematik und Informatik, MIP-8816, 1988.
A.M. Zaremski, J.M. Wing: Signature Matching: A Key to Reuse. Technical report CMU-CS-93-151, Carnegie Mellon University, 1993.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1995 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Gastinger, S., Hennicker, R., Stabl, R. (1995). Design of modular software systems with reuse. In: Broy, M., Jähnichen, S. (eds) KORSO: Methods, Languages, and Tools for the Construction of Correct Software. Lecture Notes in Computer Science, vol 1009. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0015458
Download citation
DOI: https://doi.org/10.1007/BFb0015458
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-60589-8
Online ISBN: 978-3-540-47802-7
eBook Packages: Springer Book Archive