What is agile?

Agile is a project management methodology that uses short development cycles called “sprints” to focus on continuous improvement in the development of a product or service.

Although incremental software development methods go as far back as 1957, agile was first discussed in depth in the 1970s by William Royce who published a paper on the development of large software systems. Later in 2001, the Agile Manifesto, a "formal proclamation of four key values and 12 principles to guide an iterative and people-centric approach to software development," was published by 17 software developers. These developers gathered together to discuss lightweight development methods based on their combined experience.

The principles of agile

There are 12 key principles that still guide agile project management today.

  1. Customer satisfaction is always the highest priority and is achieved through rapid and continuous delivery.
  2. Changing environments are embraced at any stage of the process to provide the customer with a competitive advantage.
  3. A product or service is delivered with higher frequency.
  4. Stakeholders and developers collaborate closely on a daily basis.
  5. All stakeholders and team members remain motivated for optimal project outcomes, while teams are provided with all the necessary tools and support, and are trusted to accomplish project goals.
  6. Face-to-face meetings are deemed the most efficient and effective format for project success.
  7. A final working product is the ultimate measure of success.
  8. Sustainable development is accomplished through agile processes whereby development teams and stakeholders are able to maintain a constant and ongoing pace.
  9. Agility is enhanced through a continuous focus on technical excellence and proper design.
  10. Simplicity is an essential element.
  11. Self-organizing teams are most likely to develop the best architectures and designs and to meet requirements.
  12. Regular intervals are used by teams to improve efficiency through fine-tuning behaviors.

Agile methodology adoption

Although designed originally for the software industry, many industries now use agile when developing products and services because of the highly collaborative and more efficient nature of the methodology. The following table shows adoption rates of the agile methodology in a variety of leading industries, as shown in the 11th Annual State of Agile survey by Version One.

Industry

Agile adoption rate

Software (ISV)

23 percent

Financial services

14 percent

Professional services

12 percent

Insurance

6 percent

Healthcare

6 percent

Government

5 percent

Telecoms

4 percent

Transportation

4 percent

Manufacturing

4 percent

The benefits of agile

Agile was originally developed for the software industry to streamline and improve the development process in an effort to rapidly identify and adjust for issues and defects. It provides a way for developers and teams to deliver a better product, in a faster manner, through short, iterative, interactive sessions/sprints. In the era of digital transformation, with many companies migrating to a digital workplace, agile is a perfect fit for organizations looking to transform how they manage projects and operate as a whole. Agile can help ensure company-wide process and methodological alignment. In terms of business benefits, both the digital workplace and agile provide:

·         Increased flexibility

·         Increased productivity

·         Increased transparency

·         Higher quality deliverables

·         Decreased risk of missed objectives

·         Increased stakeholder engagement and satisfaction

Advantages of agile for project management

In the project management field, agile provides project teams, sponsors, project leaders and customers many project-specific benefits, including:

·         More rapid deployment of solutions

·         Reduced waste through minimization of resources

·         Increased flexibility and adaptability to change

·         Increased success through more focused efforts

·         Faster turnaround times

·         Faster detection of issues and defects

·         Optimized development processes

·         A lighter weight framework

·         Optimal project control

·         Increased focus on specific customer needs

·         Increased frequency of collaboration and feedback

The drawbacks of agile

As with any other methodology, agile is not well-suited for every project, and sufficient due diligence is always recommended to identify the best methodology for each unique situation. Agile may not work as intended if a customer is not clear on goals, the project manager or team is inexperienced, or if they do not function well under significant pressure. Throughout the development process, agile favors the developers, project teams and customer goals, but not necessarily the end user's experience. Due to its less formal and more flexible processes, agile may not always be easily absorbed within larger more traditional organizations where there are significant amounts of rigidity or flexibility within processes, policies, or teams. It may also face problems being used with customers who similarly have rigid processes or operating methods.

Combining agile with other methodologies

The opportunity exists to combine agile with other methodologies such as waterfall to create a hybrid solution. Companies sometimes use waterfall to handle one or more phases — such as planning — where these do not require rapid or repetitive steps. Planning in particular requires a more comprehensive, methodical, often slower approach to defining, analyzing, and documenting aspects of a project. This makes waterfall a better approach. Once a project enters the development phase, rapid and repetitive changes require a different approach and this is where agile kicks in to deliver the best results in the shortest amount of time.

This hybrid approach aids in making agile even more adaptable within various industries or to suit the more unique nature of a project, product, or service.  Again, due diligence is required to determine the suitability and capacity of the different methods and processes available.