Skip to main content

Advertisement

Log in

Behavioral specification of reactive systems using stream-based I/O tables

  • Special Section Paper
  • Published:
Software & Systems Modeling Aims and scope Submit manuscript

Abstract

A core problem in formal methods is the transition from informal requirements to formal specifications. Especially when specifying the behavior of reactive systems, many formalisms require the user to either understand a complex mathematical theory and notation or to derive details not given in the requirements, such as the state space of the problem. For many approaches also a consistent set of requirements is needed, which enforces to resolve requirements conflicts prior to formalization. This paper describes a specification technique, where not states but signal patterns are the main elements. The notation is based on tables of regular expressions and supports a piece-wise formalization of potentially inconsistent requirements. Many properties, such as input completeness and consistency, can be checked automatically for these specifications. The detection and resolution of conflicts can be performed within our framework after formalization. Besides the formal foundation of our approach, this paper presents prototypical tool support and results from an industrial case study.

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

Access this article

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

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

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Abreu, J., Bocchi, L., Fiadeiro, J.L., Lopes, A.: Specifying and composing interaction protocols for service-oriented system modelling. In: Proceedings of FORTE’07. Springer, Berlin (2007)

  2. Barroca, L., Fiadeiro, J.L.: Coordination contracts as connectors in component-based development. In: Proceedings of Integrated Design and Process Technology, IDPT 2002 (2002)

  3. Bauer, A., Leucker, M., Streit, J.: SALT—structured assertion language for temporal logic. In: Proceedings of ICFEM’06. Springer, Berlin (2006)

  4. von der Beeck, M.: A comparison of Statecharts variants. In: Proceedings of FTRTFT. Springer, Berlin (1994)

  5. Bérard, B., Bidoit, M., Finkel, A., Laroussinie, F., Petit, A., Petrucci, L., Schnoebelen, Ph.: Systems and Software Verification. Model-Checking Techniques and Tools. Springer, Berlin. http://www.springer.com/3-540-41523-8 (2001)

  6. Botaschanjan, J., Harhurin, A.: Property-driven scenario integration. In: 7th IEEE International Conference on Software Engineering and Formal Methods (SEFM). IEEE Computer Society (2009)

  7. Brill, M., Damm, W., Klose, J., Westphal, B., Wittke, H.: Live sequence charts: an introduction to lines, arrows, and strange boxes in the context of formal verification. In: SoftSpez Final Report (2004)

  8. Broy M., Stølen K.: Specification and Development of Interactive Systems: Focus on Streams, Interfaces, and Refinement. Springer, Berlin (2001)

    Book  Google Scholar 

  9. Courtois, P.J., Parnas, D.L.: Documentation for safety critical software. In: Proceedings of ICSE’93. IEEE (1993)

  10. Damm W., Harel D.: LSCs: breathing life into message sequence charts. Form. Methods Syst. Des. 19(1), 45–80 (2001)

    Article  MATH  Google Scholar 

  11. Denger, C., Berry, D.M., Kamsties, E.: Higher quality requirements specifications through natural language patterns. In: Proceedings of SWSTE’03. IEEE (2003)

  12. Dwyer, M.B., Avrunin, G.S., Corbettm J.C.: Patterns in property specifications for finite-state verification. In: Proceedings of ICSE’99. IEEE (1999)

  13. Gössler G., Sifakis J.: Composition for component-based modeling. Sci. Comput. Program. 55(1–3), 161–183 (2005)

    Article  MATH  Google Scholar 

  14. Gruber, H., Holzer, M.: Finite automata, digraph connectivity, and regular expression size. In: Proceedings of 35th International Colloquium on Automata, Languages and Programming (ICALP 2008) (2008)

  15. Gurumurthy, S., Kupferman, O., Somenzi, F., Vardi, M.Y.: On complementing nondeterministic Büchi automata. In: Proceedings of the 12th IFIP WG 10.5 Advanced Research Working Conference on Correct Hardware Design and Verification Methods (2003)

  16. Halbwachs N., Caspi P., Raymond P., Pilaud D.: The synchronous data flow programming language LUSTRE. Proc. IEEE 79(9), 1305–1320 (1991)

    Article  Google Scholar 

  17. Harel D.: Statecharts: A visual formalism for complex systems. Sci. Comput. Program. 8(3), 231–274 (1987)

    Article  MathSciNet  MATH  Google Scholar 

  18. Heitmeyer, C.L.: Applying practical formal methods to the specification and analysis of security properties. In: MMM-ACNS (2001)

  19. Heitmeyer, C.L., Kirby, J., Labaw, B.G., Bharadwaj, R.: SCR*: a toolset for specifying and analyzing software requirements. In: Proceedings of CAV’98. Springer, Berlin (1998)

  20. Heitmeyer, C.L., Archer, M., Bharadwaj, R., Jeffords, R.D.: Tools for constructing requirements specifications: the SCR toolset at the age of nine. Comput. Syst. Sci. Eng. 20(1) (2005)

  21. Henriksen, J.G., Jensen, J.L., Jørgensen, M.E., Klarlund, N., Paige, R., Rauhe, T., Sandholm, A.: Mona: monadic second-order logic in practice. In: Proceedings of TACAS’95. Springer, Berlin (1995)

  22. Herrmannsdörfer M., Konrad S., Berenbach B.: Tabular notations for state machine-based specifications. Crosstalk 21(3), 18–23 (2008)

    Google Scholar 

  23. Hopcroft J.E., Ullman J.D.: Introduction to Automata Theory, Languages, and Computation. Addison-Wesley, Reading (1979)

    MATH  Google Scholar 

  24. Hummel, B.: Automata-based IP packet classification. Master’s thesis, Technische Universität München. http://www4.in.tum.de/~hummelb/publ/hummel-06-thesis.pdf (2006)

  25. IEEE: IEEE Std 1003.1-2001 Standard for Information Technology—Portable Operating System Interface (POSIX) Base Definitions, Issue 6. IEEE (2001)

  26. ITU-T: Recommendation Z.120. Message Sequence Charts. Tech. Rep. Z-120. International Telecommunication Union, Genève (2000)

  27. Janicki R., Khédri R.: On a formal semantics of tabular expressions. Sci. Comput. Program. 39(2–3), 189–213 (2001)

    Article  MATH  Google Scholar 

  28. Object Management Group: UML 2 superstructure specification. http://www.uml.org/ (2004)

  29. Parnas, D.L.: Tabular representation of relations. CRL Report 260, Telec. Research Institute of Ontario (1992)

  30. Peters, D.K., Lawford, M., y Widemann, B.T.: An IDE for software development using tabular expressions. In: Proceedings of CASCON’07. IBM (2007)

  31. Podelski, A., Steffen, B., Zuck, L. (eds.): Liveness Manifestos. Beyond Safety, International Workshop, Schloß Ringberg, Germany. http://www.cs.nyu.edu/acsys/beyond-safety/liveness.htm (2004)

  32. Prowell S.J., Poore J.H.: Foundations of sequence-based software specification. IEEE Trans. Softw. Eng. 29(5), 417–429 (2003)

    Article  Google Scholar 

  33. Ramadge P.J.G., Wonham W.M.: The control of discrete event systems. Proc. IEEE 77(1), 81–98 (1989)

    Article  Google Scholar 

  34. Schewe, S.: Büchi complementation made tight. In: Proceedings of the Symposium on Theoretical Aspects of Computer Science (STACS’09) (2009)

  35. Sengupta, B., Cleaveland, R.: Triggered message sequence charts. IEEE Trans. Softw. Eng. 32(8), 587–607 (2006). http://doi.ieeecomputersociety.org/10.1109/TSE.2006.82

    Google Scholar 

  36. Thomas, W.: Automata on infinite objects. In: Handbook of Theoretical Computer Science. Formal Models and Sematics, vol. B, pp. 133–192. MIT Press, New York (1990)

  37. Thyssen, J., Hummel, B.: Behavioral specification of reactive systems using stream-based I/O tables. In: Proceedings of the 7th IEEE International Conference on Software Engineering and Formal Methods (SEFM’09) (2009)

  38. Uchitel S., Brunet G., Chechik M.: Synthesis of partial behavior models from properties and scenarios. IEEE Trans. Softw. Eng. 35(3), 384–406 (2009)

    Article  Google Scholar 

  39. Vardi, M.Y.: The Büchi complementation saga. In: Proceedings of the Symposium on Theoretical Aspects of Computer Science (STACS’07) (2007)

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Benjamin Hummel.

Additional information

Communicated by Prof. Krishnan, Dr. Cerone, and Dr. Van Hung.

Parts of this work have been conducted in a project with Siemens Sector Industry.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Thyssen, J., Hummel, B. Behavioral specification of reactive systems using stream-based I/O tables. Softw Syst Model 12, 265–283 (2013). https://doi.org/10.1007/s10270-011-0204-1

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10270-011-0204-1

Keywords

Navigation