Economics and technology have dramatically re-shaped the landscape of software development. It is no longer uncommon to find a software development team dispersed across countries or continents. Geographically distributed development challenges the ability to clearly communicate, enforce standards, ensure quality levels, and coordinate tasks. Global Software Development Handbook explores techniques that can bridge distances, create cohesion, promote quality, and strengthen lines of communication.
The book introduces techniques proven successful at international electronics and software giant Siemens AG. It shows how this multinational uses a high-level process framework that balances agility and discipline for globally distributed software development. The authors delineate an organizational structure that not only fosters team building, but also achieves effective collaboration among the central and satellite teams. The handbook explores the issues surrounding quality and the processes required to realize quality in a distributed environment. Communication is a tremendous challenge, especially for teams separated by several time zones, and the authors elucidate how to uncover patterns of communication among these teams to determine effective strategies for managing communication.
The authors analyze successful and failed projects and apply this information to how a project can be successful with distributed teams. They also provide lightweight processes that can be dynamically adapted to the demands of any project.
INTRODUCTION. Motivation. Critical Success Factors for Global Software Development. PLANNING. Requirements Engineering. Requirements for the Architecture. Architecture. Risk Analysis. Project Planning Process. Project Estimation. ORGANIZATION STRUCTURE. Software Development Teams. Supplier Manager. MONITORING AND CONTROL. Quality Assurance. Infrastructure Support for Global Software Development. Communication. CASE STUDIES. GSP 2005. DPS2000. FS2000. BAS. CONCLUDING REMARKS. Conclusions. Index.