Architecture as a Coordination Tool in Multi-site Software Development

   page       BibTeX_logo.png   
Päivi Ovaska, Matti Rossi, Pentti Marttiin
Software Process: Improvement and Practice 8(4), pages 233-247
October/December 2003

A widely held understanding of coordination in software development is that it focuses on coordinating development activities to achieve a common goal. Our study, a case study in an international ICT company, suggests that in multi-site environment, it is not enough to coordinate development activities to achieve a common goal. Rather, more emphasis should be put on coordinating interdependencies between activities. Shifting the interest from activities (and subsystems) toward system-level dependencies requires software architects and developers to have a common understanding of the software architecture. Our findings reflect coordination challenges in multi-site environment with geographically dispersed teams. On the basis of the findings, we claim that architecture could be used to coordinate distributed development. However, this requires that the chief architect is capable of maintaining the integrity of the architecture and of communicating it. Furthermore, we list some requirements for a development methodology that uses architecture to support the coordination.

keywordsmulti-site software development, software architecture, coordination of software development