Large‑Scale Agile Development: 3 insights to the project management.

Software development projects have been changing with the use of agile development methods by companies. Before it was designated for small and self-managing teams, but now, studies show that these methods are increasingly used also for large-scale development programs.

Photo by rawpixel on Unsplash

As defined by Bjornson [1], in a study published this year in the “International Conference on Agile Software Development”, Agile methods are increasingly used in large development projects, with multiple development teams. The central question is: What is needed to manage these teams efficiently?

A study from the Cornell University — NY (2018) [2] determines three central relevant insights to the project management community when adopting practices from agile development in this scenario. In their case study, the primary challenge was to use Agile in an environment where was needed to coordinate the work of many teams, with high uncertainty in tasks, a high degree of interdependence between tasks and a large number of people involved.

The main findings highlight were:

- Coordination modes based on feedback

This study supports the finding that personal coordination is central to achieving inter-team coordination in large programs. For example, an increase in task uncertainty has been found to lead to a substitution of impersonal coordination with horizontal coordination mechanisms and group meetings. Was established a high presence of personal communication; both in the group mode and in the individual mode.

- Use of more than one coordination mechanism

This study suggests that one coordination mechanism is not enough; efficient coordination depends on a variety of mechanisms. For example, was done a plan in the program level, while each team kept a version of the plan on their board. This duplication helped to serve needs for plans at the different level.

- Coordination practices change over time

The studies conclude that coordination practices change over time. In this case study, new coordination mechanisms were taken according to the needs changed during the program execution. For example, there were frequent changes in how coordination took place; scheduled meetings were extensively used in the introductory phase of the program, but were at later stages replaced by unscheduled meetings.

Is very interesting how Agile has been well used in large projects, but still necessary understanding regarding coordination modes and mechanisms in large development programs, coordination mechanisms for the specific contexts and understand how coordination needs to change over time.

Has your company applied agile development in large-scale projects? What challenges do you face? Comment below :)

(Originally published on https://www.linkedin.com/pulse)

References:

[1] Bjornson, F.O., Wijnmaalen, J., Stettina, C.J. and Dingsøyr, T. (2018) May. Inter-team Coordination in Large-Scale Agile Development: A Case Study of Three Enabling Mechanisms. In International Conference on Agile Software Development(pp. 216–231). Springer, Cham.

[2] Dingsøyr, T., Moe, N. B., & Seim, E. A. (2018). Coordinating Knowledge Work in Multi-Team Programs: Findings from a Large-Scale Agile Development Program. arXiv preprint arXiv:1801.08764.