Abstract
High-level Petri nets such as Coloured Petri Nets (CPNs) are characterised by the combination of Petri nets and a high-level programming language. In the context of CPNs and CPN Tools, the inscriptions (e.g., arc expressions and guards) are specified using Standard ML (SML). The application of simulation and state space exploration (SSE) for validating CPN models traditionally focusses on behavioural properties related to net structure, i.e., places and transitions. This means that the net inscriptions are only implicitly validated, and the extent to which their sub-expressions have been covered is not made explicit. The contribution of this paper is an approach that establishes a link between coverage analysis known from programming languages and net inscriptions of CPN models. Specifically, we consider Modified Condition/Decision Coverage (MC/DC) of Boolean SML decisions, which cannot be measured within CPN Tools neither through state space exploration nor model checking directly. We have implemented our approach in a library for CPN Tools comprised of an annotation and instrumentation mechanism that transparently intercepts and collects evaluation of boolean conditions, and a post-processing tool that, for a set of model executions (runs), determines whether each decision is MC/DC-covered. We evaluate our approach on four large publicly available CPN models.
This work was partially supported by the European Horizon 2020 project COEMS under grant agreement no. 732016 (https://www.coems.eu/). We thank Svetlana Jakšić for discussions on this work.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Ahishakiye, F., Jakšić, S., Stolz, V., Lange, F.D., Schmitz, M., Thoma, D.: Non-intrusive MC/DC measurement based on traces. In: Méry, D., Qin, S. (eds.) International Symposium on Theoretical Aspects of Software Engineering, pp. 86–92. IEEE (2019)
Ahishakiye, F., Jarabo, J.I.R., Kristensen, L.M., Stolz, V.: Coverage Analysis of Net Inscriptions in Coloured Petri Net Models (2020). https://arxiv.org/abs/2005.09806v1
Certification Authorities Software Team (CAST): Rationale for Accepting Masking MC/DC in Certification Projects. Technical report, Position Paper CAST-6 (2001)
Cornett, S.: Code Coverage Analysis (1996–2014). https://www.bullseye.com/coverage.html. Accessed 6 June 2020
Gkolfi, A., Din, C.C., Johnsen, E.B., Kristensen, L.M., Steffen, M., Yu, I.C.: Translating active objects into Coloured Petri Nets for communication analysis. Sci. Comput. Program. 181, 1–26 (2019)
Hayhurst, K.J., Veerhusen, D.S., Chilenski, J.J., Rierson, L.K.: A Practical Tutorial on Modified Condition/Decision Coverage. Technical report NASA/TM-2001-210876, NASA Langley Server (2001). https://dl.acm.org/doi/book/10.5555/886632
Heimdahl, M.P.E., Whalen, M.W., Rajan, A., Staats, M.: On MC/DC and implementation structure: an empirical study. In: Proceedings of IEEE/AIAA 27th Digital Avionics Systems Conference, pp. 5.B.3-1–5.B.3-13 (2008)
Jensen, K., Christensen, S., Kristensen, L.M., Michael, W.: CPN Tools (2010). http://cpntools.org/
Jensen, K., Kristensen, L.M.: Coloured Petri Nets: a graphical language for formal modeling and validation of concurrent systems. Commun. ACM 58, 61–70 (2015)
John J., C.: An investigation of three forms of the Modified Condition Decision Coverage (MC/DC) criterion. Technical report, Office of Aviation Research (2001)
John, J., Steven, C.: Applicability of modified condition/decision coverage to software testing. Softw. Eng. J. 9(5), 193–2001994 (1994)
Lill, R., Saglietti, F.: Model-based testing of cooperating robotic systems using Coloured Petri Nets. In: Proceedings of SAFECOMP 2013 - Workshop DECS (ERCIM/EWICS Workshop on Dependable Embedded and Cyber-physical Systems) of the 32nd International Conference on Computer Safety, Reliability and Security. Toulouse, France (Sep 2013). https://hal.archives-ouvertes.fr/hal-00848597
Pascal, C., Panescu, D.: A Coloured Petri Nets model for DisCSP algorithms. Concurr. Comput. Pract. Exp. 29(18), 1–23 (2017)
Paul, T.K., Lau, M.F.: A systematic literature review on modified condition and decision coverage. In: Proceedings of the 29th Annual ACM Symposium on Applied Computing, pp. 1301–1308. SAC 2014, Association for Computing Machinery (2014)
Pothon, F.: DO-178C/ED-12C versus DO-178B/ED-12B: Changes and Improvements. Technical report, AdaCore (2012)
Rierson, L.: Developing Safety-Critical Software: A Practical Guide for Aviation Software and DO-178C Compliance. CRC Press, Boca Raton (2013)
RodrÃguez, A., Kristensen, L.M., Rutle, A.: Formal modelling and incremental verification of the MQTT IoT protocol. In: Koutny, M., Pomello, L., Kristensen, L.M. (eds.) Transactions on Petri Nets and Other Models of Concurrency XIV. LNCS, vol. 11790, pp. 126–145. Springer, Heidelberg (2019). https://doi.org/10.1007/978-3-662-60651-3_5
Simulink: Types of Model Coverage. https://se.mathworks.com/help/slcoverage/ug/types-of-model-coverage.html. Accessed 06 March 2020
Simão, A., Do, S., Souza, S., Maldonado, J.: A family of coverage testing criteria for Coloured Petri Nets. In: Proceedings of 17th Brazilian Symposium on Software Engineering (SBES 2003), pp. 209–224 (2003)
Sudipto Ghosh, France, R., Braganza, C., Kawane, N., Andrews, A., Orest Pilskalns: Test adequacy assessment for UML design model testing. In: Proceedings of 14th International Symposium on Software Reliability Engineering, ISSRE 2003, pp. 332–343 (2003)
Tofte, M.: Standard ML language. Scholarpedia 4(2), 7515 (2009)
Vilkomir, S.A., Bowen, J.P.: Reinforced condition/decision coverage (RC/DC): a new criterion for software testing. In: Bert, D., Bowen, J.P., Henson, M.C., Robinson, K. (eds.) ZB 2002. LNCS, vol. 2272, pp. 291–308. Springer, Heidelberg (2002). https://doi.org/10.1007/3-540-45648-1_15
Wang, R., Artho, C., Kristensen, L.M., Stolz, V.: Visualization and abstractions for execution paths in model-based software testing. In: Ahrendt, W., Tapia Tarifa, S.L. (eds.) IFM 2019. LNCS, vol. 11918, pp. 474–492. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-34968-4_26
Wang, R., Kristensen, L.M., Meling, H., Stolz, V.: Automated test case generation for the Paxos single-decree protocol using a Coloured Petri Net model. Logic. Algebraic Methods Program. 104, 254–273 (2019)
Xu, D., Xu, W., Kent, M., Thomas, L., Wang, L.: An automated test generation technique for software quality assurance. IEEE Reliab. 64(1), 247–268 (2015)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2020 Springer Nature Switzerland AG
About this paper
Cite this paper
Ahishakiye, F., Requeno Jarabo, J.I., Kristensen, L.M., Stolz, V. (2020). Coverage Analysis of Net Inscriptions in Coloured Petri Net Models. In: Ben Hedia, B., Chen, YF., Liu, G., Yu, Z. (eds) Verification and Evaluation of Computer and Communication Systems. VECoS 2020. Lecture Notes in Computer Science(), vol 12519. Springer, Cham. https://doi.org/10.1007/978-3-030-65955-4_6
Download citation
DOI: https://doi.org/10.1007/978-3-030-65955-4_6
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-65954-7
Online ISBN: 978-3-030-65955-4
eBook Packages: Computer ScienceComputer Science (R0)