10 simple steps to Agile project management with Scrum
Agile project management: there’s no escaping it in the workplace these days. “Put it in the backlog.” “We’ll work on it during the next sprint.” “Talk to the Scrum Master.” The buzzwords of Agile project management are ubiquitous, and love it or hate it, you’ll benefit from being familiar with its principles.
In this beginner’s guide, we’ll tell you what Agile project management and Scrum are all about. Use this handy little table of contents to jump to the section that interests you most:
+ What is Agile project management?
+ The 12 principles of Agile project management
+ Why use Agile project management?
+ What is Scrum?
+ 10 simple steps to Agile project management with Scrum
+ How our R&D team implements Scrum
+ Who can benefit from working with Agile project management?
+ Tell me more. More!
What is Agile project management?
In 2001, 17 software developers got together at the Snowbird resort in Utah to ski, drink hot cocoa, and chat about unshackling themselves from the heavy restraints of traditional software development. Jeff Sutherland—now considered the godfather of Agile project management—and his buddies together penned the now legendary Manifesto for Agile Software Development.
While the jargon of Agile project management may sound intimidating, you don’t need to be a software developer to easily grasp what it’s all about. Let’s back up a second and see how Merriam-Webster defines the word “agile.”
1. marked by the ready ability to move with quick and easy grace.
For example: “Like an agile peacock! Like a chicken with the face of a monkey…I fly!” —Duke of Weselton, Frozen
2. having a quick, resourceful, and adaptable character.
For example: “There is nothing to winning, really. That is, if you happen to be blessed with a keen eye, an agile mind, and no scruples whatsoever.” —Alfred Hitchcock
(Side note: How do you pronounce agile? Most dignified Brits say, “aj-aisle,” but many freedom-loving Americans say, “aj-il.”)
Traditional project management methodologies such as Waterfall, PMI’s PMBOK, and PRINCE2 are all rigid and highly controlled. They outline distinct stages for project planning from start to finish, and assume that you have all the requirements and information you need upfront.
Agile rejects these traditional project management methodologies as cumbersome, restrictive, and unsuitable for the new era of speed. Teams need to stay fast and flexible, even as they grow.
Agile project management accepts uncertainty as a given, and values responding to change over having a plan. Rather than assuming you can “do it once, and do it right,” Agile encourages you to work on something small, execute it quickly, get feedback, evaluate what’s working and what’s not, and adapt your plan from there. This process of small, fast, and repeated cycles is known as “iterative.”
Jim Highsmith, one of the original manifesto signatories, explained:
“In order to succeed in the new economy, to move aggressively into the era of e-business, e-commerce, and the web, companies have to rid themselves of their Dilbert manifestations of make-work and arcane policies.”
For what it’s worth, Dilbert didn’t take this insult lying down. Here’s some shade he throws back at Agile project management:
The principles of Agile project management
The core value at the heart of Agile project management is the concept of “inspect and adapt,” which means that last minute changes are welcome at any stage of the project cycle. The Manifesto for Agile Software Development outlines twelve principles:
- Customer satisfaction is the highest priority, which you can ensure by delivering them valuable software early and continuously.
- You welcome changing requirements, even late in development, for the customer’s competitive advantage.
- You deliver working software frequently, as in every few weeks rather than months.
- You must have close, daily collaboration between business people and the developers.
- You build projects around motivated individuals, who deserve support and trust to get the job done.
- Face-to-face conversation is the most efficient and effective form of communication.
- Working software is the primary measure of progress.
- Development should be sustainable. You should be able to maintain a constant pace indefinitely.
- You must give continuous attention to technical excellence and good design.
- Simplicity—the art of maximizing the amount of work not done—is essential.
- The best architectures, requirements, and designs emerge from self-organizing teams.
- Regularly, the team should reflect on how to become more effective, and adjust their accordingly.
Why use Agile project management?
There are some pretty impressive statistics that speak to the success of companies adopting Agile project management. According to the Project Management Institute,
- 75% of highly agile organizations met their goals and business intent
- 65% finished projects on time
- 67% finished projects within budget
These results are higher than what organizations with low agility achieve. The same research shows that agile organizations grow revenue 37% faster and earn 30% higher profits than non-agile companies.
Agile project management is popular because it’s well suited for what happens to people in real life. Business move quickly, things change all the time, and teams need to be able to adapt to these changes. Retrospection—the 12th principle outlined in the Manifesto—helps teams understand what worked, what didn’t, and to adjust their workflow accordingly. This empowers teams to constantly improve.
Other benefits of Agile project management include:
- Since you test early and often, you quickly detect and resolve issues, bugs, and defects before they become critical
- You improve customer satisfaction, since you loop them into the process every step of the way and incorporate their feedback
- You virtually eliminate the possibility that your project will completely fail, because you always have a tangible and working product
What is Agile project management with Scrum?
Here’s the thing: Agile isn’t considered a methodology, but is rather an overarching philosophy or a belief system. There are many different methodologies with which you can actually implement Agile’s principles.
Think of it this way: Christianity is a large umbrella term that reflects a general set of beliefs and principles. There are many different ways to actually practice this set of beliefs on a daily basis: Catholicism, Protestantism, Eastern Orthodox, and so on. All these denominations share a lot of core similarities, but they’re also different in their interpretations and practice.
Agile and its methodologies are similar, except that they’re not a religion, at least for most people :). Some methodologies with which you can implement the Agile philosophy include kanban, extreme programming (XP), crystal, and dynamic systems development method (DSDM). One of the most popular Agile methodologies, and the one we’ll explore here, is Scrum.
The same guys who wrote the Agile Manifesto are the ones who collaborated together to invent Scrum in the early 2000s. You can now take courses to become Scrum-certified through the Scrum Alliance or Scrum.org, but you certainly don’t have to. Almost all of our teams here at monday.com use some interpretation of Scrum to manage their day-to-day work. Weird name aside, we think Scrum is an easy, intuitive, and fun way to focus on what you need to get done from one week to the next.
10 simple steps to Agile project management with Scrum
1. Make a list of all the things you and your team needs to do. In Scrum lingo, this is your “backlog.”
Think about your projects and goals. What specific tasks need to be completed to reach them? Don’t hold back. Get down to the dirty details, and try to break down tasks into their smallest parts.
For example, let’s say you’re redecorating your home, and one milestone is to repaint your living room. For the sake of your “backlog,” you’d break this down into the most granular actions:
- Choose which color of paint you want
- Research where to buy the paint
- Research what painting equipment you need (primer, brushes, rollers, ladder, masking tape, plastic sheeting, etc.)
- Buy the paint
- Buy the equipment
- Remove your furniture from the living room
- Cover the floor and fixed furnishings with plastic sheeting
- Tape the floor trimming, ceiling edges, window and door frames, and anything else that needs to be protected
- Paint primer on left wall
- Paint primer on right wall
- Paint primer on back wall
- Paint left wall
- Paint right wall
- Paint back wall
- Second coat left wall…
You get the point. Breaking down your tasks allows you to much more accurately estimate how long it will take you to complete each task. It also helps you identify dependencies and priorities—what’s most important? What needs to happen first?
Our R&D team actually has a bunch of backlogs: features we plan for our product, nice things that would improve the platform (which we call “cheese”), bugs we need to fix… and they’re all listed and organized in separate boards.
These boards create transparency, aligning everyone on the big picture and ensuring that everyone is working toward the same goal. Team members can add new tasks to any backlog as new things come up and projects evolve.
2. Create a new task board to list all the things you’ll accomplish over the next week or two. In Scrum, this timeframe is called your “sprint” or “iteration.”
Agile project management values working by time: what exactly can you and your team achieve in a specified period of time? Scrum generally advocates working in two-week “sprints” or “iterations.” The idea of sprints is that it creates a sense of urgency. You’re singularly focused on achieving all you can before crossing that two-week finish line. On this board, you can (and should) map out and plan for multiple iterations.
3. Move tasks from your backlog to your task board. This is called “iteration planning” or “sprint planning.” (See? You’re a Scrum expert already.)
Be ambitious, but realistic, about what your team can achieve over the next two weeks. Go through your various backlogs, if you have more than one, to ensure you have all your bases covered. For example, you can decide that each sprint, you’re going to devote 30% of your time to fixing bugs, 50% to developing new features, and 20% to working on other improvements.
The official Scrum term for these different areas of focus is “epic:” a chunk of work that has one common objective. In our example of redecorating your house, each room might be its own epic. It’s essentially a category that helps you keep track of how each smaller task fits together in the big picture. In monday, we like to use #tags to keep track of these epics. With one click on the #bug tag, for example, you can get a filtered review of all the bugs that have ever been reported or worked on.
4. Assign each task in your sprint to someone on your team.
Ownership motivates—that’s a guarantee. When a task has a person’s face next to it, it motivates the owner to take responsibility and see it through to the end. At the end of the iteration, it gives each individual recognition for their hard work. Different people also often rely on each other, so clearly seeing who’s working on what ensures smooth collaboration.
5. Prioritize the tasks in your upcoming sprint.
Agile project management favors categorizing tasks according to four priorities: critical, high, medium, and low. Since plans can change and things might take longer than you estimate, there’s a good chance your team won’t be able to complete every single task in your upcoming sprint. Having the priority clearly noted helps you choose what to work on first. Make sure that the critical things get done, and push back the low priority things if necessary.
6. Estimate how long each task will take.
When going through each task, try to think about the amount of work that needs to be done, the complexity of the work, and any risk or uncertainty you might encounter when working on the task. The classic Scrum methodology calls this overall effort a “story point,” but you can track it however you want: in days, hours, or whatever unit of time works best for you.
This takes practice, and over time, you’ll get better at it. The more experience you gain estimating the amount of time and effort it takes to complete certain types of tasks, the more accurate your estimations will become. Using the monday.com numbers column, you can quickly calculate a sum of the total amount of time. Add or remove work as necessary to gauge exactly what your team will achieve on the next two-week sprint.
7. Start your sprint! As you go, communicate with your team and update them on where things stand.
Scrum respects that things change and unexpected circumstances can stop a task from reaching completion. If a task gets stuck or delayed, just update your status column to let everyone else on your team know where thing stand. You can also mention a @teammate or @everyone on your team to notify them of what’s going on, and the updates in your board will store all the relevant documentation and information for everyone to see.
8. Hold short daily meetings with your whole team. Scrum calls these “dailies” or “standups.”
Remember principle #6? Face-to-face communication is the best way for everyone to stay in sync. Schedule a short 10 to 15-minute meeting at the beginning of every workday so that everyone on your team can provide a quick overview of what they worked on the day before and what they plan to work on that day. If anyone encountered a specific challenge or issue, this is a great opportunity to discuss it as a group and decide on the best course of action together.
9. You finished your sprint. Great work! Now review and analyze what worked and what didn’t. Scrum calls this “retrospection.”
In monday.com, the name of the game is turning everything green—or in other words, marking your tasks as “done.” Once your sprint is over, sit as a team to celebrate what you all achieved, troubleshoot what went wrong, and plan how to tackle things in the next iteration. Mistakes are inevitable, and Agile values learning from these prior mistakes so that your team’s workflow can constantly evolve and improve.
10. Move your completed sprint to the bottom of your board. Start a new iteration at the top of the board. Rinse and repeat.
Storing all your iterations in one board allow you to keep a clear record of everything you’ve completed. Didn’t finish everything this sprint? Move it to the next one. And should a task from a previous sprint come back to life, you can just drag it back into your current sprint