Skip to main content

Towards Automated Defect Analysis Using Execution Traces of Scenario-Based Models

  • Conference paper
  • First Online:
Model-Driven Engineering and Software Development (MODELSWARD 2018)

Part of the book series: Communications in Computer and Information Science ((CCIS,volume 991))

  • 529 Accesses

Abstract

Modern software systems are so complex that at times engineers find it difficult to understand why a system behaves as it does under certain conditions, and, in particular, which conditions trigger specific behavior. This adds a significant burden to tasks like debugging or maintenance. Scenario-based specifications can mitigate some of the problems engineers face thanks to the scenarios’ intuitiveness, executability and amenability to formal methods such as verification and synthesis. However, as a specification grows it becomes increasingly difficult to fully comprehend the interplay of all scenarios, thus again making it difficult to understand the final system’s behavior. Therefore we propose a (semi-)automatic trace analysis method. It incorporates automatic techniques for identifying interesting traces, or subsequences within traces, from large sets of long execution traces. Developers are interested in knowing whether certain specification properties hold: if a property holds, what are possible executions which are evidence of this? If a property does not hold, what are examples that violate it? Scenario-based specifications are well-suited to generating meaningful execution traces due to being based on events which are meaningful in the domain of the system under design. A key observation we made was that interesting properties of a trace are often encoded in just one or very few scenarios. These concise scenarios, describing desired or forbidden behavior, are often already part of the specification or should be added to it as they encode implicitly made assumptions.

This paper incorporates and substantially extends the material of the paper published in MODELSWARD 2018 “Towards Systematic and Automatic Handling of Execution Traces Associated with Scenario-based Models” [1].

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. Greenyer, J., Gritzner, D., Harel, D., Marron, A.: Towards systematic and automatic handling of execution traces associated with scenario-based models. In: Proceedings of the 6th International Conference on Model-Driven Engineering and Software Development (MODELSWARD), pp. 560–566 (2018)

    Google Scholar 

  2. Damm, W., Harel, D.: LSCs: breathing life into message sequence charts. Formal Methods Syst. Des. 19, 45–80 (2001)

    Article  Google Scholar 

  3. Harel, D., Marelly, R.: Come, Let’s Play: Scenario-Based Programming Using LSCs and the Play-Engine. Springer, Heidelberg (2003). https://doi.org/10.1007/978-3-642-19029-2

    Book  Google Scholar 

  4. Greenyer, J., et al.: Scenarios@run.time - distributed execution of specifications on IoT-connected robots. In: 10th International Workshop on Models@Run.Time (MRT), Co-located with MODELS 2015, CEUR Workshop Proceedings (2015)

    Google Scholar 

  5. Greenyer, J., Gritzner, D., Katz, G., Marron, A.: Scenario-based modeling and synthesis for reactive systems with dynamic system structure in scenariotools. In: Proceedings of the MoDELS 2016 Demo and Poster Sessions, Co-located with ACM/IEEE 19th International Conference on Model Driven Engineering Languages and Systems (MoDELS), CEUR (2016)

    Google Scholar 

  6. Gritzner, D., Greenyer, J.: Controller synthesis and PCL code generation from scenario-based GR (1) robot specifications. In: Proceedings of the 4th Workshop on Model-Driven Robot Software Engineering (MORSE 2017), Co-located with Software Technologies: Applications and Foundations (STAF) (2017)

    Google Scholar 

  7. Harel, D., Marron, A., Weiss, G.: Behavioral programming. Commun. ACM 55, 99–100 (2012)

    Article  Google Scholar 

  8. Harel, D., Katz, G., Marelly, R., Marron, A.: An initial wise development environment for behavioral models. In: Proceedings of the 4th International Conference on Model-Driven Engineering and Software Development (MODELSWARD), pp. 600–612 (2016)

    Google Scholar 

  9. Hamou-Lhadj, A., Lethbridge, T.: Summarizing the content of large traces to facilitate the understanding of the behaviour of a software system. In: 14th IEEE International Conference on Program Comprehension (ICPC), pp. 181–190. IEEE (2006)

    Google Scholar 

  10. Braun, E., Amyot, D., Lethbridge, T.C.: Generating software documentation in use case maps from filtered execution traces. In: Fischer, J., Scheidgen, M., Schieferdecker, I., Reed, R. (eds.) SDL 2015. LNCS, vol. 9369, pp. 177–192. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-24912-4_13

    Chapter  Google Scholar 

  11. Noda, K., Kobayashi, T., Toda, T., Atsumi, N.: Identifying core objects for trace summarization using reference relations and access analysis. In: 2017 IEEE 41st Annual Computer Software and Applications Conference (COMPSAC). IEEE (2017)

    Google Scholar 

  12. Bertero, C., Roy, M., Sauvanaud, C., Trédan, G.: Experience report: log mining using natural language processing and application to anomaly detection. In: 28th International Symposium on Software Reliability Engineering (ISSRE) (2017)

    Google Scholar 

  13. Weimer, W., Forrest, S., Le Goues, C., Nguyen, T.: Automatic program repair with evolutionary computation. Commun. ACM 53, 109–116 (2010)

    Article  Google Scholar 

  14. Clarke, E., Grumberg, O., Jha, S., Lu, Y., Veith, H.: Counterexample-guided abstraction refinement for symbolic model checking. J. ACM (JACM) 50, 752–794 (2003)

    Article  MathSciNet  Google Scholar 

  15. Harel, D., Katz, G., Marron, A., Weiss, G.: Non-intrusive repair of safety and liveness violations in reactive programs. Trans. Comput. Collect. Intell. (TCCI) 16, 1–33 (2014)

    Google Scholar 

  16. Marron, A.: A reactive specification formalism for enhancing system development, analysis and adaptivity. In: 15th ACM-IEEE International Conference on Formal Methods and Models for System Design (MEMCODE) (2017)

    Google Scholar 

Download references

Acknowledgements

This work has been funded in part by grants from the German-Israeli Foundation for Scientific Research and Development (GIF), from the Minerva foundation, and from the Israel Science Foundation (ISF).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Assaf Marron .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2019 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Greenyer, J., Gritzner, D., Harel, D., Marron, A. (2019). Towards Automated Defect Analysis Using Execution Traces of Scenario-Based Models. In: Hammoudi, S., Pires, L., Selic, B. (eds) Model-Driven Engineering and Software Development. MODELSWARD 2018. Communications in Computer and Information Science, vol 991. Springer, Cham. https://doi.org/10.1007/978-3-030-11030-7_15

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-11030-7_15

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-11029-1

  • Online ISBN: 978-3-030-11030-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics