The best-laid schemes o’ mice an’ project managers
Surveys over a number of years consistently report that at least 50% of all software development projects are over budget or behind schedule. The question of “Why?” has been posed many times.
The reasons usually cited include; inaccurate estimation, poor project planning, failures in communication, ambiguous requirements, scope creep, unmanaged risk, inadequate development rigour, lack of sufficient testing; the list goes on and on. Less frequently mentioned though is that at the heart of these failures is the inherent uncertainty of projects themselves – projects involve complex human, hardware and software relationships and so even those with firm foundations will encounter unexpected issues which rely on the experience, skill and judgement of the project manager and the wider team. Given this uncertainty, and the large number of plates to keep spinning, it is inevitable that the risk of one or more falling is high.
Thankfully there are sound project management methodologies which, if applied well, help to minimise this risk. Rather than focus on these well documented tomes it is worth reflecting some lessons learned which will be familiar to many experienced project managers.
- Scope it right
Too often a project is sunk before it starts. Be realistic, or even pessimistic, and make sure there is sufficient contingency in time as well as budget. Be clear to stakeholders about this contingency and resist pressure from the business to sign up to unrealistic deadlines – it will avoid later disappointment.
- Start as you mean to go on
Make sure the team and stakeholders are clear from the outset on the scope, delivery approach and change management process. If available, thoroughly review the business case and be clear on how project outputs contribute to the wider business. Yes, such things are in your project documentation but a productive kick off meeting that informs, motivates and sets the tone is a great way to start.
- Be courageous
Be open with risks and issues and bring stakeholders with you. If there is bad news, be realistic with any required re-planning to avoid going back again and again to move dates. Confidence in the project and you, as project manager, will suffer if you don’t. Where possible use current production metrics to drive any revised forecasting.
- Avoid false economies
Allow sufficient bandwidth for activities such as QA (code reviews, design reviews) by explicitly including availability in your plan for team leading, reviews/updates and mentoring. Cutting short on quality in design and development to meet deadlines usually means testing and bug fixing bears the brunt. It is cheaper to prevent bugs than to fix them.
- Manage change
Even with good change management processes in place to avoid scope creep there is inevitably a distraction factor for key technical and managerial resources. Don’t forget to factor in impact on any in-flight baseline delivery, especially if you don’t have dedicated change authority resources.
- Make decisions
Avoid procrastination. Inevitably with hindsight the difficult decisions are usually ones you wish you’d made earlier. Decisions and actions should be clearly documented, publicised and maintained.
- Manage and maintain expectations
In a project the journey is as important as the destination. Decisions made openly and frequently are joint decisions and can make an otherwise failed project a qualified success.
- Live and breathe risk management
All too often risk management starts and ends at registering the risk. Be visible and walk the project floor to share risks and issues with key team members. Openly question whether your mitigation and containment are adequate.
- See the wood and the trees
It is easy to be drawn full time into the often emotional and intense side of delivery. Give yourself time as project manager to look ahead and clear the road of potential obstacles. Practically, this could mean spending a day a week working from home or in a different office.
- Lead and listen, not led
Projects are uncertain and difficult. As a project manager you often need to orchestrate resolution of the tensions that arise between the business, IT and delivery teams to avoid being steered off-course. Don’t lose sight of the original project objectives but at the same time be open minded and pragmatic about whether those objectives can be adapted and still deliver the required benefits.
Despite the challenges in project delivery there are plenty of processes and techniques to help you manage these. If you put these in the hands of an experienced project manager, and accept the certainty of uncertainty, then you can be hopeful, if not certain, of tipping your project into one of the 50% that succeed.