ETD

Archivio digitale delle tesi discusse presso l'Università di Pisa

Tesi etd-02262010-104847


Tipo di tesi
Tesi di laurea specialistica
Autore
FORTUNATI, LUIGI
URN
etd-02262010-104847
Titolo
Incremental Product Release of Java Applications using Dynamic Updates
Dipartimento
INGEGNERIA
Corso di studi
INGEGNERIA INFORMATICA
Relatori
relatore Prof. Vecchio, Alessio
relatore Prof. Avvenuti, Marco
Parole chiave
  • Dynamic Updates
  • Javeleon
  • Software Evolution
  • Java
  • Netbeans
Data inizio appello
06/05/2010
Consultabilità
Completa
Riassunto
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.
File