Research activity:
- Context-aware Programming and Resource-oriented Analysis ;
- Component Based Software Engineering (CBSE);
- Component Adaptation;
- Software Architecture (SA);
- Service Oriented Architecture (SOA);
- Temporal Property Specification.
Currently, he is working on a static analysis framework for inspecting Java programs and characterizing
them with respect to their
resource consumption in a given execution environment. The framework
is based on a resource model for specifying resource provisions and consumptions, and a parametrical
transition system for performing the actual analysis. These two components are integrated in a larger
framework that provides a complete system for programming, analyzing/reasoning and adapting
Java applications with respect to heterogeneous execution contexts.
In 2007 he has been working at
INRIA Rocquencourt - Paris, FRANCE – within the
ARLES project research team.
In collaboration with the ARLES team, his research activity focused on the definition of a meta-model for (mobile and adaptable)
context-aware software services and for a suitable
middleware supporting such services.
This research activity contributed to the ongoing work for the
IST PLASTIC project.
His research activity started by focussing on the
application of formal methods to the automatic verification,
analysis and synthesis of component-based systems. He is strongly
focussed on the
components adaptation. He is still working on an
architectural approach to assembly
Commercial-Off-The-Shelf (COTS) - black-box -
components in an automatic and correct way. This approach
is based on a distributed software adaptor (i.e. a set of component distributed filter)
synthesis algorithm. In collaboration with
M. Tivoli and his supervisor
P. Inverardi, he has designed and developed a tool (called
SYNTHESIS) that automatically derives the
assembly code for a set of COTS (i.e. black-box) components in order to validate
expected system temporal properties.
The approach assumes to have a specification of
the system to be assembled in terms of sequence charts
specification and a specification of the properties to be
validated in terms of coordination policies to be enforced on the
interacting part of the system.
SYNTHESIS has been applied to
real-scale case study but in very specific contexts.
His research is also concentrated on
system requirements specifications.
Within this context, he is focussed on the non trivial and
error prone task of specifying temporal properties. In collaboration with
P. Pelliccione and his supervisor
P. Inverardi
he fully formalized
a simple but expressive
scenario-based visual
language for specifying temporal
properties. It is called
Property Sequence Chart (PSC)
and it is an extended graphical notation of a subset of
the UML 2.0 Sequence Diagrams. They also implemented an algorithm
for translating the specified properties into
Buchi automata.
They have validated the expressiveness of our approach with respect
to well known
property specification patterns..
He is also working on the development of a
``conversational" tool called
Wizard Property Sequence Chart (WPSC).
Inspired to the human nature,
by mean of natural language posed questions, based on expertise in
requirements formalization and on descriptions of the set of
patterns
for specifying temporal properties commonly used in practice,
WPSC forces to make
decisions that break the uncertainty and the ambiguity intrinsical
parts of the user requirements.
WPSC strives to guide
developers while moving from user requirements to (architecture-level)
system requirements. As system requirements specification language the tool makes use of
PSC.