Non-Functional Requirements Analysis

Enterprise Architect is a sophisticated requirements development and management platform allowing any type of requirement to be modeled including built in support for Non-Functional requirements or quality attributes as they are sometimes called. These requirements typically express how well the behavior expressed by the functional requirements must perform. Enterprise Architect has a purpose built element to model these important requirements and a facility to link them to any other elements including Use Cases, User Stories and Functional Requirements. These relationships can be displayed in a variety of diagrams and windows or generated out to documentation making them available to project stakeholders who are not working in the repository. There is also the opportunity to reuse these requirements across multiple projects or programs of work.

Specification Manager

The Specification Manager is the primary tool for working with text based elements such as Non Functional Requirements. These and other requirements can be created directly in the Specification Manager and their name and descriptive text can be added in a compelling Word Processor or Spreadsheet like format. Other built-in properties such as status, version and phase can be managed directly in the columns of the Specification Manager and where property lists are available these can be chosen or changed from drop down lists. Additional properties in the form of Tagged Values can also be managed from within the Specification Manager. The Non-Functional Requirements visible in the Specification Manger can be included on diagrams if necessary and linked to other modeling elements.  Changing any of the Requirement's details in the Specification Manger will update the element in all other locations such as diagrams and vice versa, since there is a single element in the Repository that is visible in many views.

Learn More: Specification Manager

Requirements Diagram

The Requirements diagram can be used to model Non Functional Requirements. These requirements are often displayed using a package element showing the category of the requirement. In other diagrams the modeler can show the Non Functional requirements linked to other elements such as Use Cases and User Stories or Functional Requirements. Traces could also be created between the Non Functional Requirements and system components or Interfaces that implement the requirements.

Learn More: Requirements Diagram

Documentation

Enterprise Architect has a powerful and flexible documentation generator that can produce Docx and RTF Word Processor files, PDF and HTML reports. The Non Functional Requirements stored in the repository can be conveniently generated and included in documentation. The Requirements can be included under headings in the report that group the Non Functional requirements by quality attributes such as Extensibility, Maintainability and more. A sophisticated template facility exists that provides a range of in-built templates and allows the user to create their own templates defining styles, images and a wide range of other formatting options.

Learn More: Documentation

Element Discussions

Team members will often want to comment on or question the definition or details of a Non Functional Requirement. The Element Discussion facility provides a perfect mechanism for conducting these conversations about Non Functional Requirements. The discussions are posted in a purpose built window and are kept separate from the notes and details of the element. This ensures that the Requirements definition is not 'polluted' with comments that are intended for modelers rather than other stakeholders. As the discussions are posted a summary window conveniently displays the latest entries across the entire repository.

Learn More: Element Discussions

Relationship Matrix

The Relationship Matrix is a powerful and compelling tool for visualizing the relationships between two sets of elements. The Non Functional Requirements can be related to a number of different sets of elements including Use Cases, User Stories, Functional Requirements and System Components and the Interfaces that implement them. A number of different Matrices could be created with the Non Functional Requirements on one axis and a different set of elements on the other axis in each of the matrices. The Matrices can conveniently be saved as resources and also exported to a Spreadsheet file.

Learn More: Relationship Matrix

Import and Export Spreadsheets

It is common for analyst to have started their modeling of Requirements including Non Functional Requirements in a Spreadsheet or to want to manipulate existing elements in a Spreadsheet. Enterprise Architect has a flexible and configurable tool for importing and exporting elements from a CSV file which can be imported and exported from a Spreadsheet. Any type of element can be imported or exported to the spreadsheet file but it is particularly common to use the facility with Requirements including Non Functional Requirements. Names, Description, built-in properties and extended properties in the form of Tagged Values can be imported or exported. The tool provides a flexible Specification window where the mapping between element properties and the columns in the Spreadsheet and other parameters can be defined and saved. Essentially the columns of the spreadsheet define the properties and each element is specified in a row.

Learn More: Import and Export Spreadsheets

Baselines

The Baseline Tool is used as a type of backup and recovery tool and can capture a snapshot of the Non Functional Requirements at a point in time and then at a later time the repository can be compared to this (or another baseline) for the purpose of determining what has changed. It is possible to revert the current model back to a state captured in the baseline at the level of a granular change.

Learn More: Baselines