TY - JOUR
T1 - Software architecture design in global software development
T2 - An empirical study
AU - Sievi-Korte, Outi
AU - Richardson, Ita
AU - Beecham, Sarah
N1 - Publisher Copyright:
© 2019 Elsevier Inc.
PY - 2019/12
Y1 - 2019/12
N2 - In Global Software Development (GSD), the additional complexity caused by global distance requires processes to ease collaboration difficulties, reduce communication overhead, and improve control. How development tasks are broken down, shared and prioritized is key to project success. While the related literature provides some support for architects involved in GSD, guidelines are far from complete. This paper presents a GSD Architectural Practice Framework reflecting the views of software architects, all of whom are working in a distributed setting. In-depth interviews with architects from seven different GSD organizations revealed a complex set of challenges and practices. We found that designing software for distributed teams requires careful selection of practices that support understanding and adherence to defined architectural plans across sites. Teams used Scrum which aided communication, and Continuous Integration which helped solve synchronization issues. However, teams deviated from the design, causing conflicts. Furthermore, there needs to be a balance between the self-organizing Scrum team methodology and the need to impose architectural design decisions across distributed sites. The research presented provides an enhanced understanding of architectural practices in GSD companies. Our GSD Architectural Practice Framework gives practitioners a cohesive set of warnings, which for the most part, are matched by recommendations.
AB - In Global Software Development (GSD), the additional complexity caused by global distance requires processes to ease collaboration difficulties, reduce communication overhead, and improve control. How development tasks are broken down, shared and prioritized is key to project success. While the related literature provides some support for architects involved in GSD, guidelines are far from complete. This paper presents a GSD Architectural Practice Framework reflecting the views of software architects, all of whom are working in a distributed setting. In-depth interviews with architects from seven different GSD organizations revealed a complex set of challenges and practices. We found that designing software for distributed teams requires careful selection of practices that support understanding and adherence to defined architectural plans across sites. Teams used Scrum which aided communication, and Continuous Integration which helped solve synchronization issues. However, teams deviated from the design, causing conflicts. Furthermore, there needs to be a balance between the self-organizing Scrum team methodology and the need to impose architectural design decisions across distributed sites. The research presented provides an enhanced understanding of architectural practices in GSD companies. Our GSD Architectural Practice Framework gives practitioners a cohesive set of warnings, which for the most part, are matched by recommendations.
KW - Empirical study
KW - Global software development
KW - GSD
KW - GSE
KW - Scrum
KW - Software architecture
UR - http://www.scopus.com/inward/record.url?scp=85072283236&partnerID=8YFLogxK
U2 - 10.1016/j.jss.2019.110400
DO - 10.1016/j.jss.2019.110400
M3 - Article
AN - SCOPUS:85072283236
SN - 0164-1212
VL - 158
SP - -
JO - Journal of Systems and Software
JF - Journal of Systems and Software
M1 - 110400
ER -