Integrating model checking and model based testing for industrial software development

2019 ◽  
Vol 104 ◽  
pp. 88-102 ◽  
Author(s):  
Emília Villani ◽  
Rodrigo Pastl Pontes ◽  
Guilherme Kisselofl Coracini ◽  
Ana Maria Ambrósio
Author(s):  
WOLFGANG GRIESKAMP ◽  
NICOLAS KICILLOF ◽  
NIKOLAI TILLMANN

We describe action machines, a framework for encoding and composing partial behavioral descriptions. Action machines encode behavior as a variation of labeled transition systems where the labels are observable activities of the described artifact and the states capture full data models. Labels may also have structure, and both labels and states may be partial with a symbolic representation of the unknown parts. Action machines may stem from software models or programs, and can be composed in a variety of ways to synthesize new behaviors. The composition operators described here include synchronized and interleaving parallel composition, sequential composition, and alternating simulation. We use action machines in analysis processes such as model checking and model-based testing. The current main application is in the area of model-based conformance testing, where our approach addresses practical problems users at Microsoft have in applying model-based testing technology.


Author(s):  
Vanessa Grosch

Requirements traceability enables the linkage between all development artifacts during the development process. Within model-based testing, requirements traceability links the original requirements with test model elements and generated test cases. Current approaches are either not practical or lack the necessary formal foundation for generating requirements-based test cases using model-checking techniques involving the requirements trace. This paper describes a practical and formal approach to ensure requirements traceability. The descriptions of the requirements are defined on path fragments of timed automata or timed state charts. The graphical representation of these paths is called a computation sequence chart (CSC). CSCs are automatically transformed into temporal logic formulae. A model-checking algorithm considers these formulae when generating test cases.


Author(s):  
Swapan Bhattacharya ◽  
Ananya Kanjilal ◽  
Sabnam Sengupta

Software testing has gained immense importance in the present competitive world of developing software more quickly, more efficiently and more accurately. Testing activity is carried out throughout the lifecycle of software development and not only towards the end of development. Time and effort required to correct errors, detected later is much more compared to those, which are detected earlier. This has direct impact on costs and has led to a splurge of research activities in this domain. Model-based testing has recently gained attention with the popularization of modeling itself. It refers to testing and test case generation based on a model that describes the behavior of the system. The OMG initiative MDA has revolutionized the way models would be used for software development. There are a number of modeling techniques in use today- some have formal syntax like Z, VDM while some are semi-formal like UML. We have made a comprehensive summary of a considerable number of research works on Model Based testing. First, the issues, challenges and problems of model based testing have been discussed. Then the different methods developed for testing or test case generation based on the models are summarized. Finally a list of model based testing tools used for testing has been collectively presented.


2009 ◽  
Vol 42 (21) ◽  
pp. 66-71 ◽  
Author(s):  
Rodrigo P. Pontes ◽  
Marcelo Essado ◽  
Paulo C. Véras ◽  
Ana Maria Ambrósio ◽  
Emília Villani

Author(s):  
S. Saravana Kumar

Testing is an important phase of quality control in Software development. Software testing is necessary to produce highly reliable systems. The use of a model to describe the behavior of a system is a proven and major advantage to test. In this paper, we focus on model-based testing. The term model- based testing refers to test case derivation from a model representing software behavior. We discuss model-based approach to automatic testing of object oriented software which is carried out at the time of software development. We review the reported research result in this area and also discuss recent trends. Finally, we close with a discussion of where model-based testing fits in the present and future of software engineering.


Author(s):  
Vanessa Grosch

Requirements traceability enables the linkage between all development artifacts during the development process. Within model-based testing, requirements traceability links the original requirements with test model elements and generated test cases. Current approaches are either not practical or lack the necessary formal foundation for generating requirements-based test cases using model-checking techniques involving the requirements trace. This paper describes a practical and formal approach to ensure requirements traceability. The descriptions of the requirements are defined on path fragments of timed automata or timed state charts. The graphical representation of these paths is called a computation sequence chart (CSC). CSCs are automatically transformed into temporal logic formulae. A model-checking algorithm considers these formulae when generating test cases.


Sign in / Sign up

Export Citation Format

Share Document