How software teams (self-)organise
Software has become an integral part of our daily lives. We are woken up by the alarm app on our phones; we use navigation software to commute to work; we use social media to interact with friends and collaborators around the world. Software is created by diverse teams where different developers have different backgrounds, specialisations, and experiences. Managing such teams is a challenging task that needs to account for this diversity while delivering timely and robust code. In the domain of Open Source software development, these challenges are further amplified as teams are self-managed and members can join or leave the team at any point in time. In our work, we develop and apply state-of-the-art data and network science methods that help teams to enhance their understanding of their internal team structure, identify perils, and design and implement corresponding solutions.
Related Publications
Detecting and Optimising Team Interactions in Software Development
arXiv - 2023

Locating Community Smells in Software Development Processes Using Higher-Order Network Centralities
TK - 2023

Big Data = Big Insights? Operationalising Brooks' Law in a Massive GitHub Data Set
2022 IEEE/ACM 44th International Conference on Software Engineering (ICSE) - 2022

The downside of heterogeneity: How established relations counteract systemic adaptivity in tasks assignments
Entropy, 23(12), 1677 - 2021

gambit - An Open Source Name Disambiguation Tool for Version Control Systems
2021 IEEE/ACM 18th International Conference on Mining Software Repositories (MSR) - 2021

Analysing time-stamped co-editing networks in software development teams using git2net
Empirical Software Engineering - 2021
git2net - An Open Source Package to Mine Time-Stamped Collaboration Networks from Large git Repositories
Proceedings of the 16th International Conference on Mining Software Repositories - 2019