* [Topics](/en/topics "Topics")
* [DevOps](/en/topics/devops "DevOps")
* What is agile methodology?
What is agile methodology?
==========================
Published  July 19, 2022•*4*-minute read
Copy URL
Jump to section
---------------
OverviewAgile valuesWhere did it come from?Agile frameworksPlatform engineering and agile methodology
Overview
--------
Agile is an approach to software development that seeks the continuous delivery of working software created in rapid iterations.
However, the phrase "agile methodology" is misleading because it implies that agile is a singular approach to software development. Agile is not a set of prescriptions for exactly which actions to take in software development. Instead, it is a way of thinking about collaboration and workflows and it is a set of values which guide our choices in regards to what we make and how we make it.
In practical terms, agile software development methodologies are all about delivering small pieces of working software quickly to improve customer satisfaction. These methodologies use adaptive approaches and teamwork to focus on continuous improvement. Usually, agile software development consists of small, self-organizing teams of software developers and business representatives regularly meeting in-person throughout the [software development life cycle](/en/topics/security/software-development-lifecycle-security). Agile favors a lightweight approach to software documentation and embraces—rather than resists—changes at any stage of the life cycle.
[Supporting agile development at Hitachi Construction Machinery](/en/resources/hitachi-construction-machinery-case-study)
Agile values
------------
Agile as we know it today traces its history to 2001. Reacting to waterfall approaches to project management, which organizes a software project as a series of linear sequences, a group of software developers penned The Manifesto for Agile Software Development. In this document the programmers proposed a new approach to software development and [described 4 key characteristics](http://agilemanifesto.org/) that they believed should be valued over other concerns. As they put it, agile software development teams should 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
The authors clarify that all items on the above list do have some inherent value. However, they propose that valuing the items on the left (bolded) above those on the right can lead to better outcomes in product development. The agile manifesto does not set out to prescribe a set of practices; it is guidance for a new way of thinking about software development.
There have been many practical outcomes of the agile manifesto. For instance, instead of developing software sequentially from one phase to the next, which is how the waterfall method ensures product quality, an agile method can promote development and testing as concurrent and continuous processes. Put another way, waterfall development holds that an entire phase should be completed before moving on to the next, whereas agile supports multiple sequences happening at the same time.
Platform engineering vs. DevOps
-------------------------------
[Read the article](/en/topics/devops/platform-engineering-vs-devops "Read the article")
Where did agile come from?
--------------------------
Agile approaches to work were created to address the perceived limitations of the waterfall methodology, which was derived from the manufacturing method of Henry Ford’s 1913 assembly line and later applied to software development. Since its founding in 2001, agile development has flourished in the software industry and project management, though it has many variations.
Agile started when many software developers began noticing that the production cycles and collaboration methods of waterfall were not producing the desired results. This problem had become pervasive by the early 1990s, when it became common for a several years lag to persist between an organization's validated business need and the delivery of a working application. Business demands and markets could change enough during those years that large parts of software projects would be cancelled before they were ever delivered. This waste of time and resources led many software developers to seek an alternative.
Faced with the threat of disruption, organizations increasingly adopt [digital transformation](/en/solutions/digital-transformation) strategies to keep up with the accelerating pace of business. And when they do, agile software development frequently plays a role.
Agile forms the basis of many of today’s digital workflows. [Cloud computing](/en/topics/cloud-computing), with its flexible, scalable, IT infrastructure, has grown up in parallel with the demands of agile software development. [Cloud-native development](/en/topics/cloud-native-apps) embraces an agile-like notion of software as a series of interconnected services that scale to meet business needs.
[DevOps](/en/topics/devops) as a concept breaks down the old wall between software development and operations. [SRE](/en/topics/devops/what-is-sre) is an implementation of DevOps that uses software as a tool to manage systems and automate operations tasks. [CI/CD](/en/topics/devops/what-is-ci-cd) methods accept that software will change continuously, and gives developers tools to accelerate the speed at which they can deploy new code.
By now you may have noticed that the concept of "agile methodology" is itself an agile idea, responding to the needs of its customers (that is, software developers) through changing times. Keep this in mind as we take a brief look at a variety of agile frameworks, which carry different names and often vary from one implementation to another.
Agile frameworks
----------------
Agile frameworks for software development—like Scrum, kanban, or extreme programming (XP)— form the basis for popular software development processes like [DevOps](/en/topics/devops/what-is-devsecops) and [continuous integration/continuous deployment](/en/topics/devops/what-is-ci-cd) (CI/CD).
Scrum is perhaps the most popular agile framework in use today but not all agile is Scrum and, honestly, not all Scrum is agile. Scrum is a framework for managing work designed for small, cross-functional teams of 5 to 9 people who break their work into actions that can be completed within a consistent period of time called a sprint. Scrum teams consist of team members, a Scrum master, and a product owner. Typically, Scrum is implemented when a large project can be broken up into 2- to 4-week sprints. Scrum focuses on feedback loops through a ceremony called the "retrospective." The unofficial motto of Scrum could be "inspect and adapt."
Other agile frameworks, notably kanban, predate the agile manifesto. But these frameworks are considered to be agile because they promote the values outlined in the agile manifesto. There are too many agile frameworks and approaches to scaling agile to list all of them here.
[Learn how agile frameworks can foster innovation with Red Hat Open Innovation Labs](/en/services/consulting)
Platform engineering and agile methodology
------------------------------------------
Platform engineering is a discipline within software development that focuses on improving productivity, application cycle time, and speed to market. It incorporates aspects of agile development such as CI/CD, automation, and microservices architecture. Platform engineers provide self-service capabilities and standardized tools that accelerate development cycles and empower development teams to deliver value more rapidly.
[Learn more about platform engineering](/en/topics/devops/platform-engineering)
Article
What is DevOps?
---------------
DevOps is a set of practices that combines software development and IT operation to deliver software solutions.
[Read the article](/en/topics/devops/what-is-devops "What is DevOps?")
What is a Golden Path for software development?
-----------------------------------------------
A Golden Path refers to an opinionated, well-documented, and supported way of building and deploying software within an organization.
[Read the article](/en/topics/devops/golden-paths "What is a Golden Path for software development?")
Keep reading
------------
### What is CI/CD?
CI/CD, which stands for continuous integration and continuous delivery/deployment, aims to streamline and accelerate the software development lifecycle.
[Read the article](/en/topics/devops/what-is-ci-cd "article | What is CI/CD?")
### What is application lifecycle management (ALM)?
Application lifecycle management (ALM) is the people, tools, and processes that manage the life cycle of an application from conception to end of life.
[Read the article](/en/topics/devops/what-is-application-lifecycle-management-alm "article | What is application life cycle management?")
### What is Observability?
Observability refers to the ability to monitor, measure, and understand the state of a system or application by examining its outputs, logs, and performance metrics.
[Read the article](/en/topics/devops/what-is-observability "article | what is observability")
DevOps resources
----------------
### Related content
* Checklist
  [Cinco maneiras que a Red Hat e a AWS agregam valor com a IA](/en/resources/5-ways-aws-builds-ai-value-checklist)
* Blog post
  [Red Hat OpenShift: Powering innovation around DevOps](/en/blog/red-hat-openshift-powering-innovation-around-devops)
* Overview
  [Accelerating Air Force outcomes with AI](/en/resources/airforce-outcomes-with-ai-overview)
* Case study
  [RBBH provides the innovative services its customers need](/en/resources/raiffeisen-bank-customer-case-study)
### Related articles
* [What is CI/CD?](/en/topics/devops/what-is-ci-cd)
* [What is application lifecycle management (ALM)?](/en/topics/devops/what-is-application-lifecycle-management-alm)
* [What is Observability?](/en/topics/devops/what-is-observability)
* [What is DevOps?](/en/topics/devops/what-is-devops)
* [What is GitOps?](/en/topics/devops/what-is-gitops)
* [What is Istio?](/en/topics/microservices/what-is-istio)
* [What are platform engineering tools?](/en/topics/devops/platform-engineering-tools)
* [What is a Golden Path for software development?](/en/topics/devops/golden-paths)
* [What is serverless?](/en/topics/cloud-native-apps/what-is-serverless)
* [What is a CI/CD pipeline?](/en/topics/devops/what-cicd-pipeline)
* [Stateful vs stateless applications](/en/topics/cloud-native-apps/stateful-vs-stateless)
* [Platform engineering vs. DevOps](/en/topics/devops/platform-engineering-vs-devops)
* [What is application migration?](/en/topics/cloud-native-apps/application-migration)
* [What is application integration?](/en/topics/cloud-native-apps/application-integration)
* [What is multi-cloud GitOps?](/en/topics/devops/what-is-multicloud-gitops)
* [What is a GitOps workflow?](/en/topics/devops/what-is-gitops-workflow)
* [What is Argo CD?](/en/topics/devops/what-is-argocd)
* [Shift left vs. shift right](/en/topics/devops/shift-left-vs-shift-right)
* [What is platform engineering?](/en/topics/devops/platform-engineering)
* [Red Hat OpenShift for developers](/en/technologies/cloud-computing/openshift/developers)
* [Red Hat OpenShift for platform engineers](/en/technologies/cloud-computing/openshift/platform-engineer)
* [What is CI/CD security?](/en/topics/security/what-is-cicd-security)
* [What is an internal developer platform?](/en/topics/devops/what-is-an-internal-developer-platform)
* [Why choose Red Hat for a DevOps Platform?](/en/topics/devops/why-choose-red-hat-for-devops)
* [What is DevSecOps?](/en/topics/devops/what-is-devsecops)
* [What is an application development platform?](/en/topics/cloud-native-apps/what-app-dev-platform)
* [Security in the software development lifecycle](/en/topics/security/software-development-lifecycle-security)
* [What are cloud applications?](/en/topics/cloud-native-apps/what-are-cloud-applications)
* [Why choose Red Hat for cloud-native development?](/en/topics/cloud-native-apps/why-choose-red-hat-cloud-native)
* [Cloud-native CI/CD on Red Hat OpenShift](/en/technologies/cloud-computing/openshift/ci-cd)
* [How to deploy Red Hat OpenShift](/en/technologies/cloud-computing/openshift/deploy-red-hat-openshift)
* [Kubernetes-native Java development with Quarkus](/en/technologies/cloud-computing/openshift/quarkus)
* [What is continuous delivery?](/en/topics/devops/what-is-continuous-delivery)
* [What is deployment automation?](/en/topics/automation/what-is-deployment-automation)
* [What is an SDK?](/en/topics/cloud-native-apps/what-is-SDK)
* [What is SRE?](/en/topics/devops/what-is-sre)
* [What is a Java runtime environment (JRE)?](/en/topics/cloud-native-apps/what-is-a-Java-runtime-environment)
* [Why choose the Red Hat build of Quarkus?](/en/topics/cloud-native-apps/why-choose-red-hat-quarkus)
* [What is an application architecture?](/en/topics/cloud-native-apps/what-is-an-application-architecture)
* [What is Quarkus?](/en/topics/cloud-native-apps/what-is-quarkus)
* [What are Java frameworks?](/en/topics/cloud-native-apps/what-is-a-Java-framework)
* [What is blue green deployment?](/en/topics/devops/what-is-blue-green-deployment)
* [What is an IDE?](/en/topics/middleware/what-is-ide)
* [What is DevOps automation?](/en/topics/automation/what-is-devops-automation)
[More about this topic](/en/topics/devops "More about this topic")