In the Veritas blog series CTRM Project Management Done Right, August Al-Uqdah highlights keys to successful project management. Value is driven by critical factors including expectation management, driving change, and handling the unknowns. Those factors are unique to Veritas and priority of delivering business impact, not just delivering projects. In this blog, we focus on two different standard approaches project management – Waterfall and Agile. Projects can be successful with either approach. The right one depends on numerous factors. We will highlight those factors and present our view on why we lean towards a hybrid agile methodology.
The traditional project delivery method is the waterfall method. At a high level, this approach consists of sequential tasks reliant on the completion of the previous task to take a project from the planning phase into delivery. Large organizations tend to adopt this approach as their standard. Sometimes organizations have a cultural and historical bias towards this type of approach and mentality even when a waterfall approach is not explicitly required.
Waterfall delivery works best and has the most benefit when requirements and the end-state are clear at the start of planning. Success is dependent on some critical factors including:
- Project requirements are clearly written upfront and do not change over time allowing the project team and stakeholders to know exactly what is expected in delivery.
- Clear upfront requirements allow for design to be perfected before any development or building occurs.
- Perfected design means testing is handled relatively quickly and little retest is needed.
However, there are inherent issues with a waterfall delivery when working through the tasks and challenges faced in an implementation.
- It becomes much harder to implement changes to the plan since project planning occurs once at the beginning of a project and does not get revisited later.
- A sense of the lack of transparency develops since broadly socialized status updates are few and far between.
- Artifacts developed at the beginning of the project must be well documented but then tend not to be updated through the life of the project even though things change
An agile project works in almost the opposite way. Where waterfall projects follow a clear and set plan, agile projects are arranged in multiple sprints and cycles. For example, each cycle may be a month long and broken into two different two-week sprints. Here, the project is often planned in smaller chunks, in which various parts of the deliverable are worked and developed in tandem.
There is a common misconception that agile is synonymous with a “figure it out as we go” approach to project delivery. Before we dive into what characteristics define an agile approach, it’s important to keep in mind what “agile is not”.
- Agile projects do not lack a planned approach.
- Agile is not an excuse for the lack of a roadmap.
- Agile is not development without specifications.
Agile delivery works best when planning is still heavily weighted, but the progress is iterative. Characteristics of agile delivery include:
- Have a clear definition of “done” - This ensures that while the path to completion may change and the final deliverable may be different than originally planned, the project team and stakeholders know what to expect within each stage of the project delivery.
- Emphasize on-going planning - Whereas traditionally the focus on planning is upfront, agile implements continuous planning, ensuring that progress is steady and not hindered by any aspect of the project that does not go exactly to plan.
- Understand that change is an inherent part of any project - It provides a set of principles to manage changing requirements as they come up in order to reach the results desired instead of pivoting without reason.
- Right-size the development process - Tasks are reviewed and reassigned before, during, and after each cycle and sprint. The plan is also based on progress and team member capacity. An agile approach to development means that development plans are sized appropriately and are reflective of the correct order and sequence of task completion.
In CTRM System Implementations and other technology projects within the Veritas portfolio, the use of an agile project delivery method is highly valuable. Whereas a waterfall project focuses on reaching the Go-Live target, this agile method of delivery translates into a focus on delivering the best product at the time of Go-Live, reflective of changing requirements and new information uncovered along the project lifecycle. Agile addresses the issues with waterfall delivery since it:
- Allows for changes over time to the plan based on team capacity, blockers, and stakeholder re-prioritization
- Splits the project into successive iterations with fixed time periods (ie. Month-long cycles with two week-long sprints) where the status of tasks are reviewed and the plan shifts accordingly
- Implements continuous improvement in deliverables over time as new information, clarity/answers to open questions, new/removed requirements come to light
- Allows for transparency into team member activities and status updates as well as active stakeholder engagement
The Veritas Approach
There is no “right” or “better” delivery approach. Every project is unique and the delivery approach that is right for that project is dependent on a multitude of factors. At the onset of the project, typically in the planning stages, it is clear what characteristics the project will take on based on the preferred teams working style, how much is known upfront and how much is expected to change during the delivery process. At this point, the team can decide what delivery approach will make the most sense for that project.
At Veritas, more and more of the project work we take on lends itself to the agile approach or a hybrid approach. A hybrid approach combines traditional sequential tasks with iterative cycles for smaller milestones. When working with large and complex organizations, it’s inevitable that changes to requirements will happen during delivery sand a hybrid or agile approach allow for flexibility. Also, most of our projects are so custom to the client’s needs that a more iterative working style proves to be more effective. Again, it’s important to stress that thorough planning still happens in an agile or hybrid approach, we are just better equipped to handle changes as they arise during the project.
While the benefits of an agile and hybrid project delivery method are clear, we don’t expect it to be the catch-all to solve any and all problems that may arise over the course of a project. However, an adopted agile mentality can promote a culture where collaboration, lessons learned and continuous planning lead to the delivery of a high-quality project. In our next post, we will dive deeper into agile delivery and show how, using Azure DevOps, coupled with stand-up scrum meetings and traditional Project Management reports, can ensure an organized and effective project delivery. Stay tuned!
At Veritas Total Solutions, we specialize in CTRM Systems and believe our strong project management skills make us uniquely positioned to help clients through a successful CTRM implementation. If you are interested in learning more about our specific capabilities, contract us to learn more or subscribe to our blog to stay connected.