Practicing agile in large projects
Managing Director, Turlon & Associates
Large projects are not easy to implement. They are even harder to implement using agile methodologies. When you look at scale, the distribution of teams and the organisation politics that are involved brings into question the four bases of the agile manifesto. With a lot of focus now placed on Lean-Agile Methodologies, this paper discusses some of the core principles behind agile when managing large, distributed-team projects
- Understand what the challenges that projects and project managers face when scaling agile projects
- Identifying the tools and techniques that can be used for implementation of large-scale agile projects
- Ability to become a better project manager for large-scale agile projects
- Understand how the organisation must play its role in large-scale agile projects
- The principles of managing large-scale projects
- The ability to influence sponsors and team members alike in non-ideal situations
- Understand how to effectively communicate results and status
- To be proactive and reactive in managing situations in large-scale projects using agile
There has been an interest in using in all types of projects since the beginning of the movement. It has not affected companies and organisations implementing forms of agile that have varied in the extremes of what the Agile, and in particular, the Lean, movement have been attempting to create. Ron Jefferies has stated, “A hundred-person project is a ten-person project, with overhead.” Agile has gone beyond the small project stage, and more companies are interested in rolling out organisation or larger project spectrum. But the question should be asked as to how this can be achieved seamlessly. Even for those companies that have started with a small project agile view, they are now challenged with the bigger questions of large-scale agile adaption.
James Shore asked the question “When does Agile go from normal to large-scale?” From Shore's perspective, it's the moment when you go from one intact team (i.e., a cross-functional, co-located team that has the resources necessary to finish the job) to multiple interdependent teams. This has got to be a great definition of a large-scale agile project. Shore's view presents that this happens once you need more than ten to twenty people on a project. There are multiple parallels drawn with this, and to continue, this paper proposes that ‘large-scale agile projects’ is when there is a strong need for program and portfolio management within the organisation to support the agile project framework. If any agile project can do its own prioritizations, its own architectural review, and its own self-managed team, then it can be considered an agile project. When these items are dependent on other aspects of the business or other projects, then the existence of these dependencies guide us to accept that we are dealing in a large agile project environment
The approach to dealing with a large project agile structure is to development a portfolio, program, and project agile approach where responsibility and risks are managed throughout the business. This approach allows for structure and guidance as we step through each of these particular items
- Agile Portfolio, Program, Project Management Framework: Developing a framework / structure that can be deployed throughout the organisation
- Agile Portfolio Framework: Focus on a portfolio structure that can provide prioritization and guidance on business and customer value
- Defining Key Metrics: Understand and develop a structure where key metrics can be developed and defined to drive the product and business direction
- Agile Program Management: Provide a basis and interaction point where the product can be developing and structured to create a release and delivery strategy
- Agile Co-ordination Management: Where a level of project and product co-ordination can be developed as a review and management platform for the project
- Agile Project Management: Use of the agile methodologies, whether that is Scrum, XP, DSDM, etc.
The framework /structure is used to show how agile project management can fit into large-scale projects. The approach is one of not over-complicating agile project management but to develop agile program and portfolio management to complement the existing frameworks. Various tools and techniques can be used at each of the stages to show what has and has not been done and to complement the work-flow in all cases.
The outcome of this paper is intended to present how agile projects can be run in large-scaled environments that in turn transfer them to large-scale agile projects. The goal is now not to increase the levels of complexity of agile to projects but to bring agile to the world of portfolio and program management.
Jeffries, Ron. (2012). Hundred Person Project. Retrieved from http://c2.com/cgi/wiki/Wiki?HundredPersonProject
Shores, James. (2007). The art of agile development. Sebastopol, CA: O'Reilly Media.
This material has been reproduced with the permission of the copyright owner. Unauthorized reproduction of this material is strictly prohibited. For permission to reproduce this material, please contact PMI or any listed author.
© 2014, Liam Dillon
Originally published as a part of the 2014 PMI Global Congress Proceedings – Dubai, UAE