Εξόρυξη διεργασιών στα έργα ανοικτού κώδικα
Creators: name: Κουζάρη, Έλια Ζ.
Publisher: name: Aristotle University of Thessaloniki
Year: 2023
Subjects: Εξόρυξη διεργασιών
Έργα ανοικτού κώδικα
Ανοικτό λογισμικό
Τεχνολογία λογισμικού
Process mining
Open source software projects
Open source software
Software engineering

description: Στα σημερινά ευέλικτα και ανταγωνιστικά περιβάλλοντα, κάθε οργανισμός προσπαθεί να βελτιώσει και να υποστηρίξει τις επιχειρηματικές του διαδικασίες. Η εξόρυξη διεργασιών αναδεικνύεται ως μια πολύτιμη προσέγγιση για την παροχή πληροφοριών σχετικά με το πώς λειτουργεί ένας οργανισμός χρησιμοποιώντας τα δεδομένα που είναι αποθηκευμένα στα πληροφοριακά συστήματα του. Η έννοια της εξόρυξης διεργασιών ξεκίνησε στις αρχές της δεκαετίας του 2000 και συνδυάζει τη θεωρία από τους τομείς διαχείρισης επιχειρηματικών διαδικασιών και εξόρυξης δεδομένων. Οι τρεις κύριες εφαρμογές της εξόρυξης διεργασιών (ανακάλυψη διεργασιών, συμμόρφωση διεργασιών και βελτίωση διεργασιών), έχουν εφαρμοστεί μέχρι στιγμής σε διάφορους τομείς όπως η υγεία, η ασφάλιση, ο έλεγχος, η εκπαίδευση κλπ. Αν και υπάρχουν κάποια δείγματα έρευνας που τονίζουν τα οφέλη από τη χρήση εξόρυξης διεργασιών στο λογισμικό, δεν υπάρχει επί του παρόντος καμία έρευνα που να μελετά την εξόρυξη διεργασιών σε λογισμικό ανοιχτού κώδικα. Αρχικά, η διεξαγωγή μιας ολοκληρωμένης βιβλιογραφικής ανασκόπησης στον τομέα της εξόρυξης διεργασιών ήταν απαραίτητη για την απόκτηση βαθιάς κατανόησης του θέματος και τον εντοπισμό βασικών χαρακτηριστικών που σχετίζονται με την έρευνά μας για το λογισμικό ανοιχτού κώδικα. Στη συνέχεια ακολουθήσαμε μια τριπλή προσέγγιση. Πρώτον, εφαρμόσαμε την εξόρυξη διεργασιών για την ανακάλυψη διεργασιών σε ένα έργο λογισμικού ανοιχτού κώδικα και την εφαρμογή του σε δύο οργανισμούς. Στη συνέχεια εφαρμόσαμε την εξόρυξη διεργασιών για συμμόρφωση διεργασιών στην ανάπτυξη λογισμικού σε δύο εταιρικά συστήματα ανοιχτού κώδικα. και πιο συγκεκριμένα στη διαδικασία που σχετίζεται με το κλείσιμο σφαλμάτων. Τέλος, διερευνήσαμε την εφαρμογή τεχνικών εξόρυξης διεργασιών σε ένα οικοσύστημα λογισμικού ανοιχτού κώδικα όπου εφαρμόσαμε την εξόρυξη διεργασιών σε 42 έργα των τριών πιο δημοφιλών κατηγοριών στο Github. Με την υιοθέτηση αυτής της πολύπλευρης προσέγγισης, στοχεύσαμε να συνεισφέρουμε στο υπάρχον σύνολο γνώσεων επεκτείνοντας την εφαρμογή μεθοδολογιών εξόρυξης διεργασιών στον τομέα του λογισμικού ανοιχτού κώδικα. Μετά την έρευνα που διεξήχθη σε αυτούς τους τομείς, έχουν συγκεντρωθεί αρκετά αξιοσημείωτα ευρήματα. Πρώτον, έχει καταστεί προφανές ότι η πλειονότητα των δευτεροβάθμιων μελετών στην εξόρυξη διεργασιών στερείται αξιολόγησης της ποιότητας των πρωτογενών μελετών. Τα συμπεράσματα που εξάγονται σχετικά με τις κατευθυντήριες γραμμές που χρησιμοποιούνται συχνά, τους χώρους δημοσίευσης και τους θεματικούς τομείς που εξετάζονται, παρέχουν μια γερή βάση για τους ερευνητές να εντοπίσουν ερευνητικά κενά και να επεκτείνουν τις εργασίες σε αυτόν τον τομέα. Αναφορικά με την εφαρμογή της εξόρυξης διεργασιών σε έργα ανοιχτού κώδικα, συμπεραίνουμε ότι τα μοντέλα διεργασιών που προκύπτουν και τα ευρήματα της εξόρυξης διεργασιών μπορούν να χρησιμοποιηθούν για τη βελτιστοποίηση των διαδικασιών, τη βελτίωση της αποτελεσματικότητας και την πρόταση ενεργών συστάσεων σε διαχειριστές και χρήστες του συστήματος. Αξιοποιώντας τη δύναμη της εξόρυξης διεργασιών, οι κοινότητες και οι οργανισμοί μπορούν να βελτιώσουν περαιτέρω τις λειτουργίες τους και τις διαδικασίες λήψης αποφάσεων. Επιπλέον, η εξόρυξη διεργασιών έχει τη δυνατότητα να εντοπίζει ζητήματα στις υπάρχουσες διεργασίες που χρησιμοποιούνται από ομάδες ανάπτυξης ανοιχτού κώδικα. Επιπλέον, μπορεί να χρησιμοποιήσει καθιερωμένα έργα ως σημεία αναφοράς για τον εντοπισμό περιοχών για βελτίωση σε άλλα έργα. Ενώ σε τέτοια έργα αναμένονται αποκλίσεις από τις αναμενόμενες διαδικασίες, είναι ζωτικής σημασίας να διερευνηθεί ο αντίκτυπος αυτών των αποκλίσεων στην ποιότητα και την αξιοπιστία του λογισμικού. Ως εκ τούτου, οι τεχνικές εξόρυξης διεργασιών έχουν τη δυνατότητα να καθοδηγήσουν τους οργανισμούς στην επίτευξη του στρατηγικού τους στόχου για την καθιέρωση αποτελεσματικών διαδικασιών ανάπτυξης λογισμικού.
description: In today’s versatile and competitive environments each organization strives to improve and support its business processes. Process mining emerges as a valuable approach to provide insights on how an organization works by using the data stored in their information systems. The concept of process mining originated in the early 2000s and combines theory from the business process management and data mining domains. The three main applications of process mining (process discovery, process conformance and process improvement), have so far been applied in a variety of fields such as healthcare, insurance, audit, education etc. Although there is some research that highlights the benefits of using process mining for software, there is currently no research related to open-source software. Initially, conducting a comprehensive literature review in the field of process mining was essential to gain a deep understanding of the subject and identify key characteristics relevant to our research on open-source software. We then followed a three-fold approach. Firstly, we applied process mining for process discovery in an open-source software project and its implementation in two organizations. Then we applied process mining for process conformance in the development of software in two enterprise open-source systems; and more specifically the process related to bug closure. Lastly, we investigated the application of process mining techniques in an open-source software ecosystem where we applied process mining in 42 projects of the three most popular categories in Github. By adopting this multi-faceted approach, we aimed to contribute to the existing body of knowledge by extending the application of process mining methodologies to the domain of open-source software. Following the research conducted in these areas, several noteworthy findings have been gathered. Firstly, it has become evident that the majority of secondary studies in process mining lack an evaluation of the quality of primary studies. The conclusions drawn regarding the guidelines frequently used, the publication venues and the thematic areas addressed, provide a solid basis for researchers to identify research gaps and expand the work in this field. Regarding the application of process mining in open-source projects, it has been concluded that the process models derived and the findings of the analysis, can be used to optimize processes, improve efficiency, and suggest actionable recommendations to managers and system users. By harnessing the power of process mining, communities and organizations can further enhance their operations and decision-making processes. In addition, process mining has the ability to identify issues within the existing processes employed by open-source development teams. Moreover, it can utilize well-established projects as reference points to identify areas for improvement in other projects. While deviations from the expected processes are expected in such projects, it is vital to investigate the impact of these deviations on software quality and reliability. Therefore, process mining techniques hold the potential to guide organizations in accomplishing their strategic objective of establishing effective software development processes.