Lesson 10: Planning
What are the differences in planning predictive and adaptive projects?
- 00:05 – Okay. So, in your opinion, what’s the difference in planning between a Predictive system and an Adaptive system?
- 00:16 – And I’m asking this because there are many people out there, both those who are against Agile and those who are in favor of Agile, who think that Agile is a type of project delivery where we don’t have any type of planning, which is not correct.
- 00:35 – In a Predictive system, as we talked about before, we predict everything, which means that in the beginning of the project, we try to understand what type of product we’re going to have and how we are going to create that product, which is Planning.
- 00:51 – However, it doesn’t mean that we plan something and we don’t change it after that.
- 00:58 – Any type of plan needs to be updated all the time. It’s a dynamic concept.
- 01:05 – There are many projects where people create a plan in the beginning and then print it, put it on the wall, and they don’t touch it anymore.
- 01:12 – That’s not the type of plan that we are thinking about because there are always things that change in the real world and those deviations and changes have to be reflected to the plan in order for the plan to show us the new path towards the final product that we have in mind.
- 01:33 – So, still we have a lot of planning in the beginning of a Predictive project and then later on, the amount of planning is much, much lower but it’s still there.
- 01:46 – So, that was it about the Predictive system, but when we have an Adaptive system, we don’t have that really huge upfront planning, detailed upfront planning.
- 01:58 – What we have is some amount of planning in the beginning of each Sprint, or each iteration, if you want to use a more generic term.
- 02:08 – And still there is something here that we should talk about.
- 02:12 – When it’s about Scrum, we don’t really have any type of upfront planning, almost don’t have any type of upfront planning, but in some other Agile systems such as DSDM, we do have upfront planning, and DSDM in case you don’t know, it’s one of the first-generation Agile methods.
- 02:33 – The upfront plan that we have in DSDM is high level; that is the difference.
- 02:40 – If you want to make it detailed, then it’s not Agile anymore because as you remember, an Agile project is one where we move on with the project, we create the product, try to understand how the customer and the end-user are interacting with the product, and based on that, we learn and make changes and adapt. That’s Agile.
- 03:03 – So, if you define all the details, then there’s no room for adaption; it won’t be Agile anymore, but regardless of systems such as DSDM where they have a high-level upfront plan, in something like Scrum, we have this.
- 03:22 – We have a little bit of planning in the beginning of each Sprint, and similar to the Predictive systems, it doesn’t mean that we don’t have any other type of planning towards the Sprint.
- 03:34 – We still need to adjust our plan, and do you remember what … what’s the name of the plan for our Sprints?
- 03:44 – That’s called the Sprint Backlog. That’s where we pick the items from the Product Backlog, we put them there, and what is the type of continuous planning that we have in Scrum throughout the Sprint?
- 03:59 – In the middle of the Sprint, for example, how do we refine our plan?
- 04:05 – As you remember, I told you that besides the items that we bring from the Product Backlog, we also have Tasks, and we don’t create all those tasks in the beginning of the Sprint because that would be a type of detailed upfront planning, upfront according to the Sprint, not the whole project.
- 04:26 – So, we create the tasks for only a few items in the Sprint Planning, and then throughout the Sprint, we add more tasks as we need.
- 04:35 – That’s the continuous part that we have here. So, that’s it.
- 04:40 – We have planning in both types of project delivery, but the planning is different, but it is absolutely necessary for both of them.
- 04:51 – If you don’t have a plan, you don’t have a proper project. Okay?
- 04:58 – So, as you see here, anyway, the amount of planning is lower for Agile projects, but we have something else instead of planning that helps us find our way. Do you remember what it was?
- 05:12 – That’s Adaptation. That’s where we receive feedback and use that to find our way.
- 05:20 – That’s really a combination of planning and adapting, planning and adapting.
- 05:25 – What about Predictive systems? We also have adaptation in Predictive systems.
- 05:31 – We’re always working in the context of our environment and we need to make changes.
- 05:39 – For example, let’s say you’re building a building, and then you’re supposed to use a certain material but in the middle of the project, you realize that the manufacturer doesn’t exist anymore.
- 05:51 – So, you have to use another material and you have to change some other things based in this, and all of these are adapting to your environment.
- 06:04 – Maybe different from the type of adaptation that we have in Agile, and the level of adaptation is absolutely lower, but it’s still there.
- 06:15 – Okay. So, these are the differences, and just to remind you, in a Predictive system, the real working piece of software or product, whatever it is, will be available at the end of the project, while in an Adaptive system, we have multiple … do you remember the term that we used?
- 06:38 – Multiple increments of the product throughout the project, and that’s what we use for our Adaptation.
- 06:46 – Well, to be absolutely accurate here, still in a Predictive system, you can have multiple phases, multiple stages, and create pieces of working product in the middle of the project, that is possible, but still that’s like breaking one big Predictive project down into three or four smaller Predictive projects.
- 07:12 – That doesn’t turn it into an Adaptive project.
- 07:16 – One of the things that we have in Agile where we think about planning is the concept of the Cone of Uncertainty.
- 07:27 – The Cone of Uncertainty. That’s the fact that in the beginning of the project, we have more uncertainty and as we go on throughout our project, we will learn more about the product and the project and its environment, and we will have less uncertainty, and the problem that people who are into Agile are always pointing out is that in a Predictive system, you are creating the plan where we have the maximum uncertainty and that is the reason for the problems that we have in Waterfall projects.
- 08:08 – There are, it’s not as easy as that, okay?
- 08:13 – As you have realized probably, I’m not the type of person who says that Waterfall is crazy, Agile is great.
- 08:20 – Each of them is good when it’s used in its appropriate type of product.
- 08:26 – What happens in a Predictive system is that the amount of uncertainty that we have also depends on the type of product that we have.
- 08:35 – You can never, never compare the amount of uncertainty that we have for software, for a piece of software, to the amount of uncertainty that we have, for example, for a hospital.
- 08:47 – You don’t have that amount of uncertainty. You know what you’re going to create, and you know the relationship between the product and the expectations. That is one point, and still what I’ve shown you here is an extremely simplified form of a Predictive system where the whole detailed plan is created upfront.
- 09:13 – In PRINCE2, for example, what we have is that in the beginning you create a high-level plan and then you have multiple stages, and in the beginning of each stage, you turn that high-level plan into a detailed plan for that stage, not for the whole project, and that’s because PRINCE2 believes that you can’t predict everything in detail for longer than a certain time. It’s almost the same concept as here, but the difference is that that type of gradual detailed planning is not entirely based on the adaptations that we have in Adaptive projects, Agile projects.
- 09:57 – Okay. So, that was it, and I really hope that you could understand the real nature of these two types of delivery based on their planning.
- 10:09 – Now, one very controversial question. Can we use Agile in every type of project?
- Is it alright to have upfront plans in Agile?
- Again, what are the two types of elements in a Sprint Backlog? How are they defined during the Sprint?
- What is the “cone of uncertainty”?
Optional Extra Activities
- Did your colleagues like the session that you had before? If so, get together and talk about the different types of planning in the two development lifecycles, and their practical consequences.
- Lookup “progressive elaboration” and “rolling-wave” planning.
- Have you heard of the book “The Lean Startup”? It’s a good explanation of how to use adaptation in startups. It’s also available as an audiobook, in case you don’t have enough time to read the printed version.
Here you can submit your questions related to the content of the course. (For other questions, use the support system). The trainer's reply will be email to you in 48 hours.
This lesson is part of the first 30% of the course, which is available for free, even without registration.
You can purchase the course to access all lessons, additional material, and coaching:
More info and purchase options