Author: |
Denis Avdic |
Email: |
avdicd@mail.nih.gov |
Team: |
MDR |
Contract: |
27XS083 |
Client: |
National Cancer Institute Center for Bioinformatics
National Institutes of Heath
US Department of Health and Human Services |
Purpose and Focus of Document
The purpose of this document is to collect, analyze, and define high-level needs and features of the Metadata Registries Exchange architecture. This document focuses on the investigation into functionality required by the product stakeholders and target users in order to create an effective collaboration and exchange tool.
Vision and Dependencies
Vision Statement
The goal of first iteration is to identify requirements/use cases for a metadata registry interface layer using the operations of JAXR as a starting point. After analysis, a decision will be made regarding whether to use JAXR specification in the interface layer or build a custom solution if no other standards based options are available.
Stakeholder, Technical and User Descriptions
Stakeholder Summary
Customer Name |
Role |
Interest/Need |
Denise Warzel |
NCI CBIIIT Core Product Line Manager/ MDR Product Manager |
|
Dave Hau |
Associate Director of Core Infrastructure Engineering |
|
NCICB Staff/Contractor Name |
Role |
Responsibilities |
Charles Griffin |
Project Manager |
|
Denis Avdic |
Technical Architect |
|
Technical Environment
This product uses the following technical components which have been derived from the current NCICB Technology Stack.
- Client Interface
- Mozilla v. 2.0.0.1 and above
- IE Browser 7.0
- Application Server
- Database Server
- Operating System (Warehouse APIs)
Current Solution to Meeting Needs
Currently there are no common interfaces defined among metadata registries. Each registry can be queried and utilized only by the tools written specifically for it, based on the custom interface available. Likewise, the only way to exchange data between registries is to export all data in bulk from a particular registry, transform it and then import to the target registry.
Proposed Solutions to Meeting Needs
The first order of business would be to convert the JAXR APIs into a set of discrete use cases describing the lifecycle and query operations. As JAXR is a thoroughly vetted Java specification, it presents us a good starting point to create a set of use cases to fuel our continuing investigation and design.
Next, consulting the cancerGrid UK and the caGrid teams, we propose to identify common use cases among all registries. This would cover all query and lifecycle management actions necessary to register data and retrieve existing registration information.
Following would be an investigation of federated query interchange among registries will be made, using the ISO 11179 standard as the starting point. A successful identification of all use cases and determining the business processes governing sharing of data between registries would enable closer cooperation between registries and greater harmonization across domains.
Finally, based on all identified use cases and consultation with the stakeholders, the cancerGrid team and the caGrid team a decision will be made whether the JAXR implementation describes a complete set, a partial set, or an inadequate set of interfaces necessary for registry operation and inter-registry exchange. This decision will guide the future development of metadata registries.
Product Dependencies
This release is dependent on the JAXR specification and implementation. Additional influences come from the existing use cases governing submission and registration of metadata to both the caDSR and the cancerGrid produced caDSR 'Lite'.
Summary of Key Stakeholder or User Needs
The following subsections provide a description of key requirements to address the solution as perceived by the stakeholders and users.
Stakeholder and User Requirements
Functional Requirements
None
Non-Functional Requirements
- Identify lifecycle and query operations specified by JAXR.
- Identify and validate exchange use cases with cancerGrid UK team.
- Determine intersection between JAXR operations and exchange use cases.
- Identify common lifecycle and query operations.
- Research the 'federated query' model.
In-Scope Requirements and Enhancements
In-Scope Functional Requirements (Enhancements or New Features)
Each new enhancement, modification or new feature is described in detail below.
(Proposed)
None
In-Scope Functional Bug Fixes
None
In-Scope Non-Functional Requirements
This section describes in detail all the non-software related requirements which must be met for this release but do not add functionality. These requirements are included in the scope and project plan due to level of effort or relative importance to the overall success of delivery of the release.
(Proposed)
Identify lifecycle and query operations specified by JAXR.
Examine the APIs specified by JAXR and formalize them in use cases.
Identify and validate exchange use cases with cancerGrid UK team.
Through cooperation with the cancerGrid UK team, determine how registry-to-registry data exchange should proceed.
Determine intersection between JAXR operations and exchange use cases.
Create a map between the JAXR use cases and exchange use cases established in the previous requirements.
Identify common lifecycle and query operations.
In cooperation with the cancerGrid UK and caGrid teams determine which of the use cases established, as described in previous requirements, are necessary for registry operations.
Research the 'federated query' model.
Federated queries entail searching other 11179 registries through grid services to find items and use them from where they are. For example, a CDE registered in caDSR might be comprised of an object class registered in caDSR and a VD registered in UK MDR, without having a copy of the VD in caDSR.
In-Scope General Support Activities
None
Out of Scope Requirements and Enhancements
Out of Scope Functional Requirements (Enhancements or New Features)
Items that are out of scope were evaluated as part of the initial scoping activities for this release, and subsequently not included in the final approved scope. These items are also documented in the cumulative backlog of requirements found on the product GForge site.
None
Out of Scope Functional Bug Fixes if Applicable
None
Out of Scope Non-Functional Requirements
None
Out of Scope General Support Activities
None
Document History and Project Information
Document Version: |
Click the Info tab. View the Recent Changes or click the link to view the page history. |
Last Modified: |
Refer to the first line displayed in the document window. |
Project GForge site: |
[caCORE:Project GForge site link] |
Most current version: |
Unless the display includes a notice that you are viewing a previous version, you are viewing the most current version of this Scope Document for the release indicated in the title. |
Revision history: |
Click the Info tab. In the Recent Changes area, click the link to view the page history. |
Review history: |
Click the Info tab. In the Recent Changes area, note the developer who made each change and the date and time. Refer to the Key People Directory for their roles. Click the link to view any page or to view the page history, and then click the link for a page. When the page opens, view the comments and changes made in that version. |
Related documents: |
[caCORE:Name and URL of each related document] |
NCICB Management |
Role |
Responsibilities |
Denise Warzel |
caDSR Product Manager and caCORE Product Line Manager |
Oversees development of the product: features, functions, definition of stakeholders, priorities within the scope, timeframe for release |
Dave Hau |
caDSR Engineering Manager |
Oversees caDSR software engineering practices, conducts design reviews, guides technical development of the product |
|
At the 30k foot level, I think sometihng missing is an adopter project for federated metadata registries, one that needs to discover the registry within an application wtih a UI, and then be able to select and use content from any 11179 registries it finds. Possible choices are of courese our own curation tools, but a better choice would be a rea caBIG application, perhpas on ethat is attempting to allow the apps end users to create new data elements, such as caTissue or caIntegrator might be good candidates...but essentially, we need that extra leg in this project to ensure that it will meet customer needs. Afterall, cancerGrid caDSR-lite isn't really teh end users, its a collaborator, another registry or provider of services. Make sense?