Dynamic Software Updating with Gosh! Current Status and the Road Ahead

Michael Rasmussen, Allan Raundahl Gregersen, Bo Nørregaard Jørgensen

Research output: Chapter in Book/Report/Conference proceedingArticle in proceedingsResearchpeer-review

429 Downloads (Pure)

Abstract

Any non-trivial software system has to be upgraded regularly to incorporate bug fixes and security patches or simply to keep up with the inevitable evolution in end-user requirements. Software upgrading is challenging, especially when it comes to online upgrading of running systems. In this paper, we present the
current status of Gosh!, a dynamic-software-updating system for Java, which provides comprehensive support for changing class definitions of live objects, including adding, removing and moving fields, methods, classes and interfaces anywhere in the inheritance hierarchy. Prior to the acquisition by zeroturnaround.com, Gosh! was known as Javeleon. In this paper we demonstrate the capabilities of Gosh! by performing a dynamic updating experiment on five consecutive revisions of the classical arcade game Breakout. Based on the result of this experiment we show that dynamic updating of class definitions for live objects may under some circumstances result in different run-time behavior than would be observed after a cold restart of the upgraded application. Finally, we conclude by discussing the implication of this finding for future research directions within dynamic software updating.
Original languageEnglish
Title of host publicationProceedings of the 8th International Joint Conference on Software Technologies
EditorsJosé Cordeiro, David Marca, Marten van Sinderen
Volume1
PublisherSCITEPRESS Digital Library
Publication date2013
Pages220-226
ISBN (Electronic)978-989-8565-68-6
DOIs
Publication statusPublished - 2013
Event8th International Joint Conference on Software Technologies - Reykjavík, Iceland
Duration: 29. Jul 201331. Jul 2013

Conference

Conference8th International Joint Conference on Software Technologies
Country/TerritoryIceland
CityReykjavík
Period29/07/201331/07/2013

Cite this