Example User Stories Specification

  Description   Acceptance Criteria

1 Introduction

1.1 Purpose

This document specifies a simplified subset of ReqView version 1.0 functionality allowing users to capture requirements in a single structured requirement specification document.

Note: This is an example document, which is not complete.

The main purpose of this document is to provide new users a working example of a document describing high-level user needs by means of user stories.

1.2 Scope

Users should be able to:

  • Capture structured requirements specifications describing textual requirements
  • Assign requirements custom attributes
  • Link related requirements
  • Comment requirements
  • Filter and search requirements
  • Import requirements from MS Word or Excel
  • Export documents to HTML or CSV
  • Print documents

1.3 User Roles

1.3.1 Requirements Architect

Requirements Architect defines requirements model and configure the requirements project for other users.

Requirements Architect is typically a QA manager or project manager.

1.3.2 Editor

Editor defines project requirements and creates requirements and tests documents.

Editor is typically a requirements engineer, business analyst, project manager, QA engineer or a tester.

1.3.3 Reviewer

Reviewer reads project documents, performs review and provides feedback for improving the content of the document.

Reviewer is typically an internal QA expert reviewing requirements and tests, customer or supplier commenting requirements and setting the requirement acceptance state.

2 User Stories

2.1 Requirements Storage

2.1.1 Document Files

[DEMO-NEEDS-58] As a(n) Editor I want to save document in a file so that users can open the document for further editing or review.

Tool supports:

  • saving project in a file
  • opening project from a file

2.1.2 Document Templates

[DEMO-NEEDS-14] As a(n) Architect I want to save a document as a template file so that I can reuse the document structure and configuration of custom attributes for new documents.

Tool supports:

  • saving a document as a document template file,
  • add a new document into a project from a saved document template file while preserving document attributes definition, values of object attributes and object attachments.

2.1.3 Autosave

[DEMO-NEEDS-33] As a(n) Editor I want to automatically persist my changes so that I do not lose my changes if the tool is unexpectedly terminated before saving into a file.

Tool:

  • instantly saves all the changes,
  • restores the same project content when it is restarted.

2.2 Define Requirements

2.2.1 Requirement Description

[DEMO-NEEDS-68] As a(n) Editor I want to specify requirements by a textual description so that the requirements can be reviewed by other users..

Tool supports:

  • setting a description of a selected requirement
  • removing description of a selected requirement

2.2.2 Unique IDs

[DEMO-NEEDS-32] As a(n) Editor I want to identify requirements by their unique ID so that I can reference requirements from other documents or communication.

Tool supports:

  • automatic generation of document ID which can not be further changed

2.2.3 Document Structure

[DEMO-NEEDS-12] As a(n) Editor I want to organize requirements in a tree document hierarchy with numbered sections so that I can easily navigate in the document structure.

Tool supports:

  • creation of a new project,
  • adding a new document into a project,
  • deletion of a document from a project.

2.2.4 Table View

[DEMO-NEEDS-73] As a(n) Editor I want to display a table of requirements so that I can review all requirements information in a single view.

Tool supports:

  • displaying of requirements in a table,
  • displaying requirements ID, description, discussion, links and custom attributes in columns,
  • hiding requirements table columns,
  • reordering of requirements table columns,
  • resizing of requirements table columns.

2.2.5 Detailed View

[DEMO-NEEDS-74] As a(n) Editor I want to display all information about the selected requirement so that I can display details about any requirement which are not visible in the requirements table.

Tool supports:

  • displaying custom attributes of the selected requirement in a pane or dialog,
  • displaying discussion of the selected requirement in a pane or dialog,
  • displaying traceability links for the selected requirement in a pane or dialog,
  • displaying history of changes for the selected requirement in a pane or dialog.

2.2.6 Attachments

[DEMO-NEEDS-17] As a(n) Editor I want to attach images and other documents to requirements so that I can enhance textual requirements with visual content such as mockups, diagrams, etc..

Tool supports:

  • attachment of image file to document objects,
  • displaying image attachments in the context of the related document object,
  • deletion of attachments

2.2.7 Sort

[DEMO-NEEDS-35] As a(n) Editor I want to order requirements by a chosen custom attribute so that I can display requirements sorted by priority, risk, effort, etc..

Tool supports sorting requirements by:

  • the natural document order,
  • value of a custom attribute.

2.3 Manage Requirements

2.3.1 Custom Attributes Configuration

[DEMO-NEEDS-19] As a(n) Architect I want to define additional requirements attributes so that the document can flexibly store additional requirement properties, such as requirement source, priority, status, etc..

Tool supports:

  • creation of a new custom attribute,
  • deletion of a custom attribute,
  • definition of following custom attribute types
    • number
    • date
    • boolean
    • single and multivalue enumeration
    • string / rich formatted text

2.3.2 Custom Attributes

[DEMO-NEEDS-69] As a(n) Editor I want to set a value of a chosen custom attribute for one or more selected requirements so that I can define additional requirements properties, such as requirements source, prioritize requirements, manage requirement status, define acceptance criteria, etc..

Tool supports:

  • setting requirements source, priority, status and acceptance criteria
  • setting and resetting a value of a custom attribute for multiple requirements

2.3.3 Traceability Configuration

[DEMO-NEEDS-16] As a(n) Architect I want to define types of relationships between requirements so that users can perform traceability analysis for a chosen group of links.

Tool supports:

  • creation of at least one link type
  • definition of a start and end role for a link type
  • removal of a link type including all existing links

2.3.4 Traceability Links

[DEMO-NEEDS-21] As a(n) Editor I want to link related requirements so that I can analyze requirements coverage, gap in requirements and impact of requirement changes..

Tool supports:

  • creation of links with chosen link type between selected requirements,
  • deletion of links

2.3.5 Filter

[DEMO-NEEDS-34] As a(n) Editor I want to filter requirements so that I can identify and manipulate requirements matching a condition.

Tool supports filtering requirements:

  • by full text search in the object heading, text or a custom attribute
  • with the given traceability link type
  • in the given section

2.3.6 Search

[DEMO-NEEDS-36] As a(n) Editor I want to find keywords so that I can identify and manipulate requirements containing the searched keyword(s).

Tool supports searching requirements containing a given keyword.

2.4 Review Requirements

2.4.1 Discussion

[DEMO-NEEDS-24] As a(n) Reviewer I want to comment requirements so that I can provide feedback during requirements review.

Tool supports:

  • commenting a selected requirement,
  • displaying discussion for a selected requirement.

2.4.2 Traceability Browser

[DEMO-NEEDS-30] As a(n) Reviewer I want to trace related requirements so that I can perform coverage, gap and change impact analysis.

Tool supports:

  • displaying linked requirements ordered by link type
  • changing focus to a selected requirement
  • filtering requirements with missing traceability links of a given link type

2.4.3 Print

[DEMO-NEEDS-29] As a(n) Reviewer I want to print a document view so that I can review requirements without the need to run the tool.

Tool supports:

  • printing a document with the same layout as it is displayed,
  • saving the document as PDF with the same layout as it is displayed.

2.5 Audit Trail

2.5.1 History of Changes

[DEMO-NEEDS-26] As a(n) Editor I want to list all requirement changes so that I can understand how the requirement evolved in time.

Tool supports:

  • displaying history of changes for a selected requirement.

2.5.2 Traceability Report

[DEMO-NEEDS-23] As a(n) Reviewer I want to generate a traceability report so that I can analyze coverage, gaps and impact of requirements changes.

Tool supports:

  • generation of a custom traceability report which visualizes end-to-end requirements traceability

2.6 Integrations

2.6.1 Import from Word

[DEMO-NEEDS-27] As a(n) Editor I want to import a requirements specification from a MS Word document so that I can reuse existing requirements specifications or other structured documents.

Tool supports:

  • import of MS Word HTML preserving structure of document sections and paragraphs and image attachments
  • pasting of a text or a HTML fragment to requirements description.

2.6.2 Import from Excel

[DEMO-NEEDS-71] As a(n) Editor I want to import requirements from a MS Excel spreadsheet so that I can import or update list of requirements.

Tool supports:

  • import of new requirements from a CSV file including custom attribute values
  • updating requirements from a CSV file including custom attribute values

2.6.3 Export to Word

[DEMO-NEEDS-28] As a(n) Editor I want to to export structured requirements specification to MS Word so that I can share requirements specifications with users without the tool.

Tool supports:

  • export of a document to a HTML file,
  • import of an exported HTML file to a MS Word document preserving requirements structure and content

2.6.4 Export to CSV

[DEMO-NEEDS-72] As a(n) Editor I want to export filtered list of requirements to MS Excel so that I can reuse or update requirements in another application.

Tool supports:

  • export of filtered list of requirements to a CSV file.

3 Constraints

3.1 Startup Time

[DEMO-NEEDS-39] As a(n) Editor I want to quickly start the tool so that I do not need to wait long time for editing a project.

Tool starts in less than 10s even for large projects.

3.2 Edit Response Time

[DEMO-NEEDS-41] As a(n) Editor I want to edit effectively requirements in large documents so that I can work without waiting for tool responses.

Tool updates view after any edit operation in a document with 10000 requirements in less than 1s.

3.3 Document Size

[DEMO-NEEDS-44] As a(n) Editor I want to create large requirements specifications so that I can capture all requirements in a single document even for complex system development projects.

Tool can store documents with 10000 requirements and 100 attachments of total size 100 MB.

3.4 Security

[DEMO-NEEDS-42] As a(n) Editor I want to store confidential information in the tool so that I can be sure that no confidential information is sent to the Internet or is compromised by an unauthorized application.

Tool stores all project data in an encrypted persistent application storage and does not send any project information to the internet without user consent.

3.5 Compatibility

[DEMO-NEEDS-51] As a(n) Editor I want to run the tool in a browser so that I run the tool on my computer running Windows, Linux or Mac operating system without a need to install it.

Tool runs in the latest version of Chrome and Firefox browsers on Windows PC, Linux PC and a Mac.

Updated for version 2.7.0