Skip to main content

Formal Architecture Modeling of Sequential C-Programs

  • Conference paper
  • First Online:
Formal Aspects of Component Software (FACS 2015)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 9539))

Included in the following conference series:

Abstract

To enable verification of a complex C-program, so called compositional verification can be used where the specification for the C-program is split into a set of specifications organized such that the fact that the C-program satisfies its specification can be inferred from verifying that parts of the C-program satisfy their specifications. To support the approach in practice, specifications must be organized in parallel to a formal architecture model capturing the C-program as a hierarchical structure of components with well-defined interfaces. Previous modeling approaches lack support for formal architecture modeling of C-programs. Therefore, a general and formal approach for architecture modeling of sequential C-programs is presented, to support compositional verification, as well as to aid design and management of such C-programs in general.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Alur, R., Grosu, R.: Modular refinement of hierarchic reactive machines. ACM Trans. Program. Lang. Syst. 26(2), 339–369 (2004)

    Article  Google Scholar 

  2. AUTOSAR: AUTomotive Open System ARchitecture. http://www.autosar.org/

  3. Ferrari, A., Sofronis, C., Benveniste, A., Mangeruca, L., Passerone, Roberto, Caillaud, Benoît: Multiple viewpoint contract-based specification and design. In: de Boer, F.S., Bonsangue, M.M., Graf, S., de Roever, W.-P. (eds.) FMCO 2007. LNCS, vol. 5382, pp. 200–225. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  4. Cass, S.: Top 10 programming languages, July 2014. http://spectrum.ieee.org/computing/software/top-10-programming-languages

  5. Chaki, S., Clarke, E., Groce, A., Jha, S., Veith, H.: Modular verification of software components in C. In: Proceedings of the 25th International Conference on Software Engineering, ICSE 2003, pp. 385–395, IEEE Computer Society, Washington (2003). http://dl.acm.org/citation.cfm?id=776816.776863

  6. Diestel, R.: Graph Theory. Graduate Texts in Mathematics, vol. 173. Springer, Heidelberg (2010)

    Book  Google Scholar 

  7. Feiler, P.H., Gluch, D.P.: Model-Based Engineering with AADL: An Introduction to the SAE Architecture Analysis & Design Language, 1st edn. Addison-Wesley Professional, Boston (2012)

    Google Scholar 

  8. Friedenthal, S., Moore, A., Steiner, R.: A Practical Guide to SysML: Systems Modeling Language. Morgan Kaufmann Inc., San Francisco (2008)

    Google Scholar 

  9. Greenaway, D.: Automated proof-producing abstraction of C code. Ph.D. thesis, University of New South Wales (2014)

    Google Scholar 

  10. Henzinger, T.A., Jhala, R., Majumdar, R., Sutre, G.: Software verification with BLAST. In: Ball, T., Rajamani, S.K. (eds.) SPIN 2003. LNCS, vol. 2648, pp. 235–239. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  11. ISO 26262: Road vehicles-Functional safety (2011)

    Google Scholar 

  12. ISO 7498–1: Information technology - OSI - Basic Reference Model (1994)

    Google Scholar 

  13. Josko, B., Ma, Q., Metzner, A.: Designing embedded systems using heterogeneous rich components. In: Proceedings of the INCOSE International Symposium (2008)

    Google Scholar 

  14. Kernighan, B.W.: The C Programming Language, 2nd edn. Prentice Hall Professional Technical Reference, New York (1988)

    Google Scholar 

  15. Laster, K., Grumberg, O.: Modular model checking of software. In: Steffen, B. (ed.) TACAS 1998. LNCS, vol. 1384, pp. 20–35. Springer, Heidelberg (1998)

    Chapter  Google Scholar 

  16. Lee, E.: Cyber physical systems: design challenges. In: 11th IEEE International Symposium on Object Oriented Real-Time Distributed Computing (ISORC), pp. 363–369, May 2008

    Google Scholar 

  17. Meyer, B.: Applying “Design by Contract”. Computer 25(10), 40–51 (1992). http://dx.doi.org/10.1109/2.161279

    Article  Google Scholar 

  18. Nyberg, M.: Failure propagation modeling for safety analysis using causal bayesian networks. In: 2013 Conference on Control and Fault-Tolerant Systems (SysTol), pp. 91–97, October 2013

    Google Scholar 

  19. Rasool, G., Asif, N.: Software architecture recovery. Int. J. Comput. Inf. Syst. Sci. Eng. 1(3), 206 (2007)

    Google Scholar 

  20. de Roever, W.-P.: The need for compositional proof systems: a survey. In: Roever, W-Pl, Langmaack, H., Pnueli, A. (eds.) COMPOS 1997. LNCS, vol. 1536, p. 1. Springer, Heidelberg (1998)

    Chapter  Google Scholar 

  21. Rumbaugh, J., Jacobson, I., Booch, G.: Unified Modeling Language Reference Manual. Pearson Higher Education, London (2004)

    Google Scholar 

  22. Dr, Taming, Sangiovanni-Vincentell, A.L., Damm, W., Passerone, R.: Taming Dr. Franken: contract-based design for cyber-physical systems. Eur. J. Control 18(3), 217–238 (2012)

    Article  MathSciNet  Google Scholar 

  23. Soleimanifard, S., Gurov, D.: Algorithmic verification of procedural programs in the presence of code variability. Sci. Comput. Program (2015). http://www.sciencedirect.com/science/article/pii/S0167642315002592

  24. Westman, J., Nyberg, M.: Extending contract theory with safety integrity levels. In: 2015 IEEE 16th International Symposium on HASE, pp. 85–92, January 2015

    Google Scholar 

  25. Westman, J., Nyberg, M.: Environment-centric contracts for design of cyber-physical systems. In: Dingel, J., Schulte, W., Ramos, I., Abrahão, S., Insfran, Emilio (eds.) MODELS 2014. LNCS, vol. 8767, pp. 218–234. Springer, Heidelberg (2014)

    Google Scholar 

  26. Westman, J., Nyberg, M.: Contracts for specifying and structuring requirements on cyber-physical systems. In: Rawat, D.B., Rodriques, J., Stojmenovic, I. (eds.) Cyber Physical Systems: From Theory to Practice. Taylor & Francis (2015)

    Google Scholar 

  27. Whalen, M.W., Gacek, A., Cofer, D., Murugesan, A., Heimdahl, M.P., Rayadurgam, S.: Your what is my how: iteration and hierarchy in system design. IEEE Softw. 30(2), 54–60 (2013)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Jonas Westman .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer International Publishing Switzerland

About this paper

Cite this paper

Westman, J., Nyberg, M. (2016). Formal Architecture Modeling of Sequential C-Programs. In: Braga, C., Ölveczky, P. (eds) Formal Aspects of Component Software. FACS 2015. Lecture Notes in Computer Science(), vol 9539. Springer, Cham. https://doi.org/10.1007/978-3-319-28934-2_17

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-28934-2_17

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-28933-5

  • Online ISBN: 978-3-319-28934-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics