A novel comprehensive and mathematically well-founded approach to the engineering
of service-oriented computing was developed within the SENSORIA project, including: An
ontology and a prototype modelling language for system modelling over service-oriented
architectures (WP1)
.
The prototype language ---
SRML (for Sensoria Reference Modelling Language) ---
was developed for modelling service-oriented systems. SRML operates at the higher levels of abstraction of business modelling,
i.e. it provides a number of semantic modelling primitives that are independent of the languages and platforms in which services
are programmed and executed. In particular, SRML abstracts from the typical mechanisms made available by service-oriented middleware
such as sessions and event/message correlation, as well as the brokers that are responsible for the discovery and binding of
services. Service-oriented extensions of UML
( WP1) to make the programming language and modelling primitives
available to practitioners, together with tools for supporting early prototyping, and analysis of properties and qualities of global
services. A set of programming language primitives for services
specification and interactions ( WP2) with associated process
calculi for service overlay computing. This includes primitives for explicitly modelling transactions with compensations, security,
performance, resources management, distribution, and context-awareness. The fundamental vehicle to undertake the task is the theory
of process calculi and the operational modelling as labelled transition systems, and the associated tools that have been developed for
designing, analysing, and experimenting open components interactions. A
mathematical basis for combining services ( WP5)
in order to formalise crucial aspects of service level agreements, to distil service aggregation patterns (negotiations) and to provide
a sound software architectural basis for dynamic reconfigurations. This includes a mathematical foundation of the quality of service
aspects of service level agreements, a process-algebra based theory of negotiation mechanisms for programming orchestration and
choreography of services, and a new constraint-based architectural description language for specifying and analysing architectural
styles for self-organising systems. A comprehensive set of techniques
and methods for qualitative and quantitative analysis of global services
( WP3 and
WP4)
and their interactions. Particular emphasis is put
on guaranteeing service level agreement and quality of services, on ensuring a high level of security and trust for the
location-transparent offer of services, on controlling resource usage of mobile services and on verifying behavioural properties
of services.
A suite of tools and techniques
for deploying service-oriented systems ( WP6 and
WP7) and for re-engineering of legacy software into services.
The development environment provides an Eclipse-based customizable IDE that integrates the tools developed and adapted within the
scope of the project. Tools are implemented as services and the environment provides a graphical editor for building tool chains
of services covering the whole model-driven workflow (development, analysis and deployment, etc. ). In addition, new mechanisms are
provided for the transformation of legacy systems into a service-oriented architecture.
A model-driven approach for service-oriented software development
( WP7) supporting early design testing and continuous formal
analysis of quality of service. This includes a novel approach to model transformations based on graph transformation systems,
a model-driven development process for service-oriented computing, tools supporting model transformations, iterative analysis and
verification processes, and an open lightweight development environment as service-oriented integration platform. A pattern catalog
was defined to help software developers chosse appropriate tools and techniques to develop service-oriented systems.
Continuous feedback from industrial partners on the
progress of the project through experimental case studies
( WP8)
which started from the beginning of the project. Industrial case studies focus on three domains: telecommunications, finance and
automotive applications. In addition, academic partners provided an e-university case study.
For disseminating and exploiting ( WP9,
WP10 and
WP11)
the results of SENSORIA the following channels are used:
publications
in the best scientific journals and major international conferences, organisation of project workshops and of an information days,
exhibitions,
summer schools, graduate and postgraduate courses.
|