Abstract
The usual maintenance techniques are not useful when dealing with nonstop software systems. It is not possible to stop the system execution to update some of its components. Dynamic software replacement is a mechanism that allows components updating without stopping the whole system. For this purpose, the Software Replaceable Unit (SWRU) concept has been introduced.
In this paper we present a design method for software systems including replaceable components. The executable unit (i.e. the process) is selected as the minimal software unit (SWRU) that can be dynamically replaced. This way, the strong relation between SWRU based software and distributed software is shown. This fact is used to extend the HOOD method in order to design SWRU based systems.
A replacement model is defined to implement the above concepts. The requirements that a SWRU has to fulfil, according to the above model, are identified. Finally, a method and a set of support modules to assist in the detailed design and coding phases are presented.
Preview
Unable to display preview. Download preview PDF.
References
DoD, Ada Language Reference Manual, ANSI/MIL-STD-1815A-1983.
J. Amador, J. Campos, SWRU Concept for ARTT, GMV, Madrid, Spain, Doc. No. COL-GMV-ARTT2-TNSWRU, 1988.
J. Antler, W. Häbel, SWRU End-to-end Concept, MBB/ERNO, Bremen, West Germany, 1987.
C. Atkinson, T. Moreton, A. Natali, Ada for distributed systems, Cambridge University Press, 1988.
H.E. Bal, J.G. Steiner, A.S. Tanenbaum, “Programming Languages for Distributed Systems”, ACM Computing Surveys, vol. 21, no. 3, p. 261–322, 1989.
G. Booch, Software Engineering with Ada, 2nd Edition, Benjamin Cummings, 1986.
G. Booch, Object Oriented Design with Applications, 1st Edition, Benjamin Cummings, 1990.
A. Burns and A.J. Wellings, “Dynamic Change Management and Ada”, Software Maintenance: Research and Practice, vol.1, no.2, p121–131 (December 1989)
A. Burns and A.J. Wellings, Real Time Systems and their Programming Languages, Addison-Wesley, 1990.
European Space Agency (ESA), COLUMBUS System Requirements Document, Doc. No. COL-RQ-ESA-001, 1990.
A. Goldberg, D. Robson, Smalltalk-80: The language and its implementation, Addison-Wesley, 1983.
HOOD Reference Manual, Issue 3.0, HOOD Working Group, 1989.
HOOD User Manual, Issue 3.0, HOOD Working Group, 1989.
R. Jha, J.M. Kamrad, D.T. Cornhill, “Ada Program Partitioning Language: A Notation for Distributing Ada Programs”, IEEE Transactions on Software Engineering, vol. 15, no.3, p. 271–280, 1989.
J. Kramer, J. Magee, “A Model for Change Management”, IEEE Conference on Distributed Computing Systems in the 90's, Hong Kong, September 1988.
J. Kramer, J. Magee, “Constructing Distributed Systems in CONIC”, IEEE Transactions on Software Engineering, p663–676, June 1989.
R. Laws, M. Shopland, Implications of SWRUs implemented in Ada for On-board Software, Logica Space and Defence Systems, Cobham, England, 1987.
B. Meyer, Object-Oriented Software Construction, Prentice Hall, 1988.
I. Sommerville; Software Engineering, 3rd edition; Addison-Wesley, 1989.
M. Stadel, “Object Oriented Programming Techniques to Replace Software Components on the Fly in a Running Program”, ACM SIGPLAN Notices, vol. 26, no. 1, p. 99–108, January 1991.
B. Stroustrup, The C++ programming language, Addison-Wesley, 1986.
K. Tindell, “Dynamic Code Replacement and Ada”, Ada Letters, vol. X, no. 7, p. 47–54, 1990.
R.A. Volz, T.N. Mudge, G.D. Buzzard, P. Krishnan, “Translation and Execution of Distributed Ada Programs: Is it Still Ada?”, IEEE Transactions on Software Engineering, vol.15, no.3, p. 281–292, 1989.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1991 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Amador, J., de Vicente, B., Alonso, A. (1991). Dynamically Replaceable Software: A design method. In: van Lamsweerde, A., Fugetta, A. (eds) ESEC '91. ESEC 1991. Lecture Notes in Computer Science, vol 550. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3540547428_50
Download citation
DOI: https://doi.org/10.1007/3540547428_50
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-54742-6
Online ISBN: 978-3-540-46446-4
eBook Packages: Springer Book Archive