How do you write a Software Development Plan document?
Software Development Plan (SDP)
1 Purpose of this Document (Objectives)
Insert the purpose of this document, its objectives, and its intended audience.
2 Scope of Document
Insert description of the scope of this Software Development Plan.
1 Scope Constraints
Insert constraints, such as schedules, costs, interactions, overview or any other information relevant to the testing of the development requirements.
Insert an overview or brief description of the product, software, or other desired end result that is being tested under this Software Development Plan.
4 Business Context
Insert an overview of the business or organization desiring the development of this project. Include the business or organization's mission statement and its organizational goals and objectives. Note: If you have already completed a Software Requirements Specification, the majority of this material is copied verbatim from that document.
The purpose of this preamble is to familiarize staff recently attached to the testing portion of a project who may not have been present or involved with earlier stages of the project.
5 Definitions, Terms, Acronyms or Abbreviations
Insert definitions of any terms used throughout this Software Development Plan. Be sure to define specific acronyms or abbreviations used in your project.
6 References and Reference Material
Insert a list of all reference documents and other materials related to the Software Development Plan.
References will often include, but are not limited to:
- Requirements Management Plan (RQMP).
- Risk Management Plan (RMP).
- Business Modeling Guidelines.
- Development Case.
- Software Requirements Specifications (SRS).
- Design Specifications.
- Programming Guidelines.
- User Interface (UI) Guidelines.
- Human Interface (HI) Guidelines.
- Test Guidelines and Test Measurement Plan.
- Software Quality Assurance Plan.
- Software Management Plan.
- Project Outline and Management Plan.
- Project Acceptance Plan.
7 Documentation Items
Overview of Project
1 Purpose of Project
Insert a description of the purpose of the project and expected outcome.
2 Scope of Project
Insert a description of the scope of the project, including the departments it may affect or include, vendors it may impact, business processes it may enhance or replace, or anything else relating to or regarding the scope of the project that this Software Development Plan may include.
3 Project Objectives
Insert a description of the objectives that are to be met by the project itself and not necessarily by the Software Development Plan.
4 Assumptions and Constraints of the Project
Insert a list and descriptions of all assumptions that the Software Development Plan is based upon. Constraints may also be detailed in this section, including any variable or conditional constraints that may exist.
5 Software Development Plan History
Insert references or a table of prior versions of the Project, Software Development Plan or any other information detailing revisions, edits or changes to this Software Development Plan or Project as a whole.
6 Specific Objectives and Requirements Not to be Met
Insert any objectives and requirements for this project that are not to be met. This section is used to better clarify areas that you would like to be made clear are not the intended goals of this Software Development Plan.
Organization of Project
Insert a description of how the project and its components are to be organized - including a hierarchical organization chart or diagram of entities that details authorities. This includes project teams, third-party vendors, third-party contractors, management duties, "report to" lists and any group that is to be included into the overall organizational structure of the project.
1 Internal Interfaces
Insert all information pertaining to how the project interfaces with internal groups in the Company. This includes all direct team members involved with the development: however, this may also include departments that may have little or no say in the development of the project, yet have roles as end-users.
2 External Interfaces
Insert all information pertaining to how the project interfaces with external groups in the Company. This includes all vendors and contractors involved with the development, including those with testing or end-user responsibilities.
3 Roles and Responsibilities
Insert the organizational units that are responsible for determining or supporting processes. Include all points of contact for these organizational units.
This section describes the management processes that oversee the costs, timeline, schedules, decision making and evaluation points in the project.
This section will provide the estimated costs for a project, including a schedule for all payments. Include a detailed basis for all costs and a description of the point at which a re-evaluation of those costs should take place. Thresholds should be detailed, even if they are conditional or variable costs.
2 Project Plan Detail
This section will describe the project plan in detail. This section will often span multiple pages.
Criteria for developing a project plan include, but are not limited to:
The phases that the project plan will be broken into, including any "friendly names" you may use for them, such as "Prototype, Core Development, Production," etc. A breakdown of the work structure and assignments of responsibilities. Timelines, Schedules or Gantt Charts that show the amount of time allotted to each phase of the project or to specific tasks.
Specific project milestones and deliverables, including specific release dates for prototypes, drafts, demos or releases. Specific criteria for project milestones and deliverables. Identification of the internal or external achievements that must be met for each milestone or deliverable.
1 Project Plan Detail: Iteration Objectives
This section describes each version or iteration of a specific deliverable or objectives and what the criteria shall be for approval. If project deliverables include iterations of deliverables that are experimental or exploratory in nature, then specific criteria may include Iteration Objectives that merely state what was learned or discovered.
2 Release Dates
This section will describe any release dates for project milestones or deliverables.
3 Project Schedule and Schedule of Phases
This section will describe the complete schedule for completion of the project, including individual breakdowns of each individual phase. Phases that run concurrent should be detailed using proper project management charts and diagrams. Target dates should be fixed in this section for each deliverable or milestone even if they are estimates.
4 Acquisition of Resources
This section will describe how the Company will acquire the necessary resources to fulfill the project and which budgets will be tapped to do so. The section may also detail the approach that the Company will take to acquire resources.
5 Project Staffing Plan
This section will describe the project's staffing requirement and how the Company will meet those requirements from within the Company or whether additional staff will be required. Detail whether external resources will be utilized to meet the Project Staff Plan and any constraints that may be imposed upon budgets and cost estimates for the project.
6 Project Training Plan
This section will describe the project's staff requirement for training and whether external resources will be utilized to meet the Project Staff's Training requirements. Detail any constraints that may be imposed upon budgets and cost estimates for the project. Include time constraints and requirements to train staff.
7 Project Budget
This section will describe in detail the costs and their allocation across the entire Software Development Plan. This section may span multiple pages or addenda if necessary.
3 Project Monitoring and Oversight
This section will detail the requirements for controlling the projects, its costs and adherence to the delivery schedule and phases for the management of the project. Include any schedules required to monitor the progress of the project and its individual milestones and deliverables to ensure that the project adheres to its proposed schedule.
1 Budget Control
This section details any budgetary controls that will be in place for the project.
2 Quality Assurance (QA) Control
This section details any quality assurance controls that will be in place for the project.
3 Measurement Control
This section details any measurements and standards that will be used to quantify benchmarks, deliverables, objectives, methods or any other component of the project that requires the definition of specific measurements.
4 Reporting Control
This section details all reporting requirements for the project, including the frequency and formats of reports for the project.
4 Post-Project Responsibilities
This section details the responsibilities of individual organization units, teams or staff after achieving completion of the project. Include all post-project debriefings, reports, accounting of project resources and materials and staff re-assignments and responsibilities. Technical Process, Plans and Methods.
Insert the specific technical process, standards and methods to be used during the development of the project. In this section you will describe and define each plan that the Software Development Plan relies upon or includes. You may attach additional exhibits to this section if your testing plan requires them. This section may include excerpts or plan attachments from Sec. 6 and Sec. 1.
At a minimum, most Software Development Plans will include:
- Software Development Case.
- Business Process and Modeling Guidelines.
- Design, Style and Programming Guidelines and Standards.
- User Interface (UI) Guidelines and Standards.
- Risk Assessment, Reduction and Management Plans.
- Testing Guidelines and Standards.
- Use-Case Standards.
- Hardware and Resource Infrastructure Plan.
- Project Acceptance Plan(s).
- Configuration Management Plan.
- Documentation Guidelines and Standards.
- Vendor Management Guidelines and Standards.
- Support Management Plan(s).
- Additional Plans or Guidelines.
Insert the specific milestones and deliverables that are to be delivered under this plan. Deliverables may also include iterative versions, drafts, demos, prototypes and release versions of Software. Deliverable and Milestone Objective Testing. A description of individual milestones and deliverables and the requirements for acceptance.
Change Request and Management
A description of the Software Development Plan change request and change management procedures. Describe the process that must be followed for submission, review and authorization for all requests for change to the Software Development Plan or any change to any part of the deliverables.
Approval for Software Development Plan
A description of the personnel authorized to approve the Software Development Plan. Their names, titles and signatures must accompany this document.
A description of all other supporting information required for the understanding and execution of the Software Development Plan and requirements.
All Software Development Plan documents require the following two appendices:
A complete list of the definitions of important terms, abbreviations and acronyms. This may also include a Glossary of terms.
A complete listing of all citations to all documents and meetings referenced or used in the preparation of this Software Development Plan and testing requirements document.