A formal framework for on-line software version change
- 1 January 1996
- journal article
- Published by Institute of Electrical and Electronics Engineers (IEEE) in IEEE Transactions on Software Engineering
- Vol. 22 (2) , 120-131
- https://doi.org/10.1109/32.485222
Abstract
The usual way of installing a new version of a software system is to shut down the running program and then install the new version. This necessitates a sometimes unacceptable delay during which service is denied to the users of the software. An on-line software replacement system replaces parts of the software while it is in execution, thus eliminating the shutdown. While a number of implementations of on-line version change systems have been described in the literature, little investigation has been done on its theoretical aspects. In this paper, we describe a formal framework for studying on-line software version change. We give a general definition of validity of an on-line change, show that it is in general undecidable and then develop sufficient conditions for ensuring validity for a procedural language.Keywords
This publication has 13 references indexed in Scilit:
- Dynamic reconfiguration of distributed programsPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- Application-level programmingPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- A formal framework for on-line software version changeIEEE Transactions on Software Engineering, 1996
- On‐line software version change using state transfer between processesSoftware: Practice and Experience, 1993
- On-the-fly program modification: systems for dynamic updatingIEEE Software, 1993
- On dynamically updating a computer program: From concept to prototypeJournal of Systems and Software, 1991
- The evolving philosophers problem: dynamic change managementIEEE Transactions on Software Engineering, 1990
- Dynamic program updating: A software maintenance technique for minimizing software, downtimeJournal of Software Maintenance: Research and Practice, 1989
- Constructing distributed systems in ConicIEEE Transactions on Software Engineering, 1989
- Dynamic Restructuring in an Experimental Operating SystemIEEE Transactions on Software Engineering, 1978