Program and project management systems are vital in ensuring developers effectively plan, schedule, track and manage large development projects.
Anyone who has seen or worked in a disorganized software shop knows just how counterproductive a lack of project management can be — and the kinds of ineffective software that gets built as a result.
That’s why program and project management is one of the most important parts of our application lifecycle management assessment.
In this article, we’ll examine:
- The important role program and project management play in creating great software.
- What good project management systems look like.
- The steps we take to assess a company’s project management practices as part of our technical due diligence report.
Why Organizations Need Mature Program and Project Management
Of all the disciplines we analyze as part of our technical due diligence report, project management is the one that is core to every organization, says Bill Clerici, CEO and partner at Kingsmen Software.
It doesn’t matter what project management methodology you use — waterfall, agile, something else. Every business needs strong program and project management processes in place.
You can hire the best software developers in the world, but if they aren’t given a project with an appropriate timeline and achievable milestones, it’s highly unlikely they will deliver an application that meets business goals.
Program Management Versus Project Management
Project management and program management are not the same things, even though we analyze them at the same stage of the assessment.
Laureli Mallek, part of the security team at Art Blocks, has a nice overview of the difference:
- Project management is the process of managing a single piece of work, Mallek explains. The success of a project can be measured by the deliverable and the extent to which deliverables meet the company’s wider goals.
- Program management is wider in scope and encompasses “multiple, related projects,” Mallek says. “Since programs are linked to strategic initiatives, they are often long-running and possibly permanent. Programs continue through organizational change, contribute to multiple goals, and contain many projects that deliver specific components of the larger strategic initiative.”
5 Aspects of Program and Project Management We Look Into
As part of our application lifecycle management assessment, we analyze the people, processes and tools businesses use in the following program and project management areas.
Planning and Scheduling
For a software development project to be successful, it needs to have a clear purpose and objectives, and a plan for how everything will be achieved. That’s where planning and scheduling come in.
The full scope of work should be outlined before a line of code is written, Bill Clerici says. It’s what we do when creating a work breakdown structure for clients, and it’s what we expect to see when running an application lifecycle assessment on other software teams.
Even if you’re developing software in-house with a team of full-time engineers, there still needs to be a project budgeting process. In order to understand the ROI of an application, managers need to have an accurate way of estimating the total cost of application development.
Even the biggest software teams have a finite number of resources, which is why it’s essential to maximize them as much as possible — especially when delivering multiple projects simultaneously. Resources primarily refer to developers and their time, but they could also include specific tools.
Time and Capacity Tracking
Teams need both tools and processes to make sure they are spending the right amount of time and money on a project.
Still, hiccups and delays happen. That’s why teams need a capacity planning process to make sure they have “enough spare capacity to handle any likely increases in workload, and enough buffer capacity to absorb normal workload spikes, between planning iterations,” says Terri Haber, engineering program manager at Shopify.
The software that companies use to manage project reporting is key.
Ideally, project reporting will be built into the project management software teams use, says the team at Wrike. Otherwise, teams are forced to use separate systems or export data to manually create reports.
Using separate software requires you to either integrate your systems or duplicate your data.
“Even with integration, running the reports out of a separate system means your team must learn and adopt yet more software,” they write. “Exporting the data and manually formatting your reports carries the risk of manual error. In addition, having to re-create reports can be incredibly time-consuming.”
Assess Project Management With Kingsmen Software
Our application lifecycle management assessment measures the performance of companies in each of the disciplines above, scoring them from good to bad and putting everything together in a heatmap so investors can see what they need to know at a glance.