You can connect ReqView with Sparx Systems Enterprise Architect (EA) to benefit from an integrated Model-Based Systems Engineering (MBSE) solution.
Note: ReqView supports integration with EA version 17+ on Windows 10+.
With ReqView and EA integration, you can follow this workflow:
Follow these steps to set up ReqView and EA integration:
To enable EA integration in ReqView, click Edit, select Preferences, and tick Integrate with Enterprise Architect.
When EA integration is enabled, ReqView installs a ReqView EA Plugin for reading and updating EA models from ReqView. The plugin also provides the Specialize > Open in ReqView item in the context menu for EA model elements:
Note: The plugin requires .NET 8.0 Runtime. Download Windows x64 Installer if .NET 8.0 Runtime is not installed on your computer.
To configure export of requirements from the current ReqView document to the EA, click File, select Enterprise Architect and then Configure Synchronization. In the Configure Synchronization With EA dialog, update the configuration in the JSON format:
Configuration Properties:
action
– “export” string to export the document from ReqView to EA.eaProjectPath
– the path to the EA project file (e.g. “C:/path/to/EA-project.qea”).eaPackage
– the tree path to the target Model Package in the EA model for exporting requirements. The path is defined as an array of model tree nodes ordered from root to the target (["<model name>", "<...>", "<package name>"]
(e.g., “["Model", "SRS"]”).eaElementNotes
– the source ReqView attribute or template column to set the EA element Notes (e.g., “text”).eaStereotype
– the mapping of ReqView object types to EA Stereotypes.
reqviewAttribute
– the ReqView custom attribute describing the type of document objects (e.g., “type”).mapping
– JSON object describing how to set EA element stereotypes according to the type of ReqView document objects.
reqviewAttribute
(e.g., “FR” or “NFR”).eaTaggedValues
(optional) – JSON object describing how to set Tagged Values of EA model elements.
traceabilityMapping
(optional) – JSON object describing how to map ReqView link types to stereotypes of EA Links.
Example: Open the Example Project and configure the EA integration to export functional and non-functional requirements from the document SRS to a corresponding package in your EA project.
In EA, find the path of your project file. First, select File > Open Project… from the main menu. In the Manage Projects dialog, right-click on the project, choose Edit connection string, and finally copy the path to clipboard.
In ReqView, configure the document SRS for export to EA.
Open the document SRS and select File > Enterprise Architect > Configure Synchronization from the menu. In the Configure Synchronization With EA dialog, enter the following configuration:
{ "action": "export", "eaProjectPath": "D:/work/reqview/EAExample.qea", "eaPackage": [ "Model", "SRS" ], "eaElementNotes": "text", "eaStereotype": { "mapping": { "functionalRequirement": "FR", "nonfunctionalRequirement": "NFR" }, "reqviewAttribute": "type" }, "eaTaggedValues": { "reqview.rationale": "rationale", "reqview.verification": "verMethod" }, "traceabilityMapping": { "satisfaction": "satisfy", "verification": "verify" }}
Set the configuration property eaProjectPath
to the path of the target EA project (backslashes in the path must be doubled or replaced with forward slashes). Set the configuration property eaPackage
to the path of the target package in the EA model:
Note that:
The property eaStereotype.reqviewAttribute
is set to “type” because ReqView document SRS defines the custom enumeration attribute type to describe the type of document objects, see also Customize Attributes.
The property eaStereotype.mapping
is set to create EA model elements as follows:
The property traceabilityMapping
is set to use EA link stereotypes «satisfy» and «verify» for satisfaction and verification ReqView links respectively. Only links of these mapped link types will be exported to EA.
To configure import of design documentation from an EA model to the current ReqView document, click File, select Enterprise Architect and then Configure Synchronization.
Configuration Properties:
action
– “import” string to import model elements from EA to ReqView.eaProjectPath
– the path to the EA project file (e.g. “C:/path/to/EA-project.qea”).eaPackage
– the tree path of the source EA Model Package. The path is defined as an array of model tree nodes ordered from root to the source (["<model name>", "<...>", "<package name>"]
(e.g., “["Model", "ElectricalCircuit"]”).eaTaggedValues
(optional) – JSON array containing names of EA Tagged Values to be imported to ReqView.traceabilityMapping
(optional) – JSON object describing how to map ReqView link types to stereotypes of EA Links.
Example: Configure the EA integration to import the EA model package Model > ElectricalCircuit into a new ReqView document EC-DESIGN. For each EA model element, import also the value of EA tag memoTag and links with the stereotype «trace» leading from design to requirements.
In EA, find the path to your project file as described in Step 1 of the Example provided in Section Configure Export to EA.
In ReqView, create the document EC-DESIGN to store the imported EA model elements.
Select Project > Add Document from the main menu and in the Add Document dialog, select “Blank” as the Template and enter “EC-DESIGN” as the Document ID.
In ReqView, create a traceability link type implementation for imported EA links from design to requirements.
Select Project > Project Traceability from the main menu and check if the project traceability contains a link type with Link Type ID set to “implementation”. If not, create this link type.
In ReqView, configure the document EC-DESIGN for import from EA.
Open the document EC-DESIGN and select File > Enterprise Architect > Configure Synchronization from the menu. In the Configure Synchronization With EA dialog, enter the following configuration:
{ "action": "import", "eaProjectPath": "D:/work/reqview/EAExample.qea", "eaPackage": [ "Model", "ElectricalCircuit" ], "eaTaggedValues": [ "memoTag" ], "traceabilityMapping": { "implementation": "trace" }}
Set the configuration property eaProjectPath
to the path of the source EA project (backslashes in the path must be doubled or replaced with forward slashes) and the configuration property eaPackage
to the path of the source package in the EA model:
Note that:
The property eaTaggedValues
is set to an array containing the EA tag memoTag. Each EA model element is imported to a document object having the value of the attribute memoTag same as the tag.
The property traceabilityMapping
is set to use implementation ReqView link type for EA links with the stereotype «trace» from design to requirements. Only EA links with this stereotype will be imported to ReqView.
To export requirements from ReqView to EA, open the source ReqView document configured as described in Configure Export to EA, click File, select Enterprise Architect, and then Synchronize Document.
The integration iterates the document and creates new EA model elements or updates the previously exported ones as follows:
Stereotype – property of target model element in EA is based on the type of source requirement in ReqView as defined by the configuration property eaStereotype
(e.g., “functionalRequirement”).
Hierarchy – of target EA model elements preserves the parent-child relationship of source requirements in ReqView.
Notes – property of target model element in EA is set to the attribute text of the source requirement. Optionally, you can adjust the configuration property eaElementNotes
to use a custom attribute or a template column instead.
Tags – of target model elements in EA are set as follows:
“reqview.id” and “reqview.guid” – the id and guid of the source requirement respectively.
“reqview.url” – the ReqView URL Link of the source requirement. ReqView will open and focus the requirement if you click on this link.
other tags are set as specified in the configuration property eaTaggedValues
.
For example, “reqview.rationale” and “reqview.verification” can be set to the rationale and verification method of the source requirement:
Links – between exported model elements have the stereotype specified in the configuration property traceabilityMapping
.
ReqView is the source of truth of this information in the exported EA model elements. EA users should not modify it because ReqView will overwrite it during the next export to EA. However, EA users can update other properties, tags and links for exported EA elements as needed to design a solution for requirements in EA.
ReqView automatically creates the following custom attributes in the source document to ensure bidirectional linkage after export to EA:
“GUID” (id: “eaGuid”, type: string) – is set to the GUID of the target EA model element.
“URL” (id: “eaUrl”, type: xhtml) – is set to the URL link of the target EA model element. ReqView will open EA and focus the model element if you click on this link.
“EA Links” (id: “eaLinks, type: xhtml) – is set to URL links of all linked EA elements.
You can repeat the export of requirements to EA for each updated version of the source document. ReqView will update EA model elements created earlier or create model elements for new requirements added since the last export. Requirements deleted (or purged) in ReqView will not be exported and will also be removed in EA.
To import a package from EA, open the target ReqView document configured as described in Configure Import From EA, click File, select Enterprise Architect, and then Synchronize Document.
The integration iterates the EA model and creates new ReqView objects or updates the previously imported ones as follows:
Hierarchy – of target document in ReqView preserves the tree hierarchy of the source EA package.
Heading and Text – of target document objects are set based on Name and Notes properties of source EA model elements.
Custom Attributes – of target document objects are set as follows:
Other custom attributes are set as specified in the configuration property eaTaggedValues
.
Attachments — diagrams are imported from EA as SVG image attachments and are displayed in the Description column of the target document object in ReqView.
Links – to/from counterpart document objects corresponding to linked EA elements are displayed in the Links column. ReqView link type is specified in the configuration property traceabilityMapping
.
EA is the source of truth of this information for source model elements. ReqView users should not modify the document because ReqView will overwrite it during the next import from EA.
ReqView automatically sets the following tags for source EA model elements to ensure bidirectional linkage after import from EA:
You can repeat the import of the EA package for each updated version of the model. The process will replace the entire document contents with the new version of the model.
Note: All changes of the target document made manually by ReqView users (created objects, updated attributes or attachments, created links originated in that document, etc.) since the last import will be lost.
Example: Import design documentation from the EA package ReqView Model > ReqView Implementation to the document EA-ARCH in ReqView.
Source model element SW Package Diagram in EA:
Imported package diagram in ReqView document EA-ARCH:
To synchronize the current ReqView project with EA, click File, select Enterprise Architect, and then Synchronize All.
You can try ReqView integration with EA easily. We have configured the Example Project for:
Follow these steps: