Abstract State Machines, B and Z, First International Conference ABZ 2008
Precise Steps for Choreography Modeling for SOA Validation and Verification
EDCC 7: the Seventh European Dependable Computing Conference (EDCC-7)
Incremental Design of Distributed Systems with Event-B
The construction of formal models of real-time distributed systems is a considerable practical challenge. We propose and illustrate a pragmatic incremental approach in which detail is progressively added to abstract system-level specifications of functional and timing properties via intermediate models that express system architecture, concurrency and timing behaviour. The approach is illustrated by developing a new formal model of the cardiac pacemaker system proposed as a “grand challenge” problem in 2007. The models are expressed using the Vienna Development Method (VDM) and are validated primarily by scenario-based tests, including the analysis of timed traces. We argue that the insight gained using this staged modelling approach will be valuable in the subsequent development of implementations, and in detecting potential bottlenecks within suggested implementation architectures.
Incremental Development of a Distributed Real-Time Model of a Cardiac Pacing System using VDM
Refinement Patterns for Fault Tolerant Systems
The paper puts forward the idea of using fault tolerance refinement patterns to assist system developers in disciplined application of software fault tolerance mechanisms in rigorous system design. Two patterns are proposed to support a correct introduction of recovery blocks and N-version programming into a system model; these are formally defined and their correctness proven. We also discuss several important issues involved in the use of these patterns in engineering systems, including tool support and pattern composition.design) as a major means for improving the quality of products.
4th International Workshop on Exception Handling (WEH.08), at ACM SIGSOFT 2008/FSE 16
Probing the Depths of CSP-M: A New FDR-Compliant Validation Tool
Formal Modelling and Analysis of Business Information Applications with Fault Tolerant Middleware
Distributed information systems are critical to the functioning of many businesses; designing them to be dependable is a challenging but important task. We report our experience in using formal methods to enhance processes and tools for development of business information software based on service-oriented architectures. In our work, which takes place in an industrial setting, we focus on the configuration of middleware, verifying application-level requirements in the presence of faults. In pilot studies provided by SAP, we used the Event-B formalism and the open RODIN tools platform to prove properties of models of business protocols and expose weaknesses of certain middleware configurations with respect to particular protocols. We then extended the approach to use models automatically generated from diagrammatic design tools, opening the possibility of seamless integration with current development environments. Increased automation in the verification process, through domain-specific models and theories, is a goal for future work.
Aktors
en_US
Turning Shoe Information to Knowledge of Technology and Deals
Take a look at Nike and Adidas Shoe technology, and use Finish Line coupons to save money on athletic shoes and performance apparel
website
Eighth International Workshop on Automated Verification of Critical Systems
Linking Event-B and Concurrent Object-Oriented Programs
Seventh European Dependable Computing Conference (EDCC-7)
Easy Graphical Animation and Formula Visualisation for Teaching B
ProB is being used for teaching the B-method. In this paper, we present two new features of ProB that we have introduced while teaching B. One feature allows a student (or an expert user) to graphically visualise any predicate as a tree. The underlying algorithm can deal with undefined subformulas and tries to provide useful feedback even for existentially quantified formulas which are false. This feature is especially useful to inspect unexpected invariant violations or operations which are unexpectedly enabled or disabled. The other feature enables a student or lecturer to easily and quickly write custom graphical state representations, to provide a better understanding of the model. With this method, one simply has to assemble a series of pictures and to write an animation function in B itself, which stipulates which pictures should be shown where depending on the current state of the model. As an additional side-benefit, writing the animation function in B itself is a good exercise for students.
On the Purpose of Event-B Proof Obligations
Event-B is a formal modelling method which is claimed to be suitable for diverse modelling domains, such as reactive systems and sequential program development. This claim hinges on the fact that any particular model has an appropriate semantics. In Event-B this semantics is provided implicitly by proof obligations associated with a model. There is no fixed semantics though. In this article we argue that this approach is beneficial to modelling because we can use similar proof obligations across a variety of modelling domains. By way of two examples we show how similar proof obligations are linked to different semantics. A small set of proof obligations is thus suitable for a whole range of modelling problems in diverse modelling domains.
Deployment in the Space Sector (Slides for DEPLOY Newcastle Kick-off Meeting)
Mobile agent systems often require sophisticated cooperation and coordination during error detection and recovery. In this paper we propose novel fault tolerance mechanisms that support co-operative exception handling in such systems. The paper demonstrates how mechanisms like these can be formally developed and analysed. We start with identifying the typical modes of failures in agents and analysing possible failure and recovery scenarios in mobile systems. Stepwise refinement is used as our formal framework for top-down development and verification. Using the framework we formally verify the essential model properties, such as interoperability, local and global state consistency and termination of error recovery. Our approach provides developers with formal generic patterns for incorporating fault- tolerance mechanisms into mobile agent systems. We also demonstrate how the results of our formal development can be instantiated and reused in developing real-world agent software.in a search for resources or other agents. Openness allows a number of agents from different administration domains to form multi-agent applications. Anonymity is collateral to openness and equally essential for decoupling, security and scalability. Agents are autonomous because they participate in a multi-agent application to achieve their own goals, so they do not have to follow protocols enforced by the third parties.
Formal development of cooperative exception handling for mobile agent systems
Declarative Programming for Verification: Lessons and Outlook
The B Method : From Research to Teaching
Proceedings of the Fourth International Workshop on Exception Handling Co-located with the Sixteenth ACM SIGSOFT International Symposium on the Foundations of Software Engineering. Atlanta, USA
The connection between two ways of reasoning about partial functions
Undefined terms involving the application of partial functions and operators are common in program specifications and in discharging proof obligations that arise in design. One way of reasoning about partial functions with classical First-order Predicate Calculus (FoPC) is to use a non-strict equality notion so as to insulate logical operators from undefined operands. An alternative approach is to work only with strict (weak) equality but use an alternative Logic of Partial Functions (LPF)—a logic in which the “Law of the Excluded Middle” does not hold. This paper explores the relationships between the theorems that can be proved in the two approaches. The main result is that theorems in LPF using weak equality can be straightforwardly translated into ones that are true in FoPC; translation in the other direction results, in general, in more complicated expressions but in many cases these can be readily simplified. Such results are important if the laudable move towards interworking of formal methods tools is to be sound.
Deployment in the Space Sector (WP3 Meeting in Newcastle)
1st Int. workshop on Software Engineering for Resilient Systems - SERENE 2008
ProB gets Nauty: Effective Symmetry Reduction for B and Z Models
While pervasive systems offer versatile computing environment, their complexity poses a significant challenge to their developers. Hence ensuring resilience of pervasive systems is an important issue, which should be tackled by adopting rigorous design methods and systems approach. In this short paper we identify the key research directions in engineering pervasive resilient systems and our experience in rigorous development of a multi-agent application called Ambient Campus.
Towards Rigorous Engineering of Resilient Pervasive Systems
Computer Systems Science and Engineering
A Description of a Smallish Part of the BepiColombo (BC) MIXS/SIXS Onboard Instrument SW
Exception handling is one of the popular means used for improving dependability and supporting recovery in the Service-Oriented Architecture (SOA). This practical experience paper presents the results of error and fault injection into Web Services. We summarize our experiments with the SOA-specific exception handling features provided by the two development kits: the Sun Microsystems JAX-RPC and the IBM WebSphere Software Developer Kit for Web Services. The main focus of the paper is on analyzing exception propagation and performance as the major factors affecting fault tolerance (in, particular, error handling, and fault diagnosis) in Web Services.
Experimenting with Exception Propagation Mechanisms in Service-Oriented Architectures
UML-B is a graphical front end for Event-B. It adds support for class-oriented modelling but retains the Event-B concept of a closed system characterized by families of spontaneous events. UML-B is similar to UML but is essentially a new notation based on a separate meta-model. We provide tool support for UML-B, including drawing tools and a translator to generate Event-B models. The tools are closely integrated with the Event-B verification tools so that when a drawing is saved the translator automatically generates the corresponding Event-B model. The Event-B verification tools (syntax checker and prover) then run automatically providing an immediate display of problems. We introduce the UML-B notation its tool support and its integration with Event-B.
UML-B and Event-B: an integration of languages and tools
From Rigorous Requirements Engineering to Formal System Design of Safety-Critical Systems
The IASTED International Conference on Software Engineering - SE2008
SERENE '08: Proceedings of the 2008 RISE/EFTS Joint International Workshop on Software Engineering for Resilient Systems. Newcastle upon Tyne, United Kingdom
DEPLOY: industrial deployment of advanced system engineering methods for high productivity and dependability
Proceedings of the Fourth IEEE International Symposium on Service-Oriented System Engineering
UML-B: A plug-in for the Event-B tool set
The High Road to Formal Validation: Model Checking High-Level versus Low-Level Specifications
Modelling and proof of a Tree-structured File System
BepiColombo - Modelling Approach (Issue I)
Animation-based Validation of a Formal Model of Dynamic Virtual Organisations
We describe a study of the industrial use of animation in the analysis of a formal model of information flow in dynamic virtual organisations (VOs). A generic formal model of a VO structure composed of autonomous agents sharing information was developed using the Vienna Development Method (VDM). An exploratory environment was also developed in which the model was animated via an interpreter running an application-specific script developed with domain experts. A user interface encouraged interaction with the model without requiring exposure to the formalism. The use of the interface and model by domain experts was observed and recorded before debrief, allowing us to draw conclusions about the suitability of formal models for exploring, in an industrial setting, the design of policies governing VOs.
Publication export from Deploy
This ontology contains information detailing publications held by Deploy
SERENE '08: Proceedings of the 2008 RISE/EFTS Joint International Workshop on Software Engineering for Resilient Systems
An Incremental Development of the Mondex System in Event-B
Refine 2008 - International Refinement Workshop
Engineering Fault Tolerant Systems (Special issue)
La validation de modèles Event-B avec le plug-in ProB pour RODIN
The B-method, as well as its offspring Event-B, are both formal methods used for the development of critical computer systems whose correctness has to be formally established. Event-B now spurs the Rodin platform, which is based on Eclipse and can be extended via plug-ins. In this paper, we present two such plug-ins; one for animation and one for interactive proof support, called a disprover. Both plug-ins are based on the ProB tool as well as a translation of Event-B to classical B. With our new plug-ins, Rodin has now become a platform where a user can animate, prove and disprove formal models in an integrated fashion.
Problems in using RODIN platform in DEPLOY WP3