A scope document is often (or at least should be) the first deliverable in a software project and its important to get it right.
The scope document is really the ‘Scope and vision’ and can be anywhere from one to ten pages depending on the size of the project. Its an important first step that needs to happen before any real analysis can begin because you need to make sure that all stakeholders agree what the vision and key objectives of the project are.
Software projects typically go through the four stages of Inception -> Elaboration -> Construction -> Transition. The ‘scope and vision’ is the deliverable of the inception stage and should provide just enough information for a go/no-go decision to be made to begin elaboration. Elaboration is where the research, analysis, detailed requirements, design and prototyping will happen before making a go/no-go decision to begin construction.
Regardless of the size of the project, the scope and vision should contain:
- Background and opportunity
- Vision / purpose
- Business requirements
- Scope
- Deliverables
- Next steps
Background and opportunity
This is the build up to the vision/purpose statement. Its the ‘what comes before vision‘ part that explains the problem that needs to be solved and provides context for the solution that the project is going to provide.
Vision / purpose
This should be a statement explaining what the purpose of the project is. It doesn’t explain the solution, but explains why you want to address the problem that you’ve highlighted. It could be for profit reasons, for competitive advantage, to improve quality or efficiency etc.
Business Requirements
The business requirements start to describe the high level requirements of the solution and its useful to separate the key objectives and goals from other business requirements.
The key objectives are short statements stating what the project will achieve. Its important that the key objectives are understood and agreed by all stakeholders up front, because all decisions made in elaboration and during the design phase need to be inline with the objectives – so if they change, it will result in incorrect requirements and design.
The goals are based on constraints that need to be applied to the project such as budget, time, resources, quality etc. It may be necessary to deliver the project in time for a trade show, or within a budget, or with available resource, so these business related goals should be defined, as they will help define the direction of the project and will also highlight risks.
Scope
After defining the business requirements and before defining the deliverables, you need to clarify what’s in and what’s out of scope. The business requirements and deliverables will focus on what is in scope, so this section should focus on what is out of scope to prevent incorrect assumptions being made.
Deliverables
Although the elaboration phase will focus on defining the deliverables in detail, its useful to propose what the deliverables of the project will look like to give a framework for the project. Will the construction be broken into phases? Are there multiple software applications being built, such as a public web site, a web application and a management system. Will sign-off be required on a formal requirements document and/or test scripts?
If it’s necessary to provide high level time or cost forecasts, don’t call them estimates because they are not. An estimate can only be made after the requirements are known and decisions have been made as to what will be delivered and how. The only useful forecasts based on a scope is to size up the deliverables and differentiate them between 1 week, 1 month, 1 year etc.
If the project is being developed for an external customer, then you need to think about and agree on who will own the IP of each deliverable and document this very clearly.
Next steps
If the purpose of inception is to provide enough information for a go/no-go decision to be made to begin elaboration, then the scope and vision document should finish with the action points that need to be taken to progress the project.
Was this helpful? Please leave a comment below.