Advertisement

Software & Systems Modeling

, Volume 6, Issue 1, pp 59–82 | Cite as

Models and temporal logical specifications for timed component connectors

  • Farhad Arbab
  • Christel Baier
  • Frank de Boer
  • Jan Rutten
Special Section Paper

Abstract

Component-based software engineering advocates construction of software systems through composition of coordinated autonomous components. Significant benefits of this approach include software reuse, simpler and faster construction, enhanced reliability, and dramatic reductions in the complexity of construction of provably correct critical systems, many of which involve real-time concerns. Effective, flexible component composition by itself still poses a challenge today and yet the special nature of real-time constraints makes component-based construction of real-time systems even more demanding. The coordination language Reo supports compositional system construction through connectors that exogenously coordinate the interactions among the constituent components which unawarely comprise a complex system, into a coherent collaboration. The simple, yet surprisingly rich, calculus of channel composition that underlies Reo offers a flexible framework for compositional construction of coordinating component connectors with real-time properties. In this paper, we present an operational semantics for the channel-based component connectors of Reo in terms of Timed Constraint Automata and introduce a temporal-logic for specification and verification of their real-time properties.

Keywords

Coordination Real-time Composition Reo Constraint automata Timed automata Linear temporal logic Timed data streams 

1998 ACM Computing Classsification

C.2.4 D.1.3 D.2.4 D.2.6 D.2.11 D.2.13 D.3.2 D.3.3 F.1.2 F.3.1 F.3.2 F.3.3 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    de Alfaro, L., Henzinger, T.A., Stoelinga, M.: Timed interfaces. In: Proceedings of the second international workshop on embedded software (EMSOFT), vol. 2491 of Lecture Notes in Computer Science, pp. 108–122 (2002)Google Scholar
  2. 2.
    Alur R., Dill D.L. (1994). A theory of timed automata. Theor Comput Sci 126(2):183–235zbMATHCrossRefMathSciNetGoogle Scholar
  3. 3.
    Alur R., Henzinger T.A. (1994). A really temporal logic. J ACM 41:181–204zbMATHCrossRefMathSciNetGoogle Scholar
  4. 4.
    Alur R., Henzinger T.A., Kupferman O. (2002). Alternating-time temporal logic. J ACM 49:672–713CrossRefMathSciNetGoogle Scholar
  5. 5.
    Alur R., Feder T., Henzinger T.A. (1996). The benefits of relaxing punctuality. J ACM 43(1):116–146zbMATHCrossRefMathSciNetGoogle Scholar
  6. 6.
    Arbab F. (2004). Reo: a channel-based coordination model for component composition. Math Struct Comput Sci 14(3):1–38MathSciNetGoogle Scholar
  7. 7.
    Arbab, F., Rutten, J.J.M.M.: A coinductive calculus of component connectors. In: Pattinson, D., Wirsing, M., Hennicker, R. (eds), Recent trends in algebraic development techniques, proceedings of 16th international workshop on algebraic development techniques (WADT 2002), vol. 2755 of Lecture Notes in Computer Science, pp. 35–56. Springer Berlin Heidelberg New York, (2003). http://www.cwi.nl/ftp/CWIreports/SEN/SEN-R0216.pdfGoogle Scholar
  8. 8.
    Arbab, F., Baier, C., de Boer, F.S., Rutten, J.J.M.M., Sirjani, M.: Modeling context-senstive behavior of component connectors with priorities. (Forthcoming paper) (2006)Google Scholar
  9. 9.
    Arbab, F., Baier, C., Rutten, J.J.M.M., Sirjani, M.: Modeling component connectors in Reo by constraint automata. In: Proc. international workshop on foundations of coordination languages and software architectures (FOCLASA 2003), vol. 97(22) of Electronic Notes in Theoretical Computer Science. Elsevier Science, July 2004. A full version will appear in Science of Computer Programming and is available under http://web.informatik.uni-bonn.de/I/baier/publikationen.htmlGoogle Scholar
  10. 10.
    Asarin E., Caspi P., Maler O. (2002). Timed regular expressions. J ACM 49(2):172–206CrossRefMathSciNetGoogle Scholar
  11. 11.
    Cerans, K., Decidability of bisimulation equivalences for parallel timer processes. In: Proc. 4th international workshop on computer aided verification (CAV), vol. 663 of Lecture Notes in Computer Science, pp. 302–315. Springer Berlin Heidelberg New York. (1993)Google Scholar
  12. 12.
    Fischer M.J., Ladner R.J. (1979). Propositional dynamic logic of regular programs. J Comput Syst Sci 8:194–211CrossRefMathSciNetGoogle Scholar
  13. 13.
    Gawlick R., Segala R., Soegaard-Andersen J., Lynch N. (1998). Liveness in timed and untimed systems. Inform Comput 141(2):119–171zbMATHCrossRefGoogle Scholar
  14. 14.
    Gerth, R., Peled, D., Vardi, M., Wolper, P.: Simple on-the-fly automatic verification of linear temporal logic. In protocol specification testing and verification, pp. 3–18. Chapman & Hall, London (1995)Google Scholar
  15. 15.
    Harel, E., Lichtenstein, O., Pnueli, A.: Explicit clock temporal logic. In: Proc. fifth annual IEEE symposium on logic in computer science (LICS), pp. 402–413. IEEE Computer Society Press Los Alamitos (1990)Google Scholar
  16. 16.
    Henzinger T.A., Nicollin X., Sifakis J., Yovine S. (1994). Symbolic model checking for real-time systems. Inform Comput 111(2):193–244zbMATHCrossRefMathSciNetGoogle Scholar
  17. 17.
    Henzinger T.A., Ho P.-H., Wong-Toi H. (1997). Hytech: a model checker for hybrid systems. Softw Tools Technol Transfer 1:110–122zbMATHCrossRefGoogle Scholar
  18. 18.
    Holliday M.A., Vernon M.K. (1987). A generalised timed petri net model for performance analysis. IEEE Trans Softw Eng 13(12):1279–1310Google Scholar
  19. 19.
    Kaynar, D.K., Lynch, N.A., Segala, R., Vaandrager, F.W.: A framework for modelling timed systems with restricted hybrid automata. In: Proceedings 24th IEEE international real-time systems symposium (RTSS’03), pp. 166–177. IEEE Computer Society press, Los Alamitos (2003)Google Scholar
  20. 20.
    Guldstrand Larsen K., Pettersson P., Yi W. (1997). UPPAAL in a nutshell. Int J Softw Tools Technology Transfer 1(1-2):134–152CrossRefGoogle Scholar
  21. 21.
    Leonard, L., Leduc, G.: An enhanced version of timed lotos and its application to a case study. In: Proc. formal description techniques VI, pp. 483–498. North-Holland, Amsterdam (1994)Google Scholar
  22. 22.
    Manna Z., Pnueli A. (1992). The temporal logic of reactive and concurrent systems. Springer, Berlin Heidelberg New YorkGoogle Scholar
  23. 23.
    Merlin P.M. (1974). A study of the recoverability of computing systems. PhD thesis, Department of Information and Computer Science, University of California, IrvineGoogle Scholar
  24. 24.
    Merritt, M. Modugno, F., Tuttle, M.R.: Time-constrained automata (extended abstract). In: Proc. 2nd international conference on concurrency theory, vol. 527 of Lecture Notes in Computer Science, pp. 408–423. Springer Berlin Heidelberg New York, (1991)Google Scholar
  25. 25.
    Milner, R.: Communication and concurrency. Prentice Hall International Series in Computer Science. Prentice Hall (1989)Google Scholar
  26. 26.
    Panangaden, P., van Breugel, F. (eds): Mathematical techniques for analyzing concurrent and probabilistic systems. CRM Monograph Series. American Mathematical Society (2004) ISSN 1065–8599Google Scholar
  27. 27.
    Pnueli, A.: The temporal logic of programs. In: Proceedings of the 18th IEEE Symposium on the Foundations of Computer Science (FOCS-77), pp. 46–57, Providence, Rhode Island, October 31–November 2. IEEE Computer Society Press, Los Alamitos (1977)Google Scholar
  28. 28.
    Ramchandani, C.: Analysis of asynchronous concurrent systems by timed petri nets. Project MAC 120, MIT (1974)Google Scholar
  29. 29.
    Reed G.M., Roscoe A.W. (1988). A timed model for communication sequential processes. Theor Comput Sci 58:249–261zbMATHCrossRefMathSciNetGoogle Scholar
  30. 30.
    Rutten J.J.M.M. Component connectors. In [26], Chap. 5, pp 73–87 (2004).Google Scholar
  31. 31.
    Sifakis, J.: Performance evaluation of systems using nets. In: Brauer, W. (ed.) Proceedings of the advanced course on general net theory, Appeared as Lecture Notes in Computer Science 84 FRG, Springer, Berlin Heidelberg New York (1980)Google Scholar
  32. 32.
    Tasiran, S., Alur, R., Kurshan, R., Brayton, R.: Verifying abstractions of timed systems. In: Proc. 7th conference on concurrency theory (CONCUR), vol. 1119 of Lecture Notes in Computer Science, pp. 546–562 (1996)Google Scholar
  33. 33.
    Vardi M., Wolper P. (1994). Reasoning about infinite computations. Inform Comput 115:1–37zbMATHCrossRefMathSciNetGoogle Scholar
  34. 34.
    Wolper, P.: Specification and synthesis of communicating processes using an extended temporal logic. In: Proc. 9th symposium on principles of programming languages (POPL), pp. 20–33 (1982)Google Scholar
  35. 35.
    Wolper, P., Vardi, M., Sistla, A.: Reasoning about infinite computation paths. In: Proc. 24th symposium on foundations of computer science (FOCS), pp. 185–194. IEEE Computer Society Press Los Alamitos (1983)Google Scholar
  36. 36.
    Yi, W.: CCS + time = an interleaving model for real time systems. In: Proceedings of the 18th international colloquium on Automata, languages and programming, vol. 510 of Lecture Notes in Computer Science, pp. 217–228. Springer, Berlin Heidelberg New York, (1991)Google Scholar
  37. 37.
    Yovine S. (1997). Kronos: a verification tool for real-time systems. Softw Tools Technol Transfer 1(1–2): 123–133zbMATHCrossRefGoogle Scholar

Copyright information

© Springer-Verlag 2006

Authors and Affiliations

  • Farhad Arbab
    • 1
    • 3
  • Christel Baier
    • 2
  • Frank de Boer
    • 1
    • 3
  • Jan Rutten
    • 4
  1. 1.Department of Software EngineeringCentrum voor Wiskunde en InformaticaAmsterdamThe Netherlands
  2. 2.Institut für Informatik IUniversität BonnBonnGermany
  3. 3.Universiteit LeidenLeidenThe Netherlands
  4. 4.Vrije Universiteit AmsterdamAmsterdamThe Netherlands

Personalised recommendations