Coordination Strategies: On Successful Implementation of Global Software Development using Large-scale Fully Distributed Scrum | Part 1
Coordination
Coordination is a consciously organized relation between activities and forces[1], work tasks are divided over actors and the act of making different agents (i.e. people or things) work together[2]. It is widely acknowledged that Coordination in a large scale software development project is a persistently difficult problem to solve and in brief, following are the major identified factors in GSD interfering with the coordination of the software development[3].
- Geographical distributed development sites,
- Differences in time zones,
- Cross-cultural differences,
- Differences in the ICT infrastructure,
- Differences in the development standards.
- Efficient communication framework supporting face-to-face, synchronous and asynchronous communication,
- Direct supervision,
- Standardization,
- Mechanism to minimize the coordination overhead such as, use of software architecture[2].
In addition, we define integration is the manual process that combines the separate components as a working system. Composition, on the other hand, is the automated process of combining separate component as a working system.
Rational behind employing Coordination Strategies
One of the main concern of using the LFDS in a large-scale GSD stems from its very basic foundation of DASD which requires efficient communication framework and team work to achieve success. As a matter of fact, LFDS requires additional strategies in place to address the contextual differences caused by GSD. Following table illustrates the key differences between traditional Scrum and the Distributed Development model based on the realized impediments of GSD.| Realized Impediments | Traditional Scrum Model(co-located) | Traditional Distributed Development Model(global) |
| Communication | Lower communication and coordination costs.
-Informal/Face-to-face -Synchronous -Many-to-Many |
High coordination and communication costs.
-Formal -Often asynchronous -Tunneled |
| Coordination | - Self-organization.
|
- Standardization.
|
| Control | - Lightweight.
|
-Command and control.
-Clear separation of the roles. |
| Integration | Higher productivity. | Low productivity. |
| Interaction | - Easier.
-Same time-zone, culture and work practices. |
Difficult due to the contextual difference. It additionally influences the communication and coordination costs. |
| Conclusion | Broad interface between the intra- and inter- team make the development cost relatively inexpensive. | Tunneled interface. Contextual differences increase the cost of the development. |
- Loss of team-ness,
- Loss of team ownership or us-them Problem,
- Loss of communication richness.
Comments ()