Heartbase An Evolution of SIR Functionality by Nick Gawrit.

49
heartbase heartbase An Evolution of SI An Evolution of SI Functionality Functionality by Nick Gawrit by Nick Gawrit

Transcript of Heartbase An Evolution of SIR Functionality by Nick Gawrit.

Page 1: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbaseheartbase An Evolution of SIR An Evolution of SIR

FunctionalityFunctionalityby Nick Gawritby Nick Gawrit

Page 2: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

OverviewOverviewIn this presentation, we will explore In this presentation, we will explore how SIR and industry requirements how SIR and industry requirements have changed over the years and have changed over the years and how this has impacted the how this has impacted the heartbaseheartbase application.application.

Page 3: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

Key Points of FocusKey Points of Focus

PQL enhancements PQL enhancements Secondary indicesSecondary indices Datavisor’s screen painter Datavisor’s screen painter Registry and Government Registry and Government

requirementsrequirements Overall impact of these on the Overall impact of these on the

heartbase data model. heartbase data model.

Overview

Page 4: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

Version MigrationVersion Migration heartbaseheartbase has successfully migrated has successfully migrated

to four new versions of SIR over the to four new versions of SIR over the past 12 years, including SIR386, past 12 years, including SIR386, SIR40, SIR2000, and SIR2002. SIR40, SIR2000, and SIR2002.

Version changes have allowed Version changes have allowed heartbase to migrate from a DEC heartbase to migrate from a DEC VAX platform to Windows 2003 (and VAX platform to Windows 2003 (and all the versions in between) creating all the versions in between) creating a highly robusta highly robust database application.database application.

Page 5: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

Trying to get somewhere Trying to get somewhere better…better…

That has been our experience with SIR. That has been our experience with SIR. Each version better than the next, with Each version better than the next, with

many changes from the time Alpha/Beta many changes from the time Alpha/Beta is done until we complete our mission.is done until we complete our mission.

Migration

Page 6: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

Visual EffectsVisual EffectsMigration

• Character Based -> Character Based ->

• Windows OS with character screens ->Windows OS with character screens ->

• GUI screens GUI screens

• improved GUI interaction.improved GUI interaction.

Page 7: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

Software VersionsSoftware Versions

Migration

386 to 4.0386 to 4.0 4.0 to SIR2000 (also VAX and UNIX 4.0 to SIR2000 (also VAX and UNIX

migration to SIR2000)migration to SIR2000) SIR2000 to SIR2002 SIR2000 to SIR2002 SIR2002 to SIRXSSIR2002 to SIRXS

Page 8: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

How to Migrate to How to Migrate to a New Version a New Version

Migration

Unload/Delete/ReloadUnload/Delete/Reload Database ExportDatabase Export

Page 9: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

CommentCommentMigration

Everything worked perfectly and Everything worked perfectly and preserved the deep robust history of the preserved the deep robust history of the

product.product.

Page 10: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

PQL EnhancementsPQL Enhancements

PQL has been a mainstay of the SIR PQL has been a mainstay of the SIR software product. We have used it software product. We have used it for virtually all of the for virtually all of the heartbaseheartbase application development. We will application development. We will explore some of the commands that explore some of the commands that have been added and how they have been added and how they affect heartbase.affect heartbase.

Page 11: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

New commands we use focus New commands we use focus on Visual PQLon Visual PQL

DISPLAY infoboxDISPLAY infoboxDISPLAY YESNOBOXDISPLAY YESNOBOXDISPLAY CANCELBOXDISPLAY CANCELBOXCURDIR(0)CURDIR(0)APPDIR(0)APPDIR(0)DIALOGSDIALOGSBUTTONS, check boxes, edit boxes, etcBUTTONS, check boxes, edit boxes, etcGetitxt, etcGetitxt, etcEDITFILEEDITFILEPQL ESCAPEPQL ESCAPE

PQL Enhancements

Page 12: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

Affect on Affect on heartbaseheartbasePQL Enhancements

1.Character Based Event Manager

Page 13: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

Affect on Affect on heartbaseheartbasePQL Enhancements

2.Initial GUI looking event manager

Page 14: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

Affect on Affect on heartbaseheartbasePQL Enhancements

3.Version 2 GUI event manager

Page 15: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

PQL Code 1992RETRIEVALPROCESS CASESPROCESS REC CATHGET VARS ALLWRITE ALLEND RECEND CASEEND RETRIEVAL

Old Command Consistency amongst versions

PQL Code 1999RETRIEVALPROCESS CASESPROCESS REC CATHGET VARS ALLWRITE ALLEND RECEND CASEEND RETREIVAL

PQL Code 2005RETRIEVALPROCESS CASESPROCESS REC CATHGET VARS ALLWRITE ALLEND RECEND CASEEND RETRIEVAL

PQL Enhancements

= =

Page 16: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

CommentComment

PQL is a very powerful tool that allowed PQL is a very powerful tool that allowed us to evolve from a character based set us to evolve from a character based set programming language to a visually programming language to a visually pleasing programming language pleasing programming language without sacrificing the knowledge base without sacrificing the knowledge base we built while learning the product.we built while learning the product.

PQL Enhancements

Page 17: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

Secondary IndicesSecondary Indices

Alternate lookup techniques for SIR Alternate lookup techniques for SIR were only available if you were only available if you programmed them yourself. We will programmed them yourself. We will look at the old methods we used for look at the old methods we used for lookups and then show how this code lookups and then show how this code has changed given the new has changed given the new Secondary index features in SIR.Secondary index features in SIR.

Page 18: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

Case ZeroCase Zero

Issues/ProblemsIssues/Problems– SynchronizationSynchronization– Locking case zero impactsLocking case zero impacts– Programming required for lookups and Programming required for lookups and

searchessearches– Record type requirementsRecord type requirements

Secondary Indices

Page 19: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

Implementation of Implementation of Secondary IndicesSecondary Indices

How to use itHow to use it Initial usage had its problemsInitial usage had its problems Where we are at todayWhere we are at today

Secondary Indices

Page 20: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

Implementation of Implementation of Secondary IndicesSecondary Indices

How to use itHow to use it Go to Database on Main Menu and Go to Database on Main Menu and

create a secondary indexcreate a secondary index Create a PQL program to create the Create a PQL program to create the

indexindex

Secondary Indices

Page 21: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

Implementation of Implementation of Secondary IndicesSecondary Indices

Initial usage had its problemsInitial usage had its problems Index CorruptionIndex Corruption Problems accessing with MasterProblems accessing with Master

Secondary Indices

Page 22: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

Implementation of Implementation of Secondary IndicesSecondary Indices

Where we are at todayWhere we are at today Replaced 5 Record Types so farReplaced 5 Record Types so far Allowed access to data that would have Allowed access to data that would have

required the addition of at least 5 more required the addition of at least 5 more record types.record types.

Eliminated about 25% of PQL event Eliminated about 25% of PQL event management code.management code.

Secondary Indices

Page 23: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

Comments Comments

The implementation of secondary The implementation of secondary indices gave a much needed boost to indices gave a much needed boost to make SIR a more mainstream product. make SIR a more mainstream product. Logical case structure, underlying Logical case structure, underlying relational structure, along with the new relational structure, along with the new secondary indices gave SIR the ability to secondary indices gave SIR the ability to compete more effectively with other compete more effectively with other database software.database software.

Secondary Indices

Page 24: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

DataVisor Screen PainterDataVisor Screen Painter

DVPainter is a data entry screen DVPainter is a data entry screen application development tool application development tool designed to work with SIR databases. designed to work with SIR databases. With DVPainter, users design the With DVPainter, users design the content, appearance and behavior of content, appearance and behavior of their data entry screens.their data entry screens.

Page 25: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

Evolution of Data Evolution of Data Presentation Presentation Windows 3.11 started the change Windows 3.11 started the change

from a character based format to a from a character based format to a graphical based screen format.graphical based screen format.

Industry impacts and perceptions of Industry impacts and perceptions of data presentation. data presentation.

Graphical (GOOD) vs. Character Graphical (GOOD) vs. Character (BAD)(BAD)

DataVisor Screen Painter

Page 26: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

Tom Shriver invented the first screen Tom Shriver invented the first screen painter (character based.)painter (character based.)

DataVisor Screen Painter

Screen Painting by Tom

Page 27: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

The PainterThe Painter Each logical view is painted Each logical view is painted

independentlyindependently Trigger mechanisms are version Trigger mechanisms are version

independentindependent Screen Descriptions and painter Screen Descriptions and painter

functionality control what gets functionality control what gets displayed.displayed.

Registry/Government Requirements

Page 28: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

Screen Painter 1- Character Based

DataVisor Screen Painter

Exit pointsExit points No mouse No mouse controlcontrol

Page 29: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

Exit pointsExit points Mouse controlMouse control

Screen Painter 2 – Graphical based in SIR2000

DataVisor Screen Painter

Page 30: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

Screen Painter 3- Graphical based and Screen Painter 3- Graphical based and

moremore

DataVisor Screen Painter

Graphical Graphical

ButtonsButtons Exit pointsExit points Mouse controlMouse control

Page 31: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

Registry/Government Registry/Government Requirements Requirements

Reporting registries and the Reporting registries and the government dictate changes government dictate changes required in heartbase. In this section required in heartbase. In this section we will view a concept used by we will view a concept used by heartbase called “filter views.”heartbase called “filter views.”

Page 32: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

Outside factors that influence Outside factors that influence heartbaseheartbase

American College of American College of CardiologyCardiology

Society of Thoracic SurgeonsSociety of Thoracic Surgeons AnthemAnthem Oryx (JCAHO)Oryx (JCAHO) CCORPCCORP Get with the GuidelinesGet with the Guidelines LeapfrogLeapfrog

Registry/Government Requirements

Page 33: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

Problem Problem

How to present data when many How to present data when many registries require the same data, registries require the same data, different data and have multiple different data and have multiple versions of their datasets active? versions of their datasets active?

Registry/Government Requirements

Page 34: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

Filter ViewsFilter Views

Filter views allow users to have Filter views allow users to have logical representation of their data in logical representation of their data in whatever way is needed. Recently, whatever way is needed. Recently, we have had to migrate from ACC we have had to migrate from ACC version 2.0c to version 3.04, while version 2.0c to version 3.04, while allowing users to access their data allowing users to access their data and to harvest their data from either and to harvest their data from either version.version.

Registry/Government Requirements

Page 35: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

Possible SolutionsPossible Solutions

Create a new database for each Create a new database for each versionversion

Add all the new data points to the Add all the new data points to the existing old applicationexisting old application

Create a way to logically see the Create a way to logically see the data points for each version in one data points for each version in one database.database.

Registry/Government Requirements

Page 36: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

Create a new version for each Create a new version for each database database

Easy to doEasy to do No problem with data definition No problem with data definition

overlapoverlap No longitudinal history in the No longitudinal history in the

databasedatabase Data replication Data replication Difficult reporting due to 2 databases.Difficult reporting due to 2 databases.

Registry/Government Requirements

Page 37: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

Add all the new data points to Add all the new data points to the existing old applicationthe existing old application

Easy to do for changing data pointsEasy to do for changing data points Difficult to interpret underlying Difficult to interpret underlying

relational DB model changesrelational DB model changes Confusing to users.Confusing to users. Difficult to enforce edits, such as Difficult to enforce edits, such as

parent/child relationshipparent/child relationship Appearance of similar definition fields Appearance of similar definition fields

on the same screen that are different.on the same screen that are different.

Registry/Government Requirements

Page 38: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

Create a way to logically see the Create a way to logically see the data points for each version in one data points for each version in one

database.database. More PQL programming required than the More PQL programming required than the

other solutionsother solutions Easy to present different models in effectEasy to present different models in effect Easy for users to comprehendEasy for users to comprehend Easy to enforce parent/child relationshipsEasy to enforce parent/child relationships Easy to move same data from one view to Easy to move same data from one view to

the nextthe next Maintain all longitudinal historyMaintain all longitudinal history

Registry/Government Requirements

Page 39: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

How do filter views work?How do filter views work?

The Event ManagerThe Event Manager The PainterThe Painter

Registry/Government Requirements

Page 40: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

The Event ManagerThe Event Manager

Allows a way to navigate the Allows a way to navigate the relational database using folder relational database using folder concepts. concepts.

Links various PQL subroutines Links various PQL subroutines together.together.

Utilizes Secondary IndicesUtilizes Secondary Indices Manages all manual data collection, Manages all manual data collection,

including add/change/deleteincluding add/change/delete

Registry/Government Requirements

Page 41: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

heartbaseheartbase Event Manager Event ManagerRegistry/Government Requirements

Page 42: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

heartbaseheartbase ACC Hosp ACC Hosp ViewView

Registry/Government Requirements

Page 43: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

heartbaseheartbase STS Hosp STS Hosp ViewView

Registry/Government Requirements

Page 44: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

One thing is constant, One thing is constant, ChangeChange..

When changes occur, the result is When changes occur, the result is data dilemmas. What do you do with data dilemmas. What do you do with old data and new data. What do you old data and new data. What do you do with definition changes? How do do with definition changes? How do users handle the transition period?users handle the transition period?

Registry/Government Requirements

Comment

Page 45: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

Data Model Changes Data Model Changes

Given all the changes above, how Given all the changes above, how has the heartbase data model has the heartbase data model changed? The heartbase data model changed? The heartbase data model has had the need to evolve with has had the need to evolve with changing demands, features of SIR, changing demands, features of SIR, regulatory changes, and user input. regulatory changes, and user input. Let’s take a quick look on how the Let’s take a quick look on how the data model has evolved since 1992.data model has evolved since 1992.

Page 46: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

heartbaseheartbase Data Model Data ModelDEMO

HOSP

CATH LAB VISIT(CATH)

OPEN HEART SURGERY

(SURG)

CLINPRES

CLOSURE DEVICES(EQUIPA)

COMPLICATION/OUTCOMES

PCI(PROC)

CATHSEGGRAFT

SEGMENT

EQUIPMENT(EQUIPA)

DRUG USAGE

DRUG USAGE

GRAFT COMPLICATION/OUTCOMES

Data Model Changes

Page 47: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

Keys (Case and SORTIDs)Keys (Case and SORTIDs) Design with the future in mindDesign with the future in mind Sorting out like types of Sorting out like types of

informationinformation Speed issuesSpeed issues To normalize or not normalize To normalize or not normalize

(types of users affect this (types of users affect this thought)thought)

Data Model Changes

Data Model Considerations

Page 48: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

Impacts on data modelImpacts on data model Reporting and data presentation Reporting and data presentation

needsneedso Flattening out of relational structures in Flattening out of relational structures in

more than one formatmore than one format

Secondary IndicesSecondary Indiceso Case Zero reliance reductionCase Zero reliance reduction

Government/Regulatory ChangesGovernment/Regulatory Changeso More detailed oriented data captureMore detailed oriented data captureo Definition consolidation and separationDefinition consolidation and separation

Data Model Changes

Page 49: Heartbase An Evolution of SIR Functionality by Nick Gawrit.

heartbase presentation heartbase presentation SIR Co SIR Conference 2005nference 2005

The heartbase Team