Skip to main content

Formal Specification and Verification of Real-Time Systems using Graph Grammars

Abstract

The importance of real-time systems has enormously increased in the last decade. Application areas that typically need real-time models include railroad systems, intelligent vehicle highway systems, avionics, multimedia and telephony. To assure that such systems are correct, additionally to prove that they provide the required functionality, time constraints must be satisfied. There are already formal specification methods for real-time systems, but most of them are difficult to use by software developers, that are usually not very familiar with mathematical notation but rather specify systems using the objectoriented paradigm. In this paper we propose a formal approach to specify and analyze real-time systems that has an object-oriented flavor. This approach is based on Object-Based Graph Grammars (OBGGs), a formal description technique suitable for the specification of asynchronous distributed systems, and intuitive even for nontheoreticians. We extend OBGGs to enable explicit modeling of time constraints, and define the semantics of the specifications via transition systems. Finally, we translate timed OBGGs to Timed Automata, a formal notation that is wide spread in the area of real-time systems modeling and allows the automatic verification of properties.

References

  1. R. Alur and D. L. Dill. A theory of timed automata.Theoretical Computer Science, 126(2):183–235, 1994.

    MATH  Article  MathSciNet  Google Scholar 

  2. J. Baeten and C. Middelburg.Process algebra with timing: Real time and discrete time, chapter 10, pages 627–684. Elsevier, 2001.

  3. G. Behrmann, A. David, and K. G. Larsen. Tutorial on UPPAAL. InFormal Methods for the Design of Real-Time Systems, volume 3185 of LNCS, pages 200–236. Springer, 2004.

  4. J. Bengtsson and W. Yi. Timed automata: Semantics, algorithms and tools. InLecture Notes on Concurrency and Petri Nets, volume 3098 of LNCS, pages 87-124. Springer, 2004.

  5. B. Berthomieu and M. Diaz. Modeling and verification of time dependent systems using time petri nets.IEEE Trans. Softw. Eng., 17(3):259–273, 1991.

    Article  MathSciNet  Google Scholar 

  6. H. Bowman and J. Derrick. Extending lotos with time: A true concurrency perspective. InAMAST Workshop on Real-Time Systems, Concurrent and Distributed Software, volume 1231 of LNCS, pages 382–399. Springer, 1997.

  7. E. M. Clarke and J. M. Wing. Formal methods: state of the art and future directions.ACM Computing Surveys, 28(4):626–643, 1996.

    Article  Google Scholar 

  8. A. Corradini, U. Montanari, and F. Rossi. Graph processes.Fundamenta Informaticae, 26(3/4):241–265, 1996.

    MATH  MathSciNet  Google Scholar 

  9. K. Diethers and M. Huhn. Vooduu: Verification of object-oriented designs using uppaal. InTools and Algorithms for the Construction and Analysis of Systems, volume 2988 of LNCS, pages 139–143. Springer, 2004.

  10. F. L. Dotti, L. Foss, L. Ribeiro, and O. M. Santos. Verification of distributed object-based systems. In6th IFIP International Conference on Formal Methods for Open Object-based Distributed Systems, volume 2884 of LNCS, pages 261–275. Springer, 2003.

  11. F. L. Dotti and L. Ribeiro. Specification of mobile code systems using graph grammars. InFormal Methods for Open Object-Based Distributed Systems, pages 45–64. Kluwer, 2000.

  12. L. M. Duarte, F. L. Dotti, B. Copstein, and L. Ribeiro. Simulation of mobile applications. InProc. of Communication Networks and Distributed Systems Modeling and Simulation Conference, volume 1, pages 1–15, 2002.

  13. H. Ehrig, H.-J. Kreowski, U. Montanari, and G. Rozenberg, editors.Handbook of Graph Grammars and Computing by Graph Transformations, Volume 3: Concurrency, Parallelism and Distribution. World Scientific, 1999.

  14. H. Ehrig and B. Mahr.Fundamentals of Algebraic Specification: Equations and Initial Algebra Semantics, volume 6 of EATCSMonographs on Theoretical Computer Science. Springer, 1985.

  15. A. P. L. Ferreira.Object-Oriented Graph Grammars. PhD thesis, Universidade Federal do Rio Grande do Sul, 2005.

  16. S. Graf, I. Ober, and I. Ober. A real-time profile for uml.International Journal on Software Tools for Technology Transfer, 8(2):113–127, 2006.

    Article  Google Scholar 

  17. A. Haxthausen and J. Peleska. Formal development and verification of a distributed railroad control system.IEEE Transactions on Software Engineering, 26(8):687–701, August 2000.

    Article  Google Scholar 

  18. A. Knapp, S. Merz, and C. Rauh. Model checking — timed uml state machines and collaborations. InProceedings of the 7th International Symposium on Formal Techniques in Real-Time and Fault-Tolerant Systems, pages 395–416. Springer, 2002.

  19. S. Konrad, L. A. Campbell, and B. H. C. Cheng. Automated analysis of timing information in uml diagrams. InProceedings of the 19th IEEE international conference on Automated software engineering, pages 350–353. IEEE Computer Society, 2004.

  20. L. Lavazza, G. Quaroni, and M. Venturelli. Combining uml and formal notations for modelling real-time systems.SIGSOFT Softw. Eng. Notes, 26(5):196–206, 2001.

    Article  Google Scholar 

  21. I. Lee, P. Brémond-Grégoire, and R. Gerber. A process algebraic approach to the specification and analysis of resource-bound real-time systems.Proc. of the IEEE, 82(1):158–171, 1994.

    Article  Google Scholar 

  22. I. Ober, S. Graf, and I. Ober. Validation of uml models via a mapping to communicating extended timed automata. In SPIN, volume 2989 ofLNCS, pages 127–145. Springer, 2004.

  23. L. Ribeiro, F. Dotti, and R. Bardohl. A formal framework for the development of concurrent object-based systems. InFormal Methods in Software and Systems Modeling, volume 3393 of LNCS, pages 385–401. Springer, 2005.

  24. L. Ribeiro, F. L. Dotti, O. Santos, and F. Pasini. Verifying object-based graph grammars: An assumeguarantee approach.Software and Systems Modeling, 6(3):289–311, Sept. 2006.

    Google Scholar 

  25. G. Rozenberg, editor.Handbook of Graph Grammars and Computing by Graph Transformations, Volume 1: Foundations. World Scientific, 1997.

  26. J. A. Stankovic. A serious problem for nextgeneration systems.IEEE Computer, 21(10):10–19, 1988.

    Google Scholar 

  27. J. A. Stankovic et al. Strategic directions in real-time and embedded systems.ACM Computing Surveys, 28(4):751–763, 1996.

    Article  MathSciNet  Google Scholar 

  28. B. Walter. Timed petri-nets for modelling and alalyzing protocols with real-time characteristics. InProtocol Specification, Testing, and Verification, pages 149–159. North-Holand, 1983.

Download references

Author information

Affiliations

Authors

Corresponding author

Correspondence to Leonardo Michelon.

Rights and permissions

Open Access This article is distributed under the terms of the Creative Commons Attribution 2.0 International License ( https://creativecommons.org/licenses/by/2.0 ), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

Reprints and Permissions

About this article

Cite this article

Michelon, L., da Costa, S.A. & Ribeiro, L. Formal Specification and Verification of Real-Time Systems using Graph Grammars. J Braz Comp Soc 13, 51–68 (2007). https://doi.org/10.1007/BF03194256

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF03194256

Keywords

  • Real-time computing
  • Formal specification and verification
  • Graph grammars
  • Timed automata