Skip to main content

Dynamically Replaceable Software: A design method

  • Conference paper
  • First Online:
Book cover ESEC '91 (ESEC 1991)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 550))

Included in the following conference series:

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.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. DoD, Ada Language Reference Manual, ANSI/MIL-STD-1815A-1983.

    Google Scholar 

  2. J. Amador, J. Campos, SWRU Concept for ARTT, GMV, Madrid, Spain, Doc. No. COL-GMV-ARTT2-TNSWRU, 1988.

    Google Scholar 

  3. J. Antler, W. Häbel, SWRU End-to-end Concept, MBB/ERNO, Bremen, West Germany, 1987.

    Google Scholar 

  4. C. Atkinson, T. Moreton, A. Natali, Ada for distributed systems, Cambridge University Press, 1988.

    Google Scholar 

  5. 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.

    Google Scholar 

  6. G. Booch, Software Engineering with Ada, 2nd Edition, Benjamin Cummings, 1986.

    Google Scholar 

  7. G. Booch, Object Oriented Design with Applications, 1st Edition, Benjamin Cummings, 1990.

    Google Scholar 

  8. A. Burns and A.J. Wellings, “Dynamic Change Management and Ada”, Software Maintenance: Research and Practice, vol.1, no.2, p121–131 (December 1989)

    Google Scholar 

  9. A. Burns and A.J. Wellings, Real Time Systems and their Programming Languages, Addison-Wesley, 1990.

    Google Scholar 

  10. European Space Agency (ESA), COLUMBUS System Requirements Document, Doc. No. COL-RQ-ESA-001, 1990.

    Google Scholar 

  11. A. Goldberg, D. Robson, Smalltalk-80: The language and its implementation, Addison-Wesley, 1983.

    Google Scholar 

  12. HOOD Reference Manual, Issue 3.0, HOOD Working Group, 1989.

    Google Scholar 

  13. HOOD User Manual, Issue 3.0, HOOD Working Group, 1989.

    Google Scholar 

  14. 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.

    Google Scholar 

  15. J. Kramer, J. Magee, “A Model for Change Management”, IEEE Conference on Distributed Computing Systems in the 90's, Hong Kong, September 1988.

    Google Scholar 

  16. J. Kramer, J. Magee, “Constructing Distributed Systems in CONIC”, IEEE Transactions on Software Engineering, p663–676, June 1989.

    Google Scholar 

  17. R. Laws, M. Shopland, Implications of SWRUs implemented in Ada for On-board Software, Logica Space and Defence Systems, Cobham, England, 1987.

    Google Scholar 

  18. B. Meyer, Object-Oriented Software Construction, Prentice Hall, 1988.

    Google Scholar 

  19. I. Sommerville; Software Engineering, 3rd edition; Addison-Wesley, 1989.

    Google Scholar 

  20. 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.

    Google Scholar 

  21. B. Stroustrup, The C++ programming language, Addison-Wesley, 1986.

    Google Scholar 

  22. K. Tindell, “Dynamic Code Replacement and Ada”, Ada Letters, vol. X, no. 7, p. 47–54, 1990.

    Google Scholar 

  23. 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.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Axel van Lamsweerde Alfonso Fugetta

Rights and permissions

Reprints 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

Publish with us

Policies and ethics