Towards a formal approach to modeling and verifying the design of dynamic software updates

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

3 Scopus citations

Abstract

Even though software systems in some domains are expected to provide continuous services, most of them must undergo some form of changes. It leads to the emergence of dynamic software updating, a technique for updating a running software system without incurring any downtime. One of the challenges of designing a correct dynamic update is to identify a set of update points where the update can be safely applied to a running system. In this paper, we present a formal approach to modeling dynamic software updates and use the formal model to identify safe update points. In our approach, we formalize dynamic updates as state machines, and verify by model checking a set of desired properties which the running system is expected to satisfy after being updated. If counterexamples are found, we exclude those states that cause the counterexamples, and do model checking again. The process is iterated until all desired properties are successfully verified. We then finally obtain a set of safe update points. A case study is also presented to demonstrate the feasibility of the proposed approach.

Original languageEnglish
Title of host publicationProceedings - 22nd Asia-Pacific Software Engineering Conference, APSEC 2015
EditorsJing Sun, Y. Raghu Reddy, Arun Bahulkar, Anjaneyulu Pasala
PublisherIEEE Computer Society
Pages159-166
Number of pages8
ISBN (Electronic)9781467396448
DOIs
StatePublished - 9 May 2016
Event22nd Asia-Pacific Software Engineering Conference, APSEC 2015 - New Delhi, India
Duration: 1 Dec 20154 Dec 2015

Publication series

NameProceedings - Asia-Pacific Software Engineering Conference, APSEC
Volume2016-May
ISSN (Print)1530-1362

Conference

Conference22nd Asia-Pacific Software Engineering Conference, APSEC 2015
Country/TerritoryIndia
CityNew Delhi
Period1/12/154/12/15

Keywords

  • Design
  • Dynamic Software Updating
  • Formal Verification
  • Maude
  • Model checking

Fingerprint

Dive into the research topics of 'Towards a formal approach to modeling and verifying the design of dynamic software updates'. Together they form a unique fingerprint.

Cite this