Abstract
The increasingly complex and competitive market situation has resulted
in Global Software Engineering (GSE) becoming more and more common practice.
Companies need to use their existing , as well as global resources Thus, the
ability to collaborate effectively has become a critical factor in today's
software development. The main expected benefits from GSE are improvements in
development time, being closer to the customers and having flexible access
to better specialized and less costly resources. In practice, however, the
productivity in distributed software development drops up to 50 per cent
compared to single site software development. Main reasons behind this
productivity drop are misunderstood or mismatched processes between teams,
and poor visibility into and control of the development activities at all
sites involved. The purpose of this thesis is to analyse in more detail why
this is the case and what could be done to improve the situation in practice
in the companies' daily work. In this thesis, the challenges in GSE are
discussed based on their root causes and then summarised into the GSE
framework. The root causes are time difference and distance, multiple
partners, lack of communication, coordination breakdown, different
backgrounds, and lack of teamness and trust. Then solutions for these
challenges are discussed from people, process and technology viewpoints and
summarised into the GSE framework. As a more detailed example of challenges
to a subprocess, requirements engineering (RE) in GSE is presented. RE is
discussed similarly as the GSE in general, first challenges are discussed and
then solutions to the challenges are presented. The work reported in this
thesis is based on extensive empirical work, carried out over several years.
The empirical work was carried out in several phases: in the first phase, an
industrial inventory was made, including industrial experience reported in
the literature. Based on this, an initial framework for GSE was developed,
consisting of the main challenges to be addressed in GSE projects. After this
first phase, two sets of industrial cases were carried out, addressing a
wide set of GSE challenges by trying out the GSE solutions identified in
companies and validating the GSE framework. Altogether, 52 industrial cases
relating to distributed development were carried out during the projects over
the years 2004-2011. This thesis shows that although GSE is common, it is
still challenging and companies should carefully weigh the benefits and costs
of doing the work in distributed setting vs. doing it single site. This
thesis is a step towards better, more productive and higher quality GSE, as
it helps companies to be aware and address potential challenges early via the
GSE framework. The work presented also helps companies to find validated
solutions to address the challenges in their practice.
Original language | English |
---|---|
Qualification | Doctor Degree |
Awarding Institution |
|
Supervisors/Advisors |
|
Award date | 25 May 2012 |
Place of Publication | Espoo |
Publisher | |
Print ISBNs | 978-951-38-7459-9 |
Electronic ISBNs | 978-951-38-7460-5 |
Publication status | Published - 2012 |
MoE publication type | G5 Doctoral dissertation (article) |
Keywords
- global software engineering
- requirements engineering
- best practices
- industrial case studies
- ICT