The Computer Journal
The architecture of an active database management system
SIGMOD '89 Proceedings of the 1989 ACM SIGMOD international conference on Management of data
Using Z: specification, refinement, and proof
Using Z: specification, refinement, and proof
Abstract State Machines: A Method for High-Level System Design and Analysis
Abstract State Machines: A Method for High-Level System Design and Analysis
Interactive Theorem Proving and Program Development
Interactive Theorem Proving and Program Development
Dynamo: amazon's highly available key-value store
Proceedings of twenty-first ACM SIGOPS symposium on Operating systems principles
The Chubby lock service for loosely-coupled distributed systems
OSDI '06 Proceedings of the 7th symposium on Operating systems design and implementation
CoreASM: An Extensible ASM Execution Engine
Fundamenta Informaticae - This is a SPECIAL ISSUE ON ASM'05
A practical approach to formal software verification by static analysis
ACM SIGAda Ada Letters
FASE '09 Proceedings of the 12th International Conference on Fundamental Approaches to Software Engineering: Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2009
Concurrent Abstract State Machines and + CAL Programs
Recent Trends in Algebraic Development Techniques
Isabelle/HOL: a proof assistant for higher-order logic
Isabelle/HOL: a proof assistant for higher-order logic
HOL-OCL: a formal proof environment for UML/OCL
FASE'08/ETAPS'08 Proceedings of the Theory and practice of software, 11th international conference on Fundamental approaches to software engineering
Modeling in Event-B: System and Software Engineering
Modeling in Event-B: System and Software Engineering
Bârun: a scripting language for CoreASM
ABZ'10 Proceedings of the Second international conference on Abstract State Machines, Alloy, B and Z
The spec# programming system: an overview
CASSIS'04 Proceedings of the 2004 international conference on Construction and Analysis of Safe, Secure, and Interoperable Smart Devices
Hi-index | 0.00 |
Many software companies still seem to be reluctant to use formal specifications in their development processes. Nevertheless, the trend towards implementing critical business applications in distributed environments makes such applications an attractive target for formal methods. Additionally, the rising complexity also increases the willingness of the development teams to apply formal techniques. In this paper, we report on our experiences in formally specifying several core components of one of our commercially available products. While writing the formal specification, we experienced several issues that had a noticeable consequences on our work. While most of these issues can be attributed to the specific method and tools we have used, we do consider some of the problems as more general, impeding the practical application of formal methods, especially by non-experts, in large scale industrial development.