Software Engineering and Service-Oriented Systems 2013

Scope of the course

Service-Oriented Computing (SOC) is an emerging paradigm where services are understood as autonomous, platform-independent computational entities that can be described, published, categorised, discovered, and dynamically assembled for developing massively distributed, interoperable, evolvable systems and applications. In this course a model-driven approach to the development of service-oriented software systems is presented where foundational theories and techniques are integrated in a pragmatic software engineering approach. In particular, an overview of the technologies that form the foundations of SOC is given, such as Web services and orchestration languages.  Then, a calculus-based approach for specifying and analysing SOC systems is presented. Afterwards, it will be provided an introduction to modelling service-oriented systems in a diagrammatic style with UML and their formal foundations in terms of process algebra and automata are presented. It will be shown how mathematical models can be generated by model transformations and further used for qualitative and quantitative analysis of service-oriented software. Finally, the focus of the course moves to Autonomic Computing and specific programming abstractions and software engineering techniques are illustrated.

Lecturers

Dates

  • September 9, 11:30-13:30 (Tiezzi): SOC technologies
  • September 11, 11:30-13:30 (Tiezzi): Specification and Analysis of SOC systems
  • September 13, 11:30-13:30 (Tiezzi): Specification and Analysis of SOC systems
  • September 16, 09:30-11:00 (Wirsing): Model-Driven Development for SOC systems
  • September 17, 09:30-11:00 (Wirsing): Model-Driven Development for SOC systems
  • September 18, 09:30-11:00 (Wirsing): Model-Driven Development for SOC systems
  • September 19, 09:30-11:00 (Wirsing): Model-Driven Development for SOC systems
  • + 2h in the afternoon of Sept 18 or Sept 19 (Wirsing)
  • September 24, 9:30-11:30 (Tiezzi): a formal approach to autonomic systems programming
  • September 26, 9:30-11:30 (Tiezzi/Loreti): a formal approach to autonomic systems programming

Slides

Tools

Papers