  The functional interaction structure of a team captures the preferences with
which members of different roles interact. This paper presents a data-driven
approach to detect the functional interaction structure for software
development teams from traces team members leave on development platforms
during their daily work. Our approach considers differences in the activity
levels of team members and uses a block-constrained configuration model to
compute interaction preferences between members of different roles. We apply
our approach in a case study to extract the functional interaction structure of
a product team at the German IT security company genua GmbH. We subsequently
validate the accuracy of the detected interaction structure in interviews with
five team members. Finally, we show how our approach enables teams to compare
their functional interaction structure against synthetically created benchmark
scenarios. Specifically, we evaluate the level of knowledge diffusion in the
team and identify areas where the team can further improve. Our approach is
computationally efficient and can be applied in real time to manage a team's
interaction structure.
