A formal study of backward compatible dynamic software updates

Jun Shen, Rida Bazzi

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

We study the dynamic software update problem for programs interacting with an environment that is not necessarily updated. We argue that such updates should be backward compatible. We propose a general definition of backward compatibility and cases of backward compatible program update. Based on our detailed study of real world program evolution, we propose classes of backward compatible update for interactive programs, which are included at an average of 32% of all studied program changes. The definitions of update classes are parameterized by our novel framework of program equivalence, which generalizes existing results on program equivalence to non-terminating executions. Our study of backward compatible updates is based on a typed extension of W language.

Original languageEnglish (US)
Title of host publicationLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
PublisherSpringer Verlag
Pages231-248
Number of pages18
Volume9276
ISBN (Print)9783319229683
DOIs
StatePublished - 2015
Event13th International Conference on Software Engineering and Formal Methods, SEFM 2015 - York, United Kingdom
Duration: Sep 7 2015Sep 11 2015

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume9276
ISSN (Print)03029743
ISSN (Electronic)16113349

Other

Other13th International Conference on Software Engineering and Formal Methods, SEFM 2015
CountryUnited Kingdom
CityYork
Period9/7/159/11/15

Fingerprint

Update
Software
Equivalence
Compatibility
Generalise
Class

ASJC Scopus subject areas

  • Computer Science(all)
  • Theoretical Computer Science

Cite this

Shen, J., & Bazzi, R. (2015). A formal study of backward compatible dynamic software updates. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 9276, pp. 231-248). (Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics); Vol. 9276). Springer Verlag. https://doi.org/10.1007/978-3-319-22969-0_17

A formal study of backward compatible dynamic software updates. / Shen, Jun; Bazzi, Rida.

Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics). Vol. 9276 Springer Verlag, 2015. p. 231-248 (Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics); Vol. 9276).

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Shen, J & Bazzi, R 2015, A formal study of backward compatible dynamic software updates. in Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics). vol. 9276, Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), vol. 9276, Springer Verlag, pp. 231-248, 13th International Conference on Software Engineering and Formal Methods, SEFM 2015, York, United Kingdom, 9/7/15. https://doi.org/10.1007/978-3-319-22969-0_17
Shen J, Bazzi R. A formal study of backward compatible dynamic software updates. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics). Vol. 9276. Springer Verlag. 2015. p. 231-248. (Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)). https://doi.org/10.1007/978-3-319-22969-0_17
Shen, Jun ; Bazzi, Rida. / A formal study of backward compatible dynamic software updates. Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics). Vol. 9276 Springer Verlag, 2015. pp. 231-248 (Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)).
@inproceedings{ac6542fc20ac4391bf9ed67051e6a5ce,
title = "A formal study of backward compatible dynamic software updates",
abstract = "We study the dynamic software update problem for programs interacting with an environment that is not necessarily updated. We argue that such updates should be backward compatible. We propose a general definition of backward compatibility and cases of backward compatible program update. Based on our detailed study of real world program evolution, we propose classes of backward compatible update for interactive programs, which are included at an average of 32{\%} of all studied program changes. The definitions of update classes are parameterized by our novel framework of program equivalence, which generalizes existing results on program equivalence to non-terminating executions. Our study of backward compatible updates is based on a typed extension of W language.",
author = "Jun Shen and Rida Bazzi",
year = "2015",
doi = "10.1007/978-3-319-22969-0_17",
language = "English (US)",
isbn = "9783319229683",
volume = "9276",
series = "Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)",
publisher = "Springer Verlag",
pages = "231--248",
booktitle = "Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)",

}

TY - GEN

T1 - A formal study of backward compatible dynamic software updates

AU - Shen, Jun

AU - Bazzi, Rida

PY - 2015

Y1 - 2015

N2 - We study the dynamic software update problem for programs interacting with an environment that is not necessarily updated. We argue that such updates should be backward compatible. We propose a general definition of backward compatibility and cases of backward compatible program update. Based on our detailed study of real world program evolution, we propose classes of backward compatible update for interactive programs, which are included at an average of 32% of all studied program changes. The definitions of update classes are parameterized by our novel framework of program equivalence, which generalizes existing results on program equivalence to non-terminating executions. Our study of backward compatible updates is based on a typed extension of W language.

AB - We study the dynamic software update problem for programs interacting with an environment that is not necessarily updated. We argue that such updates should be backward compatible. We propose a general definition of backward compatibility and cases of backward compatible program update. Based on our detailed study of real world program evolution, we propose classes of backward compatible update for interactive programs, which are included at an average of 32% of all studied program changes. The definitions of update classes are parameterized by our novel framework of program equivalence, which generalizes existing results on program equivalence to non-terminating executions. Our study of backward compatible updates is based on a typed extension of W language.

UR - http://www.scopus.com/inward/record.url?scp=84944564827&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=84944564827&partnerID=8YFLogxK

U2 - 10.1007/978-3-319-22969-0_17

DO - 10.1007/978-3-319-22969-0_17

M3 - Conference contribution

SN - 9783319229683

VL - 9276

T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)

SP - 231

EP - 248

BT - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)

PB - Springer Verlag

ER -