Petri nets: an introduction
Communicating sequential processes
Communicating sequential processes
Introduction to the ISO specification language LOTOS
Computer Networks and ISDN Systems - Special Issue: Protocol Specification and Testing
Process algebra
A Calculus of Communicating Systems
A Calculus of Communicating Systems
The Theory and Practice of Concurrency
The Theory and Practice of Concurrency
Efficient on-the-fly model-checking for regular alternation-free mu-calculus
Science of Computer Programming - Special issure on formal methods for industrial critical systems (FMICS 2000)
CADP - A Protocol Validation and Verification Toolbox
CAV '96 Proceedings of the 8th International Conference on Computer Aided Verification
Verification of JavaSpacesTM Parallel Programs
ACSD '03 Proceedings of the Third International Conference on Application of Concurrency to System Design
Formal Verification of Embedded Real-Time Software in Component-Based Application Frameworks
APSEC '01 Proceedings of the Eighth Asia-Pacific on Software Engineering Conference
Design and Analysis of Embedded Real-Time Systems: An Elevator Case Study
Design and Analysis of Embedded Real-Time Systems: An Elevator Case Study
Testing real-time embedded software using UPPAAL-TRON: an industrial case study
Proceedings of the 5th ACM international conference on Embedded software
Spin model checker, the: primer and reference manual
Spin model checker, the: primer and reference manual
Hi-index | 0.00 |
Modern copying machines are versatile and complex systems in which embedded software plays an essential role. The progress towards faster and more stable machines that can satisfy ever growing customers' needs, places strict requirements on the efficiency and quality of such software. In order to meet these requirements, the software should be well-designed and free of errors. Using modern formal verification techniques, software designs can be checked for errors and deadlocks so that their quality can be assessed and improved at an early stage of the development process. In this paper, we analyze the embedded software of an Automatic Document Feeder (ADF). ADFs are important components of copier machines. The ADF studied here is a prototype developed by Océ-Technologies B.V., a company that develops professional printing systems. We construct a model of the ADF in μcrl, a process algebra-based specification language, and express the system's requirements in the modal μ-calculus. Next, we use the μcrl and Cadp tool sets to check whether the system meets its requirements. This analysis reveals important errors in the ADF and we propose solutions to these problems. Also, we show that some requirements that engineers assumed to be valid, are too strict. We present slightly weaker versions of these requirements and show that these do hold. In this sense, in addition to finding errors in the ADF, our analysis also led to a better understanding of the behaviour the system.