PMLogger: εξόρυξη διεργασιών ως εργαλείο ανάλυσης λογισμικού
PMLogger: process mining as software analytics tool
Λεπενιώτη, Αικατερίνη Ι.
At any given time, organizations and businesses are searching for the best, most economical and efficient way to operate. This search is the driving force behind the development of scientific disciplines focused on designing, modeling and optimizing an organization's business processes, such as Business Process Management and Process Mining. Since the activities performed by each device, software and system of the organization are recorded for operational, historical or auditing purposes, Process Mining attempts to extract the information regarding its business processes contained in the respective event logs. The majority of techniques and algorithms developed in this field focus on discovering the process model, checking the compliance of the system’s operation with the corresponding process model, and improving and expanding this model. The purpose of this paper is to exploit Process Mining in Software Analysis. We try to apply its techniques and algorithms on the operational processes of a software through a different approach of its definitions. With this approach we can ease the familiarization of new employees with the software projects they’re involved, the overall diagnosis of errors, bottlenecks or delays, their possible dependencies and the immediate recognition of their cause. We can contribute to the automation of code repairing and the improvement of the technical and logical process. All of the above reinforce the argument that with this approach, analysis, diagnosis and troubleshooting of software can be automated. The key component of Process Mining and consequently of the proposed approach is event logs. This paper presents the design and development of an easy-to-use, independent and dynamic event logging software following the given approach. Event logs are created during software’s operation, following XES standard definition. The proposed software gives engineers the ability to instantly and automatically generate XES event logs without requiring any knowledge of the performed procedures. It does not require the development of additional code, specialized programming knowledge, knowledge of Process Mining or XES standard. It is provided in the form of a library, can be reused in many different types of projects with the same format, and does not interfere with the code of the project. In addition, our implementation enables the dynamic definition of processes and the construction of multiple models for different perspectives of the same operational process. We believe that with this implementation, we contribute to the spreading of Process Mining and the establishment of XES standard in the field of Software Analysis. We hope that this paper will pave the way for the coalescence of the two areas and attract the interest of the scientific community to develop automation tools for analyzing, evaluating and repairing software through the application of Process Mining.