Every project has some degree of risk involved. The risk could have a high to low impact on the project. The risk could be positive or negative, helpful or harmful and internal or external. How you plan for risks in your projects determines what will happen should a risk arise that needs to be prevented, mitigated or dealt with.
Similar to Waterfall projects, in Agile projects, risks need to be identified and managed. Below discusses common risks that arise in Agile projects and how they can be dealt with.
When it comes to features in software development, it is very easy to get scope creep. If requirements are not properly defined from the start, when features are being built there’s a good chance new additions that were not originally agreed on will slip into the mix.
Here’s how to prevent that from happening:
- Prepare a clearly detailed scope of the project
- Define requirement specifications and acceptance criteria
- Get the stakeholders to sign off on this scope agreement
- Determine what requirements need to be involved in the phase you are working on vs. future phases or versions.
- Develop and implement a change control process that the stakeholders are aware of and agree to
- Monitor the project progress against the scope
Examples of specific issues in Agile that affect the project scope:
- Lacking details in task descriptions – make sure all details are present and clear for the team so they know exactly what they are creating. The best way to write these out are in the form of user-stories or technical requirements
- The product owner keeps changing their mind or adds on new features as the team progresses – while the product owner is in charge of making sure the project requirements are being met, they also need to be made aware whenever they request work that deviates from the original plan
- Priorities or directions change – sometimes stakeholder priorities or the direction of the project changes and thus, features that were not originally planned take top priority over the others. When this happens, it’s important to make sure the stakeholders understand the impact this will have on the project scope and even the timeline and budget.
Another important aspect of a project is the timeline that is set for it. This timeline can be determined based on the number of available resources to do the work and the amount of effort it will take to meet the requirements of the project. Like any schedule planning, things can go awry that may delay the progress of a project causing it to finish late or sooner than planned. However, we will focus on the more undesirable outcome of the project being late and suggest these ways to prevent that from happening.
When planning a timeline, give yourself padding for error. That means:
- Factor in the possibility of holidays – staff or the client may take extra off days
- Plan for unexpected sick days – make sure every resource has a backup buddy to cover for them
- In the event a team member leaves or is let go, have another resource lined up to fill their place
- Have plans in place for team members that may struggle to get the work done due to complexity, lack of motivation or other factors
- Factor in other possible delays such as emergencies that can hinder production, even by a day
- Account for the fact that there will be delays in approvals – add those windows for your clients to give them at minimum 24 hours to get back to you
- There are very rare occasions where things are approved on the first iteration. Allow time to accommodate a few rounds of edits
- Allow time for testing and QA
- Give yourself that extra padding for the unknowns and force majeure
Examples of specific issues in Agile that affect the project schedule are:
- The agile team may over or underestimate their tasks – as time goes by, the team should be more confident in putting their estimates in place.
- The sprint goal is not met or changes mid-sprint – the team needs to have a clear understanding of the sprint goal and commit to the tasks they will be performing in the sprint
It is always better to have prevention, mitigation and action plans in place.
Most importantly, always communicate to the client the moment you know that you will be running late on deliverables.
Very tight timelines give almost no margin for error. While we would like to run a project 100% smoothly with no interruptions, the reality is we need to plan for the worst but aim for the best outcome possible.
If the true effort to do the work is accurately determined, this can be used to estimate the budget based on hours and resources. Quality and value are also other factors that can be considered for a budget estimate. Creating the budget and tracking the cost throughout the project progress is important. On occasions where a project may be running over budget may indicate that there was scope creep, poor planning, bad development or other factors that resulted in an increase in cost over what was originally estimated. Being too far under budget may also indicate that there were things missing from the project that should have been done, or the customer was overcharged.
There is a balance that needs to be walked when dealing with a project budget. While you do need a reserve for unknown issues that may come up, you also need to keep track and account for everything.
When planning your budget, take into account these risks and how to prevent them:
- Underquoting or over quoting – if you are not 100% confident in your numbers, ask for input from subject matter experts who know more details about the line items you are unsure of.
- Not having a reserve – if you quote the exact cost for a ‘perfect world scenario’ chances are you would more than likely fall in the underquoting category which in turn will cause you to lose money. Always make sure you are accurate, but also be sure there is security added as well for protection.
- Scope and timeline issues – there should be action plans in place such as how to handle the costs of change controls, delays and other circumstances, whenever something changes during a project’s progress that will affect the budget.
Many of the factors that can affect a budget come back to making sure a proper scope is defined for the project. This is the first step in determining a proper budget can be put in place without many gray areas.
Once you are able to identify risks in your project and put plans together for them, you will be in a better position to handle these risks to ensure a higher probability of project success.