Choosing the right project management methodology
The number of project management methodologies available today may seem overwhelming and it can be difficult to choose the right one. Unfortunately, there is no “one size fits all”.
Each approach has its own processes, techniques and best practices. Each approach also has its strengths and weaknesses.
What is certainly clear is that the current and growing trend is Agile. At Enhanceddpm, we are well-versed in Agile processes; however, we are also comfortable with more traditional and less adaptive approaches. We recognize that not all projects are the same and that different solutions are required for different situations.
Choosing the approach that best fits your project depends on a number of factors that include:
- Strategic goals
- Project cost
Achieving project success is complicated with many stakeholders and objectives to satisfy – delivering a successful project is certainly not just about time, cost and quality. It’s also about meeting stakeholder and strategic expectations. Maintaining tight control throughout the project is essential and choosing the right approach makes it easier to achieve success.
Being able to adapt quickly to evolving needs is essential for large complex projects. Adaptability is a key trait of Agile, enabling teams to change direction with minimal cost impact.
All Agile methodologies apply an incremental and iterative approach to software development. Through cooperation and collaboration along the way, continuous improvement comes for free. The end product gives real value to end-users and ultimately maximizes the business’ return on investment.
If your project is to be delivered in a fast moving and change-driven environment where creativity, trust and transparency are all equally important, then Agile is a great choice.
Dynamic Systems Development Method
In the real world, a single Agile approach does not always fit. The DSDM® Agile Project Framework provides a way to blend elements from different methodologies.
DSDM® is extremely useful in capturing the entire lifecycle of a project. Unlike other methodologies such as Scrum, it incorporates more than just software development and covers project initiation and feasibility phases.
In the traditional management approach, scope is fixed while time and cost are variable. With an adaptive approach such as DSDM®, scope is the only variable.
With the help of the following key practices, DSDM® projects always deliver a viable solution, on time and within budget:
- facilitated workshops
- modelling and iterative development
- MoSCoW (Must Have, Should Have, Could Have, Won’t Have This Time) prioritization
- timeboxing work into short focused delivery sprints
There are eight principles that underpin the DSDM® approach:
- Focus on the business need
- Deliver on time
- Never compromise quality
- Build incrementally from firm foundations
- Develop iteratively
- Communicate continuously and clearly
- Demonstrate control
Scrum is a powerful and transparent framework that enables teams to deliver products in short iterations known as Sprints. This facilitates rapid feedback, continuous improvement and cheap adaptation.
Lightweight and simple to understand, it has become one of the most popular Agile methodologies used today.
Scrum teams are creative, self-organizing and cross-functional. They incorporate three key roles: the Product Owner, responsible for maximizing the value of the product and managing the road-map (known as the Product Backlog); the Development Team, responsible for creating and delivering a production-ready product increment at the end of each Sprint; the Scrum Master, responsible for planning each iteration, facilitating and removing all impediments to the Development Team’s progress.
Scrum prescribes formal events to allow continuous inspection and adaptation. These events are collaborative and include sprint planning, reviews, retrospectives and demos. The development team also has a daily time-boxed meeting or Scrum to review progress towards the Sprint goal. As part of the daily Scrum, three key questions are asked of each team member:
- what did you do yesterday?
- what will you do today?
- are there any impediments in your way?
Various metrics are used in Scrum to measure productivity and for estimating the total effort a team is capable of producing in a sprint. Visual charts are also used for tracking progress and for providing visibility to all stakeholders.
A core set of values form the foundation for all Scrum processes and interactions:
At Enhancedpm, we have applied Agile Scrum successfully on a number of complex software projects. We provide both product owners and scrum masters to our clients.
Kanban originates with Toyota as a means to improve and maintain a high level of production in its manufacturing operations. It is a visual process-management system with an emphasis on just-in-time delivery.
Kanban, unlike Scrum does not have predefined or prescribed iterations. Work in progress is determined by the “pull principle”, where self-organizing teams pull tasks from a backlog of work. For long-term planning, buckets are used to prioritize and group work into 1-year, 6-month and 3-month periods.
Four basic principles form the foundations of Kanban:
- There are no prescribed roles or processes – Kanban is a change management method that starts with existing processes.
- The team must agree to pursue incremental, evolutionary change.
- Current process, roles and responsibilities must be respected.
- Leadership should be at all levels.
A Kanban board is one of the visual tools used to implement the Kanban method and is essential for visualizing workflow and limiting work-in-progress. At Enhancedpm, we employ Kanban boards regularly for warranty and maintenance phases of software projects. Kanban boards are also applied to Scrum for managing work in progress for the current Sprint.
The simplest Kanban board consists of three columns: “to-do”, “in progress” and “done”. Each prioritized item of work corresponds to a sticky note or card in one of these columns. The team pulls work from column to column and the project manager monitors progress as cards move around the board.
Scrumban is a hybrid approach that combines Scrum and Kanban.
It inherits the non-prescriptive approach to planning from Kanban where work in progress is determined by the “pull principle”. From Scrum, it takes the formal events such as the daily Scrum, planning meetings, review meetings and retrospectives to identify ways to improve.
Just like Kanban and Scrum, a Kanban board is used to visually control and monitor work in progress. Scrumban is very useful for teams that need to adapt to changing needs while not being overburdened by project methodology.
Traditional waterfall approaches
The waterfall model is a popular version of the systems development life cycle model for software engineering. Often considered the classic approach to the systems development life cycle, the waterfall model describes a development method that is linear and sequential. Waterfall development has distinct goals for each phase of development. Imagine a waterfall on the cliff of a steep mountain. Once the water has flowed over the edge of the cliff and has begun its journey down the side of the mountain, it cannot turn back. It is the same with waterfall development. Once a phase of development is completed, the development proceeds to the next phase and there is no turning back.
The model is so-called because each phase of the project lifecycle takes place in sequence, where the output from each phase flows into the next. More importantly, all requirements gathering and design work is done up-front before any development takes place. Unlike with Agile, changes are tricky and expensive to implement later on.
The model is a good fit for projects where expectations and requirements are well-known and fully defined from the outset. The approach is very structured and it’s easy to measure progress against clearly defined milestones.
Structured project management is ordering the project into defined steps to make it logical and organised. PRINCE2 is the written description of this approach. We know from experience that unorganized, poorly controlled projects usually go disastrously wrong. London Ambulance and Channel Tunnel experienced system failures and huge overspend. Structured project management methods exist to prevent such disasters. The PRINCE2 framework says that a project should have:
An organised and controlled start, i.e. organise and plan before leaping in. An organised and controlled middle, i.e. keeping projects organised and controlled. An organised and controlled end, i.e. when you’ve got what you want and the project has finished, tidy up the loose ends. To describe what a project should do and when, PRINCE2 has a series of processes. These cover all the activities needed on a project, from starting up to closing down.