Architecting in Global Software Engineering

Architecting and architectures of software intensive systems are known to have significant role and impact on software development processes and practices, and on the quality of the developed system (i.e., software or services). Hence, it is important that there is alignment between architecting practices, architectural artefacts, and software development paradigms – Business, Architecture, Process, and Organization (BAPO) is a well known model which highlights the importance of such an alignment. Global Software Engineering (GSE) has changed the way we used to carry out different phases (e.g., requirements, design, and coding) of software development. GSE paradigm is also having significant impact on architecting practices and artefacts as now architects are expected to design a system in a way which can be easily implemented by teams globally distributed and also easily understandable to the team members who may not have any opportunity to directly communicate with the architect. However, there has been not much attention paid the role and importance of architecting and architecture in GSE; for example, the problems related to architecting large and complex systems that are expected to be developed by large teams geographically distributed around the World. Given the increasing realization of the importance of the role of different ways of design and communicating architectures and architecture as a key artefact in GSE, with colleagues, Bedir, Semih, Patricia, and I decided to organize a workshop on this topic in an effort to build a community around some of the key questions which needs to be addressed in order to leverage the benefits from both GSE and architecture communities. This workshop was co-located with the International Conference on Global Software Engineering (ICGSE 2011) in Helsinki last August. Following are the two key questions which we believe need to be extensively explored and systematically addressed in order to support GSE teams with software architecture practices and artefacts:
(1) How can software architecture be used to support GSE?
(2) How does GSE impact software architecture?
We will be writing a report to outline the research agenda on this topic soon.