NIH | National Cancer Institute | NCI Wiki  

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3

Table of Contents

Table of Contents

Introduction

Include Page
Knowledge Repository Program Background
Knowledge Repository Program Background

Background/Scope

Include Page
Knowledge Repository Project Background
Knowledge Repository Project Background

Users and Characteristics

Include Page
Knowledge Repository Actors
Knowledge Repository Actors

Related Documentation

Include Page
Knowledge Repository Documentation Table
Knowledge Repository Documentation Table

Resources

The following is a list of documents that provide background material, requirements, and related topics:

Terms & Definitions

Term

Definition

MUST

This word means that the definition is an absolute requirement of the specification.

MUST NOT

This phrase means that the definition is an absolute prohibition of the specification.

WILL

This word means that the definition is an absolute future requirement of the specification.

WILL NOT

This phrase mean that the definition is an absolute future prohibition of the specification.

SHOULD

This word means that there may exist valid reasons in particular circumstances to ignore a particular item, but the full implications must be understood and carefully weighed before choosing a different course.

SHOULD NOT

This phrase means that there may exist valid reasons in particular circumstances when the particular behavior is acceptable or even useful, but the full implications should be understood and the case carefully weighed before implementing any behavior described with this label.

MAY

This word means that a requirement is truly optional. The developer may choose to include the item based on the needs of their design.

Use Case Level Criteria

When designing use cases, it is important to maintain a consistent approach to determining at which level use cases are placed when they are authored.  The granularity of the use case directly relates to its implementability, so maintaining a leveling scheme will insure that use cases are implemented, tested, etc. at a consistent level.  In alignment with this, we will maintain the following use case leveling criteria:

  • Global statement
    Example: manage patient's health
  • Use Case Level 0: most general, high level business process
    Example: treat this patient for cancer
  • Use Case Level 1: next level of business flow, such as inter-department level
    Example: treat this patient for cancer by using diagnostics, education, treatments, etc.
  • Use Case Level 2: specific enough to drive major model dimensions (static/information model, behavioral model, governance model, etc.) and can include some exception conditions
    Example: treat this patient for cancer by ordering these lab tests, evaluating the results, customizing a treatment or treatment plan to specifically address concerns
  • Use Case Level 3: includes details of each exchange of information, as well as assumptions about system boundaries
    Example: treat this patient for cancer by ordering these lab tests in the caEHR system
    i. find the patient, if new add patient, if not check for update
    ii. create request(s) for testing for patient, then evaluate the results,
    ii-a. read the faxed copy of the result or
    ii-b. receive notification in Provider email that a result is ready for viewing, etc...
  • Use Case Level 4: project-specific solution for exchanges detailed in use case level-3 (could be MSG, SOA, or both)
    Example:Standard Process Flow
    1. Provider Refers Patient for Cancer Treatment
    2. Provider and Patient have an encounter
    3. Provider evaluates Patient's condition, treatment plan, current statistics, requests diagnostics
    4. Provider updates treatment plan
    5. Patient is treated, outcomes documented
    6. Flow returns to any of the above steps or patient is released from cancer treatment

Assumptions and Dependencies

Usability

The user interface shall be designed for ease-of-use by the designated end-users, shall use terms common to the user's normal business environment, and shall require little to no additional training on the system. Drop down menus, Google-like searches, and tooltips should be used wherever appropriate.

Accessibility

The user interface should be accessible via a web browser.

General Assumptions

Following is a list of basic assumptions:

  • Federated Discovery Services: Knowledge Repository Services will be distributable and discoverable in a federated manner
  • Security Considerations: services and underlying data will be secured using the caBIG security architecture
  • Subscriptions/Notifications: services requiring subscription and notification functionality will be enabled by the caBIG pub/sub architecture
  • ISO 11179 Ed 3: the Knowledge Repository will comply with ISO 11179 Ed 3 specifications. See here for our analysis.
  • Ability to have non-administered items: the Knowledge Repository will provide for non-administered items in the ISO 11179 notion
  • Duplication/identification: in compliance with the Federated Discovery Services assumption, reference of data, data duplication, and unique identification of data will be handled

Dependencies

TBD

Functional Requirements

Model Services

Some basic description of model services.

ID

Requirement

Source

Release

MOS-1

The Model Service MUST support the abilities to record new model elements.

ConOps Init 1

---

MOS-2

The Model Service MUST support the abilities to record new assertions.

ConOps Init 1

  ---

MOS-3

The Model Service MUST support the abilities to record new rules.

ConOps Init 1

  ---

MOS-4

The Model Service SHOULD support the abilities to record queries.

ConOps Init 1

  ---

MOS-10

The Model Service MUST allow for the discovery of models based on querying model parts.

ConOps Init 1

  ---

MOS-11

The Model Service MAY support the federated discovery of models.

ConOps Init 1

  ---

MOS-12

The Model Service SHOULD allow the discovery of related model parts.

ConOps Init 1

  ---

MOS-20

The Model Service MUST support the comparison of model parts.

ConOps Init 1

  ---

MOS-21

The Model Service MUST support the harmonization of models through the comparison of model parts.

ConOps Init 1

  ---

MOS-30

The Model Service SHOULD support the merging of different parts of different models.

ConOps Init 1

  ---

MOS-40

The Model Service MAY support the graphical visualization of models.

ConOps Init 1

  ---

MOS-50

The Model Service MUST support the versioning of models.

ConOps Init 1

  ---

MOS-60

The Model Service MUST allow the retiring of models.

ConOps Init 1

  ---

MOS-70

The Model Service MUST allow the of updating of parts of a model.

ConOps Init 1

  ---

MOS-80

The Model Service MUST allow the deletion/unregistering of models.

ConOps Init 1

  ---

MOS-90

The Model Service SHOULD support the transformation of models.

ConOps Init 1

  ---

MOS-100

The Model Service SHOULD support the validation of models.

ConOps Init 1

---

MOS-110

The Model Service MUST support the reuse of model parts.

ConOps Init 1

  ---

MOS-111

The Model Service MUST support the entire reuse of direct copies of model parts.

ConOps Init 1

  ---

MOS-120

The Model Service MUST support the extension of model parts.

ConOps Init 1

  ---

MOS-121

The Model Service MUST allow the extension of classes.

ConOps Init 1

  ---

MOS-122

The Model Service MUST allow the extensions of model part relationships.

ConOps Init 1

  ---

MOS-123

The Model Service SHOULD allow the extension of attribute value lists.

ConOps Init 1

  ---

MOS-130

The Model Service SHOULD support the constraining of model parts.

ConOps Init 1

  ---

MOS-131

The Model Service SHOULD allow for classes to be subsetted.

ConOps Init 1

  ---

MOS-132

The Model Service SHOULD allow for attribute value lists to be subsetted.

ConOps Init 1

  ---

MOS-140

The Model Service MUST support the discovery of services related by model similarities.

ConOps Init 1

  ---

MOS-150

The Model Service SHOULD support the discovery of related documentation.

ConOps Init 1

---

Metadata Services

Some basic description of metadata services.

ID

Requirement

Source

Release

MDS-1

The Metadata Service MUST support the notion of data elements.

ConOps Init 1

  ---

MDS-2

The Metadata Service MUST allow the recording of data elements.

ConOps Init 1

  ---

MDS-3

The Metadata Service MUST allow new data element assertions to be made.

ConOps Init 1

  ---

MDS-4

The Metadata Service MUST allow for data elements to be updated.

ConOps Init 1

  ---

MDS-5

The Metadata Service MUST allow for data elements to be versioned.

ConOps Init 1

  ---

MDS-6

The Metadata Service SHOULD allow for data element business rules to be validated.

ConOps Init 1

  ---

MDS-7

The Metadata Service MUST allow for data elements to be retired.

ConOps Init 1

  ---

MDS-8

The Metadata Service MUST allow for data elements to be deleted/rolled back.

ConOps Init 1

  ---

MDS-9

The Metadata Service MUST support the discovery of reusable data element content.

ConOps Init 1

  ---

MDS-10

The Metadata Service SHOULD support the notion of data element usage information.

ConOps Init 1

  ---

MDS-11

The Metadata Service MUST support metadata to be queried by data element.

ConOps Init 1

  ---

MDS-12

The Metadata Service SHOULD support metadata to be queried by data element in a federated manner.

ConOps Init 1

  ---

MDS-13

The Metadata Service MUST support the comparison of data elements

ConOps Init 1

  ---

MDS-14

The Metadata Service SHOULD support the creation of a new data element from an existing data element.

ConOps Init 1

  ---

MDS-15

The Metadata Service MUST support the discovery of related models by data element.

ConOps Init 1

  ---

MDS-16

The Metadata Service SHOULD support the discover related metadata items by data element.

ConOps Init 1

  ---

MDS-17

The Metadata Service SHOULD support the discovery of related services by data element.

ConOps Init 1

  ---

MDS-18

The Metadata Service SHOULD support the discovery of related data element rules.

ConOps Init 1

  ---

MDS-19

The Metadata Service SHOULD support the discovery of forms related by data element.

ConOps Init 1

  ---

MDS-101

The Metadata Service MUST support the notion of value domains.

ConOps Init 1

  ---

MDS-102

The Metadata Service MUST allow the recording of value domains.

ConOps Init 1

  ---

MDS-103

The Metadata Service MUST allow new value domain assertions to be made.

ConOps Init 1

  ---

MDS-104

The Metadata Service MUST allow for value domains to be updated.

ConOps Init 1

  ---

MDS-105

The Metadata Service MUST allow for value domains to be versioned.

ConOps Init 1

  ---

MDS-106

The Metadata Service SHOULD allow for value domain business rules to be validated.

ConOps Init 1

  ---

MDS-107

The Metadata Service MUST allow for value domains to be retired.

ConOps Init 1

  ---

MDS-108

The Metadata Service MUST allow for value domains to be deleted/rolled back.

ConOps Init 1

  ---

MDS-109

The Metadata Service MUST support the discovery of reusable value domain content.

ConOps Init 1

  ---

MDS-110

The Metadata Service SHOULD support the notion of value domain usage information.

ConOps Init 1

  ---

MDS-111

The Metadata Service MUST support metadata to be queried by value domain.

ConOps Init 1

  ---

MDS-112

The Metadata Service SHOULD support metadata to be queried by value domain in a federated manner.

ConOps Init 1

  ---

MDS-113

The Metadata Service MUST support the comparison of value domains

ConOps Init 1

  ---

MDS-114

The Metadata Service SHOULD support the creation of a new value domain from an existing data element.

ConOps Init 1

  ---

MDS-115

The Metadata Service MUST support the discovery of related models by value domain.

ConOps Init 1

  ---

MDS-116

The Metadata Service SHOULD support the discover related metadata items by value domain.

ConOps Init 1

  ---

MDS-117

The Metadata Service SHOULD support the discovery of related services by value domain.

ConOps Init 1

  ---

MDS-118

The Metadata Service SHOULD support the discovery of related value domain rules.

ConOps Init 1

  ---

MDS-119

The Metadata Service SHOULD support the discovery of forms related by value domain.

ConOps Init 1

  ---

MDS-120

The Metadata Service SHOULD support the ability to create a value domain through subsetting/constraining.

  ---

  ---

MDS-121

The Metadata Service SHOULD allow value domains to be extended through the creation of new from existing.

  ---

  ---

MDS-130

The Metadata Service SHOULD support semantic transformations that would be explicitly based on value domain mapping, e.g. to the same value meaning.

ConOps Init 1

  ---

MDS-131

The Metadata Service MAY support syntactic transformations that would transform source value domain representation to target value domain representation.

ConOps Init 1

  ---

MDS-201

The Metadata Service MUST support the notion of data element concepts.

ConOps Init 1

  ---

MDS-202

The Metadata Service MUST allow the recording of data element concepts.

ConOps Init 1

  ---

MDS-203

The Metadata Service MUST allow new data element concept assertions to be made.

ConOps Init 1

  ---

MDS-204

The Metadata Service MUST allow for data element concepts to be updated.

ConOps Init 1

  ---

MDS-205

The Metadata Service MUST allow for data element concepts to be versioned.

ConOps Init 1

  ---

MDS-206

The Metadata Service SHOULD allow for data element concept business rules to be validated.

ConOps Init 1

  ---

MDS-207

The Metadata Service MUST allow for data element concepts to be retired.

ConOps Init 1

  ---

MDS-208

The Metadata Service MUST allow for data element concepts to be deleted/rolled back.

ConOps Init 1

  ---

MDS-209

The Metadata Service MUST support the discovery of reusable data element concept content.

ConOps Init 1

  ---

MDS-210

The Metadata Service SHOULD support the notion of data element concept usage information.

ConOps Init 1

  ---

MDS-211

The Metadata Service MUST support metadata to be queried by data element concept.

ConOps Init 1

  ---

MDS-212

The Metadata Service SHOULD support metadata to be queried by data element concept in a federated manner.

ConOps Init 1

  ---

MDS-213

The Metadata Service MUST support the comparison of data element concepts

ConOps Init 1

  ---

MDS-214

The Metadata Service SHOULD support the creation of a new data element concept from an existing data element concept.

ConOps Init 1

  ---

MDS-215

The Metadata Service MUST support the discovery of related models by data element concept.

ConOps Init 1

  ---

MDS-216

The Metadata Service SHOULD support the discover related metadata items by data element concept.

ConOps Init 1

  ---

MDS-217

The Metadata Service SHOULD support the discovery of related services by data element concept.

ConOps Init 1

  ---

MDS-218

The Metadata Service SHOULD support the discovery of related data element concept rules.

ConOps Init 1

  ---

MDS-219

The Metadata Service SHOULD support the discovery of forms related by data element concept.

ConOps Init 1

  ---

MDS-220

The Metadata Service MUST support the discovery of related data elements by data element concept.

ConOps Init 1

  ---

MDS-221

The Metadata Service SHOULD support the discovery of related value sets by data element concept.

ConOps Init 1

  ---

MDS-230

The Metadata Service SHOULD support the creation of a data element from an existing data element concept and value domain.

ConOps Init 1

  ---

MDS-231

The Metadata Service SHOULD support the creation of a new data element concept from an existing data element concept.

ConOps Init 1

  ---

Registry-Registry Service

ID

Requirement

Source

Release

RRS-1

The Registry-Registry service MUST support the import of content from one registry to another.

ConOps Init 1

---

RRS-10

The Registry-Registry service MUST support the export of content in a convenient data format.

ConOps Init 1

---

RRS-20

The Registry-Registry service SHOULD support the update of edited content from one registry to another.

ConOps Init 1

---

RRS-30

The Registry-Registry service MAY support the search of one registry from another.

ConOps Init 1

---

RRS-40

The Registry-Registry service MUST support content to be submitted from one registry to another.

ConOps Init 1

---

RRS-50

The Registry-Registry service MUST support the registration of content from one registry to another.

ConOps Init 1

---

RRS-60

The Registry-Registry service MUST support the updating of the registration of content from one registry to another.

ConOps Init 1

---

General Service

ID

Requirement

Source

Release

GEN-1

Services SHOULD support the notion of annotating any data with well defined concepts.

ConOps Init 1

---

GEN-10

Services SHOULD allow users to subscribe for notifications of changes to data.

ConOps Init 1

---

GEN-20

Services MUST support the notion of data reuse.

ConOps Init 1

---

Metadata Registry Tools

ID

Requirement

Source

Release

MRT-1

A Metadata Registry Tool MUST support a clinician friendly browser.

ConOps Init 1

---

MRT-10

A Metadata Registry Tool MUST support an information specialist browser.

ConOps Init 1

---

MRT-20

A Metadata Registry Tool SHOULD support a customizable browser.

ConOps Init 1

---

MRT-30

A Metadata Registry Tool MAY support a generalized portal that integrates various metadata registry tools.

ConOps Init 1

---

MRT-40

A Metadata Registry Tool SHOULD allow workflow management to support ECCF artifact creation.

ConOps Init 1

---

MRT-50

A Metadata Registry Tool MUST support an interface of browser/editing models and metadata with modeling tools.

ConOps Init 1

---


Non-functional Requirements

Performance

Performance refers to the qualitative or quantitative measure of how well a system reacts in a user workflow.  This can be measured in time from a user or system perspective, as well as the amount of resources (CPU, memory, etc.) that software must consume to complete a task.

ID

Requirement

PE-1

Where not otherwise specified, web pages should be completely returned within seconds of request.

Auditing, Logging, and Provenance

Auditing, logging, and provenance is the process of recording events in an automated and/or manual way within a certain scope in order to provide an audit trail that can be used to understand the activity of the system and/or to diagnose problems.

ID

Requirement

ALP-1

The application will address Title 21 Code of Federal Regulations (21 CFR Part 11) Electronic Records where appropriate and reasonable.

ALP-10

The system must audit each and every user action that results in database access (read or write). Examples include: add/edit study or participant data, user login, query etc.
The audit information must contain the following information:

  • User who performed the action
  • IP address of the computer from which the action is performed
  • Timestamp of action
  • Object and data element (i.e. table name and column name)
  • Previous value and current value of the data element

ALP-20

Auditing information must be accessible in a timely manner to system administrators.

ALP-30

Auditing features must at least be available through standard database logging/auditing.

ALP-40

Logging must be implemented in all the architectural layers - presentation, business logic and data access layers

Fault Handling

Fault handling is a mechanism designed to handle the occurrence of exceptions, special conditions that change the normal flow of software or user execution.

ID

Requirement

FH-1

Any runtime exceptions or errors must be reported to the user in a graphical window containing the probable cause of the problem and how to rectify that.

FH-10

The exceptions and errors shall be divided into two groups:

  • User errors
  • OS and System/Application errors

Quality of Service

Quality of service is the ability to provide sufficient uptime and availability of software to guarantee a certain level of performance to access and data flow.

ID

Requirement

QS-1

The system must be adequately validated during the system development lifecycle.

QS-10

The system must provide the functionality to generate and manage accurate data records during the development processes.

QS-20

The system development lifecycle must include validity checks for all data fields.

Usability

In design, Usability is the study of the ease with which people can employ a particular tool or other human-made object in order to achieve a particular goal.

ID

Requirement

US-1

An intuitive user friendly graphical user interface must be developed.

PE-10

Web page requests must resolve in a timely manner.  Where not otherwise specified, this is on the order of seconds.

PE-20

The application will address section 508 of the Rehabilitation Act of 1973 where appropriate and reasonable.

Security

Security is the protecting of information and information systems from unauthorized access, use, disclosure, disruption, modification or destruction.

ID

Requirement

SE-1

The system must limit access to authorized individuals.

SE-10

Electronic Signatures should meet necessary requirements as described in 21 CFR part 11.

SE-20

The application will address section 508 of the Rehabilitation Act of 1973 where appropriate and reasonable.

SE-30

System developers must adhere to the caBIG Data Sharing & Intellectual Capital Policy and Procedures

Portability

Portability is the software codebase feature to be able to reuse the existing code instead of creating new code when moving software from an environment to another. The prerequirement for portability is the generalized abstraction between the application logic and system interfaces.

ID

Requirement

PO-1

Operating system native libraries should not be used.

PO-10

All the paths for the local file system must not be hard coded. Example C:\myDir etc.