WE HAVE CHANGED! Home | Search | Help  
Home Page Università di Genova
The Department
Research
Education
Library and services
Events and seminars
  DISI -> Research -> Areas -> Software development methods -> Research topic

Research topic: Best practice meets formal methods

KEYWORDS

Software engineering, Software development methods, Formal methods, Algebraic development techniques, Specification of concurrent systems, Visual modelling notations, Metamodelling, Model-driven architectures, UML, CoFI

ACTIVITIES

Our activities have as a common ground the use of formal methods and techniques in the current practice of software development. 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 and reliable.
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 its features.