Rawpixel.com - stock.adobe.com
5 principles of Agile project management
Through Agile project management, techniques such as self-management, self-organization and continuous delivery achieve benefits beyond the domain of software development.
Traditional schools of business administration break down the project management lifecycle into the following five distinct phases:
- Initiation.
- Planning.
- Execution.
- Management.
- Discontinuance review.
This represents a waterfall type of approach to project planning, where one phase flows into the other. It works well for certain industries such as construction and manufacturing, but it is less successful in domains where requirements and expectations are constantly in flux.
One such domain is computer programming. Incompatibilities with traditional project management principles motivated a group of 17 developers in the IT space to write the Manifesto for Agile Software Development in 2001.
The Manifesto's four tenets and 12 principles are squarely aimed at software development. The sentiments that underpin those Agile software development principles, though, translate to a narrower set of canons for general project management which resonate in various domains outside of IT and software.
The 5 principles of Agile project management
The consolidated principles of Agile project management are as follows:
- Continuous delivery.
- Self-management.
- Incremental progression.
- Self-organization.
- Iterative techniques.
Early and continuous product delivery
The Agile Manifesto insists that an Agile practitioner's highest priority is the "early and continuous delivery of valuable software," and that they should "prioritize working software over comprehensive documentation."
Agile project management eschews extensive upfront planning and deemphasizes traditional project management's long initiation and planning phases.
Drawn-out initiation and planning phases make sense when the project cannot be significantly reengineered after it has begun, such as building a bridge or a skyscraper. However, most organizations accomplish very little by delaying the act of product development. Agile-guided projects start building toward the product vision right away, even if requirements and objectives are unclear.Objectives typically are unclear when a project starts, no matter how much is planned beforehand. The best way to achieve clarity is to get working deliverables into the hands of stakeholders early and continuously, and see how they react to what's delivered.
Those reactions will lead to clarity. Further planning and designs won't.
The primary measure of progress
According to the Agile Manifesto, "Working software is the primary measure of progress." The same holds true for any product development effort.
Burndown charts and cumulative flow diagrams are great, but positive trends mean little if nothing is delivered to the client. Furthermore, if the client is happy with the progress of constantly delivered working features, charts and diagrams don't matter.
Build and create something of value, and continuously deliver what you create to your stakeholders. That's a core principle of Agile project management. Their feedback is how you measure your product development progress.
Self-management
Don't hire a staff of experts and then manage them. A true set of experts can manage themselves.
Trusting a team to complete work on their own is a difficult transition for traditional project managers, but it's essential for Agile project management success.
Self-managed individuals will accomplish the following goals:
- Work at a productive and sustainable pace, with predictable and consistent output.
- Interact regularly and collaboratively with stakeholders of all stripes.
- Prioritize "customer collaboration over contract negotiation," as the Agile Manifesto says.
- Effectively convey information, with a preference toward face-to-face conversations.
Agile projects are built around highly motivated, conscientious individuals that can manage themselves. Agile project managers, says the Manifesto, need only give them "the environment and support they need, and trust them to get the job done."
Incremental progression
Agile projects build products and deliver value to their stakeholders incrementally. That means every deliverable builds upon all previous deliveries. Week after week and month after month, these incremental improvements and additions drive the project's effort closer to completion.
Here's how the Agile Manifesto describes the process: "Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale."
Incremental output also means teams develop small enhancements within a short timeframe and regularly deliver them to the client, which reinforces the first principle of continuous product delivery.
Teams that focus on incremental outputs can develop products faster even if requirements are unclear. To support incremental progression, Agile teams are expected to complete the following tasks:
- Perform short planning sessions every couple of weeks.
- Set short-term goals with clear success criteria.
- Deliver successfully completed increments of work as soon as success criteria is met.
A focus on short-term goals enables Agile teams to minimize risk and maximize their focus. Incremental delivery of features and enhancements to the client also provides more opportunities for customer feedback, which inevitably leads to requests for changes.
That's a good thing, though, because the Manifesto declares that Agile is all about "responding to change over following a plan." Regular feedback loops ensure an Agile project never goes too far off the rails before it is brought back into alignment. If there is a divide between what the customer expects and what the development team has delivered, teams adjust quickly and accordingly with smaller incremental deliveries.
Agile project management sees corrective feedback as a necessity, says the Manifesto: "Agile processes harness change for the customer's competitive advantage."
Self-organization
Imagine your organization just hired 50 new employees, all with varying skills and experience. How do you split these new employees up into team?
If you're doing Agile project management, you don't. Instead, you let them split themselves up. Self-organization is an important part of Agile project management. As the Agile Manifesto says: "The best architectures, requirements and designs emerge from self-organizing teams."
A team of highly motivated individuals should be fully capable of breaking themselves up into smaller teams, working together efficiently and building product increments that integrate with the increments of other teams, as everyone strives to implement the project's goal.
Also, as the project progresses, individuals should be empowered to migrate from one team to another to maximize their utilization.
Motivated individuals want to work hard and be productive, and they will naturally move onto teams that need their skills most. They will also move away from teams where they feel their skills are undervalued. This is one way Agile project management helps avoid workplace conflicts before they arise.
Iterative techniques
The final principle of Agile project management is to employ iterative processes that make success. Such processes possess three characteristics: they are predictable, repeatable and correctable.
Agile teams should perform planning, reviews and retrospectives at a regular and scheduled cadence. This cadence should include a reasonable amount of time for the team to produce something of value that they can put into the hands of the stakeholders -- again, reinforcing the first Agile principle pertaining to continuous delivery.
The Scrum framework, a popular Agile strategy, says development sprints should never extend beyond a month, and in practice, two-week sprints are the norm. Teams that want to really minimize risk reduce a sprint to as short as seven days.
Short, iterative efforts are about more than just regular reviews with clients, however.
Iterative cycles add predictability to the process. Developers know the dates when they are expected to deliver increments of value, and stakeholders know when the deliveries will come.
Furthermore, with a regular cadence, teams can more accurately estimate their capacity and understand how much they can produce in a week or a month. An iterative Agile process also should include an opportunity for the team to meet and discuss how to improve the next iteration over the previous one.
The Agile Manifesto insists teams should regularly "reflect on how to become more effective, then tunes and adjusts its behavior accordingly." Iterative production cycles make this possible.
The Agile Manifesto was originally written for the software development field, but every industry that that strives to deliver value to their customers and stakeholders can learn something from the Manifesto's principles and tenets. That's what Agile project management is all about.
Darcy DeClute is a technical trainer and Agile coach who helps organizations apply Scrum-based principles to adopt a modern DevOps stack. She is a certified Professional Scrum Master (PSM), Professional Scrum Developer (PSD) and Professional Scrum Product Owner (PSPO), and author of the Scrum Master Certification Guide.