[Deprecated] Assertion Manager

Warning: This documentation is out-dated, newest version of the documentation is available at https://gazelle.ihe.net/gazelle-documentation

Click to here to enter Assertion Manager 

Tool Overview 

The assertion manager aims at linking Requirements (assertions) to the entity covering them.

An assertion can be covered by a :

  • Test
  • Test step
  • Technical framework rule
  • Model based validation. 

The assertion manager is linked to gazelle Test Managment in order to link assertions to test, test steps and technical framework rules.

The assertion manager can be linked to multiple model based validation services.

The assertion Manager provides a web service to query assertions, the api is described here.

Concepts

Assertions

click on "Assertions" link in the menu bar.

An assertion is the expresion of a requirement.

An assertion is linked to an IdScheme.

An assertion is composed of:

  • AssertionId
  • Predicate
  • Prescription level
  • Section
  • Page
  • A document

IdSchemes

click on "Id schemes" link in the menu bar.

An IdScheme is used to group assertions from one document.

It is used to import assertions.

It provides coverage feedback.

Delete

Deleting one idScheme will delete all the assertions it contains.

To delete one IdScheme, click on the delete icon 

A confirmation panel will appear then click on the delete button.

View Xml

Click on the button: 

It will open a new window containing the xml that describes the idSchemes and its assertions.

View IdScheme documents

Click on the button: 

It will list documents belonging to assertions in this idScheme.

You can edit the document details by clicking on the Edit button:

Scopes

click on "Scopes" link in the menu bar.

A scope provides a way to group assertions that are in different IdScheme.

A scope contains assertions and one assertion can be in 0 or multiple scopes.

 

Delete

Deleting one Scope will not delete the assertions it contains.

To delete one scope, click on the delete icon 

A confirmation panel will appear then click on the delete button.

 

Import assertions

Assertions can be imported into the AssertionManager. One assertionId must be unique in one idScheme.

Please use the following template to create your assertion file: http://gazelle.ihe.net/files/AssertionTemplate.xml.

Then go to the IdScheme page and click the + Add button.

Select your .xml file containing your assertions.

If the uploaded xml file contains an assertion that is already in assertion manager, then the assertion properties will be updated.

Assertion Coverage

An Assertion can be covered by:

  • A test
  • A test step
  • A rule
  • A Model based validation

Assertion manager queries gazelle test managment to list all tests, test steps and rules available.


 

Configure gazelle_test-managment-url into administration page to point to your test managment instance (example: http://gazelle.ihe.net/GMM/rest/).

Touch the deployed package so that new configuration are taken into account.

in the following chapters you will learn how to cover an assertion.

Test

click on "Coverage" then "Test to Assertions" link in the menu bar.

 

To link a test to an assertion:

Select a domain and integration profie.

Select a test by clicking the select link on the test row.

it will display the test description and enable "Link to" and "Unlink" buttons in the right pane.

Click on the "Link to" in the assertion row to link to the selected test.

The button will become an unlink button in red.

 

Test Step

Click on "Coverage" then "Test steps to assertions" menu link

A test steps belongs to test so as linking a test to an assertion, select the test.

Then select the test step by cliking on the test step row.

Rules

Click to "Coverage" then "Rules to assertions" menu link

To link a rule to an assertion.

1. Search the rule to link with the rules filtering section number 1

2. Rules will appear in the Filtered rules section, Select the rule to link in the section number 2, by clicking the select link in the rule row.

3. Assertion linked to the rule will appear in the section number 3

4. Search the assertion to link with the rule using the section number 4

5. In the section number 5, link the assertion to the rule by clicking the Link to button. The section number 3 is updated.

 

Assertion Applies to

 

Assertion can be applied to: an Actor, an AIPO, an Audit message, an Integration profile, a Standard, a Transaction

It work the same way for linking all the entities mentionned above, so only one will be demonstrated.

Click to "Apply to" then "Actors" menu link

Filter and/or Select an "actor"

The actor description appears

Filter to select the assertion to link. Click "Link to" button

Model based validation service (MBVservice)

 

Assertion manager can fetch assertion coverage from services that provides coverage services.

To provide a coverage service implement net.ihe.gazelle.assertion.ws.WsInterface from artifactId: gazelle-assertion-ws-coverage-provider and groupId: net.ihe.gazelle.assertion.

List of services that provides an assertion coverage service:

  • CDAGenerator
  • GazelleHL7Validator
  • XdStarClient

 

Configuration

Go to Administration -> Mbv Services

The page lists all registered Mbv Services.

You can add, update, Delete a mbv Service and synchronize coverages.

 

Add a MbvService

To add a new Mbv Service click Add new mbv service.

Set the keyword.

Set the url to the service without trailing slash, example: http://gazelle.ihe.net/CDAGenerator.

Click the Add new mbv service button

Edit

Click the edit button in the service row. 

Click the update this mbv service button

Delete

Click the delete cross in the mbv service row. 

 

Coverage Synchronization

Click on the synchronize button 

It will fetch the assertions covered by the service and display the synchronization status:

  • Covered assertions: Assertions that are covered by the service and in Assertion manager.
  • No more covered: Assertions that are no longer covered by the service and in Assertion manager.
  • Missing assertions: Assertions that are covered by the service but not in Assertion manager.

 

 

Coverage FeedBack

Assertion manager provides coverage details.

Idscheme Page

For each idScheme coverage statistics are displayed, and a progress bar to visualize assertion coverage.

  • #Covered throuh tests
    • Number of assertions covered by a test or testStep or more
  • #Covered throuh rules
    • Number of assertions covered by a rule or more
  • #Covered throuh MBV
    • Number of assertions covered by MbvService validation or more

 

 

Assertions list page

This page lists all assertions and displays coverage statistics by assertion.

 

  • #Covered by tests
    • Number of test or testSteps covering the assertion
  • #Covered by rules
    • Number of rules covering the assertion
  • #Covered by MBV
    • Number of validations perfromed by MbvServices covering the assertion

 

 

Assertion detail page

When viewing an assertion, a coverage section is visible.

The coverage section lists all the entities covering the assertion and provides a link to the entity.

It is possible to unlink a Test, Test step, rule from this page. When clicking the Unlink button, a confirmation panel is displayed.

 Short video tutorial

Create idScheme, assertions and scopes