Seminar: Trends in Service Oriented Computing - Model Driven Engineering

Hajautetut järjestelmät ja tietoliikenne
Syventävät opinnot
Vuosi Lukukausi Päivämäärä Periodi Kieli Vastuuhenkilö
2015 kevät 13.01-28.04. 3-4 Englanti Lea Kutvonen


Aika Huone Luennoija Päivämäärä
Ti 14-16 C220 Lea Kutvonen 03.03.2015-03.03.2015
Ti 14-16 C220 Lea Kutvonen 10.03.2015-28.04.2015

Information for international students

Service oriented computing

Service-oriented computing  (SOC) is a widely-spread and commonly accepted paradigm for providing software-supported services into the open internet, and utilising them in compositions. These service compositions get their structure from the set of business processes necessary for the collaboration between the organisations, enterprises, or individuals involved. Technical examples supporting the SOC ideology include web services: independently developed services with clear service and management interfaces are offered publicly, service users utilise offer repositories for the discovery and selection of the services, and can then bind to each other following the pattern represented by the business process models.

Alternatively, the SOC basic paradigm can be extended by including contracting services, so that trust and privacy-preservation between the partners, as well as collaboration monitoring can be based on a shared contract and the embedded regulations in it for breach detection.

Model driven engineering as part of SOC environments

The basic SOC paradigm and its extensions rely on the concept of models being used in multiple roles in the overall system architecture. For example, each service offer requires an interface description to be given; that interface description in itself is a(n aspect) model of  the syntax, semantic and externally observable behaviour of the service. Further, the offer repositories are categorised by service type, that is by a metalevel model, that is used for checking that the interface definition is of acceptable kind. Moreover, the contracting facilities and monitoring use models as well as the reference point for the agreement details.

For the SOC paradigm supporting environments it is essential that the service production processes produce not only the program code to (partially) implement each service, but also produce the corresponding models (metainformation) for them. The goal of model driven engineering in the context of service-oriented software engineering addresses these needs. The interesting questions include i)how to construct a useful model for each of the purposes, ii)how to ensure that software development processes and tools automatically support their creation, iii) how to direct the created models to repositories to become available for the right developer group, iv) how to ensure the models get reused in a meaningful manner, and v) how the models can be utilised at system runtime for the SOC functionalities. 

This seminar

Themes in this seminar include

  • the basics of model-driven engineering (MDE) in the context of SOC
  • engineering tools principles in MDE
  • modeling languages suitable for SOC environments
  • generating software from a model
  • handling of multi-platform environments in service software production
  • making code and model to depend from each other in such a way that change in one is automatically reflected as appropriate change in the other
  • domain specific languages for modeling business services and policies for their governance
  • tool cases and their interlinkage properties for SOC
  • aspect oriented modeling
  • model transformations
  • ontologies (model hierarchies) directing service ecosystem contents (i.e., acceptable services, acceptable collaboration patterns, norms)

Seminar working methods

Depending on the number of participants, we may try to write a consistent "learning material" or "technical report" on this topic as a group. 

In all cases, the texts and presentations produced in this seminar are required to be analytical, comparative, and evaluative in nature, not only descriptive, such as summaries of a single system or standard.

Initial reading before the seminar

Some other references in case you wish to go deeper beforehand

These references are by choise older ones, in order to choose ones that introduce the basic question setting first, with the unavoidable hindsight of references to older technologies.