In most software shops, development is rarely ever finished.
Forget start dates and end dates. Applications need constant updates and maintenance to drive real business value.
This is why development teams need to have a portfolio-based mindset rather than a project mindset. It’s also why they need a clear strategy in place to handle the demands, costs and risks of running multiple projects simultaneously.
In this article, we will explore:
- The importance of project portfolio management for mature development practices.
- What good project portfolio management processes and systems look like.
- How we assess those practices as part of our application lifecycle management assessment.
The Role of Mature Project Portfolio Management in Software Development
Project portfolio management is not about running projects, at least not from a software development point of view. It’s about how development teams manage all of the data, processes and requirements that software development projects generate.
A mature project portfolio management practice will give teams a well-defined work intake process so they can know exactly what is required of them right now and in the future. It also:
- Helps them prioritize requirements.
- Helps them manage the risks associated with working on multiple projects simultaneously.
- Allows them to report to internal stakeholders and external PMOs as necessary.
A good software solution is a core part of any mature project portfolio management practice, especially when development teams are juggling requirements for multiple applications at once.
5 Ways to Assess Project Portfolio Management
Given the ongoing nature of software development, it’s crucial for potential investors to understand the state of a development team’s project portfolio management practices. To do so, our application lifecycle management assessment analyzes the processes, people and tools involved in this practice in the following five ways.
Development teams must have a regular practice of looking at their software portfolios to manage the demand of associated tasks. They need to understand what’s coming in (which is why a good requirements management process is also essential), how long tasks will take and how these initiatives will impact other projects.
A strong demand management process is even more important when multiple teams are working together on a large application. There are bound to be dependency conflicts in this scenario, says Diane Hoffman, principal consultant at Intelopment Group LLC.
“This reality is why it's so critical to implement tools that clearly illustrate dependencies and alert management teams of any necessary adjustments to things such as application scale, release dates or resource capacity,” Hoffman writes at TechTarget.
Unfortunately, most development teams can’t work on all of the tasks described above at once. That’s why a prioritization process is also vital. Development teams need a method for prioritizing requirements, but also for seeing which tasks are in process and who’s working on them.
Tracking costs throughout the software development process is also essential. Most projects will typically have a budget associated with them at the start of development, but the financial costs of development must continually be tracked long after the first iteration has been shipped.
Does your development team understand the associated risks of the work you’re doing and how those tasks may impact dependent or related requirements? What about the risks inherent in your pipeline, say, if something gets delayed? Regular meetings are essential to understand risks and identify issues before they become serious.
Portfolio Analysis and Reporting
Finally, development teams must have processes in place to create executive-level reporting on all of the factors we have discussed above. Teams should also be using reporting to understand their own processes, identify issues in their work pipeline and see why projects may be falling behind.
Get Clarity Into a Target Company’s Project Portfolio Management Capabilities
Our analysis of project portfolio management makes it clear just how well teams are able to manage the demand, risks and costs that come with working on multiple software projects at once.
We score teams on each of the five areas above and color-code our findings on a heatmap so investors can see exactly which areas need improvement.