Work Package 4

Language and Design Methodology

The main aim of this work package is to support the development of collective adaptive systems in a specifically-designed language called CAS-SCEL. This language is the extension and evolution of the SCEL language under development in another FET project. The extension will be mainly concerned with issues of collective adaptation in presence of a huge number of components that can be spatially distributed. In addition to the linguistic abstractions for modelling and manipulating knowledge, behaviour, aggregation, locations and interactions, specific linguistic constructs will be devised to support programming at different levels of abstraction. This will enable us to describe, e.g. the individual components, their location and their interaction but also to model the global behaviour.

  1. The first task in this work package is concerned with the CAS-SCEL language design. This language will offer the  possibility of integrating behavioural description and knowledge management and is equipped with specific abstractions or linguistic primitives for key concepts like knowledge, behaviour, aggregation, and interactions. The language will be based on formal theories, such as process calculi or multi-agent models, that will support the development of a comprehensive framework for the development, verification and analysis of collective adaptive systems.
  2. The second task is concerned with Programming collective adaptive systems.  This is motivated by the dual role of CAS-SCEL of being at the same time the target language of higher-level descriptions, like e.g. Statecharts or UML diagrams, and the source language for all the analysis and verification tools developed in the project, like e.g. the fluid model checker or other statistical model checkers. By providing a rich programming interface, the Eclipse Modelling Framework (EMF), will constitute a solid basis for meta-model transformation and manipulation, easing in particular the effort of developing parsers and textual editors for the language. Furthermore, it will give access to the Graphical Modelling Framework of Eclipse, for rapid development of graphical user interfaces.
  3. The final task in this work package is concerned with the Design workflow and analysis pathway.  We will specify a design workflow which details the steps which need to be taken to discharge social and ethical responsibilities to create collective adaptive systems which can be operated safely and cost-effectively. This workflow will be built into the modelling tools developed in work package 5 in the form of an analysis pathway. The design workflow which we create will list types of analysis which should be applied to the design of a collaborative system such as: static analysis, reachability analysis, deadlock detection, a single simulation study, simulation trace analysis, simulation ensemble studies, variability analysis, scalability analysis, large-scale mean field and fluid flow analysis, parameter estimation, qualitative model checking, quantitative model checking, fluid model checking, and other analyses.