– Back to the Agile Practice Guide (all) –
Project Lifecycles: The Agile Practice Guide
Do you know the different types of project lifecycles you can use to manage your project, develop a product, or bring a change about in a company?
The Agile Practice Guide goes into four main project lifecycles: Waterfall, Incremental, Iterative, and Agile. There is also “Hybrid” – a combination, which many companies end up using.
Check out the video for details on them now!
There are Many Different Project Environments
In the video, we’re looking at the different types of project life cycles and when we might need to use them. The reason we’re doing this is because there are many different types of projects, different environments they operate in, and projects are often very different.
We might have different organizational structures – for example it might be PMO controlled or it might be functional manager controlled, it might be just within one team or within many departments. There are different life cycles involved in how to manage those projects, there are different management styles, different sizes, different customer needs and requirements, different products or outputs, and the list really does go on.
You might also have co-located teams or dispersed teams you might be governed by a supportive, controlling or directive project management office, or the functional manager of a team. Your sponsor or customer might want daily reports, weekly reports, or they may just have a completely hands-off approach and want you to do the work and report in once it’s done. You may have more than one customer group receiving the benefit of the project which can really complicate things, and of course the project may be technically simple simple or technically complex.
Now all of these things combine into what we look at as the project having easily definable work or high uncertainty work and that’s the difference where the different life cycles and the ways of managing a project comes into it.
The difference between definable work and high uncertainty work is with definable work we’ve got clear procedures, it might be similar to past projects so we really know what to expect, we’ve done it before and we’re happy. We can just go along the steps until we get to that end and everything is great. This might be the production of a car because you know the design and everything is laid out – it just goes along that production line nice and simple, following the steps. You might be creating an appliance or home in the same way just following those steps, nice and simple – it’s definable.
High uncertainty work on the other hand has high rates of change and it has high rates of complexity and risk. This is where things are just not certain so we don’t have a step-by-step approach necessarily. In other words we’re looking at new businesses – start-ups, or problem-solving engineers or system engineers, product designers because you know the requirements are not set in stone. We’ve got doctors who need to problem-solve, lawyers and teachers – all of whom need to do high uncertainty work and problem solving in their day to day business.
Looking at this on a chart, on the bottom left hand side we’ve got low uncertainty – so we’re very certain of this scenario. We’ve also got low technical challenges so it’s fairly technically easy to create this – it’s a simple project and it’s a linear approach where we can just go step by step by step. This is your typical Waterfall approach where all of the scope is created upfront and then we just go through the normal steps and maybe have a few things that we need to adjust but overall we get to the end and it’s happy days.
Now of course on the other side we’ve got high uncertainty and we’ve got high technical challenges, and then the work becomes more complex so our adaptive approaches work well here – adaptive being the Agile approaches that we’ll be looking at. This works in a more complex world where you know things will change the requirements might change, needs might change, and the technical environment might even change as well. We’ve got really high technical challenges and it does result in chaos – and this is really a fundamentally risky type of project to be doing in the first place and it often won’t matter what approach you’re taking, but an Agile approach will work better – usually because you’re able to adjust as the environment changes which is very important.
Matching that chart up to to the different types of ways that we can manage a project, we’ve got our Predictive approach – so that’s our Waterfall approach in that low uncertainty area. So we’ve got nice high certainty, we don’t need to deliver very often so we only need to deliver once or twice over a long period that’s great. And the degree of change is very low as well and that’s our waterfall approach. Its predictive, we can do everything up front and we can go all the way to the end in steps and it’s not a big deal.
Now if we’ve got a high degree of change then an Iterative approach will work better and that’s where we’re iterating the product. So we’re building the product and then we show the customer, and then we add in the changes that they want and then we do it again and we’re iterating towards exactly what they want as the outcome. But we’re not necessarily delivering it yet.
If we’re delivering on a regular basis that’s where we’re delivering increments that the customer can see feel touch and actually use. Usually this will work hand in hand with an iterative approach so we’ve got our two to four week iterations or time boxes of work where we’re getting that feedback every two to four weeks, and then we’re actually delivering something as well that the customer can see, feel, touch and use.
Now when we combine the incremental and the iterative approach that’s where we have Agile, and we would often need to do that if we had a high frequency of delivery and we also have a high degree of change, whether in the requirements of the product or the environment.
Looking at those different types of life cycles, the predictive life cycle there’s a traditional waterfall approach where the bulk of the planning is done upfront and then it’s executing that project in a single sequential process nice and easy.
Iterative as we were saying is that approach that allows for feedback for unfinished work to improve and modify that work so you know where we’re building on that product every two to four weeks, every iteration, and we’re iterating towards what the customer will want even though we’re not releasing it yet.
Incremental is the approach that provides finished deliverables to that customer so the customer can use them immediately, so maybe we’re iterating every two to four weeks but we’re also delivering something that the customer can use on that regular basis as well.
And lastly the Agile approach is the approach that uses both iterations and increments so we’re refining the work items and we’re delivering frequently as well and those are the different types of life cycles from predictive or waterfall through to agile in project management.
– Back to the Agile Practice Guide (all) –
Get the Leadership Card Deck:
View All The Leadership Cards (48)
- or - Have the Leadership Cards delivered for your next meeting
Want to learn about Lean? Get the book "Five Minute Lean", by David McLachlan - a wonderful book that blends teaching of the tools, culture and philosophy of traditional Lean with a modern-day Lean parable. You can get the whole book on Amazon here and enjoy your own copy.