Step-Wise Development of Resilient Ambient Campus Scenarios

This paper puts forward a new approach to developing resilient ambient applications. In its core is a novel rigorous development method supported by a formal theory that enables us to produce a well-structured step-wise design and to ensure disciplined integration of error recovery measures into the resulting implementation. The development method, called AgentB, uses the idea of modelling database to support a coherent development of and reasoning about several model views, including the variable, event, role, agent and protocol views. This helps system developers in separating various modelling concerns and makes it easier for future tool developers to design a toolset supporting this development. Fault tolerance is systematically introduced during the development of various model views. The approach is demonstrated through the development of several application scenarios within an ambient campus case study conducted at Newcastle University (UK) as part of the FP6 RODIN project.

[1]  Cliff B. Jones,et al.  RODIN (Rigorous Open Development Environment for Complex Systems) , 2005 .

[2]  Peter Sommerlad,et al.  Pattern-Oriented Software Architecture: A System of Patterns: John Wiley & Sons , 1987 .

[3]  Alexander Romanovsky,et al.  Structured Coordination Spaces for Fault Tolerant Mobile Agents , 2006, Advanced Topics in Exception Handling Techniques.

[4]  B. J. Ferro Castro,et al.  Pattern-Oriented Software Architecture: A System of Patterns , 2009 .

[5]  Elena Troubitsyna,et al.  Rigorous Open Development Environment for Complex Systems ) , 2005 .

[6]  B. F. Castro Buschmann, Frank; Meunier, Regine; Rohnert, Hans; Sommerlad, Peter; Stal, Michael. Pattern-oriented software architecture: a system of patterns, John Wiley & Sons Ltd, 1996 , 1997 .

[7]  R. M. McKeag,et al.  On the Construction of Programs , 1980 .

[8]  Maciej Koutny,et al.  A method and tool for design of multi-agent systems , 2008, ICSE 2008.

[9]  Paulo S. C. Alencar,et al.  Software Engineering for Multi-Agent Systems II , 2004 .

[10]  C. A. R. Hoare,et al.  Communicating sequential processes , 1978, CACM.

[11]  Jeannette M. Wing What is a specification language ? , 2001 .

[12]  Brian Randell,et al.  System structure for software fault tolerance , 1975, IEEE Transactions on Software Engineering.

[13]  Elena Troubitsyna,et al.  Initial Report on Case Study Development , 2005 .

[14]  Ib Holm Sørensen A Specification Language , 1981, Program Specification.

[15]  Budi Arief,et al.  On Rigorous Design and Implementation of Fault Tolerant Ambient Systems , 2007, 10th IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC'07).

[16]  Jean-Raymond Abrial,et al.  The B-book - assigning programs to meanings , 1996 .

[17]  Frantisek Plasil,et al.  Exceptions in Component Interaction Protocols - Necessity , 2004, Architecting Systems with Trustworthy Components.

[18]  Jørgen Lindskov Knudsen,et al.  Advanced Topics in Exception Handling Techniques (the book grow out of ECOOP workshops) , 2006, Advanced Topics in Exception Handling Techniques.

[19]  Budi Arief,et al.  On Developing Open Mobile Fault Tolerant Agent Systems , 2006, SELMAS.

[20]  Alexander Romanovsky,et al.  Refinement Patterns for Fault Tolerant Systems , 2008, 2008 Seventh European Dependable Computing Conference.

[21]  Alexei Iliasov Refinement patterns for rapid development of dependable systems , 2007, EFTS '07.