Abstract
A formal framework for the design of modular software systems is presented which incorporates the idea of reusing software components in new applications. The approach is based on structured algebraic specifications with behavioural semantics. In order to provide a clean interconnection mechanism for specifications, behavioural specifications with import interfaces are considered and their composition with respect to the behavioural requirements of the import interface is defined. A simple implementation notion for behavioural specifications with import interface is presented which is compatible with the composition of specifications. Hence it is guaranteed that separately developed implementations of parts of an abstract system specification can be automatically composed to a globally correct system implementation. Based on these concepts, reusable components are defined as (unordered) trees of behavioural specifications with import interfaces such that two consecutive nodes are related by the implementation relation. A formal method for the systematic reuse of components in new applications is proposed. The method consists of four 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 method is demonstrated by a detailed example.
This research has been partially sponsored by the German BMFT-project KORSO
Preview
Unable to display preview. Download preview PDF.
References
G. Bernot, M. Bidoit: Proving the correctness of algebraically specified software: modularity and observability issues. Proc. AMAST '91, 2nd International Conference on Algebraic Methodology of Software Technology, Technical Report of the University of Iowa, 1991.
J. Cramer, W. Fey, M. Goedicke, M. Große-Rhode: Towards a formally based component description language — a foundation for reuse. Structured Programming, Vol. 2, No. 12, Springer Verlag, 1991.
H. Ehrig, B. Mahr: Fundamentals of algebraic specification 1. EATCS Monographs on Theor. Comp. Science, Vol. 6, Springer Verlag, 1985.
H. Ehrig, B. Mahr: Fundamentals of algebraic specification 2. EATCS Monographs on Theor. Comp. Science, Vol. 21, Springer Verlag, 1990.
M. C. Gaudel, Th. Moineau: A theory of software reusability. In: H. Ganzinger (ed.): Proc. ESOP '88. Lecture Notes in Computer Science 300, 115–130, 1988.
R. Hennicker, F. Nickl: A behavioural algebraic framework for modular system design with reuse. Technical report 9206, Institut für Informatik, Ludwig-Maximilians-Universität München.
R. Milner, M. Tofte, R. Harper. The definition of Standard ML. MIT Press, 1990.
F. Orejas, M. P. Nivela: Constraints for behavioural specifications. In: H. Ehrig, K. P. Jantke, F. Orejas, H. Reichel (eds): Recent Trends in Data Type Specification, Proc. 7th Workshop on Specification of Abstract Data Types, Wusterhausen/Dosse, April 1990. Lecture Notes in Computer Science 534, 220–245, 1990.
H. Reichel: Initial restrictions of behaviour. IFIP Working Conference, The Role of Abstract Models in Information Processing, 1985.
D.T. Sannella, S. Sokolowski, A.Tarlecki: Toward formal development of programs from algebraic specifications: parameterization revisited. Forschungsberichte des Studienganges 6/90, Univ. Bremen, 1990.
M. Wirsing: Structured algebraic specifications: a kernel language. Theor.Comp.Science 42, 123–249, 1986.
M. Wirsing: Algebraic description of reusable software components. In: E. Milgrom, P. Wodon (eds.): Proc. COMPEURO '88. IEEE Computer Society, 834, Computer Society Press, 300–312, 1988.
M. Wirsing, R. Hennicker, R. Stabl: MENU — an example for the systematic reuse of specifications. In: C. Ghezzi, J. A. McDermid (eds.): Proc. ESEC '89, 2nd European Software Engineering Conference, Warwick, September 1989. Springer 387, 20–41, 1989.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1994 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Hennicker, R., Nickl, F. (1994). A behavioural algebraic framework for modular system design with reuse. In: Ehrig, H., Orejas, F. (eds) Recent Trends in Data Type Specification. ADT COMPASS 1992 1992. Lecture Notes in Computer Science, vol 785. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-57867-6_13
Download citation
DOI: https://doi.org/10.1007/3-540-57867-6_13
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-57867-3
Online ISBN: 978-3-540-48361-8
eBook Packages: Springer Book Archive