Process mining multiple repositories for software defect resolution from control and organizational perspective

Issue reporting and resolution is a software engineering process supported by tools such as Issue Tracking System (ITS), Peer Code Review (PCR) system and Version Control System (VCS). Several open source software projects such as Google Chromium and Android follow process in which a defect or feature enhancement request is reported to an issue tracker followed by source-code change or patch review and patch commit using a version control system. We present an application of process mining three software repositories (ITS, PCR and VCS) from control flow and organizational perspective for effective process management. ITS, PCR and VCS are not explicitly linked so we implement regular expression based heuristics to integrate data from three repositories for Google Chromium project. We define activities such as bug reporting, bug fixing, bug verification, patch submission, patch review, and source code commit and create an event log of the bug resolution process. The extracted event log contains audit trail data such as caseID, timestamp, activity name and performer. We discover runtime process model for bug resolution process spanning three repositories using process mining tool, Disco, and conduct process performance and efficiency analysis. We identify bottlenecks, define and detect basic and composite anti-patterns. In addition to control flow analysis, we mine event log to perform organizational analysis and discover metrics such as handover of work, subcontracting, joint cases and joint activities.

[1]  Kwang-Hoon Kim Mining workflow processes from distributed workflow enactment event logs , 2012 .

[2]  Anita Sarma,et al.  Tesseract: Interactive visual exploration of socio-technical relationships in software development , 2009, 2009 IEEE 31st International Conference on Software Engineering.

[3]  Daniela E. Damian,et al.  Mining Task-Based Social Networks to Explore Collaboration in Software Teams , 2009, IEEE Software.

[4]  Hajo A. Reijers,et al.  Discovering Social Networks from Event Logs , 2005, Computer Supported Cooperative Work (CSCW).

[5]  Alexander Serebrenik,et al.  Process Mining Software Repositories , 2011, 2011 15th European Conference on Software Maintenance and Reengineering.

[6]  Ashish Sureka,et al.  Nirikshan: mining bug report history for discovering process maps, inefficiencies and inconsistencies , 2014, ISEC '14.

[7]  Ashish Sureka,et al.  Using social network analysis for mining collaboration data in a defect tracking system for risk and vulnerability analysis , 2011, ISEC.

[8]  Daniel M. German,et al.  Open source software peer review practices , 2008, 2008 ACM/IEEE 30th International Conference on Software Engineering.

[9]  Boudewijn F. van Dongen,et al.  Business process mining: An industrial application , 2007, Inf. Syst..

[10]  Philip J. Guo,et al.  Characterizing and predicting which bugs get reopened , 2012, 2012 34th International Conference on Software Engineering (ICSE).

[11]  Tiejian Luo,et al.  Behavior Pattern Mining: Apply Process Mining Technology to Common Event Logs of Information Systems , 2008, 2008 IEEE International Conference on Networking, Sensing and Control.

[12]  Harald C. Gall,et al.  Visual Patterns in Issue Tracking Data , 2010, ICSP.

[13]  Remco M. Dijkman,et al.  Business Process Architecture: Use and Correctness , 2012, BPM.

[14]  Ekkart Kindler,et al.  Activity Mining for Discovering Software Process Models , 2006, Software Engineering.

[15]  Sergiu M. Dascalu,et al.  Network Analysis of Software Repositories: Identifying Subject Matter Experts , 2012, CompleNet.

[16]  Onur Demirörs,et al.  Applicability of Process Discovery Algorithms for Software Organizations , 2009, 2009 35th Euromicro Conference on Software Engineering and Advanced Applications.

[17]  Laurie A. Williams,et al.  Improving developer activity metrics with issue tracking annotations , 2010, WETSoM '10.

[18]  Wil M. P. van der Aalst,et al.  Fuzzy Mining - Adaptive Process Simplification Based on Multi-perspective Metrics , 2007, BPM.

[19]  Thomas Moser,et al.  Improving Open Source Software Process Quality Based on Defect Data Mining , 2012, SWQD.

[20]  Hajimu Iida,et al.  Who does what during a code review? Datasets of OSS peer review repositories , 2013, 2013 10th Working Conference on Mining Software Repositories (MSR).