PICA workshop ‘Excelleren in zorglogistiek’ 5 november 2014
PICA • • • •
Patientflow Improvement Centre Amsterdam Platform voor logistiek in de zorg Ontstaan uit samenwerking tussen VU en VUmc Kennisdeling: – PICA-seminar: volgende maandag 10 en 17 november 2014 van 16.00 tot 17.00 uur – Minisymposia/ workshop: 1-2 keer per jaar
• Onderzoek: onderzoekers, stages, bedrijfscase • Projecten
Programma workshop Tijd
Onderwerp
13.00 – 13.10
Opening
13.10 – 13.30
Inleiding excelleren in zorglogistiek: (on)mogelijkheden van Excel
Ger Koole
13.30 – 14.45
Deel 1: Data-analyse in Excel
René Bekker
14.45 – 15.15
Pauze*
15.15 – 16.30
Deel 2: Slimme functies in Excel
Ger Koole
16.30 – 16.40
Afsluiting
Ger Koole
16.40 – 17.30
Borrel
* Bekijken even wanneer we de pauzeren, rondom 15.00 uur
Spreker
Doel minisymposium • Bespreken sterke/ zwakke punten Excel • Onderbouwen beslissing wel/niet Excel – deel 1
• Nieuwe functionaliteit leren en uitproberen – deel 2 en 3
• Weten wat allemaal kan in Excel – deel 3
(On)mogelijkheden van Excel Ger Koole
Casus • Verpleegeenheid • Opnameplanning in Word • Geen overzicht, maar de data is er! • Oplossing: Excel
Casus • Essentieel: data goed invoeren • Dan kan bezetting berekend worden
Gebruik Excel Gebruik Excel valt uiteen in: • Eenmalige toepassingen – van even snel iets uitrekenen (geavanceerde rekenmachine) – tot uitgebreide statistische analyse
• Herhaald gebruik – maandelijkse rapportages, facturen, enz. – “operationele spreadsheets”, bijv: rooster polikliniek, OK planning, bedplanning
Waarom Excel? • Vrijwel overal beschikbaar • Intuïtief, intelligent kladblok • Flexibel, snel aan de slag
• Vaak eerste stap in structureren/automatiseren • Wanneer “verder” dan Excel? • Wat zijn de nadelen van Excel?
Nadelen • Geen autorisaties/verschil in gebruikers • Moeilijk te distribueren • Geen database/gestructureerde manier om met data om te gaan • Moeilijk te onderhouden/beheren • Foutgevoelig
“Impact of Errors in Operational Spreadsheets” Powell, Lawson & Baker Onderzoek naar 25 representatieve spreadsheets die operationeel werden ingezet
Waarom zo veel fouten? • Flexibiliteit: voordeel én nadeel – Programmeerprincipes niet toegepast op Excel – Geen scheiding structuur en invoer
• Operationele problemen: structuur is vast, invoer verandert • Excel: geen natuurlijke scheiding – Optie 1: structuur expliciet in Excel brengen – Optie 2: een andere softwareomgeving
Excel structureren • Invoer, berekeningen en uitvoer te scheiden • Kleurgebruik • Gebruik variabelen i.p.v. celreferenties • Schermpjes toevoegen • Tussenberekeningen afschermen • Documenteren Vereist veel discipline en kennis!
Mogelijkheden Excel • • • •
Geen gebrek aan rekenmogelijkheden Excel is veel meer dan alleen rekenblad Veel standaardfuncties ( + draaitabellen) “Add-ins” voor allerlei geavanceerd rekenwerk (statistiek, solver)
• Oneindig uitbreidbaar met VBA
Alternatieve rekenomgevingen • Decision support systems – probleemspecifiek (bijv. Harmony) – maatwerk / proces aan pakket aanpassen
• Modelleeromgevingen – geschikt voor meerdere problemen – zelf proces inbouwen (dan DSS) – van weinig gestructureerd (Excel) tot meer gestructureerd (bijv. SPSS) – geavanceerdere tools minder relevant voor zorglogistiek
Excel vs DSS • Casus: bedplanning in Excel of in Epic/Hotflo/...? • Nadelen: keurslijf, inwerktijd, past niet 100% • Voordelen: rapportages, foutloos, web interface, data in- en uitvoer
Conclusie: Wanneer Excel Eenmalig: • Snel iets uitrekenen Operationeel: • Weinig gebruikers • Die weten wat ze doen • Gestructureerde gedocumenteerde sheet
Workshop Excelleren in zorglogistiek Data-analyse in Excel Dr. René Bekker Vrije Universiteit PICA, kenniscentrum patiëntenlogistiek
Verbeterprojecten & data Projectopbouw: • Probleemstelling, opdrachtformulering, afbakening • Doelstellingen • Analyse Jumping to conclusions
– Kwalitatief (procesbeschrijving, flowcharts, etc.) – Kwantitatief → Data-analyse
• • • •
Bepalen knelpunten Beginseloplossingen ontwerpen Implementatie beste oplossing Borging → Data-analyse
Six Sigma Voorbeeld verbetermethodiek: Six Sigma
→ Data-analyse
→ Data-analyse
Verkrijgen data: Knelpunten Gebruik van informatiesystemen (ICT) • Vaak niet gericht op logistieke proces Belangrijkste problemen data voor logistiek: • Geen historische gegevens beschikbaar (bv. alleen huidige cliënten) • Veelheid aan systemen; combinatie is nodig • Een deel van de data is onnauwkeurig • Logistiek wenselijke gegevens worden niet bijgehouden
Programma Wat gaan we wel doen? Zelf aan de slag aan de hand van een theoretische case
Poli
OK
Kliniek
Probleemstelling/knelpunt: inefficiënt gebruik OK → spanningsveld tussen benutting OK en uitloop & wachtlijst (doelstelling doorloop: OK 2 weken na poli) Jumping to conclusions: herplannen OK
Programma Doel: Kennis maken met logistieke analyses in Excel
Poli
OK
Kliniek
Vaak soortgelijke analyses: • Aantallen aankomsten/opnamen (of aantal bezette bedden) • Duur van een ingreep (bv. OK, ligduur, scan/MRI, poli-afspraak) • Wachtlijsten/capaciteit
Programma
Poli
OK
Kliniek
Focus op 3 kernaspecten: • Aantal poli-bezoeken (aankomsten.xls) • Sessieplanning OK (OKsessies.xls) • Beddengebruik kliniek (los van de case) Delen met * zijn verdieping en vereisen wat meer Excel vaardigheden
Analyse Poli Poli
OK
• Data: aantal aankomsten bij poli voor 2013 en deel 2014 • Bereken aantal aankomsten per week (Excel: SOM of SUM) • Waar komen 0-en doordeweeks vandaan? • Maak grafiek van aantal aankomsten per week • Is er een patroon (seizoensinvloed of trend)?
Kliniek
• Hoeveel aankomsten zijn er gemiddeld per weekdag? (Excel: GEMIDDELDE of AVERAGE) • * Bereken gecorrigeerde gemiddelde voor feestdagen (Excel: gebruik SUM en COUNTIF)
01-12-06
01-11-06
01-10-06
01-09-06
01-08-06
01-07-06
01-06-06
01-05-06
01-04-06
01-03-06
01-02-06
01-01-06
Grafieken
30
25
20
15 Zorgvraag
10
5
0
Univariate data Veel gebruikte karakteristieken (met Excel functies): • Gemiddelde (GEMIDDELDE of AVERAGE) • Afwijking van gemiddelde, spreiding: – Standaard deviatie (STDEV) – Variantie; de standaarddeviatie gekwadrateerd (VAR)
• Rekenvoorbeeld:
gemiddelde
waardes 1 3 5 7 4
afwijking t.o.v. gemiddelde -3 -1 1 3 0
Kwadratische afwijking 9 1 1 9 0
Standaard deviatie
4
0
4
2
• Andere karakteristieken: mediaan, modus, percentielen, getrimd gemiddelde
Normale verdeling Gaussische of normale verdeling met parameters: • Gemiddelde μ = 30 • Standaarddeviatie σ = 5 80 70
50 40
de normale verdeling
30 20 10
50
48
46
44
42
40
38
36
34
32
30
28
26
24
22
20
18
16
14
12
0
10
Frequentie
60
Normale verdeling 80 70
50 40 30 20
-σ
+σ
10
50
48
46
44
42
40
38
36
34
32
30
28
26
24
22
20
18
16
14
12
0
10
Frequentie
60
68 % van de trekkingen valt binnen μ – σ en μ + σ
Normale verdeling 80 70 60
40 30 20
-2σ
+2σ
10
50
48
46
44
42
40
38
36
34
32
30
28
26
24
22
20
18
16
14
12
0
10
Frequentie
50
95 % van de trekkingen valt binnen μ – 2σ en μ + 2σ
01-12-06
01-11-06
01-10-06
01-09-06
01-08-06
01-07-06
01-06-06
01-05-06
01-04-06
01-03-06
01-02-06
01-01-06
Grafieken
30
25
20
15 Zorgvraag
5
0
Kentallen: Gem: 13,6 Stdev: 4,5 Var: 20,6
10
Var/gem: 1,5
Analyse Poli Poli
OK
Kliniek
• Bepaal standaarddeviatie (STDEV) van aantal aankomsten per weekdag en per week • Maak een grafiek van het gemiddelde aantal aankomsten per weekdag • * Bepaal eventueel andere prestatiematen, zoals – Minimum (MIN) en maximum (MAX) – Mediaan (MEDIAAN of MEDIAN) – Percentielen (PERCENTILE) • * Maak de spreiding inzichtelijk (bv. Maak een gecombineerde grafiek met het gemiddelde, het gemiddelde + stdev en het gemiddelde – stdev)
Histogrammen 40 35 30 25 20
zorgvraag
15 10 5 0 0
1
2
3
4
5
6
7
8
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
* Histogram in Excel Maak een rij cellen die als bin gebruikt worden (x-as grafiek) Een aantal mogelijkheden: • Eenmalig: Aanvinken Analysis Toolpack (onder Excel options > Add-Ins) Dan: Via Data > Data Analysis > Histogram • * M.b.v. de array-functie FREQUENCY Selecteer juiste gebied, druk F2, druk CTRL+SHIFT+ENTER • M.b.v. COUNTIF functies (minder fraai, soms wel praktisch)
Analyse OK • • • • •
Poli
5 dagen per week poli Gemiddeld 1 op 8 poli-afspraken leidt tot OK OK dagen: woensdag en donderdag OK dag: van 7:30 – 15:30 uur (480 minuten) Databestand met – – – – – – – –
Datum Weekdag (gebruik functie WEEKDAY) Aantal OK’s (uitgevoerd) Aantal afgezegde OK’s Geplande sessieduur in minuten Starttijd Eindtijd Snijder
OK
Kliniek
Analyse OK • Overzicht OK sessie
Poli
OK
Kliniek
Analyse OK Poli
OK
Kliniek
Uitgevoerde & afgezegde OK’s: • Wat zijn de totalen? (SOM of SUM) • Welke percentage OK’s wordt afgezegd? • Hoeveel OK’s worden gemiddeld per dag uitgevoerd? (GEMIDDELDE of AVERAGE) • Is er een onderscheid tussen woensdag en donderdag? (Gebruik Data > Filter om te filteren op weekdag) • Hoe vaak komt het voor dat er minder dan 3 OK’s worden uitgevoerd? (Gebruik =COUNTIF(C:C;”<3”))
• * Verder inzicht in relatie uitgevoerde OK’s en poli (bv. Incidenten: vergelijken bepaalde dagen; structureel: vergelijken weektotalen)
Analyse OK Poli
OK
Kliniek
Planning en realisatie: • Wat is gemiddelde geplande sessieduur? • Wat is gemiddelde gerealiseerde sessieduur? (Let op: het resultaat van G2 – F2 levert een cel met als format tijd op. M.b.v. format cells kan de waarde weer op `General’ (bovenaan) worden gezet. Dit is nu in dagen, dus * 24 * 60 levert minuten) • Hoe vaak wordt sessieduur onderschat? (COUNTIF( ; “>0”)) • Hoe vaak loopt de sessie uit? (COUNTIF) • Hoe lang is de gemiddelde uitloop in het geval van uitloop? (m.b.v. de filter of SUMIF en COUNTIF) • Hoe vaak start de OK te laat en wat is de gemiddelde duur van de late start in het geval van late start? • * Is er een verband tussen late start en uitloop (en/of afgezegde OK’s)? (Gebruik Filter of draaitabellen)
Analyse OK Poli
OK
* Snijder: • Is er een verband tussen de snijder en uitloop • Zou de planning op de snijder aangepast moeten worden?
Conclusie: wat zijn de bevindingen op het gebied van • Variatie aankomsten poli • Benutting OK • OK Planning
Kliniek
Analyse Kliniek Poli
Tot slot: • Een knelpunt kan ook een tekort aan bedden zijn (mogelijk op specifieke dagen) Indien tijd over: • Analyseer de bedbezetting van een verpleegafdeling
OK
Kliniek
Overzicht Handige Excel functies voor data-analyse • Bewerken tabellen: IF, SUM, COUNTIF, SUMIF (SUMPRODUCT, VLOOKUP) • Filter (en sorteren) • Statistisch: AVERAGE, STDEV (MEDIAN, MIN, MAX, PERCENTILE) • Grafieken (en histogrammen)
Pauze
Geavanceerd gebruik van Excel Ger Koole
Casus bedplanning • Welke functie? – countifs()
• Demo • Uitbreidingen: – – – –
onder- en bovenschatting ligduur meerdere momenten per dag aantallen opnames, zorgzwaarte optimalisatie opnamedata
Casus bedplanning • Voordelen Excel: – makkelijk aan te passen – laagdrempelig, snelgebouwd
• Nadelen – moeilijk delen – geen verbinding met andere systemen (suboptimalisatie) – foutgevoelig (demo)
Vervolg data-analyse • Excel heeft 2 dimensies: rijen en kolommen • Omgaan met meer dimensies onmogelijk? • Denk aan patiënt-data – elk aspect (opname/geboortedatum, DBC, afdeling, behandelend arts, enz) is een dimensie – tabel met elke rij een patiënt, elke kolom een aspect/attribuut
• Hoe inzicht krijgen in de data? – handmatig – draaitabellen
Handmatig
• Countif()/sumif() – alleen 2-dim relaties – vb: verpleegduur per leeftijd
• Meer-dimensionale relaties? – vb: verpleegduur per leeftijd & geslacht – maak extra kolom – demo
Draaitabellen • Selecteer data inclusief koprij • Maak draaitabel • Bepaal: – gemiddelde ligduur per specialisme, uitgesplitst naar geslacht – gemiddelde ligduur per leeftijd, uitgesplitst naar geslacht – maximale verpleegduur per leeftijd
Nadelen draaitabellen • Alleen standaardberekeningen – Wel gemiddelde, niet de mediaan
• Geen database met “query language” • Lastiger berekeningen – slimme truc met extra kolommen – programmeren in VBA
Recorded macros • • • •
Serie “handelingen” in Excel opgenomen Tools → Macros → Record new macro Herhaalbaar met 1 druk op de knop Demo
Zelf macro opnemen • • • •
Selecteer een cel Selecteer record macro Wijzig via format → cell Stop recording
• Selecteer een andere cel • Run de macro
Zelf programmeren • Druk op Alt-F11 • Typ een nieuwe macro: Sub Hello_world() Selection.Interior.ColorIndex = 40 ActiveCell.FormulaR1C1 = "hello world!" End Sub
• Run Hello_world
VBA • Macro opgenomen in achterliggende taal: VBA = Visual Basic for Applications • Volledige functionaliteit van programmeertaal
Wat kan je met VBA? • VBA is een programmeertaal, Excel blad de user interface • Gebruiker kan bibliotheek met eigen functies maken: een .xla file • “Add-in” • Alles is mogelijk… • Interactie tussen blad en VBA langzaam
Add-ins • “Invoegtoepassingen” • Standaard beschikbaar – bijv analysis toolpak, solver – demo
• Te koop – betere solvers
• Zelf maken
Voorbeeld: Erlang B
• Via de PICA site • of in Excel – heel makkelijk om 10 afdelingen tegelijk te doen! – demo