230 likes | 330 Views
Clinical Infrastructure Application Framework (CIAF). February 25, 2005. Outline. CIAF – Background CIAF Scope and Schedule CIAF Architecture and Design. Outline. CIAF – Background CIAF Scope and Schedule CIAF Architecture and Design. What is CIAF?.
E N D
Clinical Infrastructure Application Framework(CIAF) February 25, 2005
Outline • CIAF – Background • CIAF Scope and Schedule • CIAF Architecture and Design
Outline • CIAF – Background • CIAF Scope and Schedule • CIAF Architecture and Design
What is CIAF? • A sample application that demonstrates how to use the capabilities of caCORE 2.1.1 • CIAF uses Adverse Event Use Cases but is not intended to be a production adverse event system • The first release, available for download at the NCICB download* site, includes a full set of source code and documentation so developers can: • Experiment with the caCORE 2.1.1 technologies • Learn how to use them effectively to build your own caCORE compatible solution • Develop applications that meet the requirements of caBIG Silver Level compliance • Integrate caCORE functionality into caBIG applications • Rapidly gain understanding and the ability to use the caCORE components * Phase I Download URL: http://ncicb.nci.nih.gov/download/downloadciaf.jsp
Outline • CIAF and caCORE – Background • CIAF Scope and Schedule • CIAF Architecture and Design
CIAF Scope and Schedule • CIAF uses basic adverse event use cases to demonstrate usage of the caCORE and compliance with caBIG initiative Phase 1 • Executable AE Demonstration Application and Documentation Phase 2 • Executable Demonstration of HL7 v3 Adverse Event Messaging • caCORE 3.0 Integration CIAF Use Cases • Schedule • Phase 1 was completed late November 2004 • Phase 2 is scheduled to be complete by April 2005
Outline • CIAF and caCORE – Background • CIAF Scope and Schedule • CIAF Architecture and Design
Significant components/modules within CIAF • Adverse event object model API • Using the caBIOGEN tool (predecessor to the caCORE SDK) from the caBIO team to generate an AE object model API. • Dynamic forms/CDE user interface • CIAF allows dynamic creation of data-capture screens based on caDSR Forms including features to display and validate input data based on CDEs within a caDSR Form. • Forms/CDE integration and local caching • The caching mechanism interfaces with the caDSR repository to retrieve CDEs and Forms controlled by an XML configuration file and/or via dynamic requests. • EVS integration • The common EVS framework provides the capability to filter results based on different criterion • HL7 v3 message generation • CIAF provides an object mapping engine which maps CIAF Objects to HL7 v3 message and generating a v3 message dynamically based on the Objects values.
Summary • CIAF is a sample application that demonstrates the use of the J2EE environment to build an application using key elements of caCORE 2.1.1 • CIAF will be extended to demonstrate the use of caCORE version 3.0 • The CIAF package includes developer documentation to allow deployment at your site and the use of the sample code as a starting point for your applications • CIAF is freely available to the caBIG community
Questions ?? Contact Information: Greg Brolund (Booz Allen Hamilton) brolund_greg@bah.com Niket Parikh (Booz Allen Hamilton) parikh_niket@bah.com
Outline • CIAF – Reference Information
The CIAF deployment package allows the use of CIAF at caBIG sites. The deployment package includes: • Complete working application for CIAF including the Enterprise Archive (ear) file, the complete source folder, a read-me file to understand the folder structure and quick references to documentation. • Database script files, configuration files to deploy on JBoss • User Guide to provide end-users documentation and how-to use the APIs provided by CIAF. • Java doc/API documentation • Software Architecture Document, Design Documents, Use Cases and Scope document.
Adverse event object model API • CIAF used the caBIOGEN tool (predecessor to the caCORE SDK) from the caBIO team to generate its object model API. This API allows remote and local users to invoke and retrieve data based on the object model. • CIAF created its own persistence manager to interact with a local database • CIAF limits the users to searches based on an inclusive query, i.e. the search criteria for the corresponding object is limited to an “AND” based query. For Phase I no complex queries are be allowed.
CIAF uses a web and business-tier framework to integrate and use the NCICB caDSR (CDE and Forms) • A common framework is created within CIAF to allow dynamic creation of data-capture pages based on caDSR Forms, created within the NCICB caDSR using FormBuilder. The framework dynamically retrieves a requested Form and the associated CDEs caching them in memory and providing the UI with a tag library to display and validate the Form based on the CDE. • CIAF also provides a mapping component allowing mapping between Form/CDE to an Object fields by using XML to configure the mapping
CIAF uses caDSR for CDEs and forms • Forms and CDEs can be cached locally within the system, the caching mechanism interacts with the caDSR repository to retrieve CDEs and Forms based on configured XML file and/or requests to the CRFFactory implementation • Simple “displayCRF” tag on the JSP displays the Form dynamically Form Cache Class Diagram displayCRF Custom Tag <html:form action="/app/StoreAEEvent" method="POST" name="formCDE" type="gov.nih.nci.ciaf.common.util.web.CDEForm"> <ciaf:displayCRF objectName="crfFormBean" crfID="CIAF_AE_EVENT" crfVersion="1.0" readOnly="false" /> <input type="hidden" name="aeCaseId" value="<c:out value="${aeCaseId}" />"> <input type="hidden" name="studySubjectNumber" value="<c:out value="${studySubjectNumber}" />"> <input type="hidden" name="protocolNumber" value="<c:out value="${protocolNumber}" />"> <html:submit /> </html:form>
caDSR Forms contains limited “display” related meta-data, Phase 1 CIAF uses an XML configuration file to provide this information • Once caDSR does provide the same kind of information, the application can be switched seamlessly to read the information from caDSR instead of local XML file. Below is a graphical representation of the proposed schema structure …
Enterprise Vocabulary Services Integration • A common vocabulary searching mechanism provides an interface with NCI EVS and performs searches based on different vocabularies and versions. • CIAF allows for multiple term searching from NCI EVS • The common EVS framework provides the capability to filter results based on different criterion e.g. Level Filter or Vocabulary Filter allowing client-side applications to limit and refine search results from EVS
HL7 v3 Adverse Event message generation • CIAF Phase II will utilize the NCICB HL7 SDK and the HL7 JavaSIG implementation to generate an HL7 v3 message based on the CIAF object structure • CIAF provides an object mapping engine which maps CIAF Objects to HL7 v3 message by traversing a RIM Object from HL7 and dynamically populating the values within the RIM Object Graph. • The mapping engine accommodates object collections and also handles different HL7 types.