The use of Agile models for project management and delivery has been on the rise due to the flexibility and customer-focused nature of these models. The unique nature of Agile requires companies to adjust their mindset from traditional “waterfall” processes when contracting to provide or receive services using an Agile model. In addition, the COVID-19 pandemic presents new challenges in managing Agile projects, which may now require greater effort to maintain the necessary high level of communication and collaboration by development teams.
- While contracts for Agile delivery and management involve the same key legal terms as traditional waterfall projects, customers and suppliers alike need to address many of these terms with a different mindset, given Agile’s iterative and collaborative nature.
- Additional governance processes and procedures should be adopted to keep Agile projects on track during the COVID-19 pandemic, given that project development teams are interacting primarily or entirely remotely. These processes and procedures may include additional reporting, more frequent meetings, increased documentation, and greater collaboration between business users and development teams.
Waterfall vs. Agile
Traditional IT development projects use a waterfall delivery model, in which projects are completed according to linear, sequenced phases: plan and analyze, design, build, test, deploy and support. A waterfall project is clearly defined from the start and requires less involvement from the business owner, but making changes once the project is underway can be difficult.
In contrast, an Agile project is delivered incrementally through a series of short (usually two-to-four-week), time-boxed iterations, or “sprints.” Requirements for each iteration are defined at the beginning of the sprint, and multiple phases (e.g., design, build, test, deploy) are performed within a sprint by smaller cross-functional development teams. Although this provides more flexibility, frequent deployment of interim releases can be disruptive to the business.
General Insights on Contracting for Agile
Contracting for Agile requires reconsideration of key terms, particularly to address the unique nature of Agile delivery cycles and underlying objectives. Given the emphasis on collaboration and flexibility in Agile projects, certain traditional waterfall requirements should be addressed with a different mindset.
Governance. If a customer has adopted a particular Agile model across its enterprise, that model should be specified in the contract to ensure consistency across the customer’s suppliers and projects. Otherwise, the parties may agree in the contract to follow the supplier’s chosen Agile methodology.
Scope. The scope of an Agile project often focuses on critical components required to meet the customer’s overall business objectives (for example, by defining in the statement of work a “minimum viable product”), rather than on the full scope and all business requirements at the outset. This can result in varying scope over the course of the project, but provides increased flexibility for the customer.
Accountability. Often, Agile development teams comprise both customer and supplier resources working collaboratively, so “accountability” for deliverables may be more difficult to define. In some Agile projects, accountability may be tied to the successful performance of a specifically defined role (e.g., the Scrum Master) within the Agile framework.
Metrics and Reporting. With a decreased focus on accountability for specific deliverables, Agile contracts should include robust reporting requirements so the parties can monitor the performance of the various development teams and the individuals on those teams. Typical Agile metrics include Velocity, Defect Density and Sprint Burndown.
Testing and Acceptance. In Agile projects, acceptance language should focus on the acceptance framework instead of a rigid testing and acceptance process. For each iteration of an Agile project, acceptance is typically based on an agreed-upon “definition of done” for that iteration.
Charges and Pricing. Traditional commercial pricing models do not always align with an Agile approach. For example, a fixed fee for the project or for a particular deliverable may be more difficult to apply to an Agile project given the iterative nature and often varying scope of the project. Alternative pricing models for Agile projects may include fixed price per sprint (agreed prior to each sprint), time and materials (with or without a not-to-exceed amount per sprint), and price-per-feature or user story.
How the COVID-19 Pandemic May Affect Agile Delivery Projects
Given the highly collaborative nature of Agile and the short delivery cycles of each sprint, it is typically believed that Agile development teams benefit from working together in the same room or location. In the current environment of varying return-to-work and social distancing guidelines, however, the face-to-face work environment has been severely disrupted.
As companies transition to remote Agile development teams, greater effort is needed to maintain open, virtual communications in order to keep Agile projects on track. This additional effort should not necessarily deter companies from adopting Agile, however, as the regular cadence of incremental sprint cycles may prove critical to preserving predictability and maintaining the continuity of ongoing Agile projects during these uncertain times.
For information on the business impacts of COVID-19, please visit our COVID-19 Resource Center, which we continue to update as the situation evolves. If you have questions about COVID-19’s impact on your business, please reach out to your Loeb relationship partner or email us directly at COVID19@loeb.com.