Издательство Springer, 2009, -349 pp.
The growing complexity of mode software systems increases the difficulty of ensuring the overall dependability of software-intensive systems. Complexity of environments, in which systems operate, high dependability requirements that systems have to meet, as well as the complexity of infrastructures on which they rely make system design a true engineering challenge.
Mastering system complexity requires design techniques that support clear thinking and rigorous validation and verification. Formal design methods help to achieve this. Coping with complexity also requires architectures that are tolerant of faults and of unpredictable changes in environment. This issue can be addressed by fault-tolerant design techniques. Therefore, there is a clear need of methods enabling rigorous modelling and development of complex fault-tolerant systems.
This book addresses such acute issues in developing fault-tolerant systems as:
– Verification and refinement of fault-tolerant systems
– Integrated approaches to developing fault-tolerant systems
– Formal foundations for error detection, error recovery, exception and fault handling
– Abstractions, styles and pattes for rigorous development of fault tolerance
– Fault-tolerant software architectures
– Development and application of tools supporting rigorous design of dependable systems
– Integrated platforms for developing dependable systems
– Rigorous approaches to specification and design of fault tolerance in novel computing systems
The editors of this book were involved in the EU (FP-6) project RODIN (Rigorous Open Development Environment for Complex Systems), which brought together researchers from the fault tolerance and formal methods communities. In 2007 RODIN organized the MeMoT workshop1 held in conjunction with the Integrated Formal Methods 2007 Conference at Oxford University. The aim of this workshop was to bring together researchers who were interested in the application of rigorous design techniques to the development of fault-tolerant software-intensive systems.
We proposed to the authors of the best workshop papers to expand their work and a number of well-established researchers working in the area to write invited chapters. This book contains the refereed and revised papers that came in response. Twelve of the papers are reworked from the workshop; three papers are invited.
Part I: Formal Reasoning about Fault Tolerant
Systems and Protocols
Graphical Modelling for Simulation and Formal Analysis of Wireless Network Protocols
Reasoning about System-Degradation and Fault-Recovery with Deontic Logic
Temporal Verification of Fault-Tolerant Protocols
Design and Verification of Fault-Tolerant Components
Dynamically Detecting Faults via Integrity Constraints
Part II: Fault Tolerance: Modelling in B
Event-B Pattes for Specifying Fault-Tolerance in Multi-agent Interaction
Formal Reasoning about Fault Tolerance and Parallelism in Communicating Systems
Formal Development of a Total Order Broadcast for Distributed Transactions Using Event-B
Model-Based Testing Using Scenarios and Event-B Refinements
Part III: Fault Tolerance in System Development Process
Recording Process Documentation in the Presence of Failures
DREP: A Requirements Engineering Process for Dependable Reactive Systems
Documenting the Progress of the System Development
Fault Tolerance Requirements Analysis Using Deviations in the CORRECT Development Process
Part IV: Fault Tolerant Applications
Step-Wise Development of Resilient Ambient Campus Scenarios
Using Inherent Service Redundancy and Diversity to Ensure Web Services Dependability
The growing complexity of mode software systems increases the difficulty of ensuring the overall dependability of software-intensive systems. Complexity of environments, in which systems operate, high dependability requirements that systems have to meet, as well as the complexity of infrastructures on which they rely make system design a true engineering challenge.
Mastering system complexity requires design techniques that support clear thinking and rigorous validation and verification. Formal design methods help to achieve this. Coping with complexity also requires architectures that are tolerant of faults and of unpredictable changes in environment. This issue can be addressed by fault-tolerant design techniques. Therefore, there is a clear need of methods enabling rigorous modelling and development of complex fault-tolerant systems.
This book addresses such acute issues in developing fault-tolerant systems as:
– Verification and refinement of fault-tolerant systems
– Integrated approaches to developing fault-tolerant systems
– Formal foundations for error detection, error recovery, exception and fault handling
– Abstractions, styles and pattes for rigorous development of fault tolerance
– Fault-tolerant software architectures
– Development and application of tools supporting rigorous design of dependable systems
– Integrated platforms for developing dependable systems
– Rigorous approaches to specification and design of fault tolerance in novel computing systems
The editors of this book were involved in the EU (FP-6) project RODIN (Rigorous Open Development Environment for Complex Systems), which brought together researchers from the fault tolerance and formal methods communities. In 2007 RODIN organized the MeMoT workshop1 held in conjunction with the Integrated Formal Methods 2007 Conference at Oxford University. The aim of this workshop was to bring together researchers who were interested in the application of rigorous design techniques to the development of fault-tolerant software-intensive systems.
We proposed to the authors of the best workshop papers to expand their work and a number of well-established researchers working in the area to write invited chapters. This book contains the refereed and revised papers that came in response. Twelve of the papers are reworked from the workshop; three papers are invited.
Part I: Formal Reasoning about Fault Tolerant
Systems and Protocols
Graphical Modelling for Simulation and Formal Analysis of Wireless Network Protocols
Reasoning about System-Degradation and Fault-Recovery with Deontic Logic
Temporal Verification of Fault-Tolerant Protocols
Design and Verification of Fault-Tolerant Components
Dynamically Detecting Faults via Integrity Constraints
Part II: Fault Tolerance: Modelling in B
Event-B Pattes for Specifying Fault-Tolerance in Multi-agent Interaction
Formal Reasoning about Fault Tolerance and Parallelism in Communicating Systems
Formal Development of a Total Order Broadcast for Distributed Transactions Using Event-B
Model-Based Testing Using Scenarios and Event-B Refinements
Part III: Fault Tolerance in System Development Process
Recording Process Documentation in the Presence of Failures
DREP: A Requirements Engineering Process for Dependable Reactive Systems
Documenting the Progress of the System Development
Fault Tolerance Requirements Analysis Using Deviations in the CORRECT Development Process
Part IV: Fault Tolerant Applications
Step-Wise Development of Resilient Ambient Campus Scenarios
Using Inherent Service Redundancy and Diversity to Ensure Web Services Dependability