On this blog I’ve looked at different Knowledge Areas and how they apply to us as project managers, and also taken a budgeting and cost focus on a lot of articles. But what if you are managing an agile project? How do some of the financially-leaning Knowledge Areas work when you are working in agile ways?
Here’s how. Today, I’m looking at how the schedule management Knowledge Area applies to the agile work process.
Project Schedule Management
When you work in an adaptive environment, your project schedules aren’t going to look like big old Gantt charts. You’ve got short cycles to do the work in. With a lot of the people I mentor, we’re talking two week sprints.
The short cycles allow you to do work, review the work and then tweak the results as necessary, including any testing that needs to be done. Ideally, you don’t want all your features dropping on the testing team on the last day of the sprint because that’s not kind!
One team I worked with had this problem a lot so actually set up testing sprints running ‘behind’ the development sprints, just so there was enough time to test everything. Whatever works.
Scheduling is a cost-driven activity because people cost money, and you need people resources to do the work. That’s why it’s important to understand what scheduling options are available to you and how best to get the most out of the time and people that you have.
This could look like pull-based scheduling – which is what I am doing on one Agile team at the moment. There are a lot of tasks. I have the luxury of being able to decide on my next task. They all have to get done, and I can choose. Within reason!
Or it could look like on-demand scheduling. I have used a scheduling approach on a predictive project where we only planned the next three months in detail and let the rest of it unfold as we got closer to the date. It was the only way to stay on top of the work, on that monster project. It wasn’t a project being run with agile principles, but our just-in-time approach to scheduling made our lives easier. As I said, whatever works.
If you work in a big company, there are probably predictive and adaptive methods in use. All of the projects need to fit into some kind of PMO roadmap that allows the business to strategically plan the change effort.
The Agile Practice Guide talks about using predictive, adaptive and hybrid approaches to combine practices to get the best approach for the project or programme being delivered. Consider what scaling you would need to do to your current methods based on:
- How big the team is
- Where the team is based
- What kind of regulatory environment you work in and the compliance requirements
- Organisational complexity
- Technical complexity of the solution.
However, good schedule management skills are universal, and being able to break down the work, estimate, ensure work is given to the right task owners, track progress against tasks being completed – all those are fundamental skills. The tools and techniques you use to do them might be different depending on whether you are taking predictive or adaptive approaches.
Your PMO should be able to support all kinds of ways of working, and if they can’t yet, they are probably thinking about how to make sure they can in the future, because more and more PMOs are needing to adapt the way they work to be able to better support agile project teams.
From a financial perspective, you should be able to track the resource cost (and any other costs directly related to scheduling, if there are any) via timesheets or the equivalent way of reporting actual hours worked. This is especially useful if your team is not 100% dedicated to your project. If they are only doing your project, and you’re running on a timeboxed approach, you should easily be able to work out how many hours it took you to get the output from this timebox.
Schedule Management as a Knowledge Area is applicable to project managers working in agile environments. As with all tailoring, you take what you need and adapt to the project, team and processes you are using.
Pin for later reading: