BLESS: Formal Specification and Verification of Behaviors for Embedded Systems with Software

  • Brian R. Larson
  • Patrice Chalin
  • John Hatcliff
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7871)

Abstract

Recent experience in the avionics sector has demonstrated the benefits of using rigorous system architectural models, such as those supported by the standard Architectural and Analysis Definition Language (AADL), to ensure that multi-organization composition and integration tasks are successful. Despite its ability to capture interface signatures and system properties, such as scheduling periods and communication latencies as model attributes, AADL lacks a formal interface specification language, a formal semantics for component behavioral descriptions, and tools for reasoning about the compliance of behaviors to interface contracts. In this paper we introduce the Behavioral Language for Embedded Systems with Software (BLESS)—a behavioral interface specification language and proof environment for AADL. BLESS enables engineers to specify contracts on AADL components that capture both functional and timing properties. BLESS provides a formal semantics for AADL behavioral descriptions and automatic generation of verification conditions that, when proven by the BLESS proof tool, establish that behavioral descriptions conform to AADL contracts. We report on the application of BLESS to a collection of embedded system examples, including definition of multiple modes of a pacemaker.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Abrial, J.-R.: The B-book: assigning programs to meanings. Cambridge University Press, New York (1996)MATHCrossRefGoogle Scholar
  2. 2.
    Abrial, J.-R.: Modeling in Event-B: System and Software Engineering. Cambridge University Press, New York (2010)MATHCrossRefGoogle Scholar
  3. 3.
    Abrial, J.-R., Butler, M., Hallerstede, S., Hoang, T.S., Mehta, F., Voisin, L.: Rodin: an open toolset for modelling and reasoning in Event-B. Int. J. Softw. Tools Technol. Transf. 12(6), 447–466 (2010)CrossRefGoogle Scholar
  4. 4.
    Ahrendt, W., Baar, T., Beckert, B., Bubel, R., Giese, M., Hähnle, R., Menzel, W., Mostowski, W., Roth, A., Schlager, S., Schmitt, P.H.: The KeY tool. Software and Systems Modeling 4, 32–54 (2005)CrossRefGoogle Scholar
  5. 5.
    Barnett, M., Leino, K.R.M., Schulte, W.: The spec# programming system: An overview. In: Barthe, G., Burdy, L., Huisman, M., Lanet, J.-L., Muntean, T. (eds.) CASSIS 2004. LNCS, vol. 3362, pp. 49–69. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  6. 6.
    Beckert, B., Hähnle, R., Schmitt, P.H. (eds.): Verification of Object-Oriented Software. LNCS (LNAI), vol. 4334. Springer, Heidelberg (2007)Google Scholar
  7. 7.
    Berthomieu, B., Bodeveix, J.-P., Chaudet, C., Dal Zilio, S., Filali, M., Vernadat, F.: Formal verification of AADL specifications in the topcased environment. In: Kordon, F., Kermarrec, Y. (eds.) Ada-Europe 2009. LNCS, vol. 5570, pp. 207–221. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  8. 8.
    Burdy, L., Cheon, Y., Cok, D.R., Ernst, M.D., Kiniry, J.R., Leavens, G.T., Leino, K.R.M., Poll, E.: An overview of JML tools and applications. Journal on Software Tools for Technology Transfer (STTT) 7(3), 212–232 (2005)CrossRefGoogle Scholar
  9. 9.
    Feiler, P.H., Hansson, J., de Niz, D., Wrage, L.: System architecture virtual integration: An industrial case study. Technical Report CMU/SEI-2009-TR-017 (2009)Google Scholar
  10. 10.
    Hatcliff, J., King, A., Lee, I., Fernandez, A., Goldman, J., McDonald, A., Robkin, M., Vasserman, E., Weininger, S.: Rationale and architecture principles for medical application platforms. In: Proceedings of the 2012 International Conference on Cyberphysical Systems (2012)Google Scholar
  11. 11.
    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)Google Scholar
  12. 12.
    Januzaj, V., Mauersberger, R., Biechele, F.: Performance modelling for avionics systems. In: Moreno-Díaz, R., Pichler, F., Quesada-Arencibia, A. (eds.) EUROCAST 2009. LNCS, vol. 5717, pp. 833–840. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  13. 13.
    Larson, B.R.: Behavior Language for Embedded Systems with Software Annex Sublanguage for AADL (2012), Available at [24]Google Scholar
  14. 14.
    Larson, B.R., Chalin, P., Hatcliff, J.: BLESS: Formal specification and verification of behaviors for embedded systems with software. Technical Report SAnToS 2012-12-01, Kansas State University, Computing and Information Sc. Dept. (2012), Available at [24]Google Scholar
  15. 15.
    Mentré, D., Marché, C., Filliâtre, J.-C., Asuka, M.: Discharging proof obligations from Atelier B using multiple automated provers. In: Derrick, J., Fitzgerald, J., Gnesi, S., Khurshid, S., Leuschel, M., Reeves, S., Riccobene, E. (eds.) ABZ 2012. LNCS, vol. 7316, pp. 238–251. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  16. 16.
    Mikk, E., Lakhnech, Y., Siegel, M., Holzmann, G.J.: Implementing Statecharts in PROMELA/SPIN. In: Proceedings of the Workshop on Industrial Strength Formal Specification Techniques (WIFT). IEEE Computer Society, Washington, DC (1998)Google Scholar
  17. 17.
    Ölveczky, P.C., Boronat, A., Meseguer, J.: Formal semantics and analysis of behavioral AADL models in Real-Time Maude. In: Hatcliff, J., Zucca, E. (eds.) FMOODS/FORTE 2010. LNCS, vol. 6117, pp. 47–62. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  18. 18.
    Osate 2 web site (2012), wiki.sei.cmu.edu/aadl/index.php/Osate_2
  19. 19.
    SAE International. SAE AS5506A. Architecture Analysis & Design Language (AADL) (2009)Google Scholar
  20. 20.
    SAE International. SAE AS5506/2. Architecture Analysis & Design Language (AADL) Annex, vol. 2 (2011)Google Scholar
  21. 21.
    Boston Scientific. Pacemaker system specification (2007), sqrl.mcmaster.ca/pacemaker.html
  22. 22.
    Thums, A., Balser, M.: Interactive verification of statecharts. Integration of Software Spec. Tech. (INT) (2002)Google Scholar
  23. 23.
    System Architecture Virtual Integration (SAVI) Initiative (2012), wiki.sei.cmu.edu/aadl/index.php/Projects_and_Initiatives
  24. 24.
    SAnToS TR 2012-12-01 web site, info.santoslab.org/research/aadl/bless

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  • Brian R. Larson
    • 1
  • Patrice Chalin
    • 1
  • John Hatcliff
    • 1
  1. 1.Kansas State UniversityKansasUSA

Personalised recommendations