AudGenDB Intuitive biomedical query and reporting tool using Django Byron Ruth · July 13, 2011 · SciPy 2011 · Austin, Texas Center for Biomedical Informatics · The Children’s Hospital of Philadelphia
Scope • National Institute of Health (NIH) funded project • Audiologic and Genetics database of unprecedented scope and size • Started with CHOP’s data, intending to integrate other pediatric institutions’ data
Data Problems • Clinical data is complex and messy • Data is scattered throughout EHR • Most clinical data is not “research-friendly” • Clinical systems are built for clinical workflows • Given a drop-down of choices, it can most likely be overridden
Example Concept ID Line # Concept Value CHOP#AUDIO#0001 1 Ear;Stim;125;250;500;750;1000;1500;2000;3000;4000;6000;8000 CHOP#AUDIO#0001 2 R;AIR;;;20M;;;;55;; 75;;; CHOP#AUDIO#0001 3 L;AIR;;;15;; 25;;55;;;;; CHOP#AUDIO#0001 4 L;BONE;;; 15;; 20;;;; 60N;;; WHAT WE HAVE WHAT WE WANT
Solutions • Extract-Transform-Load (ETL) • Extract patients of interest from EHR • Stage the data in a more “queryable” data model • Data curation • Push data to production
Great!
We have data • 37,000+ Patients • 367,000+ Procedures (including 22,000+ surgical procedures) • 165,000+ Encounters • 56,000 Typanograms • 57,000+ Audiograms • 16,000+ Auditory Brainstem Responses (ABR) • 4000+ Radiology Impressions
Proposed interface.. Done!
Approach
Constraints • Reach as many diverse groups of people as possible • We only have two software developers... • No resources to support distributed self-installed applications (e.g. Microsoft Office)
The Web! • No installation required • Rapid iterative development cycles • Virtually every device has a Web browser these days...
It should.. • Be Intuitive • Be “Discoverable” • Be in a familiar language • Not Be intimidating • Not Require knowledge of the data model • Not Require knowledge of the data
Typical Interface...
Our Interface...
Demo
Harvest
The Stack • ModelTree - generates and executes Django QuerySets at runtime • Avocado - wraps ModelTree with additional metadata and abstractions • Serrano - REST API exposing core parts of Avocado • Cilantro - web app with Concept “query views”
ModelTree • https://github.com/cbmi/modeltree
Avocado • Definition - represents a single data field • Concept - one or more definitions represented together in a domain-specific way • Domain - collection of Concepts
Recommend
More recommend