Vision document
A vision document defines the high-level scope and purpose of a program, product, or project. A clear statement of the problem, proposed solution, and the high-level features of a product helps establish expectations and reduce risks. This topic provides an outline of potential content for a vision document.
See Developing a vision for an explanation of how the product owner or business analyst works with stakeholders to develop a vision document. That topic, which is part of the IBM® Engineering Lifecycle Management (ELM) scenario guidance, describes the vision-development process. This topic outlines typical content for the document. You can copy this outline, paste it into a new document, and use it as the basis for your vision document. Use those portions of this outline that are relevant for your project.
When a team uses the Requirements Management (RM) capability in the ELM, the vision document can be expressed in one or more rich-text documents or modules. You can embed requirements and related artifacts in rich-text documents or use the numbered hierarchical structure of a module to organize content. Team members can set attributes, such as priority and status, on each artifact and create trace links between related documents, modules, and individual artifacts.
To review the steps for creating and linking documents and modules, see Creating modules.
The vision document outline
1: Introduction
This introduction provides an overview of the entire vision document. It includes the purpose, scope, definitions, acronyms, abbreviations, references, and an overview of the full document.
1.1 Purpose: State the purpose of this vision document.
1.2 Scope: Briefly describe the scope of this vision document, including which programs, projects, applications, and business processes the document is associated with. Include anything else that this document affects or influences.
1.3 Definitions, acronyms and abbreviations: Define all terms, acronyms, and abbreviations that are required to interpret the vision correctly. This information might be provided by reference to the project glossary, which can be developed online in the RM repository.
1.4 References: List all documents that the vision document refers to. Identify each document by title, report number (if applicable), date, and publishing organization. Specify the sources from which readers can obtain the references; the sources are ideally available in RM or in other online repositories. This information might be provided by reference to an appendix or to another document.
1.5 Overview: Describe the vision-document contents and explain how the document is organized.
2: Positioning
2.1 Business opportunity: Briefly describe the business opportunity that is addressed by this project.
2.2 Problem statement: Summarize the problem that this project solves. Use the following statements as a model, providing project details to replace the parenthetical elements:
The problem of (describe the problem) affects (the stakeholders affected by the problem). The impact of the problem is (what is the impact of the problem). A successful solution would include (list some key benefits of a successful solution).
2.3 Product position statement: Provide an overall statement that summarizes at the highest level the unique position the product intends to take in the marketplace. Use the following statements as a model, providing project details to replace the parenthetical elements:
For the (target customer), who (statement of the need or opportunity). The (product name) is a (product category) that (statement of key benefit, that is, the compelling reason to buy). Unlike (primary competitive alternative), our product (statement of primary differentiation).
A product position statement communicates the intent of the application and the importance of the project to all concerned stakeholders.
3: Stakeholder and user descriptions
To provide products and services that meet stakeholders' and users' needs, you must identify and involve all stakeholders as part of the requirements-definition process. You must also identify the system users and ensure that the stakeholder community represents them adequately.
This section provides a profile of the stakeholders and users who are involved in the project. This section also identifies the key problems that stakeholders and users consider that the proposed solution must address. This section does not describe specific requests or requirements; a separate stakeholder requests artifact captures these items. The key-problem description provides the background and justification for requirements.
- What is the reputation of your organization in these markets?
- What would you like the reputation to be?
- How does this product or service support your goals?
- Name: Name the stakeholder type.
- Represents: Briefly describe which individuals, teams, or organizations this stakeholder type represents.
- Role: Briefly describe the role this stakeholder type plays in the development effort.
- Name: Name the user type
- Description: Briefly describe the relationship of this type of user to the system under development.
- Stakeholder: List which stakeholder type represents this user type.
- How many people are involved in completing the task? Is this changing?
- How long is a task cycle? How much time do users spend in each activity? Is this changing?
- What unique environmental constraints affect the project? For example, do users require mobile devices, work outdoors, or work during flights?
- Which system platforms are in use today? Are there future platforms planned?
- What other applications are in use? Does your application need to integrate with them?
3.5 Stakeholder profiles: Describe each stakeholder in the project by completing the following table for each stakeholder. Remember: Stakeholder types can be users, strategy departments, legal or compliance departments, technical developers, operations teams, and others. A thorough profile covers the following topics for each stakeholder type:
- Representative: State who represents the stakeholder to the project (This information is optional if it is documented elsewhere.) Enter the representatives' names.
- Description: Briefly describe the stakeholder type.
- Type: Qualify the expertise of the stakeholder, such as
guru
,business expert
, orcasual user.
This designation can suggest technical background and degree of sophistication. - Responsibilities: List the key responsibilities of the stakeholder on the system under development; list their interests as a stakeholder.
- Success criteria: State how the stakeholder defines success. How is the stakeholder rewarded?
- Involvement - Describe how the stakeholder is involved in the project. Where possible, relate the involvement to the process roles; for example, a stakeholder might be a requirements reviewer.
- Deliverables: Identify additional deliverables that the stakeholder requires. These items might be project deliverables or output from the system under development.
- Comments or issues: State problems that interfere with success and any other relevant information.
- Representative: State who represents the user to the project. (This information is optional if it is documented elsewhere.) This representative often refers to the stakeholder who represents a set of users; for example, Stakeholder: Stakeholder1.
- Description: Briefly describe the user type.
- Type: Qualify the expertise of the user, such as
guru
orcasual user
. This designation can suggest technical background and degree of sophistication. - Responsibilities: List the key user responsibilities with respect to the system; for example, state who captures customer details, produces reports, and coordinates work, and so on.
- Success criteria: State how the user defines success. How is the user rewarded?
- Involvement: Describe how the user is involved in the project. Where possible, relate the involvement to process roles; for example, a stakeholder might be a requirements reviewer.
- Deliverables: Identify the deliverables that the user produces and for whom.
- Comments or issues: State problems that interfere with success and any other relevant information. Describe trends that make the user's job easier or harder.
- What are the reasons for this problem?
- How is the problem solved now?
- What solutions does the stakeholder want?
Need | Priority | Concerns | Current solution | Proposed solution |
---|---|---|---|---|
3.8 Alternatives and competition: Identify alternatives that the stakeholder perceives as available. These alternatives can include buying a competitor's product, building a homegrown solution, or maintaining the status quo. List any known and available competitive choices. Include the major strengths and weaknesses of each competitor as the stakeholder perceives them.
4: Product overview
- Product perspective
- Product functions
- Assumptions and dependencies
4.1 Product perspective: Put the product in perspective with regards to other related products and the user's environment. If the product is independent and completely self-contained, state it here. If the product is a component of a larger system, relate how these systems interact and identify the relevant interfaces between the systems. One way to display the major components of the larger system, interconnections, and external interfaces is to use a business process or use case diagram.
Customer benefit | Supporting features |
---|---|
New support staff can quickly learn how to use the product. | A knowledge base assists support personnel in quickly identifying known fixes and workarounds. |
Customer satisfaction is improved because nothing falls through the cracks. | Problems are uniquely itemized, classified, and tracked throughout the resolution process. Automatic notification occurs for any aging issues. |
Management can identify problem areas and gauge staff workload. | Trend and distribution reports enable a high-level review of problem status. |
Distributed support teams can work together to solve problems. | With a replication server, current database information can be shared throughout the enterprise. |
Customers can help themselves, lowering support costs and improving response time. | A knowledge base can be made available over the Internet. The knowledge base includes hypertext search capabilities and a graphical query engine. |
4.3 Assumptions and dependencies: List each of factor that affects the features that the vision document includes. List assumptions that, if changed, will alter the vision document. For example, an assumption might state that a specific operating system will be available for the designated hardware for the software product. If the operating system is not available, the vision document will require change.
4.4 Cost and pricing: Record relevant cost and pricing impacts and constraints. For example, distribution costs (the number of CDs and CD mastering) or other cost-of-goods-sold constraints (manuals and packaging) might be material or irrelevant to project success, depending on the nature of the application.
4.5 Licensing and installation: Licensing and installation issues can also directly affect the development effort. For example, the need to support serializing, password security, or network licensing will create additional system requirements that must be considered in the development effort. Installation requirements might also affect coding, or create the need for separate installation software.
5: Product features
List and briefly describe the product features. Features are the high-level capabilities of the system that are required to deliver benefits to the users. Each feature is a requested service that typically requires a series of inputs to achieve a satisfactory result. For example, a feature of a problem-tracking system might be the ability to provide trending reports. As the use case model takes shape, update the description to refer to the use cases.
Because the vision document is reviewed by a wide variety of involved personnel, keep the level of detail general enough for everyone to understand. However, offer sufficient detail to provide the team with the information it needs to create a use case model or other design documents.
To manage application complexity, for a new system or an incremental change, list capabilities at such a high level that you include approximately 25-99 features. These features provide the basis for product definition, scope management, and project management. Each feature will be expanded into greater detail in the use case model.
- Avoid design. Keep feature descriptions at a general level. Focus on required capabilities and why (not how) they should be implemented.
- Designate all features as requirements of a specific feature type for easy reference and tracking.
5.1 Feature 1.
5.2 Feature 2.
6:Constraints
Note any design constraints, external constraints, such as operational or regulatory requirements, or other dependencies.7: Quality ranges
Define the quality ranges for performance, robustness, fault tolerance, usability, and similar characteristics that the feature set does not describe.8: Precedence and priority
Define the priority of the different system features.9: Other product requirements
At a high level, list applicable standards, hardware or platform requirements, performance requirements, and environmental requirements.
- Legal and regulatory standards (FDA, UCC)
- Communications standards (TCP/IP, ISDN)
- Platform compliance standards (Windows, UNIX, and so on)
- Quality and safety standards (UL, ISO, CMM)
9.2 System requirements: Define the system requirements for the application. These can include the supported host operating systems and network platforms, configurations, memory, peripheral devices, and companion software.
9.3 Performance requirements: Detail performance requirements. Performance issues can include such items as user-load factors, bandwidth or communication capacity, throughput, accuracy, reliability, or response times under various load conditions.
9.4 Environmental requirements: Detail environmental requirements as needed. For hardware-based systems, environmental issues can include temperature, shock, humidity, and radiation. For software applications, environmental factors can include use conditions, user environment, resource availability, maintenance issues, error handling, and recovery.
10: Documentation Requirements
This section describes the documentation that you must develop to support successful application deployment.11: Appendix 1 - Feature attributes
Give features attributes that can be used to evaluate, track, prioritize and manage the product items that are proposed for implementation. Outline all requirement types and attributes in a separate requirements management plan. However, you might want to list and briefly describe the attributes for features that have been chosen. The following subsections represent a set of suggested feature attributes.Status | Description |
---|---|
Proposed | Describes features that are under discussion but have not been reviewed and
accepted by the official channel.The official channel might be a working group that consists of representatives from the project team, product management, and user or customer community. |
Approved | Capabilities that are deemed useful and feasible and have been approved for implementation by the official channel. |
Incorporated | Features that have been incorporated into the product baseline. |
Priority | Description |
---|---|
Critical | Essential features. Failure to implement a critical feature means that the system will not meet customer needs. All critical features must be implemented in the release or the schedule will slip. |
Important | Features important to the effectiveness and efficiency of the system for most applications. The functions cannot be easily provided in some other way. Omitting an important feature might affect customer or user satisfaction, or even revenue. However, the release will not be delayed because an important feature is not included. |
Useful | Features that are useful in less typical applications, are used less frequently, or that can be met with reasonably efficient workarounds. No significant revenue or customer satisfaction impact can be expected if such an item is not included in a release. |