Akademska digitalna zbirka SLovenije - logo
E-viri
Celotno besedilo
  • Automatic Discovery of Beha...
    Liu, Cong

    IEEE transactions on automation science and engineering, 10/2018, Letnik: 15, Številka: 4
    Journal Article

    During the execution of a software system, tremendous amounts of data are recorded, and such data provide valuable information on software runtime behavior analysis. This paper presents an approach on how to utilize process mining as an enabler to discover software behavioral models. To achieve this, we formally define the software event log and its transformation from original software execution data. Essentially, a software event log consists of a set of cases that each is a manifestation of an independent software run. A case is represented as an ordered sequence of events that each refers to a method call. Given the observation that software usually has a hierarchical structure, we first propose an approach to construct a hierarchical software event log from the original flat one by the recursively applying method calling relation detection. Next, using extended process discovery techniques, we discover a software behavioral model, which is represented as a kind of hierarchical Petri net with components, from the hierarchical software event log. We have implemented the proposed approach in the open source process mining toolkit ProM . By using two synthetic software event logs, we show that our approach can deal with infrequent behavior. Moreover, a validation with one real-life software event log shows that our approach can help visualize actual software runtime behavior in an easy-to-understand manner. Note to Practitioners -Software data analysis techniques play an increasingly important role for understanding the real behavior of software systems. This paper addresses the issue of discovering behavioral models from real-life software execution data. A kind of hierarchical Petri nets is defined to represent the discovered software behavior. All proposed concepts and algorithms are supported by open source tools, and experiments over both synthetic and real-life software execution data have shown their applicability. The proposed methodology is readily applicable to industrial-size software behavior discovery problems.