Вісник Національного технічного університету "ХПÌ": Системний аналіз, управління та інформаційні технології (Sep 2018)

A fuzzy-based approach to automated defect identification in distributed software systems and software product lines

  • Oleksii Illich Zinkovskyi,
  • Rustam Olexandrovich Gamzayev,
  • Andreas Bollin,
  • Mykola Vyacheslavovich Tkachuk

DOI
https://doi.org/10.20998/2079-0023.2018.21.07
Journal volume & issue
Vol. 0, no. 21
pp. 36 – 42

Abstract

Read online

An approach to the improvement of the efficiency of the bug tracking process in distributed software systems and software product lines via automated identification of duplicate report groups and report groups collected from correlated bugs, combined with bug localization within a software product line is considered. A brief overview of the problem of automated report collection and aggregation is made, several existing software tools and solutions for report management and analysis are reviewed, and basic functionality of a typical report management system is identified. In addition to this, a concept of a report correlation group is introduced and an automated crash report aggregation method based on the rules for comparison of crash signatures, top frames, and frequent closed ordered sub-sets of frames of crash reports is proposed. To evaluate these rules, two separate fuzzy models are built, the first one to calculate the output of the Frequent Closed Ordered Sub-Set Comparison rule, and the second one to interpret and combine the output of all three rules and produce an integrated degree of crash report’s similarity to an existing report correlation group or to another report. A prototype of a report management system with report aggregation capabilities is developed and tested using imported from the publicly available Mozilla Crash Stats project report groups. During the experiment, a precision of 90% and a recall of 81% are achieved. Lastly, an approach to localize the largest identified report groups and represented by them bugs within a concrete software product line based on an information basis consisting of a feature model, a list of software components, and a mapping between features and components is proposed, conclusions are drawn, and goals for the future work are outlined.

Keywords