Efficient Dynamic Updates of Distributed Components Through Version Consistency


Modern component-based distributed software systems are increasingly required to offer non-stop service and thus their updates must be carried out at runtime. Different authors have already proposed solutions for the safe management of dynamic updates. Our contribution aims at improving their efficiency without compromising safety. We propose a new criterion, called version consistency, which defines when a dynamic update can be safely and efficiently applied to the components that execute distributed transactions. Version consistency ensures that distributed transactions be served as if they were operated on a single coherent version of the system despite possible concurrent updates. The paper presents a distributed algorithm for checking version consistency efficiently, formalizes the proposed approach by means of a graph transformation system, and verifies its correctness through model checking. The paper also presents CONUP, a novel prototype framework that supports the approach and offers a viable, concrete solution for the use of version consistency. Both the approach and CONUP are evaluated on a significant third-party application. Obtained results witness the benefits of the proposed solution with respect to both timeliness and disruption.

Friday, November 4, 2022 15:00 Europe/Paris
GReTA seminar
Luciano Baresi
Luciano Baresi

Luciano Baresi is full professor at the Politecnico di Milano - Dipartimento di Elettronica, Informazione e Bioingegneria, where he earned both his laurea (master) degree and PhD in computer science. Luciano was visiting professor at University of Oregon (USA) and visiting researcher at University of Paderborn (Germany). Luciano was program chair for ICECCS, FASE, ICWE, ICSOC, SEAMS, ESEC/FSE, and SCC, and general chair for WICSA/CompArch. He is currently the steering committee chair of ESEC/FSE. Luciano has co-authored diverse papers and a book in Italian. His research interests are in the broad area of software engineering. At the beginning he was interested in formal approaches for modeling and specification languages, he then moved to UML and the design of Web applications. Currently, he is interested in distributed systems, service-based applications, and in the different aspects of mobile, self-adaptive, and pervasive software systems.