Project Management by Industry guide · IT, software and digital
Software Project Management: Life Cycle, Roles, Methods, KPIs
Software project management is the planning, coordination and delivery of software products and features, from discovery and requirements through design, development, testing and release, to ongoing improvement. Because software is easy to change but hard to estimate, most software teams manage work in short iterations and measure progress by working software rather than documents.
Key takeaways
- Software project management works in short iterations because requirements evolve and estimates are uncertain.
- Pick Scrum, Kanban, DevOps or a plan-driven approach based on the work, not habit.
- Track delivery with DORA and flow metrics, and success with outcome metrics.
- Use developer issue trackers for code-level work and a platform such as Wrike for cross-functional planning.
What makes software project management different
- Requirements evolve. Users often only know what they want once they see something working.
- Estimation is uncertain. Much of the work is new problem-solving, so teams forecast with ranges and historical throughput rather than fixed dates.
- Delivery can be continuous. With automated testing and deployment, teams can release many times a week.
- Technical debt. Shortcuts taken to hit a date slow future work unless they are paid back; see technical debt in Scrum.
- Quality is built in. Code review, automated tests and monitoring replace large end-of-project test phases.
- Product and project overlap. Many software teams are long-lived product teams, so the 'project' is often a release, a feature set or a new product.
For an overview of how teams apply Agile values in code, see Agile software development.
The software development life cycle (SDLC)
| Phase | What happens | Key outputs |
|---|---|---|
| Discovery | Understand users, problems and goals; test ideas with research and prototypes | Problem statement, product vision, early prototypes |
| Planning | Shape scope, prioritise the backlog, plan releases and capacity | Product backlog, release plan, roadmap |
| Design | UX design, architecture and technical approach | Designs, architecture decisions, acceptance criteria |
| Development | Write code in small increments with review and automated tests | Working, tested increments |
| Testing and quality assurance | Automated, exploratory, performance and security testing | Test results, resolved defects |
| Release and deployment | Deploy to production, often via a continuous delivery pipeline | Released feature, release notes |
| Operate and improve | Monitor, support users, measure outcomes and feed learning back into the backlog | Metrics, incidents, new backlog items |
In Agile teams these phases happen continuously inside every iteration rather than once in sequence; see the Agile development life cycle.
Key roles
| Role | Main responsibilities |
|---|---|
| Product owner / product manager | Owns the product vision and orders the backlog by value; see Scrum product owner |
| Engineering manager | Leads engineers, hiring, growth and delivery practices |
| Tech lead / architect | Owns technical direction and quality |
| Developers | Design, build and test the software |
| QA / test engineers | Test strategy, automation and exploratory testing |
| UX / product designers | User research and interface design |
| Scrum master or delivery lead | Facilitates the process and removes impediments; see Scrum master role |
| Technical project or programme manager | Coordinates cross-team dependencies, timelines and risks; see technical project manager |
| DevOps / SRE | Build pipelines, infrastructure and reliability |
Methodologies for software projects
| Approach | When it fits | Notes |
|---|---|---|
| Scrum | Product teams building new features with regular stakeholder feedback | Fixed-length sprints with planning, review and retrospective |
| Kanban | Maintenance, platform and support teams; continuous flow | WIP limits and flow metrics instead of sprints |
| Extreme Programming (XP) | Teams that want strong engineering discipline | Pair programming, test-driven development, continuous integration |
| DevOps | Teams that build and run their own services | Automates delivery and shares responsibility for operations |
| Waterfall or V-model | Fixed-scope contracts and regulated or safety-critical software | Formal phases, documentation and verification |
| Scaled frameworks | Many teams on one product | See SAFe and LeSS |
Compare the options in Agile vs Waterfall and Kanban vs Scrum.
Essential documents and templates
| Document | Purpose | Template |
|---|---|---|
| Product backlog | Ordered list of everything the product may need | Product backlog template |
| User stories | Requirements written from the user's view | User story template |
| Sprint plan | Sprint goal and selected work | Sprint planning template |
| Release plan and roadmap | What ships when, at a high level | Release plan template, product roadmap template |
| Requirements document | For fixed-scope or contracted work | Business requirements document template |
| Retrospective notes | Improvements agreed by the team | Sprint retrospective template |
| RAID log | Cross-team risks and dependencies | RAID log template |
Keep architecture decision records and a definition of done alongside these; see definition of done.
KPIs for software project management
| KPI | What it measures | Typical use |
|---|---|---|
| Deployment frequency | How often code reaches production | Delivery capability (DORA metric) |
| Lead time for changes | Time from commit to production | Flow speed (DORA metric) |
| Change failure rate | Share of deployments causing a failure | Release quality (DORA metric) |
| Time to restore service | How quickly failures are fixed | Resilience (DORA metric) |
| Cycle time | Time from work started to done | Forecasting and spotting bottlenecks |
| Throughput or velocity | Work completed per week or sprint | Release forecasting |
| Escaped defects | Bugs found after release | Effectiveness of testing |
| Outcome metrics | Adoption, conversion, retention or task success | Whether the software delivers value |
See Agile metrics and KPIs for more.
Common challenges
- Fixed dates with fixed scope. Fix the date and flex the scope, and forecast with ranges based on past throughput.
- Growing technical debt. Reserve capacity each sprint for refactoring and platform work.
- Cross-team dependencies. Map them visibly, align on shared milestones and use a scrum of scrums or similar sync.
- Too much work in progress. Apply WIP limits and finish before starting.
- Measuring output, not outcomes. Tie releases to user and business goals, not just story points.
Software for software project management
Development teams need an issue tracker that connects to code repositories and CI/CD pipelines, plus boards, backlogs and sprint reports. Product and delivery managers also need roadmaps, cross-team dependency views and reports that non-engineers can read.
Jira is widely used by engineering teams for issue tracking. Wrike is the strongest all-in-one option in our tool rankings when software work has to be planned alongside marketing, support, design and other departments, with Agile boards and Gantt views in one place. See also Scrum software tools.
Free templates for this topic
Frequently asked questions
What is software project management?
Software project management is planning, coordinating and delivering software products and features from discovery through development, testing and release to ongoing improvement.
What are the phases of software project management?
The SDLC phases are discovery, planning, design, development, testing, release and operate-and-improve, usually repeated in short iterations.
Which methodology is best for software project management?
Scrum suits feature teams, Kanban suits continuous flow and support, DevOps practices suit teams running their own services, and Waterfall or V-model suits fixed-scope or regulated work.
What are DORA metrics in software project management?
Four delivery measures from the DevOps Research and Assessment programme: deployment frequency, lead time for changes, change failure rate and time to restore service.
Who does software project management in an Agile team?
Responsibilities are shared: the product owner manages priorities, the team plans its own work, the Scrum master facilitates and a technical project manager may coordinate across teams.
How do you estimate in software project management?
Use relative estimates such as story points or forecast from historical throughput and cycle time, and express dates as ranges.
What documents are used in software project management?
A product backlog, user stories, sprint plans, release plans, roadmaps, a definition of done and, for contracted work, a requirements document.
What software is used for software project management?
Issue trackers such as Jira connected to code repositories, plus a platform such as Wrike when software work must be planned with other departments.
How is technical debt handled in software project management?
Make it visible in the backlog, reserve capacity each iteration to pay it down and include it in planning conversations with the product owner.
What is the difference between software project management and product management?
Product management decides what to build and why; software project management focuses on how and when it gets delivered.
What skills does software project management require?
Understanding of the development process, Agile practices, risk and dependency management, communication with technical and business stakeholders and data-driven forecasting.