Foundations for architectural design: Service certification, dynamic reconfiguration and self-adaptability




Project Workshops


tinynew.gif 11 August 11 Paper accepted at FACS'11: A. Sanchez, L. S. Barbosa and D. Riesco. Bigraphical Modelling of Architectural Patterns

tinynew.gif 8 August 11 Paper accepted at EI2N'11: N. Rodrigues, N. Oliveira and L. S. Barbosa. The role of coordination analysis in software integration projects

tinynew.gif 19 June 11 Paper accepted at SEFM'11: A. Madeira, J. M. Faria, M. A. Martins and L. S. Barbosa. Hybrid specification of reactive systems: An institutional approach

27 April 11 Paper accepted at Refine'11: C. J. Rodrigues, M. A. Martins, A. Madeira and L. Barbosa. Refinement by interpretation in Pi-institutions

21 April 11 Paper accepted at CALCO'11: M. A. Martins, A. Madeira, R. Diaconescu and L. Barbosa. Hybridization of Institutions

21 April 11 Paper accepted at CALCO-Tools: A. Martins, L. Barbosa, N. F. Rodrigues. SHACC: A functional animator for a component calculus

New *journal paper: D. Hofmann and P. Waszkiewicz. Approximation in quantale-enriched categoriess, TA 158 (8), 2011.

12 Mar 11 Paper accepted at CiE'11: A. Madeira, M.A. Martins and L. S. Barbosa. Models as arrows: the role of dialgebras

10 Mar 11 Paper accepted at CBSEC'11: A. Madeira, J. M. Faria, M. A. Martins, L. S. Barbosa. On requirements engineering for reactive systems: A formal methodology

New journal paper: D. Hofmann and I. Stubbe. Towards Stone duality for topological theories, TA 158 (7), 2011.

25 Feb 11 Paper accepted at TICTTL'11: M.A. Martins, A. Madeira and L. S. Barbosa. Reasoning about complex requirements in a uniform setting

1 Feb 11 Paper accepted at RAMiCS 12: Mu, Shin Cheng and J.N. Oliveira. Programming from Galois Connections

New journal paper: N. F. Rodrigues and L. S. Barbosa. Slicing for Architectural Analysis, SCP 75 (10), 2010.

Project Summary

The problem

Continuous evolution towards very large, heterogeneous, highly dynamic computing systems requires innovative approaches to master their complexity. Services are not only re-shaping the Web from a document-centered to a live infrastructure, but also challenging our understanding of how applications develop, and even of the nature of software itself (regarded more as a service to be contracted than as a product to acquire). The impact of such a move, both in the world's economy and everyday life, is just beginning to loom.

Complex software systems are built by plugging services together which interact by exchanging data, performing computation, and modifying their environment. Services are dynamic entities, running on different platforms often owned by different organisations, interacting through public interfaces, and typically remaining loosely coupled, if not utterly unaware of each other.

Designing such systems right is very difficult, because their complexity is beyond the current practical reach of formal methods. Additional difficulties arise with third-party services, often under-specified or failing to meet their specifications. Moreover, change being the norm rather than the exception, dynamic reconfiguration and self-adaptability, ie, the capability of a system to adjust itself at runtime in response to its perception of context, will become a major issue in the near future.

The project

In this context, this project aims at developing new calculi, techniques and tools to address three main hot, cross-cutting questions in the foundations of service-oriented computing:

(1) How to specify and certify service behavioural requirements (to guarantee compliance with interface specifications and provide support to fast-evolving requirements at both functional and non-functional levels)?

(2) How to certify and reason about service-oriented architectural patterns and systems emergent behaviour?

(3) How to design, analyse and transform evolving networks of dynamically reconfigurable components and self-adaptable architectures?

These themes are relevant to a wide range of systems, from e-commerce to mobile embedded systems operated with minimal human oversight in the context of which the classical distinction between between `development', `deployment' and `maintenance' tends to blur. Although a technological reality, runtime service reconfiguration is hard to model, analyse and predict. Although less common, architectures able to monitor and adapt themselves to faults (eg lost connections or service failures), to variable resources (eg bandwidth availability) and to unpredictable context changes, will grow in relevance in the near future.

The approach

The envisaged approach to meet such targets considers eagerly both extremes of the research spectrum: foundational and experimental.

At a foundational level, the project will introduce a new calculus and semantic framework for services and dynamic, self-adaptable architectural patterns, at the triple level of logic, (minimal logic systems), model theory (dialgebras and behavioural satisfaction) and proof dynamics (non-confluent rewriting). Behavioural reasoning is particularly relevant because service certification often relies on partial information. The project explores the possibility of different families of services being endowed with particular notions of behaviour to meet specific problem constraints.

At the experimental level, on the other side of the spectrum, the project aims at characterising useful architectural patterns for services. Rather than postulated, their identification and classification will proceed by inspection of real case studies. For this we will extend tools, previously developed within the team, to recover coordination specifications from running code.

MONDRIAN aims at harnessing the combined expertise of a mixed team of Mathematicians and Computer Scientists to make a sharp, focused contribution to a main goal: the consolidation of service-oriented computing as a mature branch of software engineering.

-- LuisSoaresBarbosa - 28 Oct 2009

r1 - 28 Oct 2009 - 17:52:33 - LuisSoaresBarbosa
This site is powered by the TWiki collaboration platform Copyright © by the contributing authors. Ideas, requests, problems? Send feedback.
Syndicate this site RSSATOM