Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

This tool is primarily for the creation, maintenance, and release of reference sets (or local sets) and translations. The tool uses a workflow extension point to support the movement of refsets and translation concepts through "available" and "assigned" states for authors and reviewers and eventually to a "ready for publication" state where it can be subjected to the Mapping Tool Release Process.

Refsets and concept translations are tracked through the workflow with a "workflow status" that represents a state in a workflow state transition diagram.  There are "workflow actions" that support changes in underlying workflow status and they are supported for certain combinations of roles.  Typically the "ADMIN" role is for seeing the state of work and force-unassigning work from users no longer participating but whom have work assigned to them.

Roles

The application defines three four roles that can be used

  • AUTHOR (for initial authoring of refset members or translation concepts)
  • REVIEW (for review of author's work).
  • REVIEW2 (for secondary review following the IHTSDO translation workflow
  • ADMIN (for administation tasks)

WorkflowActionHandler

The tool uses a configurable workflow handler to determine how state transitions happen in workflow in response to different events.  As much as possible, the application has attempted to generalize workflow interactions between client and server to allow the workflow handler to complete define what capabilities are available at what time and by which roles.

Implementations of the handler implement the following capabilities

  • Find "available" work (for a user and a role) - either "refsets" or "translation concepts"
  • Find "assigned" work (for a user and a role) - either "refsets" or "translation concepts"
  • Find the available "roles" supported by this workflow (e.g. is REVIEW2 needed?)
  • Get a "workflow config" object that defines what functions are allowed under certain circumstances and the roles that certain actions are to be performed with given the current state of a refset or concept.  This allows the user interface to be freed from any business logic related to workflow
  • Perform an actual workflow action (like ASSIGN, UNASSIGN, FINISH, etc.)
  • Validate a workflow action - prior to performing it, ensures conditions are such the action is allowed- and fires friendly error messages if not.

The user interface leverages the WorkflowConfig object in conjunction with the user's role to determine if and when an workflow action icon should appear and what happens upon clicking it.  This allows a near-complete abstraction of workflow operations to the backend.

User Interface

Workflow actions appear in the user interface when a user has a role on a particular project that allows for participating in the workflow.  Typically, this means having an "AUTHOR", "REVIEWER", or "REVIEWER2" role while using the "Refset" or "Translation" tabs.  The section below shows the icons used in the user interface to drive workflow actions.

Default Workflow

The default workflow implementation makes use of these roles:

  • AUTHOR
  • REVIEWER
  • ADMIN

It supports the following workflow actions:

  • (Image Added) ASSIGN - for assigning a worklist to an AUTHOR or REVIEWER 

  • (Image Added) UNASSIGN - for returning an assigned worklist to the prior state (allowing a differnt user to assign it)

  • (n/a) SAVE - a non-advancement action in a typical workflow that indicates that authoring or review is "in progress".  No icon, this happens automatically.

  • (Image Added) FINISH - an indication that authoring or review work is completed and an item is ready to move to a different user.

  • (Image Added) PREPARE_FOR_PUBLICATION - an action to mark a refset or translation concept as completely authored and reviewed - at this point it is ready to be released.

  • (n/a) CANCEL - a non-operation in the worfklow

  • (Image Added) FEEDBACK - for assigning work back to a previous AUTHOR or REVIEWER in the workflow graph (e.g. for follow-up review).

The available workflow status values are:

  • NEW - indicating a brand new refset or translation concept to work on

  • EDITING_IN_PROGRESS - Indicates that authoring stage of the workflow is in progress and changes have been saved.

  • EDITING_DONE - Indicates that the authoring stage of the workflow is complete.
  • REVIEW_NEW - Indicates that a refset or translation concept is completely authored and ready for review.
  • REVIEW_IN_PROGRESS - Indicates that the review stage of the workflow is complete.
  • REVIEW_DONE  - Indicates that the review stage of the workflow is complete.
  • READY_FOR_PUBLICATION - Indicates that all editing is complete.

These two workflow status values are used by the release process to separate a "ready for release" refset or translation from a copy representing a fixed beta or final published state.

  • BETA - For a refset or translation, indicates that this copy represents a beta release state.
  • PUBLISHED - For a refset or translation, indicates that this copy represents a final release state.

 

Snomed Translation Workflow

The IHTSDO translation workflow exists to support a predefined workflow for translation concept editing.  For the most part, it is identical to the default workflow except that it supports a secondary review (by the REVIEW2 role) and so the state transition diagram is a little different

...