Skip to main content
Log in

Formal synthesis of application and platform behaviors of embedded software systems

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

Abstract

Two main embedded software components, application software and platform software, i.e., the real-time operating system (RTOS), interact with each other in order to achieve the functionality of the system. However, they are so different in behaviors that one behavior modeling language is not sufficient to model both styles of behaviors and to reason about the characteristics of their individual behaviors as well as their parallel behavior and interaction properties. In this paper, we present a formal approach to the synthesis of the application software and the RTOS behavior models. In this approach, each of them is modeled with its adequate modeling language and then is composed into a system model for analysis. Moreover, this paper also presents a consistent way of analyzing the application software with respect to both functional requirements and timing requirements. To show the effectiveness of the approach, a case study is conducted, where ARINC 653 and its application are modeled and verified against timing requirements. Using our approach, application software can be constructed as a behavioral model independently from a specific platform and can be verified against various platforms and timing constraints in a formal way.

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

Access this article

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

Instant access to the full article PDF.

Institutional subscriptions

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11

Similar content being viewed by others

References

  1. Alur, R.: Timed automata. In: Halbwachs, N., Peled, D. (eds.) Computer Aided Verification, Lecture Notes in Computer Science, vol. 1633, p. 688. Springer, Berlin (1999)

  2. Alur, R., Dill, D.L.: The theory of timed automata. In: Proceedings of the Real-Time: Theory in Practice, REX Workshop, pp. 45–73. Springer, London (1992)

  3. Baeten, J.C.M., Middelburg, C.A., Middelburg, K.: Process Algebra with Timing. Springer, Secaucus (2002)

    Book  MATH  Google Scholar 

  4. Behrmann, G., David, A., Larsen, K.G.: A tutorial on uppaal. In: Bernardo, M., Corradini, F. (eds.) International School on Formal Methods for the Design of Computer, Communication, and Software Systems, SFM-RT 2004. Revised Lectures, Lecture Notes in Computer Science, vol. 3185, pp. 200–237. Springer, Berlin (2004). http://doc.utwente.nl/51010/

  5. Berry, G., Gonthier, G.: The esterel synchronous programming language: design, semantics, implementation. Sci. Comput. Program. 19, 87–152 (1992)

    Article  MATH  Google Scholar 

  6. Butler, M.: CSP2B: a practical approach to combining CSP and B. Formal Aspects Comput. 12, 182–196 (2000)

    Article  MATH  Google Scholar 

  7. Butler, M., Leuschel, M.: Combining CSP and B for specification and property verification. In: Proceedings of Formal Methods, pp. 221–236. Springer, Berlin (2005)

  8. Cai, L., Gajski, D.: Transaction level modeling: an overview. In: First IEEE/ACM/IFIP International Conference on Hardware/Software Codesign and System Synthesis, 2003, pp. 19–24 (2003)

  9. Cámara, P.D.L., Castro, J.R., Gallardo, M., Merino, P.: Verification support for ARINC-653-based avionics software. Sotw. Test. Verification. Reliab. 21(4): 267–298 (2011). ISSN 1099-1689

    Google Scholar 

  10. Caspi, P., Pilaud, D., Halbwachs, N., Plaice, J.A.: Lustre: a declarative language for real-time programming. In: Proceedings of the 14th ACM SIGACT-SIGPLAN Symposium on Principles of Programming Languages, POPL ’87, pp. 178–188. ACM, New York (1987)

  11. Clarke, D., Lee, I., Liang Xie, H.: VERSA: A tool for the specification and analysis of resource-bound real-time systems. J. Comput. Softw. Eng. 3 (1995)

  12. Eker, J., Janneck, J., Lee, E.A., Liu, J., Liu, X., Ludvig, J., Sachs, S., Xiong, Y.: Taming heterogeneity—the ptolemy approach. Proc. IEEE 91(1), 127–144 (2003)

    Article  Google Scholar 

  13. Fischer, C., Smith, G.: Combining CSP and object-Z: finite or infinite trace semantics? In: FORTE X/PSTV XVII ’97: Proceedings of the IFIP TC6 WG6.1 Joint International Conference on Formal Description Techniques for Distributed Systems and Communication Protocols (FORTE X) and Protocol Specification, Testing and Verification (PSTV XVII), pp. 503–518. Chapman & Hall, London (1998)

  14. Gamatié, A., Gautier, T.: Synchronous modeling of modular avionics architectures using the SIGNAL language. Research Report RR-4678, INRIA (2002)

  15. Gamatié, A., Gautier, T.: Synchronous modeling of avionics applications using the SIGNAL language. In: Proceedings of the 9th IEEE Real-Time and Embededd Technology and Applications Sympsium, pp. 144–151 (2003). ISSN 1545-3421

  16. Gamatié, A., Gautier, T., Besnard, L.: Modeling of avionics applications and performance evaluation techniques using the synchronous language signal. Electron. Notes Theor. Comput. Sci. 88, 87–103 (2004)

    Article  Google Scholar 

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

    Article  MATH  MathSciNet  Google Scholar 

  18. Harel, D., Naamad, A.: The STATEMATE semantics of statecharts. ACM Trans. Softw. Eng. Methodol. 5(4), 293–333 (1996)

    Article  Google Scholar 

  19. Hennessy, M., Regan, T.: A process algebra for timed systems. Inf. Comput. 117, 221–239 (1995)

    Article  MATH  MathSciNet  Google Scholar 

  20. In der Rieden, T., Knapp, S.: An approach to the pervasive formal specification and verification of an automotive system: status report. In: FMICS ’05: Proceedings of the 10th International Workshop on Formal Methods for Industrial Critical Systems, pp. 115–124. ACM, New York (2005)

  21. Inc, A.R.: Avionics application software standard interface part 1—required services: ARINC specification 653p1-2. Aeronautical Radio Inc, Tech. rep. (2005)

  22. Kaynar, D.K., Lynch. N., Segal, R., Vaandrager, F.: The Theory of Timed I/O Automata. Synth. Lec. Comput. Sci. 1(1): 1–114 (2006)

  23. Kim, J., Choi, J.Y., Kang, I., Lee, I.: Generating composite behavior of embedded software components based on uml behavioral model and process algebra. SIGSOFT Softw. Eng. Notes 36, 1–9 (2011)

    Google Scholar 

  24. Kim, J., Kang, I., Choi, J.Y., Lee, I.: UML behavior models of real-time embedded software for model-driven architecture. J. Univers. Comput. Sci. 16(17), 2415–2434 (2010)

    Google Scholar 

  25. Kim, J., Kang, I., Choi, J.Y., Lee, I.: Timed and resource-oriented statecharts for embedded software. IEEE Trans. Ind. Inform. 6(4), 568–578 (2010)

    Article  Google Scholar 

  26. Koutsoukos, X.D., He, K.X., Lemmon, M.D., Antsaklis, P.J.: Timed petri nets in hybrid systems: stability and supervisorycontrol. Discret. Event Dyn. Syst. 8, 137–173 (1998)

    Article  MATH  MathSciNet  Google Scholar 

  27. Lee, E.A.: Finite state machines and modal models in Ptolemy II. Tech. Rep. UCB/EECS-2009-151, EECS Department, University of California, Berkeley (2009)

  28. Lee, I., Br’emond-Gr’egoire, P., Gerber, R.: A process algebraic approach to the specification and analysis of resource-bound real-time systems. In: Proceedings of the IEEE Special Issue on, Real-Time Systems, pp. 158–171 (1994)

  29. Lee, I., Philippou, A., Sokolosky, O.: Resources in process algebra. J. Logic Algebraic Program. 72(1), 98–122 (2007). [Algebraic Process Calculi: The First Twenty Five Years and Beyond. II]

    Google Scholar 

  30. Leuschel, M., Butler, M.J.: Pro B: a model checker for B. In: FME, pp. 855–874 (2003)

  31. Micrium—\(\mu \)C/OS-II Kernel. http://www.micrium.com/

  32. Mallet, F., de Simone, R.: MARTE: a profile for rt/e systems modeling, analysis-and simulation? In: Proceedings of the 1st International Conference on Simulation tools and Techniques for Communications, Networks and Systems & Workshops, Simutools ’08, pp. 43:1–43:8. ICST (Institute for Computer Sciences, Social-Informatics and Telecommunications Engineering), ICST, Brussels (2008)

  33. Merritt, M., Modugno, F., Tuttle, M.R.: Time-constrained automata (extended abstract). In: Proceedings of the 2nd International Conference on Concurrency Theory, CONCUR ’91, pp. 408–423. Springer, London (1991)

  34. Milner, R.: Communication and Concurrency. Prentice-Hall, Upper Saddle River (1989)

    MATH  Google Scholar 

  35. OMG: Object Constraint Language, Version 2.2. Object Management Group (OMG), Needham (2010)

  36. Pettersson, P., Seceleanu, C., Vulgarakis, A.: Remes: a resource model for embedded systems. Technical Report ISSN 1404–3041 ISRN MDH-MRTC-232/2008-1-SE, Målardalen University (2008)

  37. Reed, G.M., Roscoe, A.W.: A timed model for communicating sequential processes. Theor. Comput. Sci. 58, 249–261 (1988)

    Google Scholar 

  38. Sagonas, K. F., Armstrong, J. (eds.) Proceedings of the 2005 ACM SIGPLAN Workshop on Erlang, Tallinn, Estonia, September 26–28. Erlang workshop ACM, Estonia (2005). ISBN 1-59593-066-3

  39. Schneider, S., Treharne, H., Evans, N.: Chunks: component verification in CSP \(||\) B. In: IFM’2005, pp. 89–108 (2005)

  40. Smith, G., Derrick, J.: Abstract specification in object- Z and CSP. In: Formal Methods and Software Engineering, Lecture Notes in Computer Science, vol. 2495, pp. 108–119. Springer, Berlin (2002)

  41. The UML Profile for MARTE: Modeling and Analysis of Real-Time and Embedded Systems. http://www.omgmarte.org/

  42. Unified Modeling Language. http://www.omg.org/spec/UML/2.0

  43. Waszniowski, L., Hanzálek, Z.: Formal verification of multitasking applications based on timed automata model. Real-Time Syst. 38(1), 39–65 (2008)

    Article  MATH  Google Scholar 

Download references

Acknowledgments

This research was supported by Basic Science Research Program through the National Research Foundation of Korea (NRF) funded by the Ministry of Education, Science and Technology (2012R1A1A2009354).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Jinhyun Kim.

Additional information

Communicated by Dr. Sebastien Gerard.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Kim, J., Kang, I., Choi, JY. et al. Formal synthesis of application and platform behaviors of embedded software systems. Softw Syst Model 14, 839–859 (2015). https://doi.org/10.1007/s10270-013-0342-8

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10270-013-0342-8

Keywords

Navigation