State of the art of dynamic software updating in Java

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

*Corresponding author for this work

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

Abstract

The dynamic software updating system JRebel from Zeroturnaround has proven to be an efficient mean to improve developer productivity, as it allows developers to change the code of their applications while developing and testing them. Hence, developers no longer have to go through the tedious cycle of serializing application state, halting execution, redeploy the binary, restarting, and de-serializing state before they can test the effect of a code change. However, the current version of JRebel has its limits, as it does not support all kinds of code changes. In this paper, we compare the three most comprehensive dynamic updating systems developed for Java to date. Together, these systems provide comprehensive support for changing class definitions of live objects, including adding, removing and moving fields, methods, classes and interfaces anywhere in the inheritance hierarchy. We then investigate the effects of dynamic updating by performing a dynamic updating experiment on five consecutive revisions of the classical arcade game Breakout using the dynamic updating system Gosh! (Prior to the acquisition by zeroturnaround.com known as Javeleon.). 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 integrating the dynamic updating model of Gosh! with JRebel. The successful integration of these two systems will set a new standard for dynamic software updating in Java.

Original languageEnglish
Title of host publicationSoftware Technologies
EditorsJosé Cordeiro, Marten van Sinderen
PublisherSpringer
Publication date2014
Pages99-113
ISBN (Print)978-3-662-44919-6
ISBN (Electronic)978-3-662-44920-2
DOIs
Publication statusPublished - 2014
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
SeriesCommunications in Computer and Information Science
Volume457
ISSN1865-0929

Fingerprint

Dive into the research topics of 'State of the art of dynamic software updating in Java'. Together they form a unique fingerprint.

Cite this