Fabien Romeo - PhD in Computer Science

Fabien Romeo

In November 2007, I got my PhD in Computer Science from the University of Pau (LIUPPA lab), where I proposed a Management Solution for Software Components in Wireless Systems (cf. PhD Defense) called WMX. From October 2007, I worked for year on a post-doc position at the University of Milano-Bicocca. Since September 2008, I have an assistant professor position at the EISTI in Pau (http://www.eisti.fr) where I am in charge of courses on MDE/MDA, UML, Java EE (+ Struts & Hibernate), XML, Aspect-Oriented Programming, Oracle DB, etc.

Management of Wireless Software Components

Since 2002, I gained experience in Component-Based Software Engineering (CBSE). My research in this area at the LIUPPA lab began early as part of my education at the University of Pau and at the INP of Toulouse, where I acquired a strong theoretical background in software engineering for distributed and real-time systems. I had the chance to investigate the Java Management eXtensions (JMX) from its early days, and it is now a well-established standard for application management. JMX had an important part in my work and I could prove its applicability to CBSE many times: first as a graphical and remote tester for Built-In Test components, next in a composition environment based on UML, in which the correctness of the components assembly is checked and enforced at runtime, and of course in my doctoral work.

In my thesis, I contributed to the development of the PauWare component model and specifically to PauWare.Velcro, its implementation for the Java Platform Micro Edition (Java ME), which runs on wireless constrained devices. Dedicated to model-driven engineering and component-based software engineering, PauWare improves components’ dependability thanks to model execution techniques. In this context, my previous experience in application management led me to address the runtime management of the functional behavior of components. As a result, I designed and implemented the Wireless Management eXtensions (WMX) framework. In order to improve management operations and to apply a real control on components deployed in wireless devices, WMX retrieves at runtime the components’ behavioral models (statecharts) designed at development time. This allows us to remotely track and control the components’ logical states in order to enforce new management policies based on this abstract view of the application’s behavior.

Autonomic Computing

As part of my postdoc position in Milano-Bicocca, I worked on a Self-Healing Approach to Designing cOmplex softWare Systems (SHADOWS project). In this project, a critical point was to organize the collaboration of three different self-healing solutions provided by the different partners into one sound framework. My work was to manage the integration of the functional self-healing system (made by UniMib) into the overall SHADOWS system. To do so, I investigated the Common Base Events (CBE), definied by IBM in its Autonomic Computing Toolkit, in order to define a common communication infrastructure.