The Philosophical Underpinnings of Agile

The popularity of Scrum, Extreme Programming, and Kanban has led many people to view Agile as a software development methodology. However, Agile started as a philosophy and organizations need to understand and adopt its philosophical underpinnings in order to achieve the full benefits of its use.

Publication Date:  17 January 2024

In recent years, software development models like Scrum, Kanban, and Extreme Programming have become very popular, so much so that these methodologies are now the primary face of the Agile movement. This has resulted in many people viewing Agile as primarily a software development methodology. However, Agile did not start out as a methodology. It started as a philosophy, and organizations that fail to understand the philosophical underpinnings of Agile run the risk of not achieving the full benefits of its use.

The best way to understand the philosophical underpinnings of Agile is to examine its founding document, the Agile Manifesto. Starting in the 1990s, a few isolated developers started looking for new ways to create software. A group of these software developers met at the Snowbird ski resort in Utah in February 2001 to discuss their work and hopefully find commonalities between their new approaches. The output from this meeting was the Agile Manifesto.

The Agile Manifesto is the defining document of the Agile movement. All current Agile software development processes and methodologies can be traced back to this document. However, for all its importance, the Agile Manifesto is a surprisingly short and simple document. Perhaps even more surprisingly, it does not prescribe any specific method for how software should be developed. Instead, it simply states four philosophical principles that all of its authors agree are important for software development efforts.

The Agile Manifesto is provided in its entirety below.

 

The Agile Manifesto

We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value:
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
That is, while there is value in the items on the right,
we value the items on the left more.

 

Since the creation of the Agile Manifesto in 2001, numerous Agile software development methodologies have become prominent. These methodologies include Scrum, Kanban, Extreme Programming, Lean Software Development, Feature Driven Development, Dynamic Systems Development Method, Crystal, Adaptive Software Development, Large Scale Scrum, Scaled Agile Framework, and Disciplined Agile Delivery. What all these methodologies have in common is their alliance with the philosophical values outlined in the Agile Manifesto.

An organization can implement any of the numerous Agile software development models listed above without accepting the philosophical values of Agile as outlined in the Agile Manifesto. However, organizations that do so will not achieve all the benefits Agile has to offer, because the benefits of Agile come from adherence to the values of Agile, not adherence to any specific methodology. The role of Agile methodologies is simply to make it easier for an organization to develop software in accordance with Agile values, but organizational acceptance of the values must come first.

While Agile is currently most often thought of as a software development methodology, it is actually a philosophy about the principles that are most important to the successful creation of software. Moreover, it is adherence to the philosophical principles of Agile that reaps organizations benefits, not adherence to any specific Agile development methodology.

Recent Posts

Rules Should Not apply

Some organizational rules are critically important to keeping people safe from harm. Organizational leaders should ensure these rules are always followed. Other organizational rules exist to help staff know what to expect and to keep operations running smoothly. Making project teams working on critical change initiatives follow these rules can often do more harm than good.

The Importance of Traceability

Many software development projects waste time and resources creating system functionality end-users do not want or need while failing to deliver things end-users have specifically requested. Often poor traceability practices are to blame for these failures.

How and When You Communicate Matters

Most organizations understand that communication can make or break a project. Nonetheless, few organizations actually effectively communicate with staff and stakeholders about key initiatives. In particular, many organizations wait too long to communicate with staff and stakeholders and use horribly ineffective channels when they finally do communicate.

It is So Shiny! I Need to Have It!

It seems like every few years some new, must have process or piece of technology sweeps through industries. When this happens, it can very difficult for leaders of organizations to resist the urge to jump on the bandwagon and adopt the newest thing, even if doing so might be in their organization’s best interest.

The Most Important Aspect of Change Management

It can take a lot of time and effort to complete all of the work required by many formal change management methodologies. If an organization has the resources to complete all of this work, it is often very beneficial to do so. However, if an organization does not have the resources to do this much work, significant gains can still be made by focusing solely on the most important aspect of change management.

You Might Also Like

The Importance of Traceability

The Importance of Traceability

Many software development projects waste time and resources creating system functionality end-users do not want or need while failing to deliver things end-users have specifically requested. Often poor traceability practices are to blame for these failures.

It is So Shiny! I Need to Have It!

It is So Shiny! I Need to Have It!

It seems like every few years some new, must have process or piece of technology sweeps through industries. When this happens, it can very difficult for leaders of organizations to resist the urge to jump on the bandwagon and adopt the newest thing, even if doing so might be in their organization’s best interest.

The Misapplication of Agile and the Myth that Waterfall is Dead

The Misapplication of Agile and the Myth that Waterfall is Dead

The popularity of Agile project management has led some organizations to use it exclusively and declare other project management methodologies like Waterfall dead. This often leads to Agile being used in situations in which a different project management methodology would work much better, and this in turn results in poor project outcomes and disappointed end users.