Abstract
Model based testing is used to validate the actual system against its requirements described as formal specification, while formal verification proves that a requirement is not violated in the overall system. Verifying properties, in certain cases, becomes very expensive (or unpractical), mainly when the application of test techniques is enough for the users purposes. The Modified Condition/Decision Coverage (MC/DC), used in the avionics software industry, is recognised as a good technique to find out the possible mistakes on programs logics because it covers how each condition can affect the programs’ decisions outcomes. It has also been adapted to provide the coverage of specifications in the requirements-based approach.
This paper proposes a technique to decompose properties (specifications), defined as regular expressions, into subexpressions representing test cases to cover the MD/DC for specifications (Unique First Word Recognition). Then, instead of proving an entire property, we can use a model checker to observe and select program executions that cover all the test cases given as the subexpressions. To support this approach, we give a syntactic characterisation of the properties decomposition, inductively defined over the syntax of regular expressions, and show how to use the technique to decompose Specification Patterns (SPS) and monitor their satisfiability using the Java PathFinder (JPF).
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsNotes
- 1.
Here, we use the relaxed term “recognised by a regular expression” meaning “recognised by a an automaton that recognises the language defined by a regular expression”.
- 2.
Operator ? does not appear in the definition because it can be defined using the \(\mid \) operator.
- 3.
References
Ammann, P., Offutt, J.: Introduction to Software Testing, vol. 54. Cambridge University Press, Cambridge (2008)
Dwyer, M.B., Avrunin, G.S., Corbett, J.C.: Patterns in property specifications for finite-state verification. In: Proceedings of the 21st International Conference on Software Engineering, ICSE 1999, pp. 411–420. ACM, New York (1999)
Fraser, G., Wotawa, F., Ammann, P.E.: Testing with model checkers: a survey. Softw. Test. Verif. Reliab. 19(3), 215–261 (2009)
Gargantini, A., Heitmeyer, C.: Using model checking to generate tests from requirements specifications. SIGSOFT Softw. Eng. Not. 24(6), 146–162 (1999)
Hanazumi, S., de Melo, A.C.V., Păsăreanu, C.S.: From testing purposes to formal JPF properties. In: Java PathFinder Workshop. ACM (2014)
Hesari, S., Behjati, R., Yue, T.: Towards a systematic requirement-based test generation framework: industrial challenges and needs. In: Proceedings of the 2013 21st IEEE International Requirements Engineering Conference, RE 2013, pp. 261–266 (2013)
Holloway, C.: Towards understanding the DO-178C/ED-12C assurance case. In: 7th IET International Conference on System Safety, Incorporating the Cyber Security Conference 2012, p. 14. Institution of Engineering and Technology (2012)
S. Patterns, June 2015. http://patterns.projects.cis.ksu.edu/
Pecheur, C., Raimondi, F., Brat, G.: A formal analysis of requirements-based testing. In: Proceedings of the Eighteenth International Symposium on Software Testing and Analysis, ISSTA 2009, pp. 47–56 (2009)
Pnueli, A.: The temporal logic of programs. In: SFCS 1977: Proceedings of the 18th Annual Symposium on Foundations of Computer Science, pp. 46–57. IEEE Computer Society, Washington, DC (1977)
Rajan, A., Whalen, M., Staats, M., Heimdahl, M.P.E.: Requirements coverage as an adequacy measure for conformance testing. In: Liu, S., Maibaum, T., Araki, K. (eds.) ICFEM 2008. LNCS, vol. 5256, pp. 86–104. Springer, Heidelberg (2008). doi:10.1007/978-3-540-88194-0_8
Sametinger, J., Rozenblit, J., Lysecky, R., Ott, P.: Security challenges for medical devices. Commun. ACM 58(4), 74–82 (2015)
Tan, L.: State coverage metrics for specification-based testing with Büchi automata. In: Gogolla, M., Wolff, B. (eds.) TAP 2011. LNCS, vol. 6706, pp. 171–186. Springer, Heidelberg (2011). doi:10.1007/978-3-642-21768-5_13
Tan, L., Sokolsky, O., Lee, I.: Specification-based testing with linear temporal logic. In: Proceedings of the 2004 IEEE International Conference on Information Reuse and Integration, IRI 2004 (2004)
Whalen, M.W., Rajan, A., Heimdahl, M.P., Miller, S.P.: Coverage metrics for requirements-based testing. In: International Symposium on Software Testing and Analysis, p. 25 (2006)
Acknowledgments
This project has been funded by the State of São Paulo Research Foundation (FAPESP) - Processes: 2011/01928-1, 2012/23767-2, 2013/22317-6. We also would like to thank the NASA Ames Research Center and the Carnegie Mellon University - Silicon Valley, for providing a rich environment for the development of research activities.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
A Regular Expressions: Axioms and Definitions
A Regular Expressions: Axioms and Definitions
Definition 11
Let E and \(E_1,\dots , E_n\) be regular expressions defined over alphabet \(\varSigma = \{ e_1, ..., e_n\}\) and \(1 \le i \le j \le n\). Some properties and definitions are given:
Rights and permissions
Copyright information
© 2016 Springer International Publishing AG
About this paper
Cite this paper
de Melo, A.C.V., Păsăreanu, C.S., Hanazumi, S. (2016). Towards MC/DC Coverage of Properties Specification Patterns. In: Sampaio, A., Wang, F. (eds) Theoretical Aspects of Computing – ICTAC 2016. ICTAC 2016. Lecture Notes in Computer Science(), vol 9965. Springer, Cham. https://doi.org/10.1007/978-3-319-46750-4_10
Download citation
DOI: https://doi.org/10.1007/978-3-319-46750-4_10
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-46749-8
Online ISBN: 978-3-319-46750-4
eBook Packages: Computer ScienceComputer Science (R0)