Neural Project InstituteProject management certification for the AI era

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)

PhaseWhat happensKey outputs
DiscoveryUnderstand users, problems and goals; test ideas with research and prototypesProblem statement, product vision, early prototypes
PlanningShape scope, prioritise the backlog, plan releases and capacityProduct backlog, release plan, roadmap
DesignUX design, architecture and technical approachDesigns, architecture decisions, acceptance criteria
DevelopmentWrite code in small increments with review and automated testsWorking, tested increments
Testing and quality assuranceAutomated, exploratory, performance and security testingTest results, resolved defects
Release and deploymentDeploy to production, often via a continuous delivery pipelineReleased feature, release notes
Operate and improveMonitor, support users, measure outcomes and feed learning back into the backlogMetrics, 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

RoleMain responsibilities
Product owner / product managerOwns the product vision and orders the backlog by value; see Scrum product owner
Engineering managerLeads engineers, hiring, growth and delivery practices
Tech lead / architectOwns technical direction and quality
DevelopersDesign, build and test the software
QA / test engineersTest strategy, automation and exploratory testing
UX / product designersUser research and interface design
Scrum master or delivery leadFacilitates the process and removes impediments; see Scrum master role
Technical project or programme managerCoordinates cross-team dependencies, timelines and risks; see technical project manager
DevOps / SREBuild pipelines, infrastructure and reliability

Methodologies for software projects

ApproachWhen it fitsNotes
ScrumProduct teams building new features with regular stakeholder feedbackFixed-length sprints with planning, review and retrospective
KanbanMaintenance, platform and support teams; continuous flowWIP limits and flow metrics instead of sprints
Extreme Programming (XP)Teams that want strong engineering disciplinePair programming, test-driven development, continuous integration
DevOpsTeams that build and run their own servicesAutomates delivery and shares responsibility for operations
Waterfall or V-modelFixed-scope contracts and regulated or safety-critical softwareFormal phases, documentation and verification
Scaled frameworksMany teams on one productSee SAFe and LeSS

Compare the options in Agile vs Waterfall and Kanban vs Scrum.

Essential documents and templates

DocumentPurposeTemplate
Product backlogOrdered list of everything the product may needProduct backlog template
User storiesRequirements written from the user's viewUser story template
Sprint planSprint goal and selected workSprint planning template
Release plan and roadmapWhat ships when, at a high levelRelease plan template, product roadmap template
Requirements documentFor fixed-scope or contracted workBusiness requirements document template
Retrospective notesImprovements agreed by the teamSprint retrospective template
RAID logCross-team risks and dependenciesRAID log template

Keep architecture decision records and a definition of done alongside these; see definition of done.

KPIs for software project management

KPIWhat it measuresTypical use
Deployment frequencyHow often code reaches productionDelivery capability (DORA metric)
Lead time for changesTime from commit to productionFlow speed (DORA metric)
Change failure rateShare of deployments causing a failureRelease quality (DORA metric)
Time to restore serviceHow quickly failures are fixedResilience (DORA metric)
Cycle timeTime from work started to doneForecasting and spotting bottlenecks
Throughput or velocityWork completed per week or sprintRelease forecasting
Escaped defectsBugs found after releaseEffectiveness of testing
Outcome metricsAdoption, conversion, retention or task successWhether 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

Browse all templates

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.