4 management strategies for successful software projects
Tuesday, June 02, 2020 - Mark Dyer
#1 – Executive Sponsorship
Executive sponsors continue to be the top driver of whether projects meet their original goals and business intent.
75% of respondents admit that their projects are either always or usually “doomed right from the start”
An effective executive sponsor understands how the project aligns to the overall business strategy and is able to keep all stakeholders focused on this vision. He or she has an understanding of the project detail and can remove roadblocks, support the project team in making quick decisions and influence the executive leadership team.
When it comes to timely and effective delivery of software development projects, a key role is in upwardly managing projects. Ensuring that the business benefits are clearly understood at board level and that appropriate resources (in people and budget) are allocated to meet the intended outcomes.
The executive sponsor plays a critical role in gaining cross-company buy-in in the implementation and roll-out of new software.
Developing effective executive sponsorship may require a cultural shift, where this role is seen as a critical project resource and recognised as added value. For many organisations there is a need to clearly define the role of the sponsor, align expectations with the project team and be realistic about time and resource commitments from the sponsor.
Importantly the role of sponsor is to enable the project team to deliver the project outcomes rather than steward projects to completion.
#2 – Empowered Project Owners
Project failure is due to lack of ownership or clear objectives, rather than lack of project talent.
46% of CIO’s say that one of the main reasons IT projects fail is weak ownership
Ownership is not just about tasks and activities being completed accurately and on time. It's about accountability for outcomes pertaining to the business benefits of projects.
The skills that IT project managers need are evolving. From time, scope and scheduling skills, to becoming leaders and owners in their organisations; asking the right questions, responding to change, delivering rapid results and focusing on the business benefits of the projects they manage. Projects need to be led by highly disciplined and skilled project owners.
As such, the project owner needs to be empowered to make decisions such as prioritising project needs (scope, budget and time) and prioritising and sequencing the backlog according to business value or ROI.
Fully owning the backlog means that a team can avoid producing outputs that do not add value to the desired project outcome. The team can instead work on valuable changes and avoid wasting time debating whether an option is valuable or not based on limited information
It may also be important to encourage code ownership by giving developers primary ownership of portions of the code base and not allowing other developers to change that code without approval from the primary owner. In doing so, you can not only increase productivity of individual developers, but also highlight weaknesses within teams.
#3 – Transparent Communication
Organisations that are minimally effective communicators report significantly fewer projects that meet original goals.
20% of projects are unsuccessful due to ineffective communications
Despite the clear benefits of effective communication, many organisations do not place adequate importance on it within project delivery. Few project teams set out to communicate poorly, and many challenges can be easily resolved with the right approach to communication.
Create a culture of collaboration within the project, founded on transparency, trust and ongoing dialogue. Sharing relevant information in real-time ensures decisions can be made more quickly, enabling the project to progress at pace. When working with an external software development company, ensure the same values of open and transparent communication are upheld.
Complex projects can involve distributed teams with a high degree of stakeholder interdependency. So, avoid using email, spreadsheets or multiple channels for maintaining and sharing information. Use project management software to store and regulate key information such as timelines, budget, and documentation, and use a collaboration tool for ongoing project communication, status updates, dashboards with real time performance indicators, best-practices and lessons learned.
It is important to balance formal and informal communication. A clear communication strategy adapted to different stakeholder needs, weekly or bi-weekly check-ins and defined reporting and change management practices play a role in enabling communication. However, especially in agile delivery, information sharing and communication needs to happen in real-time, rather than being defined by formal communication channels.
#4 – Tackle Risks Early
All projects are inherently risky, because all change involves risk.
32% of IT project failure is due to poor estimation during the planning phase (the largest contributor to failure)
Executive teams expect project teams to plan for all of the variables in a complex project in advance in order to minimise risk. However, while some risks can be planned for, many risks cannot be anticipated ahead of development.
According to Harvard Business Review there are 3 types of risk in software projects:
The risk that planned activities won’t happen correctly.
The risk that all the different work streams won’t come together coherently at the end.
The risk that key activities needed for a projects’ success aren’t identified in advance, leaving gaps in the project plan.
Execution and integration risks can usually be identified, but are often not addressed quickly. With these risks, the earlier they are resolved the more likely the project will succeed.
The bigger challenge is in managing white-space risk. After all, how do you prepare for an undefined task, that you are not yet aware of?
The solution lies in changing the way projects are planned and delivered. An agile approach software development projects involves short development iterations, rapid prototyping and a feedback loop informing the next iteration. Taking a modular approach to bespoke software projects helps to uncover both white space risks and integration risks in real-time. The key to managing any risk is to get something working as quickly as possible, test and refine.
People want to use accessible, intuitive technology that achieves specific results efficiently and effectively. If they can’t do what they want to do with minimal effort, then the usability has failed…