Theoretical Computer Science
Experimentation in software engineering: an introduction
Experimentation in software engineering: an introduction
ConData: A Tool for Automating Specification-Based Test Case Generation for Communication Systems
Software Quality Control
Model Checking Large Software Specifications
IEEE Transactions on Software Engineering
Global vs. Local Model Checking: A Comparison of Verification Techniques for Infinite State Systems
SEFM '04 Proceedings of the Software Engineering and Formal Methods, Second International Conference
CODES+ISSS '05 Proceedings of the 3rd IEEE/ACM/IFIP international conference on Hardware/software codesign and system synthesis
A comparison of BDDs, BMC, and sequential SAT for model checking
HLDVT '03 Proceedings of the Eighth IEEE International Workshop on High-Level Design Validation and Test Workshop
Model Checking Process with Goal Oriented Requirements Analysis
APSEC '08 Proceedings of the 2008 15th Asia-Pacific Software Engineering Conference
Model-based testing approaches selection for software projects
Information and Software Technology
Empirical Software Engineering
Systematic Model-Based Testing of Embedded Automotive Software
Electronic Notes in Theoretical Computer Science (ENTCS)
Abstractions for Model-Based Testing
Electronic Notes in Theoretical Computer Science (ENTCS)
FSM-based conformance testing methods: A survey annotated with experimental evaluation
Information and Software Technology
Benchmarking software requirements documentation for space application
SAFECOMP'10 Proceedings of the 29th international conference on Computer safety, reliability, and security
Timed automata based analysis of embedded system architectures
IPDPS'06 Proceedings of the 20th international conference on Parallel and distributed processing
Survey: Linear Temporal Logic Symbolic Model Checking
Computer Science Review
Hi-index | 0.00 |
The role of embedded software in the last space accidents highlights the importance of verification and validation techniques for the development of space embedded software. In this context, this work analyses the contribution of two verification techniques applied to the onboard data handling software of space products. The first technique is model checking. The system is modeled by a set of timed automata and the verification of safety and liveness properties is performed using UPPAAL model checker. The verified model is then used to generate the embedded software. The second technique analyzed in this work is model based approach for the generation of test cases. The Conformance and Fault Injection (CoFI) testing methodology is used to guide the development of a set of Finite State Machine (FSM) models from the software specification. The test suite is automatically generated from the FSM models. The contributions of the two methodologies are analyzed based on the results provided by an experiment. Two software products are used as case study, each one implementing two services of the Packet Utilization Standard (PUS). These services represent the functionalities offered by a satellite onboard data handling computer. One of the products is developed with the aid of model checking, while the other is developed according to the practices currently used at the Instituto Nacional de Pesquisas Espaciais (INPE). Both software products are tested by the CoFI methodology. The experiment highlights the advantages and vulnerable points of model checking. It also demonstrates that the main contribution of CoFI testing methodology is to highlight problems related to situations that have not been considered in the software specification, such as the occurrence of inopportune events. This analysis helps to understand how different techniques can be integrated in the design of critical embedded software.