Wednesday, November 21, 2012

Global software development in practice - lessons learned


You can download the paper from here: Global software development in practice - lessons learned - Paper
You can download the presentation from here: Global software development in practice - lessons learned - presentation

Global software development in practice - lessons learned

Abstract:


Organizations seeking lower costs and access to skilled resources began to experiment with remotely located software development facilities. This change is having a profound impact not only on marketing and distribution but also on the way products are conceived, designed, constructed, tested, and delivered to customers. As a result, software development is becoming a multi-site, multicultural and globally distributed undertaking.

This Paper explains types of Offshore Outsourcing and Offshore In-sourcing, factors and outcome with GSD trend. The paper also explains about other models namely Carmel (1999) model of software development for global teams, Evaristo (2003) model of distributed project, and a case study involving different stakeholders having differences in distance. Lessons were learned on the basis of case studies in two software development units from multinational organizations.

Under Carmel model for global teams, The centrifugal forces were loss of communication richness, coordination breakdown, geographic dispersion, loss of teamness and Cultural differences. The Centripetal forces were Development Methodology, Collaborative Technology, Managerial Techniques, Product Architecture, Team Building and Telecom Infrastructure.

The dimensions of distributed projects under Evaristo model were: Trust, levels of dispersion, Synchronicity, Complexity, Systems Methodology, Culture, Percieved distance, Policies and standards, type of projects and stakeholders.


Objectives of Paper:

  1. Distinguishing GSD from normal (centralized) with respect to Software development.
  2. Identifying the Strategic Issues, Cultural issues, knowledge management and technical issues effected by distance, time-zone and culture changes.
  3. Understanding the Centrifugal and Centripetal forces involved in the Carmel's Model of Software development for the global teams.
  4. Discussing and managing of the critical problems associated with model of Dimensions for Distributed projects (Evaristo).
  5. Finding Solutions for identified problems with focus on technical (or, and) non-technical dimension. ( starting from planning to Integration phase).

Motivation for Paper:

  1. The business market proximity advantages, including knowledge of customers and local conditions favor GSD to have footprint globally.
  2. Pressure to improve time-to-market by using time-zone differences in round-the-clock development favor quick product delivery and low costs.
  3. Cost-competitive global resource pool, wherever located need to be used successfully.
  4. The need for study on work standardization, investment in planning, process engagement, and continuous risk management can be solutions.
  5. Exploring the effectiveness of leadership, communication, culture,context sharing, project management, and technical training.

Lessons learned through the Paper:

           As the software community appreciates the economy of merging diverse development skills and domain expertise and as communication media become more sophisticated, the cost and technology
pressures push more organizations toward GSD. The Author describes 8 lessons that can be learnt from this paper. They are:

Lesson 1: Project management and, in particular, risk management need additional effort and steps.
Lesson 2: The existence of a well-defined software development process is responsible for many advantages in distributed projects.
Lesson 3: Knowledge management stimulates the information sharing and stimulates the learning from experience.
Lesson 4: Requirements engineering is the main challenge for the software development process point of view.
Lesson 5: The planning phase is important to organize and manage the distributed projects properly.
Lesson 6: The investment in recruiting and training global teams can minimize the difficulties related
to the nontechnical dimension.
Lesson 7: Tools can act as a facility in the distributed interaction.
Lesson 8: Distributed Software Development is a maturity process

Concluding Remarks


The existence of a formal software development process, Large investments in training resulting in improved relationships, Process engagement, Integration activities improved soft skills of individuals, increasing trust and minimizing cultural differences resulting in improved the communication and feedback. The search for greater formalism and the selective utilization of international patterns will provide full conditions to overcome the problems originating from the dispersion of software development, with support from communication techniques, primarily e-mail, conferencing. The challenge in GSD is to create strategies, techniques and practical lessons from experience to alleviate such problems.

No comments:

Post a Comment