Modeling and Analysis of CPU Usage in Safety-Critical Embedded Systems to Support Stress Testing

  • Shiva Nejati
  • Stefano Di Alesio
  • Mehrdad Sabetzadeh
  • Lionel Briand
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7590)


Software safety certification needs to address non-functional constraints with safety implications, e.g., deadlines, throughput, and CPU and memory usage. In this paper, we focus on CPU usage constraints and provide a framework to support the derivation of test cases that maximize the chances of violating CPU usage requirements. We develop a conceptual model specifying the generic abstractions required for analyzing CPU usage and provide a mapping between these abstractions and UML/MARTE. Using this model, we formulate CPU usage analysis as a constraint optimization problem and provide an implementation of our approach in a state-of-the-art optimization tool. We report an application of our approach to a case study from the maritime and energy domain. Through this case study, we argue that our approach (1) can be applied with a practically reasonable overhead in an industrial setting, and (2) is effective for identifying test cases that maximize CPU usage.


Schedule Policy Sequence Diagram Schedulability Analysis Temporal Precedence Parallel Thread 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Jackson, D., Thomas, M., Millett, L. (eds.): Software for Dependable Systems: Sufficient Evidence? National Academy Press (2007)Google Scholar
  2. 2.
    Henzinger, T.A., Sifakis, J.: The Embedded Systems Design Challenge. In: Misra, J., Nipkow, T., Sekerinski, E. (eds.) FM 2006. LNCS, vol. 4085, pp. 1–15. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  3. 3.
    Lee, E., Seshia, S.: Introduction to Embedded Systems: A Cyber-Physical Systems Approach (2010),
  4. 4.
    Clarke, E., Grumberg, O., Peled, D.: Model Checking. MIT Press (1999)Google Scholar
  5. 5.
    A UML profile for MARTE: Modeling and analysis of real-time embedded systems (May 2009)Google Scholar
  6. 6.
    Beizer, B.: Software testing techniques, 2nd edn. Van Nostrand Reinhold (1990)Google Scholar
  7. 7.
    Hentenryck, P.V., Michel, L.: Constraint-Based Local Search. The MIT Press (2005),
  8. 8.
    Wind River VxWorks (2009),
  9. 9.
    Liu, J.W.S.: Real-time systems. Prentice Hall (2000)Google Scholar
  10. 10.
    Sprunt, B.: Aperiodic task scheduling for real-time systems. PhD thesis, Carnegie Mellon University, Pittsburgh, PA, USA (1990)Google Scholar
  11. 11.
    OMG: The Unified Modelling Language. Version 2.1.2 (2007),
  12. 12.
    Alesio, S.D.: The CPU usage constraints in Comet.
  13. 13.
    Harel, D., Marelly, R.: Specifying and executing behavioral requirements: the play-in/play-out approach. Software and System Modeling 2(2), 82–107 (2003)CrossRefGoogle Scholar
  14. 14.
    IEC 61158: industrial communication networks - fieldbus specifications. International Electrotechnical Commission (2010)Google Scholar
  15. 15.
    Cortellessa, V., Marco, A.D., Inverardi, P.: Model-Based Software Performance Analysis. Springer (2011)Google Scholar
  16. 16.
    Lazowska, E., Zahorjan, J., Graham, S., Sevcik, K.: Quantitative system performance computer system analysis using queueing network models. In: Int. CMG Conference, pp. 786–788 (1984)Google Scholar
  17. 17.
    Marsan, M., Balbo, G., Conte, G., Donatelli, S., Franceschinis, G.: Modelling with generalized stochastic petri nets. SIGMETRICS Performance Evaluation Review 26(2), 2 (1998)CrossRefGoogle Scholar
  18. 18.
    Plateau, B., Atif, K.: Stochastic automata network for modeling parallel systems. IEEE Trans. Software Eng. 17(10), 1093–1108 (1991)MathSciNetCrossRefGoogle Scholar
  19. 19.
    Petriu, D.: Software Model-based Performance Analysis. John Wiley & Sons (2010)Google Scholar
  20. 20.
    Hudak, J., Feiler, P.: Developing AADL models for control systems: A practitioner’s guide (October 2006)Google Scholar
  21. 21.
    Bertogna, M.: Real-Time Scheduling Analysis for Multiprocessor Platforms. PhD thesis, Scuola Superiore Sant’Annna, Pisa (2007)Google Scholar
  22. 22.
    David, A., Illum, J., Larsen, K., Skou, A.: In: Model-Based Framework for Schedulability Analysis Using UPPAAL 4.1, pp. 93–119. CRC Press (2010)Google Scholar
  23. 23.
    Briand, L., Labiche, Y., Shousha, M.: Using genetic algorithms for early schedulability analysis and stress testing in real-time systems. Genetic Programming and Evolvable Machines 7(2), 145–170 (2006)CrossRefGoogle Scholar
  24. 24.
    Mikucionis, M., Larsen, K., Nielsen, B., Illum, J., Skou, A., Palm, S., Pedersen, J., Hougaard, P.: Schedulability analysis using UPPAAL: Herscehl-Planck case study. In: Proceedings of 4th International Symposiumo on Leveraging Applications of Formal Methods, Verification and Validation; track: Quantitative Verification in Practice (2010)Google Scholar
  25. 25.
    Applegate, D., Cook, W.: A computational study of the job-shop scheduling problem. INFORMS Journal on Computing 3(2), 149–156 (1991)MathSciNetzbMATHCrossRefGoogle Scholar
  26. 26.
    Behrmann, G., David, A., Larsen, K.G.: A Tutorial on Uppaal. In: Bernardo, M., Corradini, F. (eds.) SFM-RT 2004. LNCS, vol. 3185, pp. 200–236. Springer, Heidelberg (2004)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Shiva Nejati
    • 1
  • Stefano Di Alesio
    • 1
    • 2
  • Mehrdad Sabetzadeh
    • 1
  • Lionel Briand
    • 1
    • 2
  1. 1.SnT CenterUniversity of LuxembourgLuxembourg
  2. 2.Simula Research LaboratoryCertus Software V&V CenterNorway

Personalised recommendations