International Conference on Software Engineering and Formal Methods

Software Engineering and Formal Methods pp 43-52 | Cite as

Behavioral Types for Component-Based Development of Cyber-Physical Systems

Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9509)

Abstract

Spatial behavioral types encode information on the tempo-spatial behavior of components acting in the physical space. That makes it possible to utilize the well established concept of type systems with its well studied benefits for programming languages, e.g., fast automatic detection of incompatibilities and coercion, also in the cyber-physical world of domains such as embedded systems. So, spatial behavioral types support development and better maintenance of systems leading to a reduction of errors, improvement of safety and, in consequence, lower expenditure. In this position paper, we summarize existing work and develop our ideas for a spatial behavioral type concept. In particular, we turn our attention to making the spatial behavioral types easily usable by non-experts. Besides of a semantics that resembles traditional types systems, our method offers a syntax based on easily comprehensible regular expressions while systems can be verified using fully-automatic tools.

References

  1. 1.
    Abadi, M., Lamport, L.: The existence of refinement mappings. Theor. Comput. Sci. 82(2), 253–284 (1991)MATHMathSciNetCrossRefGoogle Scholar
  2. 2.
    Acciai, L., Boreale, M., Zavattaro, G.: Behavioural contracts with request-response operations. Sci. Comput. Program. 78(2), 248–267 (2013)MATHCrossRefGoogle Scholar
  3. 3.
    de Alfaro, L., Henzinger, T.A.: Interface automata. In: Symposium on Foundations of Software Engineering. ACM (2001)Google Scholar
  4. 4.
    Arbab, F.: Abstract behavior types: a foundation model for components and their composition. In: de Boer, F.S., Bonsangue, M.M., Graf, S., de Roever, W.-P. (eds.) FMCO 2002. LNCS, vol. 2852, pp. 33–70. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  5. 5.
    Barringer, H., Falcone, Y., Havelund, K., Reger, G., Rydeheard, D.: Quantified event automata: towards expressive and efficient runtime monitors. In: Giannakopoulou, D., Méry, D. (eds.) FM 2012. LNCS, vol. 7436, pp. 68–84. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  6. 6.
    Barringer, H., Goldberg, A., Havelund, K., Sen, K.: Rule-based runtime verification. In: Steffen, B., Levi, G. (eds.) VMCAI 2004. LNCS, vol. 2937, pp. 44–57. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  7. 7.
    Bauer, A., Leucker, M.: The theory and practice of SALT. In: Bobaru, M., Havelund, K., Holzmann, G.J., Joshi, R. (eds.) NFM 2011. LNCS, vol. 6617, pp. 13–40. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  8. 8.
    Beugnard, A., Jézéquel, J.-M., Plouzeau, N., Watkins, D.: Making components contract aware. Computer 32(7), 38–45 (1999)CrossRefGoogle Scholar
  9. 9.
    Blech, J.O.: Ensuring OSGi component based properties at runtime with behavioral types. In: 10th Workshop on Model Design, Verification and Validation Integrating Verification and Validation in MDE (2013)Google Scholar
  10. 10.
    Blech, J.O.: Towards a Formalization of the OSGi Component Framework (2012). arxiv.org/abs/1208.2563v1
  11. 11.
    Blech, J.O.: Towards a framework for behavioral specifications of OSGi components. In: 10th International Workshop on Formal Engineering Approaches to Software Components and Architectures. Electronic Proceedings in Theoretical Computer Science (2013)Google Scholar
  12. 12.
    Blech, J.O., Falcone, Y., Rueß, H., Schätz, B.: Behavioral specification based runtime monitors for OSGi services. In: Margaria, T., Steffen, B. (eds.) ISoLA 2012, Part I. LNCS, vol. 7609, pp. 405–419. Springer, Heidelberg (2012)Google Scholar
  13. 13.
    Blech, J.O., Rueß, H., Schätz, B.: On Behavioral Types for OSGi: From Theory to Implementation (2013). arxiv.org/abs/1306.6115
  14. 14.
    Blech, J.O., Schätz, B.: Towards a formal foundation of behavioral types for UML state-machines. In: 5th International Workshop UML and Formal Methods, Paris. ACM SIGSOFT Software Engineering Notes (2012)Google Scholar
  15. 15.
    Blech, J.O., Schmidt, H.: Towards modeling and checking the spatial and interaction behavior of widely distributed systems. In: Improving Systems and Software Engineering Conference, Melbourne (2013)Google Scholar
  16. 16.
    Bliudze, S., Mavridou, A., Szymanek, R., Zolotukhina, A.: Coordination of software components with BIP: application to OSGi. In: 6th International Workshop on Modeling in Software Engineering. ACM (2014)Google Scholar
  17. 17.
    Bodden, E., Hendren, L.: The clara framework for hybrid typestate analysis. Int. J. Softw. Tools Technol. Transf. (STTT) 14, 307–326 (2012)CrossRefGoogle Scholar
  18. 18.
    Bravetti, M., Zavattaro, G.: A theory of contracts for strong service compliance. Math. Struct. Comput. Sci. 19(3), 601–638 (2009)MATHMathSciNetCrossRefGoogle Scholar
  19. 19.
    Cao, T.D., Phan-Quang, T.T., Félix, P., Castanet, R.: Automated runtime verification for web services. In: International Conference on Web Services. IEEE Computer Society (2010)Google Scholar
  20. 20.
    Castagna, G., Gesbert, N., Padovani, L.: A theory of contracts for web services. ACM Tran. Program. Lang. Syst. 31(5), 1–61 (2009)CrossRefGoogle Scholar
  21. 21.
    Cataño, N., Ahmed, I.: Lightweight verification of a multi-task threaded server: a case study with the plural tool. In: Salaün, G., Schätz, B. (eds.) FMICS 2011. LNCS, vol. 6959, pp. 6–20. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  22. 22.
    Chalin, P., Kiniry, J.R., Leavens, G.T., Poll, E.: Beyond assertions: advanced specification and verification with JML and ESC/Java2. In: de Boer, F.S., Bonsangue, M.M., Graf, S., de Roever, W.-P. (eds.) FMCO 2005. LNCS, vol. 4111, pp. 342–363. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  23. 23.
    Fiadeiro, J.L., Lopes, A.: Consistency of service composition. In: de Lara, J., Zisman, A. (eds.) Fundamental Approaches to Software Engineering. LNCS, vol. 7212, pp. 63–77. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  24. 24.
    Gan, Y., Chechik, M., Nejati, S., Bennett, J., O’Farrell, B., Waterhouse, J.: Runtime monitoring of web service conversations. In: 2007 Conference of the Center for Advanced Studies on Collaborative Research. ACM (2007)Google Scholar
  25. 25.
    Hallé, S., Bultan, T., Hughes, G., Alkhalaf, M., Villemaire, R.: Runtime verification of web service interface contracts. Computer 43, 59–66 (2010)CrossRefGoogle Scholar
  26. 26.
    Hamlen, K.W., Morrisett, G., Schneider, F.B.: Certified in-lined reference monitoring on.NET. In: 2006 Workshop on Programming languages and Analysis for Security. ACM (2006)Google Scholar
  27. 27.
    Han, F., Blech, J.O., Herrmann, P., Schmidt, H.: Model-based engineering and analysis of space-aware systems communicating via IEEE 802.11. In: To appear in 39th Annual International Computers, Software & Applications Conference (COMPSAC). IEEE Computer (2015)Google Scholar
  28. 28.
    Hatcliff, J., Leavens, G.T., Leino, K.R.M., Müller, P., Parkinson, M.: Behavioral interface specification languages. ACM Comput. Surv. 44(3), 16:1–16:58 (2012). Article 16CrossRefGoogle Scholar
  29. 29.
    Herrmann, P.: Trust-based protection of software component users and designers. In: Nixon, P., Terzis, S. (eds.) iTrust 2003. LNCS, vol. 2692, pp. 75–90. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  30. 30.
    Herrmann, P., Blech, J.O., Han, F., Schmidt, H.: A model-based toolchain to verify spatial behavior of cyber-physical systems. In: 2014 Asia-Pacific Services Computing Conference (APSCC). IEEE Computer (2014)Google Scholar
  31. 31.
    Johnsen, E.B., Hähnle, R., Schäfer, J., Schlatte, R., Steffen, M.: ABS: a core language for abstract behavioral specification. In: Aichernig, B.K., Boer, F.S., Bonsangue, M.M. (eds.) Formal Methods for Components and Objects. LNCS, vol. 6957, pp. 142–164. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  32. 32.
    Kraemer, F.A., Herrmann, P.: Automated encapsulation of UML activities for incremental development and verification. In: Schürr, A., Selic, B. (eds.) MODELS 2009. LNCS, vol. 5795, pp. 571–585. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  33. 33.
    Kraemer, F.A., Herrmann, P.: Reactive semantics for distributed UML activities. In: Hatcliff, J., Zucca, E. (eds.) FMOODS 2010, Part II. LNCS, vol. 6117, pp. 17–31. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  34. 34.
    Kraemer, F.A., Slåtten, V., Herrmann, P.: Tool support for the rapid composition, analysis and implementation of reactive services. J. Syst. Softw. 82(12), 2068–2080 (2009)CrossRefGoogle Scholar
  35. 35.
    Lee, E.A., Xiong, Y.: A behavioral type system and its application in ptolemy II. Formal Aspects Comput. 16(3), 210–237 (2004)MATHCrossRefGoogle Scholar
  36. 36.
    Meyer, B.: Applying "design by contract". Computer 25(10), 40–51 (1992)CrossRefGoogle Scholar
  37. 37.
    Meredith, P.O., Jin, D., Griffith, D., Chen, F., Roşu, G.: An overview of the MOP runtime verification framework. Int. J. Softw. Tech. Technol. Transfer 14, 249–289 (2011)CrossRefGoogle Scholar
  38. 38.
    Prehofer, C.: Behavioral refinement and compatibility of statechart extensions. In: Formal Engineering Approaches to Software Components and Architectures. Electronic Notes in Theoretical Computer Science (2012)Google Scholar
  39. 39.
    Schneider, F.B.: Enforceable security policies. ACM Trans. Inf. Syst. Secur. 3, 30–50 (2000)CrossRefGoogle Scholar
  40. 40.
    Shaer, O., Hornecker, E.: Tangible user interfaces: past, present, and future directions. Found. Trends Hum. Comput. Inter. 3(12), 1–137 (2010)Google Scholar
  41. 41.
    Souza, F., Lopes, D., Gama, K., Rosa, N., Lima, R.: Dynamic event-based monitoring in a SOA environment. In: Meersman, R., et al. (eds.) OTM 2011, Part II. LNCS, vol. 7045, pp. 498–506. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  42. 42.
    Spichkova, M., Blech, J.O., Herrmann, P., Schmidt, H.: Modeling spatial aspects of safety-critical systems with FOCUS\(^{ST}\). In: Model-Driven Engineering, Verification, and Validation in MDE, Satellite Event of MoDELS2014, CUR-WS Proceedings, vol. 1235, pp. 49–58, Valencia (2014)Google Scholar
  43. 43.
    Szyperski, C.: Component Software - Beyond Object Oriented Programming. Addison-Wesley Longman, New York (1997)Google Scholar
  44. 44.
    Wenger, M., Blech, J.O., Zoitl, A.: Behavioral type-based monitoring for IEC 61499. To appear in Emerging Technologies and Factory Automation (ETFA). IEEE (2015)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2015

Authors and Affiliations

  1. 1.RMIT UniversityMelbourneAustralia
  2. 2.NTNUTrondheimNorway

Personalised recommendations