Health Ontology Mapper
Space shortcuts
Space Tools

 

Use Cases

for

CTSA Ontology Mapper

Version 0.2

Prepared by Marco Casale

CTSA Universities: UCSF, UCDavis, UPenn, UofR

March 25, 2008


Revision History

 

Name

Date

Reason For Changes

Version

Marco Casale

3/25/2008

Modified Use Case to handle multiple drugs and inclusive of all data types: EHR, clinical trials and genomics data

0.2

 

 

 

 

Marco Casale

3/31/2008

Modified Use Case 1 – replaced Redux with Avandia

Added Use Case 2 (created by Rob Wynden)

03

 

 

 

 

 

 

 

 

1.    Guidance for Use Case Template

Document each use case using the template shown in the Appendix. This section provides a description of each section in the use case template.

2.    Use Case Identification

2.1.     Use Case ID

Give each use case a unique integer sequence number identifier. Alternatively, use a hierarchical form: X.Y. Related use cases can be grouped in the hierarchy.

2.2.     Use Case Name

State a concise, results-oriented name for the use case. These reflect the tasks the user needs to be able to accomplish using the system. Include an action verb and a noun. Some examples:

  • View part number information.
  • Manually mark hypertext source and establish link to target.
  • Place an order for a CD with the updated software version.

2.3.     Use Case History

2.3.1 Created By

Supply the name of the person who initially documented this use case.

2.3.2 Date Created

Enter the date on which the use case was initially documented.

2.3.3 Last Updated By

Supply the name of the person who performed the most recent update to the use case description.

2.3.4 Date Last Updated

Enter the date on which the use case was most recently updated.

3.    Use Case Definition

3.1.     Actors

An actor is a person or other entity external to the software system being specified who interacts with the system and performs use cases to accomplish tasks. Different actors often correspond to different user classes, or roles, identified from the customer community that will use the product. Name the actor that will be initiating this use case and any other actors who will participate in completing the use case.

3.2.     Trigger

Identify the event that initiates the use case. This could be an external business event or system event that causes the use case to begin, or it could be the first step in the normal flow.

3.3.     Description

Provide a brief description of the reason for and outcome of this use case, or a high-level description of the sequence of actions and the outcome of executing the use case.

3.4.     Preconditions

List any activities that must take place, or any conditions that must be true, before the use case can be started. Number each precondition. Examples:

  1. User’s identity has been authenticated.
  2. User’s computer has sufficient free memory available to launch task.

3.5.     Postconditions

Describe the state of the system at the conclusion of the use case execution. Number each postcondition. Examples:

  1. Document contains only valid SGML tags.
  2. Price of item in database has been updated with new value.

3.6.     Normal Flow

Provide a detailed description of the user actions and system responses that will take place during execution of the use case under normal, expected conditions. This dialog sequence will ultimately lead to accomplishing the goal stated in the use case name and description. This description may be written as an answer to the hypothetical question, “How do I <accomplish the task stated in the use case name>?” This is best done as a numbered list of actions performed by the actor, alternating with responses provided by the system. The normal flow is numbered “X.0”, where “X” is the Use Case ID.

3.7.     Alternative Flows

Document other, legitimate usage scenarios that can take place within this use case separately in this section. State the alternative flow, and describe any differences in the sequence of steps that take place. Number each alternative flow in the form “X.Y”, where “X” is the Use Case ID and Y is a sequence number for the alternative flow. For example, “5.3” would indicate the third alternative flow for use case number 5.

3.8.     Exceptions

Describe any anticipated error conditions that could occur during execution of the use case, and define how the system is to respond to those conditions. Also, describe how the system is to respond if the use case execution fails for some unanticipated reason. If the use case results in a durable state change in a database or the outside world, state whether the change is rolled back, completed correctly, partially completed with a known state, or left in an undetermined state as a result of the exception. Number each alternative flow in the form “X.Y.E.Z”, where “X” is the Use Case ID, Y indicates the normal (0) or alternative (>0) flow during which this exception could take place, “E” indicates an exception, and “Z” is a sequence number for the exceptions. For example “5.0.E.2” would indicate the second exception for the normal flow for use case number 5.

3.9.     Includes

List any other use cases that are included (“called”) by this use case. Common functionality that appears in multiple use cases can be split out into a separate use case that is included by the ones that need that common functionality.

3.10.                       Priority

Indicate the relative priority of implementing the functionality required to allow this use case to be executed. The priority scheme used must be the same as that used in the software requirements specification.

3.11.                       Frequency of Use

Estimate the number of times this use case will be performed by the actors per some appropriate unit of time.

3.12.                       Business Rules

List any business rules that influence this use case.

3.13.                       Special Requirements

Identify any additional requirements, such as nonfunctional requirements, for the use case that may need to be addressed during design or implementation. These may include performance requirements or other quality attributes.

3.14.                       Assumptions

List any assumptions that were made in the analysis that led to accepting this use case into the product description and writing the use case description.

3.15.                       Notes and Issues

List any additional comments about this use case or any remaining open issues or TBDs (To Be Determineds) that must be resolved. Identify who will resolve each issue, the due date, and what the resolution ultimately is.


Use Case List

Primary Actor

Use Cases

Clinical Investigator (CI)

Search for Aggregated clinical study data, Create Custom Mapping

Integrated Data Repository (IDR)

Search for Aggregated clinical study data, Create Custom Mapping

Business Analyst (BA)

Create Custom Mapping

Protégé Prompt

Create Custom Mapping

 


Use Cases

Use Case ID:

1

Use Case Name:

Search for Aggregated clinical study data

Created By:

Marco Casale

Last Updated By:

Marco Casale

Date Created:

03/24/2008

Date Last Updated:

03/25/2008

 

Actors:

Clinical Investigator (CI), Integrated Data Repository (IDR)

Description:

A clinical investigator would like to search for all available aggregated clinical study data regarding the use of the drug: Avandia and its impact on cases of myocardial infarction (MI).

Trigger:

A Clinical Investigator is performing a study on the drug Avandia and a comparative study of related weight loss drugs for diabetes to determine if there is a common impact on cases of MI

Preconditions:

  1. The integrated data repository has both cases of MI and medication orders of Avandia or similar medications but does not have a direct relationship between them.

Postconditions:

  1. The Clinical Investigator obtains an aggregated de-identified data set regarding clinical trials or any patient encounters from the EHR on the use of Avandia and similar medications with any association related to MI. The data set is composed of variables from the IDR which are derived from electronic health record data, clinical trials data and genomics data.

Normal Flow:

1.1 The Clinical Investigator logs into the CTSA Ontology Mapper Application

1.2 The Clinical Investigator requests a list of pharmacy ontology maps.

1.3 The IDR’s Ontology Mapper sends a request to an HL7 CTS II terminology service requesting available pharmacy ontology maps.

1.4 The IDR Ontology Mapper receives a list of available pharmacy maps including : RxNorm, SNOMED-CT, Medi-Span GPI (Generic Product Identifier)

1.5 The Clinical Investigator selects Avandia from a custom built ontology for the clinical investigator’s healthcare system and requests a map from the custom built medication ontology to RxNorm, SNOMED-CT and GPI

1.6 The Ontology Mapper mines all data that uses the selected drug term (custom ontology) along with any of the ontology cross mapped terms.

1.7 The Ontology Mapper Aggregate Generator Rule is triggered to summarize the result set into an aggregated list of total clinical trials performed on Avandia with associated EHR and genomics variables associated with the study cohort.

1.8 The Clinical Investigator extracts the data set.

Alternative Flows:

5.1  The Clinical Investigator selects an alternative drug that is similar to Avandia for comparative analysis.

 

Exceptions:

1.0.E.1  The Ontology Mapper is notified that there are no available maps.  The clinical investigator can only use the internal custom ontology maps for the drug. Use Case 2 is triggered.

Includes:

5.1 Map Individual Element and Resolve Element Reference Information. The Ontology Mapper requests a HL7 CTS II Ontology Mapping Service to map the custom medication ontology to RxNorm.

5.2 Map Individual Element and Resolve Element Reference Information. The Ontology Mapper requests a HL7 CTS II Ontology Mapping Service to map the custom medication ontology to SNOMED-CT

5.3 Map Individual Element and Resolve Element Reference Information. The Ontology Mapper requests a HL7 CTS II Ontology Mapping Service to map the custom medication ontology to Medi-Span GPI

Priority:

 

Frequency of Use:

 

Business Rules:

Obtain current clinical research information for a projected research project

Special Requirements:

 

Assumptions:

 

Notes and Issues:

 

 


Use Cases

Use Case ID:

2

Use Case Name:

Create Custom Mapping

Created By:

Rob Wynden

Last Updated By:

Marco Casale

Date Created:

03/25/2008

Date Last Updated:

03/31/2008

 

Actors:

Clinical Investigator (CI), Business Analyst (BA), Integrated Data Repository (IDR)

Description:

A clinical investigator would like to have a custom ontology mapping creating in the IDR.

Trigger:

A CI has a need for a custom ontology mapping

Preconditions:

  1. The IDR does not contain a custom ontology mapping for the specified terms requested by the CI

Postconditions:

  1. The CI is able to receive terms that are crossmapped in the IDR

Normal Flow:

2.1 The CI logs into the IDR User Interface (UI)

2.2 The CI requests that the new custom mapping be created (using the ‘Other’ text box in the UI)

2.3 The BA would manually inspect the IDR to determine which table has the data in it (although it has not been encoded correctly)

2.4 The BA would use ‘Maggie’s interface’ to determine any special notes or contextual information about the data source

2.5 The BA logs into the Protégé Prompt application

2.6 The BA loads the extended version of the Ontology of Mapping Relations

2.7 The BA would create the new map in Protégé Prompt

2.8 Protégé Prompt generates a new XML file for the new mapping

2.9 The BA logs into the IDR UI and uploads the XML file into the IDR

2.10         The BA logs verifies the new mapping by selecting the new mapping within the IDR UI.

Alternative Flows:

 

Exceptions:

 

Includes:

 

Priority:

 

Frequency of Use:

 

Business Rules:

Obtain current clinical research information for a projected research project

Special Requirements:

 

Assumptions:

 

Notes and Issues: