Requirements for <project>

Version x.y.z

x/y/200z

(Template v1, from The Process Group,

Revision History

Version Number / Date / Author / Changes Made
1 / 8/15/07 / Neil Potter / Initial

Version x.y.zPage 1 of 10

Table of Contents

Revision History......

Table of Contents......

1. User Classes and Customer Champions......

1.1. User Classes and Customer Champions......

2. Business Requirements......

2.1. Objectives / Success Criteria, Customer Needs......

2.2. Vision and Scope......

3. User Requirements......

3.1. Use Cases......

3.2. Quality Attributes......

3.3. Business Rules......

4. Functional Requirements, System Requirements, External Interfaces and Constraints

4.1. Functional requirements......

4.2. System Requirements......

4.3. External Interfaces......

4.4. Constraints......

5. Requirements Priorities......

1.User Classes and Customer Champions

User classes are distinct types of users of the solution. They may differ in: frequency of use of application, functions used, tasks to be accomplished, education and skill level, privilege or security level.

Champions represent each user class.

Champion activities are the specific tasks you want the champion to do to assist in clarifying the requirements of the project. Examples include:

  • Define scope and limitations of system
  • Define external boundaries and interfaces
  • Plan migration pathway from current system to new one
  • Interview other users they represent
  • Resolve conflicting requirements
  • Set implementation priorities
  • Define quality attributes
  • Participate in requirements inspections (reviews)
  • Evaluate / prioritize bug fixes and enhancements
  • Contribute to user manuals and on-line help
  • Help prepare classes and tutorial materials
  • Help “sell” the system to customer communities

1.1.User Classes and Customer Champions

User Class Name / Champion Name / Champion Activities
Uclass#1
Uclass#2
Uclass#3
Uclass#4
Uclass#5
Uclass#6
Uclass#7

2.Business Requirements

Business requirements primarily consist of:

  • Objectives / Success Criteria
  • Customer Needs
  • Vision Statement

2.1.Objectives / Success Criteria, Customer Needs

BO#1
CN#1.1
CN#1.2
CN#1.3
BO#2
CN#2.1
CN#2.2
CN#2.3
BO#3
CN#3.1
CN#3.2
CN#3.3
BO#4
CN#4.1
CN#4.2
CN#4.3

2.2.Vision and Scope

A Context Diagram shows the solution in the center, surrounded by major external entities. Connection lines represent request/response needs between the solution and the external entities.

[Insert Context Diagram here]

3.User Requirements

3.1.Use Cases

Use Cases state tasks or goals a user wants to accomplish.

Uses case descriptions are defined in the files listed below.

Use Cases / Link
Uses cases for Business Objective BO#1
OR
Uses cases for customer need CN#1.1 / use_cases_BO#1.doc
use_cases_CN#1.1.doc

3.2.Quality Attributes

Quality attributes are user expectations such as: solution availability, correctness, flexibility, interoperability, maintainability, safety, security, performance, portability, and reliability.

QA#1
QA#2
QA#3
QA#4
QA#5
QA#6
QA#7

3.3.Business Rules

A business rule is a statement that defines or constrains some aspect of the business. Common sources of business rules are: corporate policies, government laws and regulations, industry standards and imposed computational algorithms.

Bus rule is related to:
Brule#1
Brule#2
Brule#3
Brule#4
Brule#5
Brule#6
Brule#7

4.Functional Requirements, System Requirements, External Interfaces and Constraints

4.1.Functional requirements

Functional requirements are ADDITIONAL characteristics that more completely define system behavior at the level that implementation can be completed without significant rework and defects, e.g.,

  • Ensure record locking for database X
  • Ignore control characters in the password
  • Process empty records by setting them to null

FN is related to:
FR#1 / UC#1
FR#2
FR#3
FR#4
FR#5
FR#6
FR#7
FR#8
FR#9
FR#10

4.2.System Requirements

System requirements are hardware and software compatibility specifications. For example:

  • Operating System (e.g., Windows XP, SP 2 or Mac OS X 10.X.Y)
  • Processor Speed (e.g., Pentium X, 3.2 GHz or MacTel 2.0 GHz)
  • Memory (e.g., min 512 MB)
  • Graphics Card (e.g., ATI Radeon 9800 w/ X MB video memory)
  • Hard Disk Space (e.g., 80 GB min available)
  • I/O Ports (e.g., USB, Firewire, Serial, Parallel, SCSI, VGA, DVI ports)

Sysreq#1
Sysreq#2
Sysreq#3
Sysreq#4
Sysreq#5
Sysreq#6
Sysreq#7

4.3.External Interfaces

External Interfaces are input/output connections to the outside world.

Ex-interface#1
Ex-interface#2
Ex-interface#3
Ex-interface#4
Ex-interface#5
Ex-interface#6
Ex-interface#7

4.4.Constraints

Constraints are additional requirements we must live with, e.g.,

  • Memory use cannot exceed 50%
  • Database must be less than 20Gbytes to aid network transfers
  • Data fields cannot change in version 6.0

Constraint#1
Constraint#2
Constraint#3
Constraint#4
Constraint#5
Constraint#6
Constraint#7

5.Requirements Priorities

Priorities are defined in: requirements_prioritization.xls

1