Template for
SOFTWARE PROJECT MANAGEMENT PLAN (SPMP)


1. Introduction

1.1  Project overview

Give an overview of the problem you're trying to solve, making it accessible to someone who is not familiar with the subject matter.  Should borrow heavily from your problem statement.

1.2  Project deliverables

List all client deliverables and project milestones.  Include all documents, milestones (provide a one-line description of each), and final demo.

1.3  Evolution of this document

Describe the expected document changes, along with a history of revisions.


2. Project organization

Describe how the team is organized (hierarchical, egoless, etc.), who is responsible for what roles, how information is communicated between team members, how often the team meets, how meetings are run, etc.


3. Managerial process

3.1  Management objectives and priorities

Briefly describe the management philosophy of the project, including the relative priorities among the requirements.

3.2  Assumptions, dependencies, and constraints

Describe dependencies among the team members and subsystems, assumptions about how team members will interact, and/or any possible constraints on their interaction.

3.3  Risk management

List the possible risks of this project.  For each, estimate by what date the status of the risk is expected to change (either it manifests itself or it doesn't), and provide a contingency plan.  Identify the person responsible for monitoring the risk, along with how the risk will be managed.  As new risks are identified, add them to this document.


4. Technical process

4.1  Methods, tools, and techniques

Describe

4.2  Software documentation

Specify expectations for documentation.  Describe how team members will document software, such as the standard comment header at the top of each file with the name of the developer(s), whether interface comments will be in the header or cpp file, etc.

4.3  Project support functions

Describe


5. Work elements, schedule, and budget

4.1  Work packages

Present the work breakdown structure (WBS), listing all the work that must be done for the project, organized hierarchically.  Each task should be assigned to a specific person.

4.2  Dependencies

List any major interdependencies between the work packages.

4.3  Schedule

Provide a detailed schedule for the work for the entire project, in the form of a Gantt chart, a PERT chart, or simply text (table).  As a guideline, each task should be do-able by exactly one person in approximately one week.