Specifying and Monitoring (Fuzzy Temporal) Requirements for Service Compositions

Paola Spoletini, Department of Theoretical and Applied Sciences,
Università dell’Insubria, Italia

Nuevo! Ya está disponible la página web del curso, haciendo click aquí.


Course Summary

Service orientation is an architectural paradigm that provides complex functionality by composing services whose ownership and evolution are distributed. This approach can reduce development costs through reuse and result in more flexible solutions. However, due to their distributed nature, service compositions are intrinsically unreliable, as loose coupling and distributed ownership allow components to evolve independently. It is therefore important to continuously assess requirements and detect partial mismatches while the system is executing. Moreover, in this context, requirements are often vague and difficult to specify and monitor.

This course analyses the main issues related to defining and verifying the behaviour of service compositions at run time. First, we briefly introduce traditional specification languages and monitoring techniques. Then, we analyse in depth fuzzy requirements specification languages and monitoring techniques defined for these languages.

At the end of the course, students will be familiar with both theoretical approaches and practical techniques for specifying and verifying service compositions at run time.

Program

Part 1: Service-oriented Computing - an Overview

The first part of the course introduces the main features of service-oriented architectures and their challenges.

  • Services and service compositions;
  • Open-world software;
  • Issues and challenges.
Part 2: Traditional Specification and Validation Approaches
This part reviews the traditional approaches to design and validate service compositions. Both offline and online verification techniques will be briefly discussed, pointing out the limits of these approaches. This part includes:
  • Specification (temporal) languages;
  • Life-long V&V approaches.
Part 3: Fuzzy Temporal Requirements

This part presents requirements models and specification languages able to deal with the limitations highlighted in Part 2. In detail, this part introduces:

  • Goal models;
  • Fuzzy logic and fuzzy temporal logic;
  • Fuzzy temporal requirements languages.
Part 4: Monitoring Fuzzy Temporal Requirements

To cope with the continuous and unexpected changes that can affect service compositions, monitoring techniques are necessary. This part covers this topic, presenting:

  • Monitoring infrastructure;
  • Monitoring logic.

A case study will be presented and analysed across all parts.

El curso será dictado en inglés. La evaluación consiste en un examen con modalidad "take-home". Para tomar el curso es necesario tener conocimientos elementales de lógica.

 

Acerca de la profesora

Paola Spoletini is an assistant professor at the University of Insubria, Varese, Italy, since January 2008. She received her M.S. degree in Computer Science (2001) and her Ph.D. in Computer Science (2005) from Politecnico di Milano, Italy. She also received a M.S. degree in Electrical Engineering and Computer Science in 2001 from University of Illinois at Chicago. From March 2005 to December 2007, she worked at Politecnico di Milano as postdoctoral researcher.

Her research interests are mostly related to formal methods and requirements engineering. In particular, she has concentrated her research on the development of general-purpose techniques for verifying logic- or automata-based specifications, the definition of temporal logic-based languages and the implementation of corresponding verification techniques, and the application of verification techniques in engineering.