Requirements Project

Project Structure

Document

ReqView projects are organized into one more documents grouping the same type of project artifacts, e.g. high level stakeholder requirements, system requirements, software requirements, tests or risk register.

Document Object

Documents consist of document objects organized into a tree hierarchy with numbered sections, similarly as in a Word document. Document object are identified by an automatically generated unique ID and consists of a section heading, a rich text description and a discussion.

For each document, you can define additional custom attributes extending information about document objects. For example, for requirements you can define status attribute allowing to manage requirement lifetime.

You can also create relation between document objects stored in the same project by means of traceability links. You can assign a custom link type to set of traceability links representing relations with the same semantic, e.g. “satisfaction” type for links from downstream requirements to related upstream requirements, “verification” type for links from verification tests to the related requirements, etc. It is important to keep the way of linking to ensure consistent traceability reports.

Examples

Software Project

The following picture illustrates structure of a typical SW development project with two traceability levels:

SWDevelopmentProject.png

Level 1 Documents:

  • USER NEEDS - the highest level User Stories formulated using “As a [type of user], I want [some goal] so that [some reason].” template

Level 2 Documents:

  • SW REQUIREMENTS - Software Requirements Specification (SRS) containing detailed downstream software requirements derived from the user stories
  • VERIFICATION TESTS - test cases verifying specific elements of the SW

Traceability Links Types:

  • Satisfy - satisfaction links from SW requirements to user needs (M:N)
  • Verify - verification links from verification tests to SW requirements (M:N)

System Project

The following picture illustrates structure of a typical system development project with three traceability levels:

SystemDevelopmentProject.png

Level 1 Documents:

  • RISKS - project risks described by means of Failure Mode and Effects Analysis (FMEA)
  • USER NEEDS - the highest level user requirements specification
  • VALIDATION TESTS - description of system validation procedures and information about validation reports

Level 2 Documents:

Level 3 Documents:

  • SW REQUIREMENTS - Software Requirements Specification (SRS) containing detailed downstream software requirements derived from the system requirements
  • VERIFICATION TESTS - description of software verification procedures and the related verification reports

Types of Traceability Links:

  • Mitigate - mitigation links from system requirements to the related failure modes (M:N)
  • Satisfy - satisfaction links from downstream requirements one level up to the original requirements from which they were derived (M:N)
  • Validate - validation links from validation procedures to user requirements (M:N)
  • Verify - verifications links from verification procedures to the related software o system requirements (M:N)

Project Data Storage

Application Persistency

ReqView stores the current project data in a persistent local application storage and restores automatically the project state after application restart. No project data are sent to Internet (unless you explicitly upload your project to Google Drive).

File System

You can also save the current project on your local or network file system either as a Project File or a Project Folder. The project is saved in JSON format (see ReqView Open File Data Format) which advantage is that data are human readable. You do not need to install any database server as the JSON files can be easily managed in a Version Control System (VCS), e.g. SVN, GIT, HG, ….

Project File

A Project File stores all project data - configuration, document objects, attachments and traceability links in a single file with .reqw extension so that you can easily send it by email or share it in cloud.

You can optionally secure a Project File with industry strong AES256 encryption and a password.

Project Folder

A Project Folder stores all project data in separate files. The folder contains project.json file with configuration of project documents and traceability.

Each document is stored as a separate file in the documents subfolder and each attachment file is stored in the attachments subfolder. The following picture illustrates an example Project Folder structure on the file system:

ReqView Project Folder
|   project.json
|
+---attachments
|       SRS-326_0_ReqView File Data Format.pdf
|       SRS-40_0_Overview.png
|
\---documents
        NEEDS.json
        SRS.json
        TESTS.json

Advantage of Project Folders is that they keep the project documents and attachments separated on the file system to minimize editing conflicts if the project is managed under a VCS. They also enable the basic team collaboration by means of Document Exclusive Edit Mode.

Open Project

You can open a Project File by File > Open File menu or using CtrlO keyboard shortcut. Similarly, you can open a ReqView Project Folder by File > Open Folder menu item or using CtrlShiftO keyboard shortcut.

Save Project

All your modifications of the current project are automatically saved during editing the opened project into the local application storage. You can save the opened Project File or Project Folder on the file system by File > Save menu item or CtrlS shortcut.

You can explicitly save the current project as a new Project File stored in your file system by File > Save As File… menu item or save it as a new Project Folder by File > Save As Folder…. In Save Options dialog, you can select several options:

  • Encrypt File - if checked then the saved Project File is encrypted with AES256 encryption using a custom password,
  • Save View - if checked then the saved project stores also the current view configuration for all documents, e.g., state of visible columns in the Requirements Table and
  • Save History - if checked then the saved project stores history of all requirement changes.

Setup Project

Create New Project

You can create a new project using Project > New Project… menu. In New Project dialog enter a unique project ID, document ID and document name. You can also choose to create an empty document or create it from a predefined document template:

NewProject.png

Each project in your organization should have a unique ID (e.g. “ReqView”). Also, all documents within a project should have a unique ID (e.g. “SRS” or “TESTS”).

You can change document name also later in Document Properties dialog opened by Document > Document Properties menu or by clicking on document ID in the left upper corner. But project and document IDs cannot be changed once it is set.

Create Document

You can create a new document using Project > Add Document… menu. In New Document dialog enter a unique document ID and document name. You can also choose to create an empty document or create it from a predefined document template.

For information how to set custom document attributes see section Custom Attributes > Attributes Definition Editor.

Delete Document

You can delete the current document using Project > Delete Document… menu.

Reorder Documents

You can change order of documents by drag & drop of document tabs displayed under the requirements table. If your project was opened from a Project File then the new order is saved when you save the Project File. However, if your project was opened from a Project Folder then the new order is immediately saved into the Project Folder to minimize editing conflicts.

Traceability Configuration

For the detailed information how you can configure project traceability see documentation section Traceability Links > Setup Project Traceability.

Document Templates

You can reuse a document structure and its custom attributes configuration by creating a custom Document Template. Document Templates preserve document hierarchy, section headings, text description of objects and value of custom attributes but they do not store object ID, discussion, history nor any traceability links.

You can save the current document as a Document Template using File > Save As Template > Current Document menu and share it on a network drive.

You can create a new document in the current project from a Document Template file by File > Open File menu. Note that all document objects stored in the document templates get new IDs.

Project Templates

You can reuse the whole project configuration by creating a Project Template. Project Templates store a collection of Document Templates and a traceability configuration.

You can save the current project as a Project Template by File > Save As Template > Project menu

You can create a new project from a Project Template file by File > Open File menu.

Demo Project

When you start ReqView the first time then the application starts a New User Tour and opens an example Demo Project to help you start with ReqView more easily.

DemoProject.png

The Demo Project consists of the following documents demonstrating different set of custom attributes and different types traceability links:

  • NEEDS - example high level user requirements described by user stories
  • SRS- example software requirements specification
  • TESTS - example tests specification
  • RISKS - example project risks register using FMEA

You can open the ReqView Demo project also later by closing your current project and clicking on Demo Project button displayed in the center pane under “No project is loaded.” message.

Updated for version 2.5.0