Our activities have as a common ground the use of
formal methods and techniques in the current practice of software
Therefore the specific topics range from development and analysis of
formalisms to the production of tools for system modelling support and
to variations of industrially used techniques.
Industries and public organizations are more and more interested in large scale
Information and Comunication Infrastructures, that are flexible, scalable
This poses new challanges to Software Engineering and requires new
methods, concepts and techniques to guarantee acceptable standards not
only of the final products, but of the development processes as well.
We aim at proposing development methods following as much as possible the
"current best practices", but grounded, so to speak, over rigorous techniques,
providing abstraction, consistency and analysis criteria.
Part of our works aims at refining and complementing software development
process models based on UML, like RUP (the Rational Unified Process),
Catalysis and COMET, especially in the way the specification activity and
the resulting artifacts are structured.
Moreover, following the new development paradigm of the "Model Driven Architecture"
we have developed variants of the UML notation (profiles,
using the UML terminology) to produce "Platform-Specific Models", in
support of middleware-based development.
Though the UML is preminent in our studies, being a de facto industrial
standard, we are also interested in and have indeed developed methods based
on different notations and formalisms.
In particular our group has developed JTN (Java Target Notation), that is a
formal visual notation for the design of system to be implemented by using
Java (equipped with a provable correct translation into Java), whose design
started before the definition of the UML and has in part anticipated some of