Most people have heard of Agile, but are you familiar with the different Agile methodologies? There are several Agile frameworks, each with a unique focus, process, and value proposition. Here are some of the commonly recognized frameworks of implementation used in this project management methodology.
Adaptive Software Development (ASD)
Developed by Jim Highsmith and Sam Bayer, this Agile framework is an iterative process focused on the mission and results. It is feature based, risk driven, and tolerant of change. Work is conducted based on predictable environmental components, and is adapted to various changes as a result of factors like stakeholders, vendors, requirements, and technology.
This is part of the Crystal methodologies’ family and is an example of Agile or lightweight methodology that can be used in co-located teams of less than ten members. It operates on components of safety and is people focused.
Disciplined Agile Delivery (DAD)
This is a framework that focuses on a simplified process and works off Agile practices like Scrum, Lean, and others. DAD has been described as a framework that enables movement beyond Scrum and offers a carefully developed mechanism to streamline work, but also provide scalability.
Dynamic Systems Development Method (DSDM)
Used for software development, DSDM a general iterative approach that follows Agile development practices and includes the concept of continuous improvement. DSDM works with other frameworks for service delivery.
Extreme Programming (XP)
Created with the purpose of responding to changing requirements and improving quality, this is a form of Agile software development that uses short development cycles. XP components include programming in pairs, reviewing code, and testing. The reference to extreme is based on the idea that traditional software engineering is taken to an extreme. XP focuses on the code.
Feature-Driven Development (FDD)
FDD is an iterative process used to develop software and combines best practice methods. Practices focus upon the value of client functionality, and are aimed at repeatedly delivering a tangible product within a minimal time frame.
Meaning billboard or signboard in Japanese, Kanban was developed in the 1940s by Toyota to improve its engineering process. It’s a just-in-time (JIT) framework that balances the level of required work against the capacity to initiate the work. Those involved are provided an opportunity to view the progress of individual items as well as the process from start to finish. Work is pulled by individual members on a team as it can be managed.
Lean Software Development (LEAN)
Lean was adapted from the Toyota Production System to focus on optimizing efficiency, reducing waste, and continuous improvement with the goal of increasing customer satisfaction. It operates under seven key principles: eliminate waste, enhance learning, make decisions later and faster, empower teams, develop integrity, and see everything in its entirety.
This is the most widely used iterative and flexible framework. Teams are organized into units and work towards identified goals. Daily meetings are held to collaborate, and teams are encouraged to self-organize. It is a common understanding that customers can make changes to their requirements and that traditional project methods aren’t flexible enough to resolve problems as they arise. The team works in a rapid manner to identify and resolve issues as they arise.
This management framework combines Scrum and Kanban. It uses Scrum to complete the work and Kanban as a way to gain insight into how work is done, and also find ways to improve things. This method is increasing in popularity and emphasizes several principles that are distinct from Scrum or Kanban. Scrumban principles and practices are not unique to the software-development process.