Prolaborate 3.6 web solution for Enterprise Architect is a new release available to download from Sparx Systems registered user area.
This article illustrates enhancements on the "EA Reports" widget and a new feature to create relationships between elements.
EA Reports widget enhancements
Access to a published repository in Prolaborate web solution starts with the default dashboard. Dashboards are made of widgets which can be easily organized within the working area.
Below is a dashboard using Enterprise Architect example model. It contains two widgets: a diagram preview, and a list of links to diagrams.
Clicking on the drop-down list, a user can move to the reporting dashboard, EA Reports.
The "EA Reports" dashboard is opened:
EA Report is a dashboard widget to create a report (table) displaying information from the models based on a custom configuration, e.g. the list of classes with their alias, version, created and modified date/time. This configuration can either be defined via a designer tool, or via custom SQL queries, similarly to Enterprise Architect model searches. This is a convenient way to access model information with the option to enable access to an element's properties and subsequent navigation within the model (traceability, diagram usage).
Prolaborate 3.6 introduces the following enhancements on the EA report widget:
- Spaces support in column headers e.g. "class name" and "modified date/time" in the example below.
- Any column can be made "clickable" i.e. access to an element's properties can be moved from the default Name column to any other column (this requires selecting the element guid as classguid in the query when SQL is used).
- Apply custom rendering on the results by integrating HTML to be visually more appealing (colours, font, etc.).
In the following example, I have a custom SQL-based report to list classes from a specific package, and a sub report to open the list of attributes for a selected class.
- "select "Properties" as "clickable_Class Properties": the first column is set as clickable. Access to the class properties will be available by clicking on "Class Properties" in the report.
- "t_object.name as "Class name": the class name column's header is "Class name" i.e. spaces are allowed.
A new "Modify Look & Feel" area is available with an Add Column button. In the example below, I defined rendering options on the "version" column based on each value: display a coloured bullet followed by version 1.0 in blue, version 1.1 in red, and version 2.0 in green and bold.
Additional settings have been applied on the class name to show specific classes in bold: stockitem, lineitem, and order.
Clicking on the entry under the Class Properties opens the properties, here with the traceability tab:
IMHO, the space character support in the headers and the choice of the column to open a element's properties can be useful. The HTML-based look and feel editor is an interesting feature to enhance the rendering for the report ; a wildcard support (e.g. Order*) would be useful to define common rules based on the value prefix, suffix, or other.
Create relationships between elements in Prolaborate
Prolaborate 3.6 allows users to create pre-configured connectors between elements e.g. stereotyped dependencies between classes.
- A custom attribute needs to be created in the Modeling Languages configuration.
- In the Modeling Languages configuration, open a profile in the form designer: Manage Profiles > select a profile > Edit, select an element e.g. UML::Class > Form Designer.
- Move the new connector custom attribute (Trace Dependency):
- Save and update the profile.
- Open the properties of a class; a new zone is available to create "trace" dependency links with other classes.
- Clicking on Add New, a class to link can be selected:
- Once saved, the associated class is available from the list:
- Opening the traceability tab, the new link is available:
Allowing specific users to add connectors can be useful as an additional way to contribute, update the model repository. Note: if the right permissions are granted, users can already update text fields such as descriptions, tagged values, etc.