9:00-9:10 Welcome and Introduction (Rüdiger Kapitza and Etienne Rivière)
9:10-10:00 Keynote talk: Walter Cazzola, Università degli Studi di Milano
Dynamic Fine-Grained Adaptation at Hands
The JavAdaptor and FiGA cases
Software is changed frequently during its life cycle. New requirements
come and bugs must be fixed. To update an application it usually must
be stopped, patched, and restarted. This causes time periods of
unavailability which is always a problem for highly available
applications. Even for the development of complex applications restarts
to test new program parts can be time consuming and annoying. Thus, we
aim at dynamic software updating (DSU) frameworks to update programs at
JavAdaptor is a DSU framework for Java that (a) offers fine-grained
dynamic updating, (b) supports schema changing, (c) introduces only
minimal performance overhead, and (d) does not dictate the program
architecture. JavAdaptor combines schema changing class replacements by
class renaming and caller updates with Java HotSwap using containers and
proxies. It runs on top of all major standard Java virtual machines.
Updates often urge in critical situations and the system update could be
challenging. Using run-time models as an interface for updating software
at run-time can help developers manage the complexity of updating
software while it is executing. The FiGA framework enables the updating
of Java software at run-time through the use of run-time models
consisting of UML class, activity and sequence diagrams. Changes to
models are transformed to changes on Java source code, which is then
propagated to the run-time system using the JavAdaptor DSU technology.
The FiGA framework permits in-the-small software changes, i.e., changes
at the code statement level, as opposed to in-the-large changes, i.e.,
changes at the component level that are the case in traditional models
at run-time approaches.
Walter Cazzola (Ph.D.) is currently an associate professor at the Department of Computer Science of the Università degli Studi di Milano, Italy and the chair of the ADAPT research group.
His research interests include reflection, aspect-oriented and context-oriented programming, dynamic software evolution, domain specific and general purpose languages (design and implementation) and language and software product lines.
He is the designer of the mChaRM framework, of the @Java, [a]C#, @AspectJ, Blueprint programming languages or extensions and he is currently involved in the design of the Neverlang language workbench. He is also the designer of JavAdaptor and FiGA dynamic system updating (DSU) frameworks.
He has written more than 100 technical papers and served in the programme committee of all the major conferences about his research interests. More information are available on his professional webpage.
10:00-10:30 Coffee break
10:30-12:15 Session 1 (chair: Frank Eliassen, University of Oslo)
Roberto Vito Rodrigues Filho and Barry Porter. Experiments with a Machine-centric Approach to Realise Distributed Emergent Software Systems
Adja Ndeye Sylla, Maxime Louvel and Eric Rutten. Combining Transactional and Behavioural Reliability in Adaptive Middleware
Xinan Yan, Bernard Wong and Sharon Choy. R3S: RDMA-based RDD Remote Storage for Spark
13:45-15:30 Session 2 (chair: Etienne Rivière)
Klaas Thoelen, Nicolas Small, Sam Michiels, Wouter Joosen and Danny Hughes. Component-based Orchestration of Dynamic IaaS Applications
ARM fifteenth anniversary event
In this special event at the occasion of the workshop fifteenth anniversary, we will reflect on the history and achievements (and maybe disillusions) of adaptation and reflection in middleware systems.
The session will feature an interaction between a moderator, the audience and historic figures of the workshop and the fields of reflection, adaptation and middleware in general.
The audience will be warmly encouraged to participate with questions, opinions and reactions.