Computing Science
Total Page:16
File Type:pdf, Size:1020Kb
UNIVERSITY OF NEWCASTLE University of Newcastle upon Tyne COMPUTING SCIENCE Proceedings of the Workshop on Methods, Models and Tools for Fault Tolerance M. Butler, C. B. Jones, A. Romanovsky, E. Troubitsyna. TECHNICAL REPORT SERIES No. CS-TR-1032 June, 2007 TECHNICAL REPORT SERIES No. CS-TR-1032 June, 2007 Proceedings of the Workshop on Methods, Models and Tools for Fault Tolerance Michael Butler, Cliff Jones, Alexander Romanovsky, Elena Troubitsyna. Abstract These are the Proceedings of the workshop organized at IFM 2007 in Oxford (June 3, 2007). © 2007 University of Newcastle upon Tyne. Printed and published by the University of Newcastle upon Tyne, Computing Science, Claremont Tower, Claremont Road, Newcastle upon Tyne, NE1 7RU, England. Bibliographical details BUTLER, M., JONES, C. B., ROMANOVSKY, A., TROUBITSYNA, E. Proceedings of the Workshop on Methods, Models and Tools for Fault Tolerance [By] M. Butler, C. B. Jones, A. Romanovsky, E. Troubitsyna. Newcastle upon Tyne: University of Newcastle upon Tyne: Computing Science, 2007. (University of Newcastle upon Tyne, Computing Science, Technical Report Series, No. CS-TR-1032) Added entries UNIVERSITY OF NEWCASTLE UPON TYNE Computing Science. Technical Report Series. CS-TR-1032 Abstract These are the Proceedings of the workshop organized at IFM 2007 in Oxford (June 3, 2007). About the author Cliff Jones is currently Professor of Computing Science and Project of the IRC on “Dependability of Computer- Based Systems”. He has spent more of his career in industry than academia. Fifteen years in IBM saw among other things the creation with colleagues in Vienna of VDM. Cliff is a fellow of the BCS, IEE and ACM. He Received a (late) Doctorate under Tony Hoare in Oxford in 1981 and immediately moved to a chair at Manchester University where he built a strong Formal Methods group which among other projects was the academic partner in the largest Alvey Software Engineering project (IPSE 2.5 created the "mural" theorem proving assistant). During his time at Manchester, Cliff had an SRC 5-year Senior Fellowship and spent a sabbatical at Cambridge with the Newton Institute event on "Semantics". Much of his research at this time focused on formal (compositional) development methods for concurrent systems. In 1996 he moved to Harlequin directing some 50 developers on Information Management projects and finally became overall Technical Director before leaving to re-join academia in 1999. Cliff's interests in formal methods have now broadened to reflect wider issues of dependability. Alexander (Sascha) Romanovsky is a Professor in the CSR. He received a M.Sc. degree in Applied Mathematics from Moscow State University and a PhD degree in Computer Science from St. Petersburg State Technical University. He was with this University from 1984 until 1996, doing research and teaching. In 1991 he worked as a visiting researcher at ABB Ltd Computer Architecture Lab Research Center, Switzerland. In 1993 he was a visiting fellow at Istituto di Elaborazione della Informazione, CNR, Pisa, Italy. In 1993-94 he was a post-doctoral fellow with the Department of Computing Science, the University of Newcastle upon Tyne. In 1992-1998 he was involved in the Predictably Dependable Computing Systems (PDCS) ESPRIT Basic Research Action and the Design for Validation (DeVa) ESPRIT Basic Project. In 1998-2000 he worked on the Diversity in Safety Critical Software (DISCS) EPSRC/UK Project. Prof Romanovsky was a co-author of the Diversity with Off-The-Shelf Components (DOTS) EPSRC/UK Project and was involved in this project in 2001-2004. In 2000-2003 he was in the executive board of Dependable Systems of Systems (DSoS) IST Project. Now he is coordinating Rigorous Open Development Environment for Complex Systems (RODIN) IST Project (2004-2007). Suggested keywords FAULT TOLERANCE, FORMAL METHODS, SYSTEM DEVELOPMENT, ERROR RECOVERY Workshop on Methods, Models and Tools for Fault Tolerance Proceedings July 3, 2007 Oxford Michael Butler, Southampton University, UK Cliff Jones, Newcastle University, UK Alexander Romanovsky, Newcastle University, UK Elena Troubitsyna, Aabo Akademi, Finland FP6 IST RODIN (Rigorous Open Development Environment for Complex Systems) http://rodin.cs.ncl.ac.uk/ The Workshop on Methods, Models and Tools for Fault Tolerance, is being held at the Integrated Formal Methods 2007 Conference on 3 July 2007 in Oxford. The aim of the workshop is to bring together researchers in design of fault tolerance systems with researchers in formal methods in order to help foster greater collaboration between these research fields. This follows on from a very the very successful Workshop on Rigorous Engineering of Fault Tolerant systems held in Newcastle in July 2005 at Formal Methods 2007. As a selection of extended papers from that workshop we published a book: M. Butler, C. Jones, A. Romanovsky and E. Troubitsyna (Eds.). Rigorous Development of Complex Fault-Tolerant Systems. Lecture Notes in Computer Science, vol. 4157, Springer Verlag, September 2006. This workshop is organised by the partners of FP6 IST RODIN (Rigorous Open Development Environment for Complex Systems), who are aiming to build a network of researchers from a wider community to promote integration of the dependability and formal methods fields. Faults are unavoidable in all large systems and therefore designing for fault tolerance is essential. We believe that the use of formal methods is essential for mastering the complexity inherent in systems with faults and mechanism for tolerating those faults. Formal modelling and analysis helps designers to identify faults and to understand the effect of faults on systems behaviour. Modelling and analysis also helps designers understand the contribution of fault-tolerance mechanisms to overall system dependability. Faulty behaviour and fault tolerance provide a challenging application area for formal methods. This workshop will help researchers to further elaborate the challenges involved in applying formal methods to fault tolerance systems as well as helping to exchange ideas on addressing the challenges. Michael Butler, Southampton University, UK Cliff Jones, Newcastle University, UK Alexander Romanovsky, Newcastle University, UK Elena Troubitsyna, Aabo Akademi, Finland July 2007 2 Table of Contents Part 1. Fault tolerance: Modelling in B Elisabeth Ball, Michael Butler. Event-B Patterns for Specifying Fault-Tolerance in Multi-Agent Interaction ......................................................................................................................................................... 4 Alexei Iliasov, Victor Khomenko, Maciej Koutny, Apostolos Niaouris, Alexander Romanovsky. Mobile B Systems ........................................................................................................................................... 14 Linas Laibinis, Elena Troubitsyna, Sari Leppanen. Formal Reasoning about Fault Tolerance and Parallelism in Communicating Systems ......................................................................................................... 24 Divakar Yadav, Michael Butler. Formal development of Fault Tolerant Transactions for Replicated Database using Ordered Broadcasts ............................................................................................................... 33 Part 2. Fault tolerance: requirements, modeling and verification Pablo F.Castro, Tom S.E. Maibaum. Reasoning about System-Degradation and Fault-Recovery with Deontic Logic ................................................................................................................................................. 43 Andrey Berlizev, Nicolas Guelfi. Engineering Fault-tolerance Requirements using Deviations and the FIDJI Methodology ........................................................................................................................................ 53 Qaisar A. Malik, Johan Lilius, Linas Laibinis. Model-based Testing Using Scenarios and Event-B Refinements .................................................................................................................................................... 59 Dubravka Ilic, Elena Troubitsyna, Linas Laibinis, Colin Snook. Formalizing UML-based Development of Fault Tolerant Control Systems .......................................................................................... 70 Part 3. Fault tolerant applications, formal verification Ansgar Fehnker, Matthias Fruth, Annabelle McIver. Graphical modelling for simulation and formal analysis of wireless network protocols .......................................................................................................... 80 Michael Fisher, Boris Konev, Alexei Lisitsa. Temporal Verification of Fault-Tolerant Protocols ............. 88 Nathan Weston, Francois Taiani, Awais Rashid. Interaction Analysis for Fault Tolerance in Aspect- Oriented Programming ................................................................................................................................... 95 Budi Arief, Alexei Iliasov, Alexander Romanovsky. Rigorous Development of Ambient Campus Applications that can Recover from Errors ................................................................................................. 103 Part 4. Processes and architectures Ayda Saidane. SERENITY: A Generic framework for Dependability Construction. A Patterns Oriented Approach ......................................................................................................................................