Abstract
Designing and reasoning about complex systems such as wireless sensor networks is hard due to highly dynamic environments: sensors are heterogeneous, battery-powered, and mobile. While formal modelling can provide rigorous mechanisms for design/reasoning, they are often viewed as difficult to use. Graph rewrite-based modelling techniques increase usability by providing an intuitive, flexible, and diagrammatic form of modelling in which graph-like structures express relationships between entities while rewriting mechanisms allow model evolution. Two major graph-based formalisms are Graph Transformation Systems (GTS) and Bigraphical Reactive Systems (BRS). While both use similar underlying structures, how they are employed in modelling is quite different. To gain a deeper understanding of GTS and BRS, and to guide future modelling, theory, and tool development, in this experience report we compare the practical modelling abilities and style of GTS and BRS when applied to topology control in WSNs. To show the value of the models, we describe how analysis may be performed in both formalisms. A comparison of the approaches shows that although the two formalisms are different, from both a theoretical and practical modelling standpoint, they are each successful in modelling topology control in WSNs. We found that GTS, while featuring a small set of entities and transformation rules, relied on entity attributes, rule application based on attribute/variable side-conditions, and imperative control flow units. BRS on the other hand, required a larger number of entities in order to both encode attributes directly in the model (via nesting) and provide tagging functionality that, when coupled with rule priorities, implements control flow. There remains promising research mapping techniques between the formalisms to further enable flexible and expressive modelling.
Article PDF
Similar content being viewed by others
Avoid common mistakes on your manuscript.
References
Arendt T, Biermann E, Jurack S, Krause C, Taentzer G (2010) Henshin: advanced concepts and tools for in-place EMF model transformations. In: Petriu DC, Rouquette N, Haugen Ø (eds) Model driven engineering languages and systems—13th international conference, MODELS 2010, Oslo, Norway, October 3–8, 2010, Proceedings, Part I, vol. 6394 of Lecture notes in computer science, pp 121–135. Springer
Archibald B, Calder M, Sevegnani M (2020) Conditional bigraphs. In: Gadducci F, Kehrer T (eds) Graph transformation—13th international conference, ICGT 2020, held as part of STAF 2020, Bergen, Norway, June 25–26, 2020, proceedings, vol 12150 of Lecture Notes in Computer Science, pp 3–19. Springer
Alrimawi F, Pasquale L, Nuseibeh B (2019) On the automated management of security incidents in smart spaces. IEEE Access, 7:111513–111527
Archibald B, Shieh M-Z, Hu Y-H, Sevegnani M, LinY-B (2020) Bigraphtalk: verified design of IoT applications. IEEE Internet Things J 7(4):2955–2967
Baeten JCM, Bergstra JA, Klop JW, Weijland WP (1989) Term-rewriting systems with rule priorities. Theor Comput Sci 67(2&3):283–301
Benford S, Calder M, Rodden T, Sevegnani M (2016) On lions, impala, and bigraphs: Modelling interactions in physical/virtual spaces. ACM Trans Comput-Hum Interact 23(2):9:1–9:56
Bertrand N, Delzanno G, König B, Sangnier A, Stückrath J (2012) On the decidability status of reachability and coverability in graph transformation systems. In: Tiwari A (ed) 23rd International conference on rewriting techniques and applications (RTA’12) , RTA 2012, May 28–June 2, 2012, Nagoya, Japan, vol 15 of LIPIcs, pp 101–116. SchlossDagstuhl - Leibniz-Zentrum für Informatik
Born K, Lambers L, Strüber D, Taentzer G (2017) Granularity of conflicts and dependencies in graph transformation systems. In: Graph transformation—10th international conference, ICGT 2017, Held as Part of STAF 2017, Marburg, Germany, July 18–19, 2017, Proceedings, pp 125–141
Breza MJ, Tomic I, McCann JA (2018) Failures from the environment, a report on the first FAILSAFE workshop. Comput Commun Rev 48(2):40–45
Calder M, Craig C, Culley D, de Cani R, Donnelly CA, Douglas R, Edmonds B, Gascoigne J, Gilbert N, Hargrove C, Hinds D, Lane DC, Mitchell D, Pavey G, Robertson D, Rosewell B, Sherwin SJ, Walport MJ, Wilson A (2018) Computational modelling for decision-making: where, why, what, who and how. In: Royal Society open science
Calder M, Koliousis A, Sevegnani M, Sventek JS (2014) Real-time verification of wireless home networks using bigraphs with sharing. Sci Comput Program 80:288–310
Corradini A, Montanari U, Rossi F (1996) Graph processes. Fundam Inform 26(3/4):241–265
Calder M, Sevegnani M (2014) Modelling IEEE 802.11 CSMA/CA RTS/CTS with stochastic bigraphs with sharing. Formal Asp Comput 26(3):537–561
Dyck J, Giese H (2015) Inductive invariant checking with partial negative application conditions. In: Parisi-Presicce F, Westfechtel B (eds) Graph transformation—8th international conference, ICGT 2015, Held as Part of STAF 2015, L’Aquila, Italy, July 21–23, 2015. Proceedings, vol 9151 of lecture notes in computer science, pp 237–253. Springer
Dershowitz N, Jouannaud J-P (2019) Drags: a compositional algebraic framework for graph rewriting. Theor Comput Sci 777:204–231
Dâmaso A, Rosa N, Maciel P (2014) Using coloured petri nets for evaluating the power consumption of wireless sensor networks. Int J Distrib Sens Netw 10
Ehrig H, Ehrig K, Prange U, Taentzer G (2006) Fundamentals of algebraic graph transformation. Monographs in Theoretical Computer Science. An EATCS Series. Springer
Ehrig H, Heckel R, Korff M, Löwe M, Ribeiro L, Wagner A, Corradini A(1997) Algebraic approaches to graph transformation - part II: single pushout approach and comparison with double pushout approach. In: Handbook of graph grammars and computing by graph transformations, vol 1: foundations, pp 247–312
Ehrig H (2002) Bigraphs meet double pushouts. Bull EATCS 78:72–85
Fehnker A, vanGlabbeek RJ, Höfner P, McIver A, Portmann M, Tan WL (2012) A process algebra for wireless mesh networks. In: Seidl H (ed) Programming languages and systems—21st European Symposium on Programming, ESOP 2012, held as part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2012, Tallinn, Estonia, March 24–April 1, 2012. Proceedings, vol 7211 of Lecture Notes in Computer Science, pp 295–315. Springer
Guerra E, de Lara J, Wimmer M, Kappel G, Kusel A, Retschitzegger W, Schönböck J, Schwinger W (2013) Automated verification of model transformations based on visual contracts. Autom Softw Eng 20(1):5–46
Ghamarian AH, de Mol M, Rensink A, Zambon E, Zimakova M (2012) Modelling and analysis using GROOVE. STTT 14(1):15–40
Gassara A, Rodriguez IB, Jmaiel M, Drira K (2019) Executing bigraphical reactive systems. Discrete Appl Math 253:73–92
Heckel R (2006) Graph transformation in a nutshell. Electron Notes Theor Comput Sci 148(1):187–198
Kulcsár G, Corradini A, Lochau M (2018) Equivalence and independence in controlled graph-rewriting processes. In: Graph transformation—11th international conference, ICGT 2018, Held as part of STAF 2018, Toulouse, France, June 25–26, 2018, Proceedings, pp 134–151
Krause C, Giese H (2012) Probabilistic graph transformation systems. In: Ehrig H, Engels G, Kreowski H-J, Rozenberg G (eds) Graph transformations—6th international conference, ICGT 2012, Bremen, Germany, September 24–29, 2012. Proceedings, vol 7562 of Lecture notes in computer science, pp 311–325. Springer
Kulcsár G, Lochau M, Schürr A (2018) Graph-rewriting petri nets. In: Graph transformation—11th international conference, ICGT 2018, held as part of STAF 2018, Toulouse, France, June 25–26, 2018, Proceedings, pp 79–96
Katelman M, Meseguer J, Hou JC (2008) Redesign of the LMST wireless sensor protocol through formal modeling and statistical model checking. In: Formal methods for open object-based distributed systems, 10th IFIP WG 6.1 international conference, FMOODS 2008, Oslo, Norway, June 4–6, 2008, Proceedings, pp 150–169
Krivine J, Milner R, Troina A (2008) Stochastic bigraphs. Electr Notes Theor Comput Sci 218:73–96
Kwiatkowska MZ, Norman G, Parker D (2011) PRISM 4.0: verification of probabilistic real-time systems. In: Computer aided verification—23rd international conference, CAV 2011, Snowbird, UT, USA, July 14–20, 2011. Proceedings, pp 585–591
König B, Nolte D, Padberg J, Rensink A (2018) A tutorial on graph transformation. In: Heckel R, Taentzer G (eds) Graph transformation, specifications, and nets—in memory of Hartmut Ehrig, vol 10800 of Lecture Notes in Computer Science, pp 83–104. Springer
Kreowski H-J, Rozenberg G (2018) Graph surfing by reaction systems. In: Graph transformation—11th international conference, ICGT 2018, Held as Part of STAF 2018, Toulouse, France, June 25–26, 2018, Proceedings, pp 45–62
Kulcsár G, Stein M, Schweizer I, Varró G, Mühlhäuser M, Schürr A (2014) Rapid prototyping of topology control algorithms by graph transformation. ECEASST 68
Kluge R, Stein M, Varró G, Schürr A, Hollick M, Mühlhäuser M (2018) A systematic approach to constructing families of incremental topology control algorithms using graph transformation. In: Software Engineering und Software Management 2018, Fachtagung des GI-Fachbereichs Softwaretechnik, SE 2018, 5.-9. März 2018, Ulm, Germany, pp 109–110
Kluge R, Varró G, Schürr A (2015) A methodology for designing dynamic topology control algorithms via graph transformation. In: Theory and practice of model transformations—8th international conference, ICMT 2015, Held as Part of STAF 2015, L’Aquila, Italy, July 20–21, 2015. Proceedings, pp 199–213
Leblebici E, Anjorin A, Schürr A (2014) Developing emoflon with emoflon. In:Theory and practice of model transformations— 7th international conference, ICMT 2014, Held as Part of STAF 2014, York, UK, July 21–22. Proceedings, pp 138–145
Li X, Mao Y, Liang Y (2008) A survey on topology control in wireless sensor networks. In: 10th International conference on control, automation, robotics and vision, ICARCV 2008, Hanoi, Vietnam, 17–20 December 2008, Proceedings, pp 251–255
Lanese I, Sangiorgi D (2010) An operational semantics for a calculus for wireless systems. Theor Comput Sci 411(19):1928–1948
Li Y, Yin X, Wang Z, Yao J, Shi X, Wu J, Zhang H, Wang Q (2019) A survey on network verification and testing with formal methods: approaches and challenges. IEEE Commun Surv Tutorials 21(1):940–969
Maximova M, Giese H, Krause C (2018) Probabilistic timed graph transformation systems. J Log Algebr Methods Program 101:110–131
Milner R (2009) The space and motion of communicating agents. Cambridge University Press
Martí-Oliet N, Meseguer J, Verdejo A (2004) Towards a strategy language for maude. In: Martí-Oliet N (ed) Proceedings of the fifth international workshop on rewriting logic and its applications, WRLA 2004, Barcelona, Spain, March 27–28, 2004, vol 117 of electronic notes in theoretical computer science, pp 417–441. Elsevier
Perrone G, Debois S, Hildebrandt TT (2013) A verification environment for bigraphs. ISSE 9(2):95–104
Pennemann K-H (2009) Development of correct graph transformation systems. Ph.D. thesis, University of Oldenburg, Germany
Peldszus S, Kulcsár G, Lochau M, Schulze S (2016) Continuous detection of design flaws in evolving object-oriented programs using incremental multi-pattern matching. In: Proceedings of the 31st IEEE/ACM international conference on automated software engineering, ASE 2016, Singapore, September 3–7, 2016, pp 578–589
Rensink A, Kuperus J-H (2009) Repotting the geraniums: On nested graph transformation rules. vol 18
Rozenberg G (ed) (1997) Handbook of graph grammars and computing by graph transformations, vol 1: foundations. World Scientific
Santi P (2005) Topology control in wireless ad hoc and sensor networks. ACM Comput Surv 37(2):164–194
Strüber D, Born K, Gill KD, Groner R, Kehrer T, Ohrndorf M, Tichy M (2017) Henshin: A usability-focused framework for EMF model transformation development. In: Graph transformation—10th international conference, ICGT 2017, held as part of STAF 2017, Marburg, Germany, July 18–19, 2017, Proceedings, pp 196–208
Semeráth O, Babikian AA, Li A, Marussy K, Varró D (2020) Automated generation of consistent models with structural and attribute constraints. In: Syriani E, Sahraoui HA, de Lara J, Abrah˜ao S, (eds) MoDELS ’20: ACM/IEEE 23rd international conference on model driven engineering languages and systems, virtual event, Canada, 18-23 October, 2020, pp 187–199. ACM
Sevegnani M, Calder M (2015) Bigraphs with sharing. Theor Comput Sci 577:43–73
Sevegnani M, Calder M (2016) BigraphER: rewriting and analysis engine for bigraphs. In: Computer aided verification—28th international conference, CAV 2016, Toronto, ON, Canada, July 17–23, 2016, Proceedings, Part II, pp 494–501
Sevegnani M, Kabác M, Calder M, McCann JA(22018) Modelling and verification of large-scale sensor network infrastructures. In: 23rd International conference on engineering of complex computer systems, ICECCS2018, Melbourne, Australia, December 12–14, 2018, pp 71–81
Sassone V, Sobocinski P (2004) Congruences for contextual graph-rewriting. BRICS Rep Ser 11(11)
Taentzer G (2003) AGG: a graph transformation environment for modeling and validation of software. In: Applications of graph transformations with industrial relevance, second international workshop, AGTIVE 2003, Charlottesville, VA, USA, September 27–October 1, 2003, Revised Selected and Invited Papers, pp 446–453
Taentzer G (2012) Instance generation from type graphs with arbitrary multiplicities. Electron Commun Eur Assoc Softw Sci Technol 47
Tsigkanos C, Kehrer T, Ghezzi C (2017) Modeling and verification of evolving cyber-physical spaces. In: Proceedings of the 2017 11th joint meeting on foundations of software engineering, ESEC/FSE 2017, Paderborn, Germany, September 4–8, 2017, pp 38–48
Tsigkanos C, Pasquale L, Ghezzi C, Nuseibeh B (2018) On the interplay between cyber and physical spaces for adaptive security. IEEE Trans Dependable Sec Comput 15(3):466–480
Webster M, Breza M, Dixon C, Fisher M, McCann JA(2018) Formal verification of synchronisation, gossip and environmental effects for wireless sensor networks. Electron Commun Eur Assoc Softw Sci Technol 76
Acknowledgements
This work is supported by the Engineering and Physical Sciences Research Council, under grants EP/N007565/1 (S4: Science of Sensor Systems Software); PETRAS SRF grant MAGIC (EP/S035362/1), and by the German Research Foundation (DFG) as part of project A1 within CRC1053-MAKI.
Author information
Authors and Affiliations
Corresponding author
Additional information
Naijun Zhan
Publisher’s Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article's Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article's Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecommons.org/licenses/by/4.0/.
About this article
Cite this article
Archibald, B., Kulcsár, G. & Sevegnani, M. A tale of two graph models: a case study in wireless sensor networks. Form Asp Comp 33, 1249–1277 (2021). https://doi.org/10.1007/s00165-021-00558-z
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00165-021-00558-z