We have all worked on projects that we had high hopes for, but didn’t quite turn out as we would have liked. We aim for the perfect outcome: on time, on budget, within scope, and one that results in a satisfied client. When we fall short of those expectations, we feel as though the project has failed. There is a multitude of data and supporting articles that explore the failure rate of software projects as well as the reasons they fail. According to (Budzier, 2011):
- “67% of companies failed to terminate unsuccessful projects”
- “61% of managers reported major conflicts between project and line organizations”
- “34% of companies undertook projects that were not aligned with corporate strategy”
- “32% of companies performed redundant work because of unharmonized projects”
No two projects are completely alike and the steps that made one project successful may not always be applicable to another project. Merkle has developed a set of key learnings that are critical to improving the successful delivery rates for marketing database projects. These learnings are actually the result of over 20 years of experience the development and deployment of marketing databases for clients across multiple industries. Merkle’s approach to the development and delivery of marketing database projects has been recognized by the Q4 2015 Forrester Wave for Marketing Database operations. The following are six I have found useful throughout my career delivering database projects
6 steps to increase project success
1. Define success
Define and document the meaning of success for the project and gain alignment with the client sponsor(s) and stakeholder(s). Defining success early in the project life cycle ensures there is a common goal for the team to follow and rally around during the various phases of the project. With success defined and communicated clearly, it will be easier to measure project success upon completion. A couple of questions to help determine and define the success criterion:
- How is the client stakeholder being measured against project success?
- What qualitative success criteria can be used to measure project success?
- How should budget, on-time delivery, and client satisfaction play into the success criterion?
2. Build trust
Building trust between the project implementation team and the client project team is critical because it creates an environment in which to discuss project issues, risks, and problems openly and candidly. Also, equally important is building trust with the client project stakeholder(s) and sponsor(s). Having active participation from the project sponsor(s) and stakeholder(s) throughout the project lifecycle will help ensure project sponsorship translates into consent for getting key risks and issues resolved quickly. Trust also helps to ease the anxiety during the communication of potential project delays to the project sponsor(s) and stakeholders(s); allowing a comfortable discussion on how to collectively resolve the risks and issues encountered on the project.
3. Invest in the team
Staffing the right people with the correct skill set is critical to improving the probability of project success. Ensuring your project has the appropriate quality and quantity of resources for the scope of work defined improves the speed and quality of work delivered and reduces “drag” – rework and mistakes made by team members. Having the right staff can also improve team morale because the project team is less likely to spend time storming, and more time norming and performing. Forming-Storming-Norming-Performing is a group development model developed and proposed by Bruce Tuckman. Teams tend to work more efficiently if they are co-located. However, with the increased sophistication of tele-working, most teams are dispersed and may not even work within the same time zone. Hence, it’s important when forming a project team to keep location dynamics in mind. Alternating the inconvenience of when and how the team meet to discuss project items is important because it spreads the burden of late nights and off-hours calls among the various team members in their respective time zones.
4. Review and assign tasks
Discuss and review all tasks with the entire project team, especially the client’s project team, to ensure all tasks, effort of tasks, task performers, and task dependencies are documented. Having a fully vetted work breakdown structure (WBS) is a key first step. Many times projects encounter delays or cost over runs because key tasks and deliverables were not included or discussed in the WBS and the final project plan. Eliminate the issues and risks of an unexpected task by ensuring that all project performers have seen, vetted, and approved the final work plan. Make sure there is a clear understanding of how the task will be done, by whom and when.
5. Be clear about the scope
The project scope is your friend. Know the details of the project contract or statement of work intimately and adhere to it. Don’t attempt to gold plate or over -inflate the project deliverables. If a project item is out of scope and doesn’t contribute to the previously defined success criterion, it should be communicated to the client and added to an enhancement log for discussion at a later time. Scope challenges will be abundant during each phase of the project. The key to managing scope is communicating the scope changes early and clearly with your project sponsor(s) and stakeholder(s). Building trust early in the project will help alleviate the anxiety and tension that’s typically associated with a scope discussion. Communicate unfavorable project news early with the project sponsor(s) and stakeholder(s), and always have recommendations to resolve issues. Do not delay the delivery of “bad news”, bad news doesn’t age well!
6. Commit to a process
There are a myriad of different processes, frameworks, and methodologies for delivering software projects such as Rational Unified Process (RUP), Agile, Iterative, Lean, Traditional, Spiral, Incremental, Rapid, Waterfall, Pick a project delivery paradigm that works for your project, your company culture, and your client. Alternating across software delivery frameworks during project execution creates chaos and confusion for the project performers. For Merkle to deliver, we leverage our marketing solutions delivery methodology that has been developed by leveraging input and lessons learned from prior project executions.
There is no guarantee that can ensure success on a software project. Instead, there are common sense steps you can take to improve your chances of success during your project lifecycle: define the meaning of success early, build trust with the entire project team, staff the right people, adhere to the project scope, and commit to a project delivery methodology.