A framework for the recovery and visualization of system availability scenarios from execution traces

Jameleddine Hassine*, Abdelwahab Hamou-Lhadj, Luay Alawneh

*Corresponding author for this work

Research output: Contribution to journalArticlepeer-review

10 Scopus citations

Abstract

Context: Dynamic analysis is typically concerned with the analysis of system functional aspects at run time. However, less work has been devoted to the dynamic analysis of software quality attributes. The recovery of availability scenarios from system execution traces is particularly important for critical systems to verify that the running implementation supports and complies with availability requirements, especially if the source code is not available (e.g., in legacy systems) and after the system has undergone several ad-hoc maintenance tasks. Objective: Propose a dynamic analysis approach, along with tool support, to recover availability scenarios, from system execution traces running high availability features. Method: Native execution traces, collected from systems running high availability features, are pre-processed, filtered, merged, and segmented into execution phases. The segmented scenarios are then visualized, at a high level of abstraction, using the ITU-T standard Use Case Maps (UCM) language extended with availability annotations. Results: The applicability of our proposed approach has been demonstrated by implementing it as a prototype feature within the jUCMNav tool and by applying it to four real-world systems running high availability features. Furthermore, we have conducted an empirical study to prove that resulting UCM models improve the understandability of log files that contain high availability features. Conclusion: We have proposed a framework to filter, merge, segment, and visualize native log traces. The framework presents the following benefits: (1) it offers analysts the flexibility to specify what to include/exclude from an execution trace, (2) it provides a log segmentation method based on the type of information reported in the execution trace, (3) it uses the UCM language to visually describe availability scenarios at a high level of abstraction, and (4) it offers a scalable solution for the visualization problem through the use of the UCM stub-plug-in concept.

Original languageEnglish
Pages (from-to)78-93
Number of pages16
JournalInformation and Software Technology
Volume96
DOIs
StatePublished - Apr 2018

Bibliographical note

Publisher Copyright:
© 2017 Elsevier B.V.

Keywords

  • Availability
  • Dynamic analysis
  • Log filtering
  • Log segmentation
  • Non-functional requirements
  • Use case maps

ASJC Scopus subject areas

  • Software
  • Information Systems
  • Computer Science Applications

Fingerprint

Dive into the research topics of 'A framework for the recovery and visualization of system availability scenarios from execution traces'. Together they form a unique fingerprint.

Cite this