The biggest buzzwords in project management recently is “Agile” and “Scrum”. But what is it? Is it right for every project? Should my company adopt an Agile mindset?
No one can really the above answers without first knowing what Agile really is. So what exactly is Agile then? First a little background.
Birth of Agile
Agile is a set of principles developed in the 1990’s and settled upon by a group of software engineers in Utah in 2001.
Agile came about because of the heavyweight approach of such models as “Waterfall” (or old school project management) and Service Development Life Cycle Approaches (SDLM). In these predictive models, all planning was completed upfront and changes to scope (mission), schedule, or cost, were only allowed through an integrated change control process.
While this approach is still widely used in most of project management, it was costly and largely unsuited for creating new and novel software. This is also the case today with pharmaceuticals.
The creators of Agile wanted a way to create software that was able to move quickly and easily. In the 1990’s, two methods were being developed and tested called “Extreme Programming” and “Feature Driven Development”.
Thus, a new way of thinking was born! The Agile Manifesto for Software Development was created and agreed upon by 17 representatives in these burgeoning fields. These leaders settled on the term “Agile” and called themselves the “Agile Alliance”.
Agile Manifesto in Nutshell
Agile was created to uncover better ways of developing software through practice and helping others to do it. They believed in four key values over four traditional values. The authors of Agile readily admit that while there is value in the old way of thinking, they value the newer way more.
- Value individuals and interactions over processes and tools –
- Promote team-member interaction
- Team-based approach
- Focus on team responsibility instead of individual responsibility
- Working software over comprehensive documentation
- Produce a product increment
- Although the overall product may not have full functionality, the incremental deliverable should
- Customer collaboration over contract negotiation
- Work collaboratively onsite with the client
- Responding to change over following a plan
- Frequent short term plans over a long upfront plan
- Allows for less costly changes earlier on
- Allows team to find mistakes early on
With these four values in mind, the authors settled upon 12 key principles:
- Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.
- Welcome changing requirements, even in late development. Agile processes harness change for the customer’s competitive advantage.
- Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.
- Business people and developers must work together daily throughout the project.
- Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.
- The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.
- Working software is the primary measure of progress.
- Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.
- Continuous attention to technical excellence and good design enhances agility.
- Simplicity- the art of maximizing the amount of work not done is essential.
- The best architectures, requirements, and designs emerge from self-organizing teams.
- At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behaviors accordingly.
Why Use Agile
First and foremost, Agile is not a methodology. Rather it is a set of principles that gave rise to certain popular frameworks such as Scrum- the most widely used Agile framework. In fact, Agile is an umbrella that covers many other frameworks besides Scrum to include Kanban, ScrumBan, Extreme Programming, etc.
Agile is all about compromising between anarchy (no processes) and too many processes (found in Waterfall). It is about finding enough processes to gain a reasonable payoff.
Agile methods are adaptive to the need at the moment verses planning upfront and then executing the entire plan at one time. Instead of waiting until the end to show the client the complete batch of deliverables, in Agile, deliverables are given to the client after each phase. For instance, if one was building an e-commerce website, the client would see each phase deliverable as they are completed. If a functionality is added, instead of waiting to deploy the entire e-commerce site, the client would see that functionality when completed.
Additionally, in an Agile environment, if the customer discovers a new idea during a phase, the team may execute on that idea immediately or add it to the product backlog for execution as soon as possible. In Waterfall, this would take a timely change request to be decided upon.
A perfect pharmaceutical example is Viagra. Viagra was originally in development to be a blood pressure medication. After seeing the side effects, a new idea was born! Agile is malleable in that it can immediately respond to new market forces or changing conditions.
While Agile is not appropriate for most of project management, when a new novel idea is being birthed into reality, Agile is a powerful set of principles to be adopted to guide your team.
In the next article, I will go over the misconceptions of Agile. In later articles I will delve deeper into the most popular Agile frameworks such as Scrum, Extreme Programming, ScrumBan etc.
Nathan J. Kerr, MS, PMP is the co-owner and founder of PMCertDC – Washington D.C.’s metro area premier project management boot camp provider. With our primary location in Tysons, Virginia, we hold classes throughout the Washington D.C. metro area and anywhere online.
We are a proud Service-Disabled Veteran-Owned Small Business with a huge impact on the project management world. Visit us at https://pmcertdc.com
Read why PMCertDC is awesome here!