Information-flow and data-flow analysis of while-programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
The Z notation: a reference manual
The Z notation: a reference manual
Z in practice
CADiZ : an architecture for Z tools and its implementation
Software—Practice & Experience
Combining static worst-case timing analysis and program proof
Real-Time Systems
Using Z: specification, refinement, and proof
Using Z: specification, refinement, and proof
The way of Z: practical programming with formal methods
The way of Z: practical programming with formal methods
Applications of Formal Methods
Applications of Formal Methods
FME '96 Proceedings of the Third International Symposium of Formal Methods Europe on Industrial Benefit and Advances in Formal Methods
FME '97 Proceedings of the 4th International Symposium of Formal Methods Europe on Industrial Applications and Strengthened Foundations of Formal Methods
Breaking Through the V and V Bottleneck
Proceedings of the Second International Eurospace - Ada-Europe Symposium on Ada in Europe
More Powerful Z Data Refinement: Pushing the State of the Art in Industrial Refinement
ZUM '98 Proceedings of the 11th International Conference of Z Users on The Z Formal Specification Notation
On the Refinement and Simulation of Data Types and Processes
IFM '99 Proceedings of the 1st International Conference on Integrated Formal Methods
What Does Industry Need From Formal Specification Techniques?
WIFT '98 Proceedings of the Second IEEE Workshop on Industrial Strength Formal Specification Techniques
Industrial experience with SPARK
ACM SIGAda Ada Letters - special issue on presentations from SIGAda 2000
The SPARK way to correctness is via abstraction
ACM SIGAda Ada Letters - special issue on presentations from SIGAda 2000
Industrial strength exception freedom
Proceedings of the 2002 annual ACM SIGAda international conference on Ada: The engineering of correct and reliable software for real-time & distributed systems using Ada and related technologies
IEEE Software
Logic versus Magic in Critical Systems
Ada Europe '01 Proceedings of the 6th Ade-Europe International Conference Leuven on Reliable Software Technologies
Closing the Loop: The Influence of Code Analysis on Design
Ada-Europe '02 Proceedings of the 7th Ada-Europe International Conference on Reliable Software Technologies
Correctness by Construction: Integrating Formality into a Commercial Development Process
FME '02 Proceedings of the International Symposium of Formal Methods Europe on Formal Methods - Getting IT Right
Enforcing security and safety models with an information flow analysis tool
Proceedings of the 2004 annual ACM SIGAda international conference on Ada: The engineering of correct and reliable software for real-time & distributed systems using Ada and related technologies
Correctness by construction: a manifesto for high integrity software
SCS '05 Proceedings of the 10th Australian workshop on Safety critical systems and software - Volume 55
An Integrated Approach to High Integrity Software Verification
Journal of Automated Reasoning
Cooperative reasoning for automatic software verification
Proceedings of the second workshop on Automated formal methods
A Mechanical Analysis of Program Verification Strategies
Journal of Automated Reasoning
On the Formal Development of Safety-Critical Software
Verified Software: Theories, Tools, Experiments
Tool Integration for Reasoned Programming
Verified Software: Theories, Tools, Experiments
Using formal specifications to support testing
ACM Computing Surveys (CSUR)
Ranking programs using black box testing
Proceedings of the 5th Workshop on Automation of Software Test
A systematic literature review of software quality cost research
Journal of Systems and Software
Verification condition generation via theorem proving
LPAR'06 Proceedings of the 13th international conference on Logic for Programming, Artificial Intelligence, and Reasoning
Smart certification of mixed criticality systems
Ada-Europe'05 Proceedings of the 10th Ada-Europe international conference on Reliable Software Technologies
Three perspectives in formal engineering
ICFEM'06 Proceedings of the 8th international conference on Formal Methods and Software Engineering
Why programming languages still matter
Rigorous Development of Complex Fault-Tolerant Systems
The art and science of software architecture
ECSA'07 Proceedings of the First European conference on Software Architecture
Hi-index | 0.00 |
This paper describes the use of formal development methods on an industrial safety-critical application. The Z notation was used for documenting the system specification and part of the design, and the SPARK1 subset of Ada was used for coding.However, perhaps the most distinctive nature of the project lies in the amount of proof that was carried out: proofs were carried out both at the Z level驴approximately 150 proofs in 500 pages驴and at the SPARK code level驴approximately 9,000 verification conditions generated and discharged. The project was carried out under UK Interim Defence Standards 00-55 and 00-56, which require the use of formal methods on safety-critical applications. It is believed to be the first to be completed against the rigorous demands of the 1991 version of these standards. The paper includes comparisons of proof with the various types of testing employed, in terms of their efficiency at finding faults. The most striking result is that the Z proof appears to be substantially more efficient at finding faults than the most efficient testing phase. Given the importance of early fault detection, we believe this helps to show the significant benefit and practicality of large-scale proof on projects of this kind.