Upload
anissa-nelson
View
215
Download
1
Tags:
Embed Size (px)
Citation preview
Clinical Trial SoftwareClinical Trial SoftwareJohn PerryJohn Perry
MIRC Overview – Teaching FilesMIRC Overview – Teaching Files RSNA Clinical Trial and Research SoftwareRSNA Clinical Trial and Research Software Hands On: Using the RSNA Teaching FileHands On: Using the RSNA Teaching File
RSNA 2011 MIRC CoursesRSNA 2011 MIRC CoursesRSNA 2011 MIRC CoursesRSNA 2011 MIRC Courses
Clinical Trial DataflowClinical Trial DataflowClinical Trial DataflowClinical Trial Dataflow
DICOM
DICOM
DICOM
Database
HTTP
InternetHTTP / HTTPS
Data AcquisitionSites
Principal InvestigatorSite
X
X
X
Stand-alone application for clinical trials data:Stand-alone application for clinical trials data: Processing and communicationProcessing and communication
Simple installation and configuration:Simple installation and configuration: Single-click installationSingle-click installation Single XML configuration fileSingle XML configuration file
Configurable for:Configurable for: Data acquisition sitesData acquisition sites Principal investigator sitesPrincipal investigator sites
Platform-independentPlatform-independent
CTPCTPCTPCTP
Administrative functionsAdministrative functions Account managementAccount management Status displayStatus display Configuration displayConfiguration display System properties displaySystem properties display Script editorsScript editors AuthenticationAuthentication
CTP Admin Web ServerCTP Admin Web ServerCTP Admin Web ServerCTP Admin Web Server
DicomObjectDicomObjectImagesImagesSR / KOS / GSPS objectsSR / KOS / GSPS objects
XmlObjectXmlObjectText dataText dataFlexible schema for identifiersFlexible schema for identifiers
ZipObjectZipObjectEncapsulation of trial-specific filesEncapsulation of trial-specific filesEmbedded manifest to carry the identifiersEmbedded manifest to carry the identifiers
CTP Data ObjectsCTP Data ObjectsCTP Data ObjectsCTP Data Objects
A pipeline is an ordered sequence of stagesA pipeline is an ordered sequence of stages A stage is an element to perform a function:A stage is an element to perform a function:
ImportServiceImportService ProcessorProcessor StorageServiceStorageService ExportServiceExportService
Pipelines can have as many stages as necessaryPipelines can have as many stages as necessary CTP supports multiple pipelinesCTP supports multiple pipelines
CTP Processing PipelinesCTP Processing PipelinesCTP Processing PipelinesCTP Processing Pipelines
DicomImportServiceDicomImportService - DICOM Storage SCP- DICOM Storage SCP
HttpImportServiceHttpImportService - HTTP and HTTPS- HTTP and HTTPS
PollingHttpImportServicePollingHttpImportService - HTTP for firewall penetration- HTTP for firewall penetration
DirectoryImportServiceDirectoryImportService - manual submission- manual submission
ArchiveImportServiceArchiveImportService - bulk import- bulk import
Standard ImportServicesStandard ImportServicesStandard ImportServicesStandard ImportServices
DicomFilterDicomFilter - - triage for DicomObjectstriage for DicomObjectsXmlFilterXmlFilter - - triage for XmlObjectstriage for XmlObjectsZipFilterZipFilter - - triage for ZipObjectstriage for ZipObjectsDicomAnonymizerDicomAnonymizer - - de-identify DicomObjectsde-identify DicomObjectsXmlAnonymizerXmlAnonymizer - de-identify XmlObjects- de-identify XmlObjectsZipAnonymizerZipAnonymizer - de-identify ZipObject manifests- de-identify ZipObject manifests
Standard ProcessorsStandard ProcessorsStandard ProcessorsStandard Processors
DicomDecompressorDicomDecompressor - - convert DICOM imagesconvert DICOM imagesDicomTranscoderDicomTranscoder - - convert DICOM imagesconvert DICOM imagesDicomPixelAnonymizerDicomPixelAnonymizer - - blank pixel regionsblank pixel regions
Standard ProcessorsStandard ProcessorsStandard ProcessorsStandard Processors
ObjectLoggerObjectLogger - performance measurement- performance measurementObjectCacheObjectCache - 21CFR11-compliant trials- 21CFR11-compliant trialsMemoryMonitorMemoryMonitor - operation monitoring- operation monitoring IDMapIDMap - PHI ID lookup- PHI ID lookupObjectTrackerObjectTracker - data acquisition management- data acquisition managementDatabaseVerifierDatabaseVerifier - transfer confirmation between sites- transfer confirmation between sites
Standard ProcessorsStandard ProcessorsStandard ProcessorsStandard Processors
FileStorageServiceFileStorageServiceIndexed file managementIndexed file managementWeb access with authenticationWeb access with authentication
BasicFileStorageServiceBasicFileStorageServiceIndexed file management for the National Cancer Indexed file management for the National Cancer
Institute NBIA systemInstitute NBIA systemDirectoryStorageServiceDirectoryStorageService
File management for the RSNA Image Sharing ProjectFile management for the RSNA Image Sharing Project
Standard StorageServicesStandard StorageServicesStandard StorageServicesStandard StorageServices
DicomExportServiceDicomExportService - DICOM Storage SCU- DICOM Storage SCUHttpExportServiceHttpExportService - HTTP and HTTPS- HTTP and HTTPSPolledHttpExportService PolledHttpExportService - HTTP for firewall penetration- HTTP for firewall penetrationFtpExportServiceFtpExportService - FTP- FTPDatabaseExportService DatabaseExportService - external database interface- external database interfaceAimExportService AimExportService - interface to AIM repositories- interface to AIM repositories
Standard ExportServicesStandard ExportServicesStandard ExportServicesStandard ExportServices
Configurable tree structureConfigurable tree structure Build-in web serverBuild-in web server
AuthenticationAuthentication Browse patients / studies / data objectsBrowse patients / studies / data objects Display images (tile / stack / series)Display images (tile / stack / series) Export data objects of all typesExport data objects of all types Programmatic access via Ajax servletProgrammatic access via Ajax servlet
FileStorageServiceFileStorageServiceFileStorageServiceFileStorageService
FileStorageService ViewerFileStorageService ViewerFileStorageService ViewerFileStorageService Viewer
Integrated queue managementIntegrated queue management DatabaseAdapterDatabaseAdapter
Interface between the DatabaseExportService and the Interface between the DatabaseExportService and the database itselfdatabase itself
Must be developed for each unique database schemaMust be developed for each unique database schema Standard class to extend for a specific applicationStandard class to extend for a specific application
DatabaseExportServiceDatabaseExportServiceDatabaseExportServiceDatabaseExportService
AuditLogAuditLog - 21CFR11-compliant trials- 21CFR11-compliant trials
MIRCMIRC - teaching files- teaching files
Standard PluginsStandard PluginsStandard PluginsStandard Plugins
Plugins add functionality beyond the scope of Plugins add functionality beyond the scope of a single pipeline stagea single pipeline stage
1.1. Name Name 2.2. Location; all geographic subdivisions smaller than a Location; all geographic subdivisions smaller than a
state, including street address, city, county, precinct, state, including street address, city, county, precinct, zip code, and their equivalent geocodes. zip code, and their equivalent geocodes.
3.3. Dates (all dates related to the subject of the Dates (all dates related to the subject of the information, e.g. birth dates, admission dates, information, e.g. birth dates, admission dates, discharge dates, encounter dates, surgery dates, etc.) discharge dates, encounter dates, surgery dates, etc.)
The HIPAA 18 The HIPAA 18 (1-3)(1-3)The HIPAA 18 The HIPAA 18 (1-3)(1-3)
4.4. Telephone numbers Telephone numbers 5.5. Fax numbers Fax numbers 6.6. Electronic mail addresses Electronic mail addresses 7.7. Social security numbers Social security numbers 8.8. Medical record numbers Medical record numbers 9.9. Health plan beneficiary numbersHealth plan beneficiary numbers
The HIPAA 18 The HIPAA 18 (4-9)(4-9)The HIPAA 18 The HIPAA 18 (4-9)(4-9)
10.10. Account numbers Account numbers 11.11. Certificate / license numbers Certificate / license numbers 12.12. Vehicle identifiers and serial numbers, Vehicle identifiers and serial numbers,
including license plate numbers including license plate numbers 13.13. Device identifiers and serial numbers Device identifiers and serial numbers 14.14. Web Uniform Resource Locators (URLs)Web Uniform Resource Locators (URLs)15.15. Internet Protocol (IP) address numbers Internet Protocol (IP) address numbers
The HIPAA 18 The HIPAA 18 (10-15)(10-15)The HIPAA 18 The HIPAA 18 (10-15)(10-15)
16.16. Biometric identifiers, including finger and voice Biometric identifiers, including finger and voice prints prints
17.17. Full face photographic images and any Full face photographic images and any comparable images comparable images
18.18. Any other unique identifying number, Any other unique identifying number, characteristic, or code characteristic, or code
The HIPAA 18 The HIPAA 18 (16-18)(16-18)The HIPAA 18 The HIPAA 18 (16-18)(16-18)
Unnecessary PHIUnnecessary PHI RemovalRemoval Replacement with values that are the same for all Replacement with values that are the same for all
patientspatients Necessary PHINecessary PHI
Replacement with values that allow subjects, studies, Replacement with values that allow subjects, studies, and images to be related to one-another, but that do and images to be related to one-another, but that do not allow identification of the human beingnot allow identification of the human being
De-indentificationDe-indentificationDe-indentificationDe-indentification
Published in 2009Published in 2009 Defines de-identification profilesDefines de-identification profiles Basic Profile: most aggressiveBasic Profile: most aggressive Several options for relaxing certain IDsSeveral options for relaxing certain IDs This is a This is a majormajor contribution: it provides expert contribution: it provides expert
guidance for the de-identification of complex guidance for the de-identification of complex datasetsdatasets
DICOM Supplement 142DICOM Supplement 142DICOM Supplement 142DICOM Supplement 142
Fully scriptable de-identification instructionsFully scriptable de-identification instructions DICOM Anonymizer ConfiguratorDICOM Anonymizer Configurator
Web UI for creating and editing scriptsWeb UI for creating and editing scripts Support for DICOM Supplement 142 profilesSupport for DICOM Supplement 142 profiles
Profile scripts written by Justin Kirby at NCIProfile scripts written by Justin Kirby at NCI Support for user-defined profilesSupport for user-defined profiles
Default script: 142 BasicDefault script: 142 Basic
CTP DicomAnonymizerCTP DicomAnonymizerCTP DicomAnonymizerCTP DicomAnonymizer
CTP ExampleCTP ExampleCTP ExampleCTP Example
CTP
DicomImportServiceDicomAnonymizerHttpExportService
Data Acquisition Site
CTP
HttpImportServiceFileStorageServiceDatabaseExportServiceDicomExportService
Principal Investigator Site
…Modality
PACS
External DatabaseWorkstation
Local Disk
Firewall PenetrationFirewall PenetrationFirewall PenetrationFirewall Penetration
DMZ
CTPPollingHttpImportService… (additional stages)
Secure Network
CTPHttpImportServicePolledHttpExportService
DMZ
InternetHTTP / HTTPS
Principal Investigator Site
Flexible Flexible All standard stages are highly configurableAll standard stages are highly configurable
ExtensibleExtensible Interface-based structureInterface-based structure Abstract classes for easy development of new stagesAbstract classes for easy development of new stages Base class for developing database interfacesBase class for developing database interfaces
Adapting CTPAdapting CTPAdapting CTPAdapting CTP
Runs on Windows, Mac, Linux, SolarisRuns on Windows, Mac, Linux, SolarisRequires only JavaRequires only Java Java and CTP are freeJava and CTP are freeMIRC/CTP Users Meeting:MIRC/CTP Users Meeting:
Monday, 11/28, from 3:00-4:15 in N128Monday, 11/28, from 3:00-4:15 in N128
CTPCTPCTPCTP
The MIRC WikiThe MIRC Wiki http://mircwiki.rsna.orghttp://mircwiki.rsna.org
RSNA ForumsRSNA Forums http:forums.rsna.orghttp:forums.rsna.org User Comments, Questions, & AnswersUser Comments, Questions, & Answers RSNA MIRC Software AnnouncementsRSNA MIRC Software Announcements MIRC Implementers CornerMIRC Implementers Corner
Questions/Answers & HelpQuestions/Answers & HelpQuestions/Answers & HelpQuestions/Answers & Help
RSNA MIRC WikiRSNA MIRC WikiRSNA MIRC WikiRSNA MIRC Wiki