ETD system

Electronic theses and dissertations repository


Tesi etd-02262010-104847

Thesis type
Tesi di laurea specialistica
Incremental Product Release of Java Applications using Dynamic Updates
Corso di studi
relatore Prof. Vecchio, Alessio
relatore Prof. Avvenuti, Marco
Parole chiave
  • Dynamic Updates
  • Javeleon
  • Software Evolution
  • Java
  • Netbeans
Data inizio appello
Riassunto analitico
With the evolution of the software development process, claimed by the new demands of the market, software development has changed considerably since its early days. In order to support the increase in complexity and dimensions of new software product, software engineers have developed new tools and methodologies in order to cope with the market requests. Despite all these advances, a software product can still be in need of changes after the delivery. These modifications are traditionally divided as changes to the functionality of the software that address new unanticipated requirements, changes that allow the software to run on a different environment, changes that fix errors and improvements that can avoid future problems. The maintenance and update process of an application have traditionally involved the classic halt, redeploy and restart scheme. However, this approach cannot be used in every scenario; consider as an example a high availability e-commerce system. For some companies the cost of a system shutdown can be prohibitive in terms of economic outlay, safety and the availability of service.
A Dynamic Software Updating system (DSU) allows overcoming the update problem enabling applications to be updated without recurring to the halt-update-redeploy scheme.. Many DSU systems have been developed since the ‘70s, each of them comes with some peculiar properties defining on-the-run application updateability with a certain level of granularity by allowing only certain subset of modifications to the code.
In this work we examine a software-based DSU system called Javeleon, developed at the University of Southern Denmark – Mærsk Mc-Kinney Møller Institute in collaboration with Sun Microsystems. A novel feature of Javeleon is the support of full redefinition of classes and changes to the type hierarchy. Following the evolution of a case study application we will show how the capability of dynamically updating software with Javeleon impacts on software development process. By working with Javeleon we will also test the transparency of this system towards the programmer.