SlideShare a Scribd company logo
1 of 8
Download to read offline
Cincom



  Make the Past serve your Future:
      Glorp and ActiveRecord

  Andreas Hiltner, Dirk Verleysen, Niall Ross, Cincom
              16 August 2011

              Version 0.1

                                                ESUG – 23ep2011 - 0
A typical episode of „House‟
 First scene: ―Nothing to worry about Mrs Bit-Part. Your baby
   has a mild case of PolysyllabicMedicalTerm. A short course
   of ChemoBabble will clear it up in a trice.‖
 But soon enough: ―I don‘t understand it - the fever is worse.‖
 And by half-way through: ―Our diagnosis must be wrong.
  Phone the lab to test for DeadlyDiseaseSyndrome.‖
 And in the lab: ―The baby is dying. We have to find more of the
  sample fast – enough to run the A.C.R.O.N.Y.M. test.‖
 Later in the lab: ―Its EvenDeadlierDiseaseSyndrome! Tell the
  hospital to Administer 30cc‘s of Sesquipedalia immediately!!‖
 And finally: ―It‘s OK Mrs Bit-Part – the fever is going down now‖
                         Closing Credits
Cincom                                                     ESUG – 23aug2011 - 1
Reality can be more like this than you‟d think
• Genetics Lab: regional (central lab for many hospitals)
  — Cytogenetics (chromosomes)
  — Molecular DNA analysis

• Immunophenotyping: also central lab for many hospitals
  — cell surface markers
  — some molecular DNA analysis

• Haematology lab: one in each hospital
  — full blood count
  — morphology on sample

• Histo-Pathology lab: one per hospital + central re-referral
  — Morphology in situ (of bone marrow trefine or other biopsy)
  — immuno-histochemistry: cell surface markers in situ

Cincom                                                            ESUG – 23aug2011 - 2
Blood cancer diagnosis
• Patient “presents”: consultant takes sample
  — not an easy or enjoyable procedure; sample may be sparse / poor / …
    – e.g. haemodilution, a.k.a ―I can‘t analyse this bloody sample‖ 
  — bone marrow aspirate, bone marrow trefine, full blood count, etc.

• Sample divided for Labs based on initial diagnosis
  — labs have no warning (sample can be delayed or misdirected)

• Each lab enters sample into distinct bespoke system
  — Genetics‘ was sub-sub-contracted to Rumanians
    – Table and column names ‗unintuitive‘. Poor fit to domain .
    – ―Every time we make a change it breaks!‖
  — The other Labs‘ systems are in the same state
  — None of these systems can be retired for years

• Labs analyse: clinician‟s diagnosis is right – or not !
Cincom                                                             ESUG – 23aug2011 - 3
“or not” can be time-wasting or serious (1)
Examples of time-wasting:
• “Myelodysplasia is in the differential – include Genetics.”
  — Histo-pathology do the morphology: ―No, it‘s just IDT.‖
    – Idiopathic:      we have not a clue what is causing it
    – Thrombocytic : it is to do with platelets
    – Purpura:         the symptom is a rash
  — Genetics could skip their test - if only they knew the Histo-path result

• “Acute leukaemia?” – no, just iron deficiency anaemia
     – would save much time and money if Genetics knew Blood result

BUT no connection between Lab systems
     or to path lab reception (sample dispatch) either

             Just wasting lab time can be serious for another patient

Cincom                                                                  ESUG – 23aug2011 - 4
“or not” can be time-wasting or serious (2)
Examples of serious:
• (for elderly patient): “Its IDT – skip Genetics.”
  — Blood lab: ―No, it‘s MDS !‖
  — Genetics need to find a Lab with spare sample

• (for infant) invasive procedure + general anaethetic, then:
     – ―Its IDT – skip Genetics.‖ (rarer now – it is so critical)
     – Haemodilution
  — (and then), ―No, it could be acute lymphoblastic leukemia !‖
    – if so, sample cells die fast - get to spare sample fast !
    – another 2 days to culture, then time to analyse – you have 7 days !

How is spare sample found? By random phoning around.



Cincom                                                              ESUG – 23aug2011 - 5
Requirement: something old, something new
• Web app: consultant / path lab reception enter
  — Sample dispatch data
  — Initial diagnosis

• App puts sample data in
  — its RDB
  — Lab-systems‘ RDBs

• Labs process sample: more data in lab systems
• App presents that data
  — results and result tracking
  — Multi-disciplinary team use system to create their reports
  — Labs use system for emergencies, time-waste avoidance, etc.



Cincom                                                            ESUG – 23aug2011 - 6
Process
• ObjectStudio Mapping Tool
  — Read the schema (who needs documentation!) and understand it
    – Display tables and relationships
    – Create classes, view data

• ObjectStudio Modeling Tool
  — Import classes, show diagram

• Some Essential Fixes
  — Rename some classes: doctors do not read Rumanian 
  — Consultants subclass: DiagnosingConsultant, ReferringConsultant
    – Be ready for upcoming organisational changes
  — New descriptor: subclass, convert to sibling refactor
    – Generate DB for web app
    Write data between new and old DBs (not how real system will do it!)

Cincom                                                            ESUG – 23aug2011 - 7

More Related Content

Similar to Make the Past serve your Future

Laser scanning cytometry and liquid based cytology
Laser scanning cytometry and liquid based cytologyLaser scanning cytometry and liquid based cytology
Laser scanning cytometry and liquid based cytology
anaonline
 
Casey gain in translation 2015
Casey gain in translation 2015Casey gain in translation 2015
Casey gain in translation 2015
John Chiang
 

Similar to Make the Past serve your Future (20)

AdamAmeur_SciLife_Bioinfo_course_Nov2015.ppt
AdamAmeur_SciLife_Bioinfo_course_Nov2015.pptAdamAmeur_SciLife_Bioinfo_course_Nov2015.ppt
AdamAmeur_SciLife_Bioinfo_course_Nov2015.ppt
 
AdamAmeur_SciLife_Bioinfo_course_Nov2015.ppt
AdamAmeur_SciLife_Bioinfo_course_Nov2015.pptAdamAmeur_SciLife_Bioinfo_course_Nov2015.ppt
AdamAmeur_SciLife_Bioinfo_course_Nov2015.ppt
 
Making your science powerful : an introduction to NGS experimental design
Making your science powerful : an introduction to NGS experimental designMaking your science powerful : an introduction to NGS experimental design
Making your science powerful : an introduction to NGS experimental design
 
lasala.ppt
lasala.pptlasala.ppt
lasala.ppt
 
Diagnostic Testing for Mitochondrial Disease
Diagnostic Testing for Mitochondrial DiseaseDiagnostic Testing for Mitochondrial Disease
Diagnostic Testing for Mitochondrial Disease
 
Dr. Marie Culhane - Increase the value of your diagnostics and your value as ...
Dr. Marie Culhane - Increase the value of your diagnostics and your value as ...Dr. Marie Culhane - Increase the value of your diagnostics and your value as ...
Dr. Marie Culhane - Increase the value of your diagnostics and your value as ...
 
Final_Presentation.pptx
Final_Presentation.pptxFinal_Presentation.pptx
Final_Presentation.pptx
 
Clinical trials and trial data in future
Clinical trials and  trial data in futureClinical trials and  trial data in future
Clinical trials and trial data in future
 
DNA analysis on your laptop: Spot the differences
DNA analysis on your laptop: Spot the differencesDNA analysis on your laptop: Spot the differences
DNA analysis on your laptop: Spot the differences
 
Charles River Pathology Associates Capabilities
Charles River Pathology Associates CapabilitiesCharles River Pathology Associates Capabilities
Charles River Pathology Associates Capabilities
 
Intro to in silico drug discovery 2014
Intro to in silico drug discovery 2014Intro to in silico drug discovery 2014
Intro to in silico drug discovery 2014
 
Clinical Summary and reasoning Format in Practice.pptx
Clinical Summary and reasoning Format in Practice.pptxClinical Summary and reasoning Format in Practice.pptx
Clinical Summary and reasoning Format in Practice.pptx
 
Cerebrospinal fluid,CSF collection, composition
Cerebrospinal fluid,CSF collection, compositionCerebrospinal fluid,CSF collection, composition
Cerebrospinal fluid,CSF collection, composition
 
Amia tb-review-08
Amia tb-review-08Amia tb-review-08
Amia tb-review-08
 
Journal Review - The Emerging role of in vitro electrophysiological methods i...
Journal Review - The Emerging role of in vitro electrophysiological methods i...Journal Review - The Emerging role of in vitro electrophysiological methods i...
Journal Review - The Emerging role of in vitro electrophysiological methods i...
 
Laser scanning cytometry and liquid based cytology
Laser scanning cytometry and liquid based cytologyLaser scanning cytometry and liquid based cytology
Laser scanning cytometry and liquid based cytology
 
2014 naples
2014 naples2014 naples
2014 naples
 
Casey gain in translation 2015
Casey gain in translation 2015Casey gain in translation 2015
Casey gain in translation 2015
 
Placement 2020
Placement 2020Placement 2020
Placement 2020
 
Internship - FMRI, Gurgaon (Dec '18 - Jan '19)
Internship - FMRI, Gurgaon (Dec '18 - Jan '19) Internship - FMRI, Gurgaon (Dec '18 - Jan '19)
Internship - FMRI, Gurgaon (Dec '18 - Jan '19)
 

More from ESUG

Workshop: Identifying concept inventories in agile programming
Workshop: Identifying concept inventories in agile programmingWorkshop: Identifying concept inventories in agile programming
Workshop: Identifying concept inventories in agile programming
ESUG
 
The Pharo Debugger and Debugging tools: Advances and Roadmap
The Pharo Debugger and Debugging tools: Advances and RoadmapThe Pharo Debugger and Debugging tools: Advances and Roadmap
The Pharo Debugger and Debugging tools: Advances and Roadmap
ESUG
 
Migration process from monolithic to micro frontend architecture in mobile ap...
Migration process from monolithic to micro frontend architecture in mobile ap...Migration process from monolithic to micro frontend architecture in mobile ap...
Migration process from monolithic to micro frontend architecture in mobile ap...
ESUG
 
Analyzing Dart Language with Pharo: Report and early results
Analyzing Dart Language with Pharo: Report and early resultsAnalyzing Dart Language with Pharo: Report and early results
Analyzing Dart Language with Pharo: Report and early results
ESUG
 
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
ESUG
 
A Unit Test Metamodel for Test Generation
A Unit Test Metamodel for Test GenerationA Unit Test Metamodel for Test Generation
A Unit Test Metamodel for Test Generation
ESUG
 
Creating Unit Tests Using Genetic Programming
Creating Unit Tests Using Genetic ProgrammingCreating Unit Tests Using Genetic Programming
Creating Unit Tests Using Genetic Programming
ESUG
 
Threaded-Execution and CPS Provide Smooth Switching Between Execution Modes
Threaded-Execution and CPS Provide Smooth Switching Between Execution ModesThreaded-Execution and CPS Provide Smooth Switching Between Execution Modes
Threaded-Execution and CPS Provide Smooth Switching Between Execution Modes
ESUG
 
Exploring GitHub Actions through EGAD: An Experience Report
Exploring GitHub Actions through EGAD: An Experience ReportExploring GitHub Actions through EGAD: An Experience Report
Exploring GitHub Actions through EGAD: An Experience Report
ESUG
 
Pharo: a reflective language A first systematic analysis of reflective APIs
Pharo: a reflective language A first systematic analysis of reflective APIsPharo: a reflective language A first systematic analysis of reflective APIs
Pharo: a reflective language A first systematic analysis of reflective APIs
ESUG
 
Improving Performance Through Object Lifetime Profiling: the DataFrame Case
Improving Performance Through Object Lifetime Profiling: the DataFrame CaseImproving Performance Through Object Lifetime Profiling: the DataFrame Case
Improving Performance Through Object Lifetime Profiling: the DataFrame Case
ESUG
 
Pharo DataFrame: Past, Present, and Future
Pharo DataFrame: Past, Present, and FuturePharo DataFrame: Past, Present, and Future
Pharo DataFrame: Past, Present, and Future
ESUG
 
A New Architecture Reconciling Refactorings and Transformations
A New Architecture Reconciling Refactorings and TransformationsA New Architecture Reconciling Refactorings and Transformations
A New Architecture Reconciling Refactorings and Transformations
ESUG
 

More from ESUG (20)

Workshop: Identifying concept inventories in agile programming
Workshop: Identifying concept inventories in agile programmingWorkshop: Identifying concept inventories in agile programming
Workshop: Identifying concept inventories in agile programming
 
Technical documentation support in Pharo
Technical documentation support in PharoTechnical documentation support in Pharo
Technical documentation support in Pharo
 
The Pharo Debugger and Debugging tools: Advances and Roadmap
The Pharo Debugger and Debugging tools: Advances and RoadmapThe Pharo Debugger and Debugging tools: Advances and Roadmap
The Pharo Debugger and Debugging tools: Advances and Roadmap
 
Sequence: Pipeline modelling in Pharo
Sequence: Pipeline modelling in PharoSequence: Pipeline modelling in Pharo
Sequence: Pipeline modelling in Pharo
 
Migration process from monolithic to micro frontend architecture in mobile ap...
Migration process from monolithic to micro frontend architecture in mobile ap...Migration process from monolithic to micro frontend architecture in mobile ap...
Migration process from monolithic to micro frontend architecture in mobile ap...
 
Analyzing Dart Language with Pharo: Report and early results
Analyzing Dart Language with Pharo: Report and early resultsAnalyzing Dart Language with Pharo: Report and early results
Analyzing Dart Language with Pharo: Report and early results
 
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
 
A Unit Test Metamodel for Test Generation
A Unit Test Metamodel for Test GenerationA Unit Test Metamodel for Test Generation
A Unit Test Metamodel for Test Generation
 
Creating Unit Tests Using Genetic Programming
Creating Unit Tests Using Genetic ProgrammingCreating Unit Tests Using Genetic Programming
Creating Unit Tests Using Genetic Programming
 
Threaded-Execution and CPS Provide Smooth Switching Between Execution Modes
Threaded-Execution and CPS Provide Smooth Switching Between Execution ModesThreaded-Execution and CPS Provide Smooth Switching Between Execution Modes
Threaded-Execution and CPS Provide Smooth Switching Between Execution Modes
 
Exploring GitHub Actions through EGAD: An Experience Report
Exploring GitHub Actions through EGAD: An Experience ReportExploring GitHub Actions through EGAD: An Experience Report
Exploring GitHub Actions through EGAD: An Experience Report
 
Pharo: a reflective language A first systematic analysis of reflective APIs
Pharo: a reflective language A first systematic analysis of reflective APIsPharo: a reflective language A first systematic analysis of reflective APIs
Pharo: a reflective language A first systematic analysis of reflective APIs
 
Garbage Collector Tuning
Garbage Collector TuningGarbage Collector Tuning
Garbage Collector Tuning
 
Improving Performance Through Object Lifetime Profiling: the DataFrame Case
Improving Performance Through Object Lifetime Profiling: the DataFrame CaseImproving Performance Through Object Lifetime Profiling: the DataFrame Case
Improving Performance Through Object Lifetime Profiling: the DataFrame Case
 
Pharo DataFrame: Past, Present, and Future
Pharo DataFrame: Past, Present, and FuturePharo DataFrame: Past, Present, and Future
Pharo DataFrame: Past, Present, and Future
 
thisContext in the Debugger
thisContext in the DebuggerthisContext in the Debugger
thisContext in the Debugger
 
Websockets for Fencing Score
Websockets for Fencing ScoreWebsockets for Fencing Score
Websockets for Fencing Score
 
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScriptShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
 
Advanced Object- Oriented Design Mooc
Advanced Object- Oriented Design MoocAdvanced Object- Oriented Design Mooc
Advanced Object- Oriented Design Mooc
 
A New Architecture Reconciling Refactorings and Transformations
A New Architecture Reconciling Refactorings and TransformationsA New Architecture Reconciling Refactorings and Transformations
A New Architecture Reconciling Refactorings and Transformations
 

Recently uploaded

Call Girls Bhubaneswar Just Call 9907093804 Top Class Call Girl Service Avail...
Call Girls Bhubaneswar Just Call 9907093804 Top Class Call Girl Service Avail...Call Girls Bhubaneswar Just Call 9907093804 Top Class Call Girl Service Avail...
Call Girls Bhubaneswar Just Call 9907093804 Top Class Call Girl Service Avail...
Dipal Arora
 

Recently uploaded (20)

Call Girls Bangalore Just Call 8250077686 Top Class Call Girl Service Available
Call Girls Bangalore Just Call 8250077686 Top Class Call Girl Service AvailableCall Girls Bangalore Just Call 8250077686 Top Class Call Girl Service Available
Call Girls Bangalore Just Call 8250077686 Top Class Call Girl Service Available
 
Pondicherry Call Girls Book Now 9630942363 Top Class Pondicherry Escort Servi...
Pondicherry Call Girls Book Now 9630942363 Top Class Pondicherry Escort Servi...Pondicherry Call Girls Book Now 9630942363 Top Class Pondicherry Escort Servi...
Pondicherry Call Girls Book Now 9630942363 Top Class Pondicherry Escort Servi...
 
Call Girls Coimbatore Just Call 9907093804 Top Class Call Girl Service Available
Call Girls Coimbatore Just Call 9907093804 Top Class Call Girl Service AvailableCall Girls Coimbatore Just Call 9907093804 Top Class Call Girl Service Available
Call Girls Coimbatore Just Call 9907093804 Top Class Call Girl Service Available
 
Night 7k to 12k Navi Mumbai Call Girl Photo 👉 BOOK NOW 9833363713 👈 ♀️ night ...
Night 7k to 12k Navi Mumbai Call Girl Photo 👉 BOOK NOW 9833363713 👈 ♀️ night ...Night 7k to 12k Navi Mumbai Call Girl Photo 👉 BOOK NOW 9833363713 👈 ♀️ night ...
Night 7k to 12k Navi Mumbai Call Girl Photo 👉 BOOK NOW 9833363713 👈 ♀️ night ...
 
All Time Service Available Call Girls Marine Drive 📳 9820252231 For 18+ VIP C...
All Time Service Available Call Girls Marine Drive 📳 9820252231 For 18+ VIP C...All Time Service Available Call Girls Marine Drive 📳 9820252231 For 18+ VIP C...
All Time Service Available Call Girls Marine Drive 📳 9820252231 For 18+ VIP C...
 
(👑VVIP ISHAAN ) Russian Call Girls Service Navi Mumbai🖕9920874524🖕Independent...
(👑VVIP ISHAAN ) Russian Call Girls Service Navi Mumbai🖕9920874524🖕Independent...(👑VVIP ISHAAN ) Russian Call Girls Service Navi Mumbai🖕9920874524🖕Independent...
(👑VVIP ISHAAN ) Russian Call Girls Service Navi Mumbai🖕9920874524🖕Independent...
 
Call Girls Gwalior Just Call 8617370543 Top Class Call Girl Service Available
Call Girls Gwalior Just Call 8617370543 Top Class Call Girl Service AvailableCall Girls Gwalior Just Call 8617370543 Top Class Call Girl Service Available
Call Girls Gwalior Just Call 8617370543 Top Class Call Girl Service Available
 
VIP Service Call Girls Sindhi Colony 📳 7877925207 For 18+ VIP Call Girl At Th...
VIP Service Call Girls Sindhi Colony 📳 7877925207 For 18+ VIP Call Girl At Th...VIP Service Call Girls Sindhi Colony 📳 7877925207 For 18+ VIP Call Girl At Th...
VIP Service Call Girls Sindhi Colony 📳 7877925207 For 18+ VIP Call Girl At Th...
 
Call Girls Gwalior Just Call 9907093804 Top Class Call Girl Service Available
Call Girls Gwalior Just Call 9907093804 Top Class Call Girl Service AvailableCall Girls Gwalior Just Call 9907093804 Top Class Call Girl Service Available
Call Girls Gwalior Just Call 9907093804 Top Class Call Girl Service Available
 
Call Girls Haridwar Just Call 8250077686 Top Class Call Girl Service Available
Call Girls Haridwar Just Call 8250077686 Top Class Call Girl Service AvailableCall Girls Haridwar Just Call 8250077686 Top Class Call Girl Service Available
Call Girls Haridwar Just Call 8250077686 Top Class Call Girl Service Available
 
Top Rated Bangalore Call Girls Ramamurthy Nagar ⟟ 9332606886 ⟟ Call Me For G...
Top Rated Bangalore Call Girls Ramamurthy Nagar ⟟  9332606886 ⟟ Call Me For G...Top Rated Bangalore Call Girls Ramamurthy Nagar ⟟  9332606886 ⟟ Call Me For G...
Top Rated Bangalore Call Girls Ramamurthy Nagar ⟟ 9332606886 ⟟ Call Me For G...
 
♛VVIP Hyderabad Call Girls Chintalkunta🖕7001035870🖕Riya Kappor Top Call Girl ...
♛VVIP Hyderabad Call Girls Chintalkunta🖕7001035870🖕Riya Kappor Top Call Girl ...♛VVIP Hyderabad Call Girls Chintalkunta🖕7001035870🖕Riya Kappor Top Call Girl ...
♛VVIP Hyderabad Call Girls Chintalkunta🖕7001035870🖕Riya Kappor Top Call Girl ...
 
Premium Call Girls Cottonpet Whatsapp 7001035870 Independent Escort Service
Premium Call Girls Cottonpet Whatsapp 7001035870 Independent Escort ServicePremium Call Girls Cottonpet Whatsapp 7001035870 Independent Escort Service
Premium Call Girls Cottonpet Whatsapp 7001035870 Independent Escort Service
 
Call Girls Ooty Just Call 8250077686 Top Class Call Girl Service Available
Call Girls Ooty Just Call 8250077686 Top Class Call Girl Service AvailableCall Girls Ooty Just Call 8250077686 Top Class Call Girl Service Available
Call Girls Ooty Just Call 8250077686 Top Class Call Girl Service Available
 
Call Girls Visakhapatnam Just Call 9907093804 Top Class Call Girl Service Ava...
Call Girls Visakhapatnam Just Call 9907093804 Top Class Call Girl Service Ava...Call Girls Visakhapatnam Just Call 9907093804 Top Class Call Girl Service Ava...
Call Girls Visakhapatnam Just Call 9907093804 Top Class Call Girl Service Ava...
 
💎VVIP Kolkata Call Girls Parganas🩱7001035870🩱Independent Girl ( Ac Rooms Avai...
💎VVIP Kolkata Call Girls Parganas🩱7001035870🩱Independent Girl ( Ac Rooms Avai...💎VVIP Kolkata Call Girls Parganas🩱7001035870🩱Independent Girl ( Ac Rooms Avai...
💎VVIP Kolkata Call Girls Parganas🩱7001035870🩱Independent Girl ( Ac Rooms Avai...
 
Bangalore Call Girls Nelamangala Number 9332606886 Meetin With Bangalore Esc...
Bangalore Call Girls Nelamangala Number 9332606886  Meetin With Bangalore Esc...Bangalore Call Girls Nelamangala Number 9332606886  Meetin With Bangalore Esc...
Bangalore Call Girls Nelamangala Number 9332606886 Meetin With Bangalore Esc...
 
Night 7k to 12k Chennai City Center Call Girls 👉👉 7427069034⭐⭐ 100% Genuine E...
Night 7k to 12k Chennai City Center Call Girls 👉👉 7427069034⭐⭐ 100% Genuine E...Night 7k to 12k Chennai City Center Call Girls 👉👉 7427069034⭐⭐ 100% Genuine E...
Night 7k to 12k Chennai City Center Call Girls 👉👉 7427069034⭐⭐ 100% Genuine E...
 
Call Girls Bhubaneswar Just Call 9907093804 Top Class Call Girl Service Avail...
Call Girls Bhubaneswar Just Call 9907093804 Top Class Call Girl Service Avail...Call Girls Bhubaneswar Just Call 9907093804 Top Class Call Girl Service Avail...
Call Girls Bhubaneswar Just Call 9907093804 Top Class Call Girl Service Avail...
 
Top Rated Bangalore Call Girls Richmond Circle ⟟ 9332606886 ⟟ Call Me For Ge...
Top Rated Bangalore Call Girls Richmond Circle ⟟  9332606886 ⟟ Call Me For Ge...Top Rated Bangalore Call Girls Richmond Circle ⟟  9332606886 ⟟ Call Me For Ge...
Top Rated Bangalore Call Girls Richmond Circle ⟟ 9332606886 ⟟ Call Me For Ge...
 

Make the Past serve your Future

  • 1. Cincom Make the Past serve your Future: Glorp and ActiveRecord Andreas Hiltner, Dirk Verleysen, Niall Ross, Cincom 16 August 2011 Version 0.1 ESUG – 23ep2011 - 0
  • 2. A typical episode of „House‟ First scene: ―Nothing to worry about Mrs Bit-Part. Your baby has a mild case of PolysyllabicMedicalTerm. A short course of ChemoBabble will clear it up in a trice.‖ But soon enough: ―I don‘t understand it - the fever is worse.‖ And by half-way through: ―Our diagnosis must be wrong. Phone the lab to test for DeadlyDiseaseSyndrome.‖ And in the lab: ―The baby is dying. We have to find more of the sample fast – enough to run the A.C.R.O.N.Y.M. test.‖ Later in the lab: ―Its EvenDeadlierDiseaseSyndrome! Tell the hospital to Administer 30cc‘s of Sesquipedalia immediately!!‖ And finally: ―It‘s OK Mrs Bit-Part – the fever is going down now‖ Closing Credits Cincom ESUG – 23aug2011 - 1
  • 3. Reality can be more like this than you‟d think • Genetics Lab: regional (central lab for many hospitals) — Cytogenetics (chromosomes) — Molecular DNA analysis • Immunophenotyping: also central lab for many hospitals — cell surface markers — some molecular DNA analysis • Haematology lab: one in each hospital — full blood count — morphology on sample • Histo-Pathology lab: one per hospital + central re-referral — Morphology in situ (of bone marrow trefine or other biopsy) — immuno-histochemistry: cell surface markers in situ Cincom ESUG – 23aug2011 - 2
  • 4. Blood cancer diagnosis • Patient “presents”: consultant takes sample — not an easy or enjoyable procedure; sample may be sparse / poor / … – e.g. haemodilution, a.k.a ―I can‘t analyse this bloody sample‖  — bone marrow aspirate, bone marrow trefine, full blood count, etc. • Sample divided for Labs based on initial diagnosis — labs have no warning (sample can be delayed or misdirected) • Each lab enters sample into distinct bespoke system — Genetics‘ was sub-sub-contracted to Rumanians – Table and column names ‗unintuitive‘. Poor fit to domain . – ―Every time we make a change it breaks!‖ — The other Labs‘ systems are in the same state — None of these systems can be retired for years • Labs analyse: clinician‟s diagnosis is right – or not ! Cincom ESUG – 23aug2011 - 3
  • 5. “or not” can be time-wasting or serious (1) Examples of time-wasting: • “Myelodysplasia is in the differential – include Genetics.” — Histo-pathology do the morphology: ―No, it‘s just IDT.‖ – Idiopathic: we have not a clue what is causing it – Thrombocytic : it is to do with platelets – Purpura: the symptom is a rash — Genetics could skip their test - if only they knew the Histo-path result • “Acute leukaemia?” – no, just iron deficiency anaemia – would save much time and money if Genetics knew Blood result BUT no connection between Lab systems or to path lab reception (sample dispatch) either Just wasting lab time can be serious for another patient Cincom ESUG – 23aug2011 - 4
  • 6. “or not” can be time-wasting or serious (2) Examples of serious: • (for elderly patient): “Its IDT – skip Genetics.” — Blood lab: ―No, it‘s MDS !‖ — Genetics need to find a Lab with spare sample • (for infant) invasive procedure + general anaethetic, then: – ―Its IDT – skip Genetics.‖ (rarer now – it is so critical) – Haemodilution — (and then), ―No, it could be acute lymphoblastic leukemia !‖ – if so, sample cells die fast - get to spare sample fast ! – another 2 days to culture, then time to analyse – you have 7 days ! How is spare sample found? By random phoning around. Cincom ESUG – 23aug2011 - 5
  • 7. Requirement: something old, something new • Web app: consultant / path lab reception enter — Sample dispatch data — Initial diagnosis • App puts sample data in — its RDB — Lab-systems‘ RDBs • Labs process sample: more data in lab systems • App presents that data — results and result tracking — Multi-disciplinary team use system to create their reports — Labs use system for emergencies, time-waste avoidance, etc. Cincom ESUG – 23aug2011 - 6
  • 8. Process • ObjectStudio Mapping Tool — Read the schema (who needs documentation!) and understand it – Display tables and relationships – Create classes, view data • ObjectStudio Modeling Tool — Import classes, show diagram • Some Essential Fixes — Rename some classes: doctors do not read Rumanian  — Consultants subclass: DiagnosingConsultant, ReferringConsultant – Be ready for upcoming organisational changes — New descriptor: subclass, convert to sibling refactor – Generate DB for web app Write data between new and old DBs (not how real system will do it!) Cincom ESUG – 23aug2011 - 7