ABSTRACT
The full integration of online repositories in contemporary software development promotes remote work and collaboration. Apart from the apparent benefits, online repositories offer a deluge of data that can be utilized to monitor and improve the software development process. Towards this direction, we have designed and implemented a platform that analyzes data from GitHub in order to compute a series of metrics that quantify the contributions of project collaborators, both from a development as well as an operations (communication) perspective. We analyze contributions throughout the projects' lifecycle and track the number of coding violations, this way aspiring to identify cases of software development that need closer monitoring and (possibly) further actions to be taken. In this context, we have analyzed the 3000 most popular GitHub Java projects and provide the data to the community.
- John Anvik, Lyndon Hiew, and Gail C. Murphy. 2006. Who Should Fix This Bug?. In Proceedings of the 28th International Conference on Software Engineering (ICSE '06). ACM, New York, NY, USA, 361--370. https://doi.org/10.1145/1134285.1134336Google Scholar
- Len Bass, Ingo Weber, and Liming Zhu. 2015. DevOps: A Software Architect's Perspective (1st ed.). Addison-Wesley Professional, Reading, Massachusetts, USA.Google ScholarDigital Library
- Pamela Bhattacharya, Iulian Neamtiu, and Christian R. Shelton. 2012. Automated, Highly-accurate, Bug Assignment Using Machine Learning and Tossing Graphs. J. Syst. Softw. 85, 10 (Oct. 2012), 2275--2292. https://doi.org/10.1016/j.jss.2012.04.053Google ScholarDigital Library
- Marco Biazzini and Benoit Baudry. 2014. "May the Fork Be with You": Novel Metrics to Analyze Collaboration on GitHub. In Proceedings of the 5th International Workshop on Emerging Trends in Software Metrics (WETSoM 2014). ACM, New York, NY, USA, 37--43. https://doi.org/10.1145/2593868.2593875Google ScholarDigital Library
- Tegawendé F Bissyandé, David Lo, Lingxiao Jiang, Laurent Réveillere, Jacques Klein, and Yves Le Traon. 2013. Got issues? Who cares about it? A large scale investigation of issue trackers from GitHub. In Proceedings of the 2013 IEEE 24th International Symposium on Software Reliability Engineering (ISSRE). IEEE Computer Society, Washington, DC, USA, 188--197. https://doi.org/10.1109/ISSRE.2013.6698918Google ScholarCross Ref
- J. Cabot, J. L. C. Izquierdo, V. Cosentino, and B. Rolandi. 2015. Exploring the use of labels to categorize issues in Open-Source Software projects. In Proceedings of the 2015 IEEE 22nd International Conference on Software Analysis, Evolution, and Reengineering (SANER). IEEE Computer Society, Washington, DC, USA, 550--554. https://doi.org/10.1109/SANER.2015.7081875Google Scholar
- Konstantinos Christidis, Fotis Paraskevopoulos, Dimitris Panagiotou, and Gregoris Mentzas. 2012. Combining Activity Metrics and Contribution Topics for Software Recommendations. In Proceedings of the Third International Workshop on Recommendation Systems for Software Engineering (RSSE '12). IEEE Press, Piscataway, NJ, USA, 43--46.Google ScholarDigital Library
- GDDownloader. 2018. GDDownloader: GitHub Data Downloader. https://github.com/thdiaman/GDDownloader. Accessed: 2020-02-05.Google Scholar
- GitHub. 2020. GitHub API. https://developer.github.com/v3/. Accessed: 2020-02-05.Google Scholar
- GitHub. 2020. GitHub octoverse. https://octoverse.github.com/. Accessed: 2020-02-05.Google Scholar
- WF Gonçalves, CB de Almeida, LL de Araújo, MS Ferraz, RB Xandú, and I de Farias Junior. 2017. The Impact of Human Factors on the Software Testing Process: The Importance of These Factors in a Software Testing Environment. Journal of Information Systems Engineering & Management 2, 4 (2017), 24.Google ScholarCross Ref
- Gillian J. Greene and Bernd Fischer. 2016. CVExplorer: Identifying Candidate Developers by Mining and Exploring Their Open Source Contributions. In Proceedings of the 31st IEEE/ACM International Conference on Automated Software Engineering (ASE 2016). ACM, New York, NY, USA, 804--809. https://doi.org/10.1145/2970276.2970285Google Scholar
- S. Li, H. Tsukiji, and K. Takano. 2016. Analysis of Software Developer Activity on a Distributed Version Control System. In Proceedings of the 2016 30th International Conference on Advanced Information Networking and Applications Workshops (WAINA). IEEE Computer Society, Washington, DC, USA, 701--707. https://doi.org/10.1109/WAINA.2016.107Google Scholar
- Z. Liao, D. He, Z. Chen, X. Fan, Y. Zhang, and S. Liu. 2018. Exploring the Characteristics of Issue-Related Behaviors in GitHub Using Visualization Techniques. IEEE Access 6 (2018), 24003--24015. https://doi.org/10.1109/ACCESS.2018.2810295Google ScholarCross Ref
- Jalerson Lima, Christoph Treude, Fernando Figueira Filho, and Uira Kulesza. 2015. Assessing Developer Contribution with Repository Mining-based Metrics. In Proceedings of the 2015 IEEE International Conference on Software Maintenance and Evolution (ICSME '15). IEEE Computer Society, Washington, DC, USA, 536--540. https://doi.org/10.1109/ICSM.2015.7332509Google ScholarDigital Library
- Mike Loukides. 2012. What is DevOps? O'Reilly Media, Inc., Champaign, IL, USA.Google Scholar
- Lucy Ellen Lwakatare, Pasi Kuvaja, and Markku Oivo. 2015. Dimensions of DevOps. In Proceedings of the Agile Processes in Software Engineering and Extreme Programming. Springer International Publishing, Cham, 212--217.Google Scholar
- Raimund Moser, Witold Pedrycz, and Giancarlo Succi. 2008. A Comparative Analysis of the Efficiency of Change Metrics and Static Code Attributes for Defect Prediction. In Proceedings of the 30th International Conference on Software Engineering (ICSE '08). ACM, New York, NY, USA, 181--190. https://doi.org/10.1145/1368088.1368114Google ScholarDigital Library
- Nachiappan Nagappan, Andreas Zeller, Thomas Zimmermann, Kim Herzig, and Brendan Murphy. 2010. Change bursts as defect predictors. In Proceedings of the 21st IEEE International Symposium on Software Reliability Engineering (ISSRE). IEEE, IEEE Computer Society, Washington, DC, USA, 309--318.Google ScholarDigital Library
- Saya Onoue, Hideaki Hata, and Ken-ichi Matsumoto. 2013. A Study of the Characteristics of Developers' Activities in GitHub. In Proceedings of the 2013 20th Asia-Pacific Software Engineering Conference (APSEC '13) - Volume 02. IEEE Computer Society, Washington, DC, USA, 7--12. https://doi.org/10.1109/APSEC.2013.104Google ScholarCross Ref
- Michail D. Papamichail, Themistoklis Diamantopoulos, Vasileios Matsoukas, Christos Athanasiadis, and Andreas L. Symeonidis. 2019. Towards Extracting the Role and Behavior of Contributors in Open-source Projects. In Proceedings of the 14th International Conference on Software Technologies (ICSOFT). SciTePress, Prague, Czech Republic, 536--543. https://doi.org/10.5220/0007966505360543Google Scholar
- PMD. 2020. PMD Static Analysis Tool. https://pmd.github.io/. Accessed: 2020-02-05.Google Scholar
- James Roche. 2013. Adopting DevOps Practices in Quality Assurance. Commun. ACM 56, 11 (Nov. 2013), 38--43. https://doi.org/10.1145/2524713.2524721Google ScholarDigital Library
- A. Sarma, X. Chen, S. Kuttal, L. Dabbish, and Z. Wang. 2016. Hiring in the Global Stage: Profiles of Online Contributions. In Proceedings of the 2016 IEEE 11th International Conference on Global Software Engineering (ICGSE). IEEE Computer Society, Washington, DC, USA, 1--10. https://doi.org/10.1109/ICGSE.2016.35Google ScholarCross Ref
- Yang Weicheng, Shen Beijun, and Xu Ben. 2013. Mining GitHub: Why Commit Stops - Exploring the Relationship Between Developer's Commit Pattern and File Version Evolution. In Proceedings of the 2013 20th Asia-Pacific Software Engineering Conference (APSEC '13) - Volume 02. IEEE Computer Society, Washington, DC, USA, 165--169. https://doi.org/10.1109/APSEC.2013.133Google ScholarCross Ref
- X. Xia, D. Lo, X. Wang, and B. Zhou. 2013. Accurate developer recommendation for bug resolution. In Proceedings of the 2013 20th Working Conference on Reverse Engineering (WCRE). IEEE Computer Society, Washington, DC, USA, 72--81. https://doi.org/10.1109/WCRE.2013.6671282Google ScholarCross Ref
Index Terms
- Employing Contribution and Quality Metrics for Quantifying the Software Development Process
Recommendations
CMMI guided process improvement for DevOps projects: an exploratory case study
ICSSP '16: Proceedings of the International Conference on Software and Systems ProcessVery recently, an increasing number of software companies adopted DevOps to adapt themselves to the ever-changing business environment. While it is important to mature adoption of the DevOps for these companies, no dedicated maturity models for DevOps ...
Assessing the Maturity of DevOps Practices in Software Industry: An Empirical Study of HELENA2 Dataset
EASE '22: Proceedings of the 26th International Conference on Evaluation and Assessment in Software EngineeringCurrently, the software development organizations are adopting DevOps practices in order to develop quality product. Due to the lack of definition of DevOps, the principles, practices, and methods adopted in DevOps to determine success have changed ...
DevOps and software quality: A systematic mapping
AbstractQuality pressure is one of the factors affecting processes for software development in its various stages. DevOps is one of the proposed solutions to such pressure. The primary focus of DevOps is to increase the deployment speed, ...
Comments