Popular Agile PM Frameworks
A project management framework is the collection of tools, tasks, and processes used to organize, plan, and execute a project from initiation to completion. In other words, a framework outlines everything you need to successfully plan, manage, and control your projects.
A standard project management framework can be broken down into three main buckets:
1. Initiation
2. Planning
3. Execution
4. Control & Monitoring
5. Closure
An Agile project framework, on the other hand, will likely use a modified life cycle to represent the flexible and iterative nature of Agile better.
The purpose of a project management framework is to provide a clear and consistent outline for projects – one that helps ensure reliable and repeatable execution of projects across teams and throughout companies. Frameworks help ensure best practices are documented and shared, to the benefit of all. They also help organizations and industries create common standards, so that a construction project run by one company will be similar to that run by another.
The PMBOK Guide describes a project management framework as the basic structure for understanding project management. The reason there are multiple frameworks available is so that project managers can choose the one that works best for their project. How to choose the appropriate framework for your project is covered under Section F below.
What is the difference between a methodology and a framework?
A methodology outlines the project management principles, values, and best practices to follow, while a framework prescribes how to follow them. In other words, a methodology tells you what you want to achieve, and a framework focuses on how to achieve it.
For instance, Lean and Agile principles may tell you that responding to change is vital. However, these methodologies don’t tell you how to ensure your projects can respond well to change. That information would be outlined in a framework.
The Agile project methodology is a project management approach that uses four key pillars and 12 principles to organize projects. One thing all Agile frameworks have in common is that they’re all designed to support the achievement of these pillars and principles.
The Agile process flow stands out from other project management approaches due to its emphasis on iterative development, flexibility, continuous feedback, and valuing people over processes. Therefore, any Agile framework must be built around these key values.
While each framework has its unique facets, they’ve also all been constructed to ensure the basics of project management have been followed and the project can be completed successfully. Agile frameworks are considered lightweight compared to traditional frameworks, as they typically focus on keeping documentation and rules to a minimum. However, every Agile project framework must still include all critical project processes and phases such as initiation, planning, and so on.
If asked what is the most popular agile methodology, the majority of people will likely respond with the Scrum framework.
The Scrum methodology was developed in the 1990s, based on a Harvard Business Review article titled, “The New New Product Development Game.”
As with other Agile frameworks, Scrum outlines an iterative approach to project management. The Scrum methodology prescribes breaking a project down into sprints that typically only last one to four weeks. Each sprint is meant to end with the completion of a workable version or draft of the final project deliverable.
By using short iterations, the Scrum project management approach enables your team to deliver a working version of the final product on a frequent basis.
Scrum was initially designed using a software model that follows a set of roles, responsibilities, and meetings. However, it’s flexible enough to be used for any complex project in any industry. However, it works best when your project results in a concrete product, rather than a service.
Scrum is considered lightweight and flexible but difficult to master. Its framework is based on three pillars:
Scrum in Agile requires particular roles and responsibilities, including the following:
· Product Owner. The product owner on a project is the person responsible for representing the customer’s best interest. This person has the ultimate authority to say what is included in the final product. It is the product owner’s job to ensure product requirements, functionality, and priorities are understood and achieved.
· Scrum Master. The Scrum Master is a facilitator, responsible for arranging the daily meetings, improving team interactions, and helping to maximize productivity. The difference between project manager and scrum master is that the scrum master definition is solely focused on being a servant leader. The Agile project manager roles and responsibilities often includes the position of scrum master, but it can also be delegated to anyone on the team who’s a Scrum expert and a strong facilitator.
· Development team. The development team is your Scrum project team. It’s typically self-organized and cross-functional in nature. This team is meant to include all the people necessary to design, produce, test, and release the final product.
· Scrum team. The Scrum team structure includes your development team, your scrum master, and your product owner.
Scrum also has some unique terminology. The following are important terms commonly used in the Scrum framework:
· Product backlog. The backlog is a list of tasks and requirements that must be included in the final product. It’s the Product Owner’s responsibility to create and manage the backlog.
· Sprint. A sprint is a set time frame for completing each set of tasks from the backlog. Every sprint should be the same length. Two weeks in length is typical, but the sprint can be anywhere between one to four weeks depending on the needs of the team and project.
· Backlog planning. Backlog planning refers to the process of determining which tasks on the backlog list will be included in each sprint. This is also sometimes called Agile sprint planning.
· Sprint backlog. The portion of the backlog assigned to the current sprint.
· Daily Scrum. A Scrum project team is expected to meet every day to discuss progress completed in the last 24 hours, progress expected in the next 24 hours, and any new problems that have cropped up. These meetings are typically referred to as a Daily Scrum or Daily Stand-Up and are generally only about 15 minutes.
· Retrospective. Each sprint should end with a review meeting, called a retrospective. This meeting is where the team reviews their progress so far and discusses how they can improve the execution of the next Sprint.
· Scrum Board. A Scrum Board is a tool that helps your team see and manage the sprint backlog. It can be a physical board, such as a whiteboard, or a virtual one within a project management tool. The board typically has three columns: “To Do,” “In Progress,” and “Done.” As backlog items are completed, they’re moved from one column to the next on the board. This enables everyone to quickly see what needs to be done during the current sprint and how the work is progressing.
· Artifact. The product backlog, the sprint backlog, and the product increment are the three Scrum artifacts within a project. The product backlog and sprint backlog represent work still to be done, and the product increment is the portion of the product that has already been done during the current sprint.
While Scrum is one of the most popular Agile project management methods, it’s certainly not your only option. You may be wondering: what is Agile planning and which one should I pick? Here are five other Agile project management methodologies to choose from:
1. Kanban
Kanban is a simple, visual means of managing projects, that emphasizes visibility. Originally designed as a scheduling method, Kanban helps teams execute just in time production by enabling everyone to see where work is in the project and what’s coming up next.
Kanban focuses on a visualized workflow where work is broken down into small pieces. The Kanban framework is similar to Scrum in many ways. For instance, Kanban also uses a board to help view and keep track of work progress. This board helps segment project tasks into three main columns: “To Do,” “Doing,” and “Done.” However, unlike Scrum, the Kanban Board tracks all product work but doesn’t separate it into sprints.
Some of the strengths of Kanban are its ability to help identify bottlenecks and waste, as well as reduce wait time.
2. Extreme Programming (XP)
Extreme Programming (XP) is an Agile framework initially designed for Agile software development projects. Like Scrum, this framework focuses on continuous development and customer delivery. It also uses intervals or sprints, similar to a Scrum methodology.
However, the XP framework is centered on engineering principles and includes 12 supporting processes specific to the world of software development. These are:
3. Feature-Driven Development (FDD)
Feature-driven development is another software specific Agile framework. This framework is based on the idea of creating software models every two weeks. It also requires a separate development and design plan for every software model feature, making it more documentation heavy than some of the other Agile frameworks. Due to its rigorous documentation requirements, FDD is typically better for teams with advanced design and planning abilities.
The FDD framework breaks projects down into five basic, repeatable activities:
4. Dynamic Systems Development Method (DSDM)
The Dynamic Systems Development Method (DSDM) arose out of the need to provide a common industry framework for rapid software delivery. Part of DSDM is the mandate that rework is to be expected, and any development changes that occur must be reversible. Like Scrum, XP, and FDD, the DSDM framework breaks projects down into smaller sprints.
This framework is based on eight key principles:
5. Crystal
Crystal is actually a family of Agile methodologies, including Crystal Clear, Crystal Yellow, Crystal Orange, Crystal Red, and more. Each crystal methodology has its own unique framework. Which one you choose is dependent on several project factors, such as your team size, your project priorities, and project criticality. When deciding how to adopt Agile in your project, it’s important to recognize that different projects require a slightly different set of policies, practices, and processes based on their unique characteristics.
What is a Lean project?
While Lean often shows up on Agile frameworks lists, Lean development is actually a completely separate methodology. The reason Lean and Agile are so often grouped together is that they share many of the same values. For instance, both Lean and Agile emphasize the ability to easily adapt to change.
The main principles of the Lean methodology include:
The basic definition of Agile Epics is “large user stories.” Of course, this is inherently vague, which often leads to misunderstandings. However, the definition was meant to be vague in order to provide projects and project managers with more flexibility.
In order to better understand what an epic is, let’s first define a user story. A user story is simply something a user wants. In other words, it’s a description of the results that your customer is asking for. Ideally, a user story is small enough to fit within one project sprint. For instance, if you were producing a book and each chapter could be done in a sprint, then each chapter would become a user story.
But, what if a chapter would take eight weeks to complete? This means the user story is too large to accomplish within one sprint successfully. Therefore, it’s considered a large user story or an epic.
There is no exact size guideline for epics. It depends on your team’s sprint length and project needs.
Another important definition to understand is a theme. A theme is a collection of user stories that are related or can easily be grouped together. For instance, if you were planning to build a house, you may choose to group all of the electrical requirements together under one theme and all of the structural requirements under another.
Story, epic, and theme are terms that many Agile teams use to help streamline product backlog discussions and planning. For instance, you may have a requirement in your product backlog that’s too big to assign to one sprint. By labeling this an epic, everyone understands that it needs to be broken down before the work can become part of a sprint backlog.
Similarly, if you have requirements grouped together under themes, it can help you accomplish your sprint backlog planning. After all, requirements that are grouped together may benefit from being put into the same sprint.
Epic project management is all about managing your backlog in a way that’s executable. It ensures requirements are concise enough to be accomplished in a one- to four-week period.
Two of the benefits of epics are:
· Epics allow you to keep track of big, loosely defined ideas in your backlog. You can note a requirement down as an epic and then refine it later, as the project progresses.
· Epics enable you to establish a hierarchy for your backlog items. The epic stays in the backlog as the original idea or requirement. The user stories associated with it track the aspects of the product that’ll allow you to meet that requirement.
One of the biggest problems with epics is when teams get too caught up in the details around differentiating between epics and stories. Another issue is when teams put too much effort into tracking epics separately from stories – or too much effort into trying to estimate and refine epics before breaking them down into stories.
The bottom line is that epics are meant to be a useful grouping tool for your backlog. If they’re creating problems and headaches for your project team, then their use needs to be reassessed.
Here’s a video by Knowledge Hut further demonstrating the definition and value of Agile epics.
With more than six popular Agile project frameworks to choose from, how do you know which is the right one for your project?
First of all, there’s no one best framework that’ll work for all projects, so it’s important to assess the needs of your individual project and team when determining which framework to use.
Here are seven project manager best practices based on the Project Management Institute’s Organizational Project Management Maturity Model (OPM3) and Implementing Organizational Project Management Guide.
Agile project management tools are any tools that you use to manage an Agile project. In the most basic form, a whiteboard and post-it notes can be considered Agile project management tools.
However, there’s a wide variety of more sophisticated digital tools that you can choose from. The key difference between Agile tools and other project management tools is their ability to handle Agile frameworks, such as Scrum and Kanban.
Here are five free Agile project management tools: