Skip to main content
Log in

An event-based approach for formally verifying runtime adaptive real-time systems

  • Published:
The Journal of Supercomputing Aims and scope Submit manuscript

Abstract

Real-time and embedded systems are required to adapt their behavior and structure to runtime unpredicted changes in order to maintain their feasibility and usefulness. These systems are generally more difficult to specify and verify owning to their execution complexity. Hence, ensuring the high-level design and the early verification of system adaptation at runtime is very crucial. However, existing runtime model-based approaches for adaptive real-time and embedded systems suffer from shortcoming linked to efficiently and correctly managing the adaptive system behavior, especially that a formal verification is not allowed by modeling languages such as UML and MARTE profile. Moreover, reasoning about the correctness and the precision of high-level models is a complex task without the appropriate tool support. In this work, we propose an MDE-based framework for the specification and the verification of runtime adaptive real-time and embedded systems. Our approach stands for Event-B method to formally verify resources behavior and real-time constraints. In fact, thanks to MDE M2T transformations, our proposal translates runtime models into Event-B specifications to ensure the correctness of runtime adaptive system properties, temporal constrains and nonfunctional properties using Rodin platform. A flood prediction system case study is adopted for the validation of our proposal.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14

Similar content being viewed by others

Notes

  1. The inverse of a function f, (\(\hbox {f}^{-1}\)), is denoted in Event-B as (f \(\sim\)).

  2. A \(\vartriangleleft\) f denotes a domain restriction: A \(\vartriangleleft\) f= {x \(\mapsto\) y|x \(\mapsto\) y \(\in\) f \(\cap\) x \(\in\) A}.

References

  1. Henzinger TA, Sifakis J (2007) The discipline of embedded systems design. IEEE Soc Comput 40(10):32–40

    Article  Google Scholar 

  2. Magdich A, Kacem YH, Mahfoudhi A, Kerboeuf Ml (2014) A uml/marte-based design pattern for semi-partitioned scheduling analysis. In: Sumitra R (ed) 2014 IEEE 23rd international WETICE conference (WETICE 2014), Parma, Italy, 23–25 June, 2014. IEEE Computer Society, pp 300–305

  3. Devaraj R (2020) A solution to drawbacks in capturing execution requirements on heterogeneous platforms. J Supercomput 76(4)

  4. Schmidt DC (2006) Model-driven engineering. IEEE Computer 39(2):25

    Article  Google Scholar 

  5. Bernal A, Emilia CM, Nunez A, Canizares PC, Valero V (2020) Improving cloud architectures using UML profiles and M2T transformation techniques. J Supercomput 76(4):8012–8058

    Google Scholar 

  6. Mahfoudhi A, Kacem YH, Karamti W, Abid M (2012) Compositional specification of real time embedded systems by priority time petri nets. J Supercomput 59(3):1478–1503

    Article  Google Scholar 

  7. Amr A, Enrique A, Gabriel L (2020) A component-based study of energy consumption for sequential and parallel genetic algorithms. J Supercomput 28(4):6194–6219

    Google Scholar 

  8. Ghavidel A, Sedaghat Y, Naghibzadeh M (2019) Hybrid scheduling to enhance reliability of real-time tasks running on reconfigurable devices. J Supercomput 76(6):1

    Google Scholar 

  9. Duhil C, Babau J-P, Lepicier E, Voirin J-L, Navas J (2020) Chaining model transformations for system model verification: application to verify capella model with simulink. In: International conference on model-driven engineering and software development (MODELSWARD 2020)

  10. Said MB, Kacem YH, Kerboeuf M, Abid M (2020) An MDE-based approach for self-adaptive RTES model generation. Cluster Comput 23:1–27

    Article  Google Scholar 

  11. Hachicha M, Halima RB, Kacem AH (2018) Modelling, specifying and verifying selfadaptive systems instantiating mape patterns. Int J Comput Appl Technol 57(1):28–44

    Article  Google Scholar 

  12. Masrur A, Kit M, Matena V, Buresb T, Hardt W (2017) Component-based design of cyber-physical applications with safety-critical requirements. J Microprocess Microsyst 10(3):117

    Google Scholar 

  13. OMG Object Management Group (2011) A UML profile for MARTE: modeling and analysis of real-time embedded systems, ptc/2011-06-02. Object Management Group

  14. Magdich A, Kacem YH, Mahfoudhi A, Kerboeuf M (2014) A UML/MARTE-based design pattern for semi-partitioned scheduling analysis. In: Sumitra R (ed) IEEE 23rd international WETICE conference (WETICE 2014), Parma, Italy, 23–25 June, 2014. IEEE Computer Society, pp 300–305

  15. Mahfoudhi A, Karamti W (2015) Transformation process of rts scheduling analysis requirements from UML/MARTE to dynamic priority time petri nets. J Supercomput 71:3637–3667

    Article  Google Scholar 

  16. Loukil S, Kallel S, Jmaiel M (2016) An approach based on runtime models for developing dynamically adaptive systems. J Future Gener Comput Syst 68(6):365–375

    Google Scholar 

  17. Morin B, Barais O, Jezequel J-M, Fleurey F, Solberg A (2009) A models at run.time to support dynamic adaptation. Computer 42(10):44–51

    Article  Google Scholar 

  18. Vardhan V, Sachs DG, Yuan W, Harris AF, Adve SV, Jones DL, Kravets RH, Nahrstedt KM (2009) Integrating fine-grained application adaptation with global adaptation for saving energy. University of Illinois at UrbanaChampaign

  19. Fredj N, Kacem YHADJ, Abid M (2018) Runtime uml marte extensions for the design of adaptive rte systems. In: 18th International conference on intelligent systems design and applications (ISDA), 2018, Vellore, India

  20. Abrial J-R (2010) Modeling in event-b: system and software engineering. Cambridge University Press, New York, NY, USA. ISBN: 0521895561 9780521895569

  21. Abrial JR, Butler M, Hallerstede S, Hoang TS, Mehta F, Voisin L (2010) Rodin: an open toolset for modelling and reasoning in eventb. Int J Softw Tools Technol Transf 12:447–466

    Article  Google Scholar 

  22. Al Assadi WK, Gandla S, Sahra SS, Dugganapally IP (2009) Design and FPGA prototyping of a flood prediction system. In: 12th international IEEE conference on intelligent transportation systems, pp 1–6

  23. Said MB, Kacem YH, Amor NB, Abid M (2013) High level design of adaptive real-time embedded systems a survey. In: MODELSWARD: international conference on model-driven engineering and software development, pp 341–350

  24. Fleurey F, Dehlen V, Bencomo N, Morin B, Jezequel JM (2008) Modeling and validating dynamic adaptation. Int Conf Model Driven Eng Lang Syst MODELS 2008:97–108

    Google Scholar 

  25. Morin B (2010) Leveraging models from design time to runtime to support dynamic variability. University of Rennes, Ph.D. thesis

  26. Costiou S, Kerboeuf M, Cavarle G, Plantec A (2018) Lub: A pattern for fine grained behavior adaptation at runtime. Sci. Comput. Program. 161:149–171

    Article  Google Scholar 

  27. Sanchez C, Schneider G, Ahrendt W, Bartocci E, Bianculli D, Colombo C, Falcone Y, Francalanza A, Krstic S, Loureno JM, Nickovic D, Pace GJ, Rufino J, Signoles J, Traytel D, Weiss A (2019) A survey of challenges for runtime verification from advanced application domains (beyond software). Int J Form Methods Syst Des 54:279–335

    Article  Google Scholar 

  28. Mzid R, Mraidha C, Babau J-P, Abid M (2019) From real-time design model to RTOS-specific models: a model-driven methodology. Int J Embed Syst 11(6):738–754

    Article  Google Scholar 

  29. Weyns D, Malek S, Andersson J (2010) Forms: a formal reference model for self-adaptation. In: Proceedings of the 7th international conference on autonomic computing (ICAC10), New York, p 205214

  30. Jeannette PA, Wing Edmund M, Clarke M (1996) Formal methods: state of the art and future directions. ACM Comput Surv (CSUR) 28(4):626643

    Google Scholar 

  31. Bowen J, Stavridou V (1993) Formal methods in safety-critical standards. Softw Eng J, 168177

  32. Ostroff Jonathan S (1992) Formal methods for the specification and design of real-time safety critical systems. J Syst Softw 18(1):33–60

    Article  Google Scholar 

  33. IGLESIA DIDACGILDELA, WEYNS DANNY (2015) Mape-k formal templates to rigorously design behaviors for self-adaptive systems. ACM Trans Auton Adapt Syst 10(3):115

    Article  Google Scholar 

  34. Arcaini P, Riccobene E, Scandurra P (2015) Modeling and analyzing mape-k feedback loops for self-adaptation. In: International symposium on software engineering for adaptive and self-managing systems (SEAMS15). IEEE, Piscataway, NJ, USA, p 1323

  35. Younes AB, Ayed Leila JB (2007) Using uml activity diagrams and event b for distributed and parallel applications. In: International computer software and applications conference(COMPSAC)

  36. Tarasyuk A, Pereverzeva I, Troubitsyna E, Latvala T, Nummila L (2012) Formal development and assessment of a reconfigurable on board satellite system. In: International conference on computer safety, reliability, and security, pp 210–222

  37. Babin G, Ameur Yamine AIT, Pantel M (2016) Correct instantiation of a system reconfiguration pattern: a proof and refinement based approach. In: International symposium on high assurance systems engineering

  38. Brambilla M, Cabot J, Wimmer M (2012) Model driven software engineering in practice. Synth Lect Softw Eng 3(1):1–207

    Google Scholar 

  39. Magdich A, Kacem YH, Kerboeuf M, Mahfoudhi A, Abid M (2018) A design pattern-based approach for automatic choice of semi-partitioned and global scheduling algorithms. Inf Softw Technol 997:83–98

    Article  Google Scholar 

  40. Merz S (2000) Model checking: a tutorial overview. In: 4th summer school on modeling and verification of parallel processes. MOVEP, Nantes, France, pp 3–38

  41. Salehie M, Tahvildari L (2009) Self adaptive software: landscape and research challenges. ACM Trans Auton Adapt Syst 4(2):01–42

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Nissaf Fredj.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Fredj, N., Hadj Kacem, Y. & Abid, M. An event-based approach for formally verifying runtime adaptive real-time systems. J Supercomput 77, 3110–3143 (2021). https://doi.org/10.1007/s11227-020-03386-9

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11227-020-03386-9

Keywords

Navigation