RIMBAA

21
RIMBAA Andy Harris Harbuk Ltd 27 October 2009 1

description

RIMBAA. Andy Harris Harbuk Ltd 27 October 2009. Background. Self employed from 1993 -2004, prototyping systems for NHS (primarily management data, not clinical) first RIMBAA db (in Access) 2003 2004 – 2009 UK Biobank Using Oracle HTB. - PowerPoint PPT Presentation

Transcript of RIMBAA

Page 1: RIMBAA

RIMBAA

Andy HarrisHarbuk Ltd

27 October 2009

1

Page 2: RIMBAA

Background

• Self employed from 1993 -2004, prototyping systems for NHS (primarily management data, not clinical)

• first RIMBAA db (in Access) 2003• 2004 – 2009 UK Biobank

– Using Oracle HTB.– Process summary – transform flat data structures into CDA format,

import into HTB. – Very powerful product. Based on Java API and Oracle DB– Enterprise terminology Services very mature– close mapping to HL7 class structure, but no roleLink table ??

• 2009 - Employed myself, Harbuk Ltd• Data Architect for NIHR – existing systems based on classic Logical

Data Model. Problem is that the business model keeps changing…

2

Page 3: RIMBAA

My standpoint

• Coming from a data layer perspective

• RIM based data layer will then make message generation 'simpler' in the future, not that I want to go there…

• Need to deliver something fast that is also a good fit for the longer term

3

Page 4: RIMBAA

Research Lifecycle

4

Integrated NIHR Systems exchange data, provide expert

decision support, toolkits, templates, reminders and

repositories

AnalysisReview

PublicationArchiving

Research Idea Initiation Institutional Sign-Off

Conclusion/Termination

ReportingMonitoring

Data Recording RecruitmentRegistration

Commencement

Scientific ReviewFunding Decision

Regulatory Authorisation

Ethical Review

Page 5: RIMBAA

Legacy Model – Simplified and stereotyped

5

Page 6: RIMBAA

BRIDG DAM Model

6

Page 7: RIMBAA

RCRIM Outputs – Study Design

7

Page 8: RIMBAA

RCRIM Outputs – Study Participation

8

Page 9: RIMBAA

My Issues

• Not a fully HL7 domain (yet)• Current HL7 models do not cover our realm• .NET• Status model

– Overloading HL7 Status or 'characteristic/observation'• temporal updates

– Versioning– timestamps and timespans

• class structures - break out or roll up?• localised terminologies• Some datatypes (IVL/GTS, PQ)• Where is Participation.id? (not managedParticipation.id)

9

Page 10: RIMBAA

10

Page 11: RIMBAA

11

Page 12: RIMBAA

Current wiki Issues

12

Page 13: RIMBAA

Object Versioning within RIMBAA

• Maintain history!– How?

• In-table versioning, makes relational model more difficult, as FKs would be linked to ??ID + versionNumber + 'isCurrentVersion'

• ODS/Archive versioning - i.e. most current record in ODS, older versions in archive (mirror + archive fields)

• Current record - SINCE column• Archive Record - FROM, TO columns• Pros and Cons either way.

• Maintain Control Acts!

13

Page 14: RIMBAA

Processing Logic in RIMBAA Applications

• data layer should be context driven (though context may be given by content)

14

Page 15: RIMBAA

RIM based on interoperability mindset

• CD– What are the 'Management issues' associated

with OIDs?– Storing Code System AND valueset OIDs– If the Terminology service is well grounded,

this is less of an issue IMHO

15

Page 16: RIMBAA

RIMBAA Performance

• Yes, querying is complex and relatively slow because of recursion, but that's why there should be a BI stack for heavy report lifting.

• at UK Bionbank, we were 'crosstabbing' 200,000 patients and approx 600 data points from an act table within approx 8 minutes - 120,000,000 data points

16

Page 17: RIMBAA

RIMBAA ReferenceApplication

• I would say a running application, not an IDE

17

Page 18: RIMBAA

Safe querying of a RIM-based data model

• it depends on the context!, so basically all acts should be made available

18

Page 19: RIMBAA

Template Implementation

• I am planning on heavy use of templates, question is more around the detail (e.g. how far from the core classes should you build the templates

19

Page 20: RIMBAA

Use of terminology servers in RIMBAA applications

• Absolutely

• we are developing CTSv1

20

Page 21: RIMBAA

User Interface for RIMBAA Applications

• integration with templates/LIMs, commonality is one of the key reasons for using RIM

• start with the generic controls, make them work, bolt them together, less generic as you go up the data stack.

21