WHICH PROJECT METHODOLOGY IS RIGHT FOR YOUR TECHNOLOGY PROJECT?
Peter Tylee
Professionally delivered software projects. On-time. On-budget. Above expectations. We solve your software problems ? Fully-managed ? Outsourced ? Project Delivery Specialists.
If you’re about to embark on a development project, chances are your development team will want to discuss which project methodology you want to employ. If this seems like a foreign language and you have no idea what the different project methodologies are, let alone which will suit your project, here is an overview of the most popular methodologies and some tips on how to choose the best one for you.
WHAT ARE THE DIFFERENT PROJECT METHODOLOGIES?
Essentially, a project management methodology is a system of principles, techniques and tools used by developers to plan, execute and manage projects. The most common options when it comes to software development are the Waterfall approach, and one of the many Agile approaches such as Scrum. Some organisations may also choose to employ a hybrid approach. So, what exactly is Waterfall, Agile and Scrum, and how do you know which one is right for you?
WATERFALL
The Waterfall approach is a traditional approach to software development, in which developers build the software all at once. It is considered the most straightforward and popular version of the system development life cycle (SDLC).
Under this approach, developers will start by compiling all your needs and requirements as thoroughly and comprehensively as possible, then build the software entirely before releasing it at the end of the project cycle.
This linear approach requires each task to be completed, reviewed and approved before your development team can move onto the next one. This means that you cannot skip ahead, go back a step, or make any changes without having to start the entire process again right from the beginning. Accordingly, to be successful, the Waterfall method requires significant upfront planning. It’s best suited for simple projects with clearly defined goals and requirements that won’t change.
Benefits of the Waterfall Methodology
The biggest drawcard of the Waterfall method is?budget certainty. Waterfall projects should come with a set fee and a set deadline. However, it’s important to note that Waterfall projects often attract higher fees, due to developers wearing the risk of things going wrong and having to start over.
Other benefits of the Waterfall methodology include:
Downsides to the Waterfall Methodology
The most obvious issue with Waterfall is its?inflexibility. Whilst you’re guaranteed budget certainty, the outcome is locked in stone and if any changes are needed the whole project can grind to a halt. Adding or altering features once the project has commenced can be very difficult and expensive as potentially the coding needs to be started from the beginning again.
Additionally, because your developers will only be able to start writing code after several phases of the project have been completed, you won’t have the opportunity to review anything until later in the project. This is especially problematic if the project’s requirements weren’t clearly identified at the outset. If you’re doing something new and innovative it can be difficult to ascertain exactly what features you want and need early in the project.
AGILE
An alternative to Waterfall is the Agile approach. Considered a philosophy, the Agile approach is an umbrella term for a number of methodologies that focus on iterative and incremental development.
The Agile approach is based on a document called the Manifesto for Agile Software Development, known in the industry as the?“Agile Manifesto”. It was produced by seventeen representatives from various programming and development backgrounds in 2001, and outlines four key values and twelve principals to guide software developers. The creators of the manifesto were looking for an alternative to traditional software development processes which they believed were complicated and unresponsive. They believed that, while planning is important, it’s important to take into account the fact that plans change and therefore flexibility is needed to achieve the best results.
Under the Agile approach, developers work in cross-functional teams to create software incrementally over multiple stages, resulting in multiple new releases of software following brief periods of work, known as ‘sprints’. One of the most important aspects of the Agile approach is working closely and constantly with the people who will be using the software.
The Agile software development cycle involves meeting, planning, designing, developing, testing, evaluating and then repeating this process over and over again.
Benefits of the Agile Methodology
The biggest benefit of the Agile methodology is its?flexibility. You don’t need a full set of technical and functional requirements when starting the project, and due to its iterative nature, this framework allows you to change your requirements throughout the course of the project. So, for instance, if you identify new features or functionality along the way or realise that what you’re developing isn’t quite right or fit for purpose, you can make changes without having to start all over again as you do under the Waterfall approach.
Other benefits include:
领英推荐
Downsides of the Agile Methodology
The trade-off of Agile’s flexibility is that you?don’t get budget certainty. Your developer can estimate the number of sprints to give you a budget range, but you aren’t guaranteed a price. If new things are discovered that weren’t included in the estimate, your budget runs the risk of blowing out.
Other cons of the Agile methodology include:
METHODOLOGIES UNDER THE AGILE UMBRELLA
There are a number of different methodologies including?Scrum, the most popular Agile framework, as well as Kanban, Extreme Programming (XP) and Lean Startup.
SCRUM
Scrum is an Agile methodology that takes an incremental approach to complete projects faster. Seen as a rigid plan-oriented process within the flexible Agile framework, Scrum operates through ‘sprints’. Sprints are short timeframes intended to complete certain work which must be potentially releasable and therefore fully tested and approved by the end of each sprint. These sprints range from one week to up to one month and occur one after the other, with no breaks in between. Each sprint starts with careful planning, and finishes with both a sprint review and a sprint retrospective which look at the work completed and how the team worked together.
Cross-functional teams are led by a Scrum master who facilitates rather than manages the work and who will work closely with you throughout the project cycle. Having no manager means each team member is highly accountable, and the team’s success depends on the five core values of Scrum: commitment, courage, focus, openness, and respect.
Scrum meetings are held regularly to check in on the progress, review the work, discuss upcoming tasks, and discuss any potential issues or obstacles that may be hindering the project. These meetings are designed to ensure the team is working collaboratively and that everyone is on the same page at all times.
Scrum uses something called a ‘burndown chart’ during sprints, which allows team members to readily keep an eye on progress. Updated regularly, these charts display work left to complete allowing team members to focus on the work going forwards.
The Pros of Scrum Project Management
The Cons of Scrum Project Management
HOW TO CHOOSE THE RIGHT METHODOLOGY FOR YOUR PROJECT
As you can see, each project methodology takes a very different approach but has the same end goal: to complete projects as effectively as possible.
Accordingly, the best project management methodology for you very much depends on the circumstances of your project. There is no one-size-fits-all approach, and the best modality for your project will depend on a number of factors including the size and complexity of your project, the experience of the team, available development capital, and your delivery deadline.
Questions that can help you decide include:
Ultimately, if your project is well-defined with a clear set of requirements and budget certainty is a top priority, the Waterfall approach may be your best option. However, if your project is more complex and less certain, or is likely to change rapidly, an Agile approach such as Scrum may be a better fit.
To decide on the best approach for your project, get in touch with GistLens today for an obligation-free assessment.
Senior Managing Director
1 年Peter Tylee Thanks for sharing this insightful post. I agree with your perspective on this topic.