IEEE Access (Jan 2024)
Characterizing Social and Human Factors in Software Development Team Productivity: A System Dynamics Approach
Abstract
Software development projects demand high levels of interaction between work team members. This way, management and decision-making must be supported by analyzing the complex dynamics generated through individual interactions to complete the projects. This complexity can be addressed using system dynamics. This modeling approach studies how the structures and relationships between variables in a system interact to generate behaviors over time. It is used to understand and analyze complex systems and make informed decisions. The first step in modeling is articulating the problem. This step defines the key variables that will be included in the model. Still, the lack of a standardized procedure to select, measure, and propose causal relationships is evident. Subjectivity is often appealed to, but this could lead to inaccurate models and biased results. The challenge intensifies when it comes to qualitative variables. This study introduces a formal methodology to characterize such variables, addressing a gap in the existing literature. The use of systematic mapping and a survey-based study is proposed. The methodology is applied to characterize three social and human factors that influence the productivity of software development teams: communication, leadership, and teamwork. The results captured primary experimental research’s proven definitions, measurement mechanisms, and causal relationships. This formalized approach not only fills a significant gap in system dynamics but also lays a foundation for expanding its scope to encompass additional variables. As such, it represents a substantial methodological contribution to the field.
Keywords