2. Product: Ambulatory Clinical

This product focuses on the needs of outpatient clinical care settings. It meets a subset of the needs of larger hospitals and healhcare chains.

Patient care is multi-disciplinary. The circle of care for a patient may involve doctors, nurses, clinical support staff e.g admissions clerks, case managers, payors, guarantors, pharmacists and others. This multidisciplinary role setup is made harder by the need to balance between access and confidentiality - what does each party need to know in order to do their job? This is made even tougher by the need for mobility.

Note

Information Security

This guide assumes that there shall be fine grained role based access control. The permissions used shall be granular, so that is shall be possible to grant or deny access to any screen or section of a screen. It shall also be possible to grant view only rights.

Access shall be restricted on the basis of:
  • user groups
  • user types
  • individual patient charts
  • locations e.g nursing floors, clinics
  • patient type e.g VIP, confidential patients
  • a combination of all of the above

Logged in sessions shall be timed out after 10 minutes. The user shall be locked out from further login attempts after three incorrect login attempts. Each lockout shall be an hour long.

All entries shall be time stamped and audit trailed.

The system will need to support secure logon - with hardware tokens.

Note

Online Help

The system should embed online ‘help’ and first-use tutorials.

For clinical services, the need to design for high distraction environments and for task efficiency is paramount. Many of the existing products have failed to gain adoption in clinical settings in part because they are perceived to be more cumbersome than paper.

2.1. Theme: Scheduling

The scheduler will be available to administrative staff ( e.g registration clerks ), clinical staff ( e.g doctors and nurses ) and even to patients themselves.

This feature should work for both single clinics and large multi-site healthcare businesses. For a multi-site operation, the calendar should be synchronized enterprise-wide.

A medium- to large- provider will typically have many concurrently scheduled routine clinics e.g paediatric, antenatal, postnatal, family health, diabetes, chest, well baby, child welfare, immunization, lamaze etc. There will also be a sizable number of specialist clinics e.g neurosurgical, obstetric, cardiology, neurology etc

2.1.1. Epic: Booking appointments

Most bookings will be done by administrative or nursing staff. It should still be possible to individual providers to book their own appointments.

The business goal for scheduling is to increase schedule density. Every missed appointment is a double revenue loss - an opportunity cost loss and a direct loss. In order to succeed at this, the scheduler needs to recognize that appointments are not all the same; some appointments e.g a specialist second opinion consultation take a long time; other appointments e.g a routine post-surgery checkup could take a shorter time.

The scheduling implementation should be “network aware” i.e it should be possible to book appointments at other in-network facilities or in other departments.

Note

As a:
  • user
I need to:
  • schedule physicians, technicians, radiologists, rooms, equipment etc; one appointment can have multiple exams or procedures scheduled
  • capture patient name, contacts, date, time and requesting doctor when ordering for investigations or procedures
  • check for conflicts when scheduling staff; factoring in preparation time and procedure duration; this also includes flagging patients who have been flagged for multiple exams at the same time
  • automatically finding the next available time slot for inpatient / outpatient
  • enter orders when scheduling appointments. This requires a link between the appointment screen and the patient record.
  • view existing schedules and appointments on a calendar; color coding shall be used to identify specific providers, and augmented with initials. For example - it should be easy to discern which physicians and rooms are available to take appointment times in certain slots. Clicking on an appointment in the calendar should show the appointment details.
  • view a schedule of all appointments by patient - over a specified date range
  • in a multi-location healthcare network, see only the appointments for providers within my facility
  • drag and drop appointments
  • send reminders to patients, with configurable time frames. These reminders can be emailed, sent by text message or even printed. All patient communications are tracked - as part of the patient’s record.
  • transfer appointments between resource schedules, singly or in bulk e.g from one doctor to another
  • view and edit my own schedule
  • be able to opt in / opt out of viewing specific calendars e.g to see a particular clinic’s calendar and not see other clinics’ calendars; this means that I can view multiple provider schedules
  • print a specific resource ( e.g doctor, theater, CT scan machine )’s schedule / appointment list; also able to filter printed schedule by appointment type
  • print daily department schedules for inpatients and outpatients
  • print patient schedules for exams and procedures on demand
  • print provider schedules on demand
  • print a schedule of all appointments by date
  • print a schedule of appointments by time
  • print a schedule of appointments by nursing station
  • print transport request slips based on schedule needs e.g trolleys, wheel chair
  • print transport cards with notices, data, equipment required for transport, patient location, condition, comments
  • print notices with hospital registration number, patients name, date of birth, physician, patient ID and date of procedure
  • print no-show, exam canellation, unauthorized, scheduled, completed, cancelled appintment analyses
  • add appointments for a specific date and time
  • get notified of appointment conflicts / overlaps when scheduling; with proper authorization, I should be able to forcefully override conflict warnings or availability warnings
  • add multiple resources in a single appointment e.g multiple doctors in a single appointment slot
  • ability to schedule multiple patients for an appointment e.g group therapy
  • add a note with each new appointment; this note can be a comment or instruction
  • search for appointments using e.g the patient number, doctor, day of week, time of day; exclude days or time frames from search; exclude resources from search
  • register a patient on the fly when creating appointments for a walk in patient; before adding a new patient, search to see if the patient is already registered. Where data on a patient already exists ( e.g data from previous visits ), the system should use that data to pre-fill slots / make suggestions
  • update demographic and payment information in the patient record while scheduling; this could also include applying flags to the patient record e.g VIP, Debt Default Risk etc
  • look up eligibility when registering a patient or searching for an appointment
  • search for an appointment slot on the basis of a patient’s availabilty ( search within defined date / time bounds ); schedule the patient for the next available time slot
  • assign priorities to appointments e.g urgent
  • display a color coded calendar view of appointments
  • allow cancellation of appointments - with the need to specify the reason for cancellation; the system may have a predefined pick list of reasons for cancellation
  • send cancellation notices
  • send follow-up questionnaires after appointments
  • allow recurring appointments to be both added and removed
  • different appointment profiles e.g a profile for back pain, fever, well child, well woman,. Each appointment profile is linked to a color coded appointment type and may be associated with a duration, consent forms, a chief complaint and a billing code. Different appointment profiles may be associated with different patient instructions.
  • maintain a wait list of patients waiting for an appointment; in the event of a cancellation, it should be straight forward to move a patient from the wait list to the newly freed slot. The wait list includes a call back number, priority and appointment type. It also has: hospital registration number, patient number, patient name, ID/Passport, referring physician, attending physician, patient status ( inpatient, outpatient ), diagnostic procedure
  • access a list of all patients needing to be rescheduled, in the event of a resource becoming unavailable; this list should include contact details so that I can contact the patients
  • authorized users can overbook, in order to cover for the possibility that some appointments will be no shows or to take advantage of time freed from appointments that take a shorter duration of time
  • determine visually whether the patient to whom an appointment relates has arrived, been seen or departed ( appointment status )
  • create a sequence of appointments - that could recur at a regular interval or have an irregular interval between them. These future appointments can be scheduled up to a year in advance; the system should help with the creation of a best fit schedule in this case. The system should support business rules that constrain the spacing between the appointments e.g prevening them from being spaced less than <x> days apart or indicating how many in the series are left
  • track arrival times, exam or procedure begin / end times and departure times
  • handle no shows - generate a no show list for each day, transfer no show appointments to a waitlist and generate no show letters / emails
  • schedule future investigation orders or prescriptions e.g scheduling a sequence of HbA1c tests for a diabetic patient on long term follow up
  • schedule multiple services per day for a single patient, with automatic generation of best-fit schedule and options
  • scheduling groups e.g therapy groups
  • attach free form notes to ‘reason for visit’ codes
  • enter special instructions into schedules
  • configurable limit for the number of times a physician can be scheduled for a procedure
  • logic e.g cancellation of orders also causes cancellation of the scheduled review with the doctor
  • link to insurance eligibility
  • link to pre-authorization when required: prevent finalization before approval
  • link and print patient preparation instructions e.g diet instructions for scheduled exam
  • enter and display transport requests - patient, transport mode etc
  • substitute staff, equipment and resources, with system suggestions
  • monitor and switch resources in an emergency
  • appointment search by ID / Passport, appointment number, cell number, name, phonetic search
  • display schedules by patient, room, procedure, staff, consultants, department, location
  • color code based on status e.g confirmed, paid, booked etc
Because:
  • I need to get maximum value from available resource hours while also providing good customer service ( low and predicatable wait times )

2.1.2. Epic: Setting up schedules

These features describe the ‘back-office’ maitenance of scheduling e.g creating schedules for schedulable resources, availability rotas etc

Schedules can be created for many kinds of ‘resources’ in healthcare - people ( e.g doctors, nurses, pharmacists etc ), machines ( e.g MRI and CT scan machines ), locations ( e.g rooms ) etc.

Note

As a:
  • user with administrative rights ( could be departmental administrative rights )
I need to:
  • be able to create new schedules for resources under my administration
  • be able to establish availability time blocks, with the ability to determine how many appointments are fit into a single appointment block
  • block non working hours e.g vacations or hours during which the office practice is closed ( this can also be seen as defining office start and end times )
  • define different appointment types, with each appointment type having different time lengths
  • for equipment schedules, block periods of non-availability due to maintenance
  • define templates for the notes that accompany appointments
  • link resources to locations e.g link an ultrasound machine to a particular consulting room
  • place resources in resource groups
  • customize reminder profiles and messages e.g email a week before the appointment, call a fortnight before the appointment, SMS a day before the appointment ( all with customizable messages )
  • scheduling logic e.g diabetics should not be scheduled at mealtime
Because:
  • every department needs its own custom schedule

2.2. Theme: The patient record

An individual patient’s record shall be accessed via a dashboard that ‘brings together’ all of a single patient’s clinical records.

Clinical and billing information should be displayed in reverse chronological order by default; more recent events are of greater interest than remote ones.

All patient records shall be accessed via the same interface, whether current or historical. “Archiving” is a back-end level concern that should be auto-managed.

The coded sections of each patient record shall use the following terminologies:

  • ICD-10 ( provisional and final diagnoses )
  • ICD-O ( oncology )
  • LOINC ( investigation orders and results )
  • SNOMED ( the detail of the clinical record itself )

In addition to having SMART apps for custom templates, custom visualizations etc, the system should support an arbitrary number of custom print templates.

2.2.1. Epic: Patient dashboard

An analogy: this is the ‘cockpit’ of the clinical part of the EMR. Some EMRs - mostly American - call this the ‘face sheet’.

Note

As a:
  • clinical user
I need to access a patient summary dashboard that:
  • puts the patient’s allergies in prominent view; it should be easy to capture or edit allergy information from here
  • places vitals - recent vitals and trends from past vitals - in view. Key vitals include: weight, height, BMI, BP, temperature, head circumference ( paediatric ), oxygen saturation, pulse, respiration rate, head circumference ( paediatric ), mean upper arm circumference ( paediatric ) and pain scales. The paediatric measurements are usually plotted against percentile charts. Vital signs that are out of range should be flagged. Future iterations might consider capturing vitals directly from bedside monitors.
  • access flow sheets that plot vitals and other numeric observations over time; the flow sheets should also include graph / chart views
  • places the patient’s diagnoses or problem list in prominent view. Diagnoses can be primary or secondary, confirmed or presumed. Problems can have different chronicities ( e.g acute, chronic ) linked to them. Problems can also be active or inactive - with the possibility of reactivating previously inactivated problems.
  • provides access to a patient’s medication list
  • allows sticky notes and flags and search tags to be placed on individual patient records
  • allows patient records to be marked as confidential e.g staff records, HIV patients etc
  • allows patient demise information to be recorded quickly
  • allows click through to the detailed patient record - where full information line notes, orders, results, reports, assessments, medications etc can be found
  • can be exported or printed e.g for purposes of communication with colleagues who are not able to constantly check the EMR
  • can be sorted or grouped in different ways e.g reverse chronological, chronological, by problem, by discipline etc
  • shows the practitioners who have worked with a patient before
  • allows click through to the patient’s billing, claim and scheduling / appointments information
  • allows me to capture charges e.g for procedures and have the charges appear in the patient bill
  • capture dietary orders and restrictions
  • record consents, authorizations and directives

2.2.2. Epic: Detailed patient chart

All documentation in the patient record is automatically user and date-time stamped. One patient may be assigned to multiple physicians, nurses etc

A patient chart may have flags e.g Do Not Resuscitate.

Note

The system shall provide input-time decision support e.g checking diagnoses against gender and age, checking procedures against diagnoses, checking that dates make chronological sense e.g discharge after admission etc.

It should also support authoring and entry of Clinical Practice Guidelines, and ship with well known CPGs.

Note

As a:
  • clinical user
I need to:
  • access templates related to the patient’s chief complaint and my specialty
  • have automatic expansion of abbreviations in the clinical templates
  • I should be able to see all of the patient’s notes, test orders and results, medications, observations ( including vitals ) etc
  • I should be able to write triage notes - these are clinical notes that will be a mix of structured and unstructured input, and that may be augmented by diagrams e.g annotated anatomical drawings. When entering these notes, I expect to have time saving conveniences e.g macros, voice input, templates etc. The triage nurse may conduct a review of systems, in addition to ‘the usual’ vitals.
  • enter coded but readable clinical notes. Clinical notes sections include the history of present illness, medical history, family history, social history, review of systems, physical exam, assessment, plan, billing, medications and allergies. This also includes consultation notes from ancillary professions e.g nutritionists, physiotherapists, speech therapists, psychologists, counsellors, social workers etc
  • I should be able to enter additional notes ( with all appropriate input acceleration conveniences e.g voice input, macros, templates ). All notes should be signed / authenticated by the author and time stamped. These notes could be doctors notes or nursing assessments.
  • I should be able to enter a plan of care
  • I should be able to manually enter vital signs. Abnormal vital signs should be flagged.
  • The system should be able to read vital signs directly from point of care monitors
  • I should be able to examine vitals and numeric observations ( e.g lab results ) on flow sheets
  • I should be able to see a graphical representation of the data that is on the flow sheets
  • I should be able to place orders for assessments e.g imaging and lab tests. The orders or order sets suggested by the system should correlate with the patient’s complaints.
  • I should be able to prescribe medicines electronically. I expect the system to help me with dosage calculations, interaction checking ( drug-drug, drug-allergy, drug-disease ), duplicate therapy checks, disease contraindication checks, formulary checks, dosage checks ( by age, weight, disease ) etc
  • input and output tracking - with tracking and charting on flowsheets
  • quickly enter progress / update notes for follow up patients ( both inpatient and outpatient )
  • quickly enter assessments e.g a nutritionists or physiotherapists assessments
  • carry out medication reconciliation ( see ‘Inspired EHRs’ for a good treatment of this subject )
  • track adverse reactions
  • copy previous notes when making updates
  • sign, lock and unlock clinical notes. Every unlock or modification needs to have a reason indicated. All changes appear in the audit log.
  • view and export or print the patient record - in full or in part - on demand; this could be a nursing sheet, a referral file etc. Some of the sections that could be printed include: current demographic information, current insurance information, current allergies list, current medication list, radiology reports and images, scanned documents e.g scanned consent forms etc
  • access patient specific plans of care
  • prescribe special or normal diets for patients
  • add attachments e.g scanned documents to the patient chart
  • get contextual access to decision support resources
  • capture temporary addresses for emergency patients
  • store risk factors
  • social history - marital status, occupation, religious preference, socioeconomic status, native language, translator needed ( Y/N )
  • linking to family member records
  • genograms
  • health surveys
  • measures of functional level
  • capture patient referral and consultation information
  • problem oriented progress notes
  • accounting for valuables
  • notifications for medico-legal e.g trauma, accidents, rape, brough in dead, gunshot wounds

2.3. Theme: CPOE

Computerized ordering covers the domains of pharmacy, lab ( pathology, microbiology, hematology etc ), radiology / imaging, diet, nursing care, procedures ( e.g specialized assessments ), physiotherapy, occupational herapy, catering, transport, theater etc

Orders share the following characteristics:

  • time and user stamped
  • ‘signed’ by the ordering clinician or on behalf of the ordering clinician

Some orders ( e.g those entered by medical students ) may need verification before they are fulfilled.

Results share the following characteristics:

  • time and user stamped
  • ‘signed’ by the issuer
  • patient name
  • hospital number
  • date and time of order
  • date and time results were last updated
  • alerts for changes / amendments
  • test name
  • visual cues for abnormal results

It should be possible to define custom result templates.

2.3.1. Epic: Medication orders

The CPOE system should support the following types of orders: medication, chemotherapy, large volume IVs, alternating IVs, total parenteral nutrition, piggyback IVs, compound medications, standing orders, medication protocols, medications with different strengths combined, medications from home etc

Note

As a:
  • doctor, nurse, clinical officer
I need:
  • to view the patient record as I make orders e.g ordering side by side with the patient chart ( see Practice Fusion for a good implementation ); current test results and vitals should be visible

  • enter orders that include:

    • all the essential elements of a ‘sig’ e.g route, dose, duration, administration time / frequency, IV volume, drip rates, additives etc
    • a link to the visit and the patient
    • date and time
    • diagnosis / episode summary
    • medication(s) - trade name and generic name
    • indication(s) - selected from the patient chart
    • status
    • priority e.g routine, STAT, now, morning, timed
    • route
    • frequency
    • start
    • duration / end
    • treatment goal
    • instructions for the patient
    • free text comments for nurses and pharmacists
    • signed by or signed on behalf
    • name, designation, location and contacts of prescriber
    • flow rates for IV meds
    • dose
    • quantity
    • expiry or validity
  • enter medication orders, including one time doses - with the system interacting with a formulary service to help me:

    • check for duplicate orders - by class, generic ingredient etc
    • check that a medication is on the approved formulary
    • check for age / gender / disease conflicts e.g medications contraindicated in children below a particular age, medications contraindicated in pregnancy, medications contraindicated in kidney or liver failure
    • calculate normal dosages - based on age, height, weight, body surface area etc
    • calculate dosages for patients with reduced or increased needs e.g in renal failure, hepatic failure
    • check for interactions - drug to drug, allergy, drug to disease, contraindicationes etc. Interactions should have severity levels. It should be possible to override an interaction warning - with a signed note needed for all moderate or severe interactions.
    • check for dose limits - by height, weight, body surface area etc
    • cumulative dose alerts e.g for chemotherapy
    • work out tapered dosing and alternate day dosing schedules
    • calculate number of dispensing units e.g number of tablets to dispense
    • check against lab test results
    • integrate suggestions for less expensive generic alternatives
  • view formulary information within the context of ordering

  • display cost information as part of the order template

  • flag special orders for additional review e.g chemotherapy orders

  • define order associated messages e.g drug is a restricted antibiotic that needs infectious disease approval

  • generate an alert if an “on hold” item has been on hold for a while

  • facilitate review of all on-hold items at a time interval

  • define intervals at which on hold orders must be reviewed

  • resume held orders

  • discontinue orders - based on stop dates/times, expiration; with reason

  • flag orders due for renewal

  • view stock availability within the context of ordering

  • mark orders that need review e.g Pharmacist review

  • view overridden alerts clearly in order summary

  • maintain favorite medication lists that can be edited on the fly

  • create custom alert rules. CDS alerts can match what the patient has or what the patient does not have. They contain the following elements:

    • ID
    • Description
    • Age range ( optional )
    • Gender ( optional )
    • Race and ethnicity ( optional )
    • Problems ( diagnostic codes )
    • Medications ( codes )
    • Allergies ( codes )
    • Lab results ( codes )
    • Active or inactive
    • A contextual label
  • overidden alerts visible on order

  • have order suggestions - brought up by diagnostic, age or gender triggers

  • mark relevant orders as refillable, and get alerts when a refill is needed

  • mark orders as discharge orders - mamaging the transition from inpatient to outpatient

  • do conditional ordering

  • renewal of flagged patient orders

  • create future dated orders - will be dispensed or administered when die

  • send prescriptions to the pharmacy; drugs from one order can be sent to more than one pharmacy e.g due to availability or payer restrictions. The following is the minimum information that should be printed on a prescription:

    • prescriber name and department
    • prescription date
    • prescription number
    • medication prescribed
    • product name
    • strength
    • form for medicine e.g tablet, capsule, injection, suspension
    • quantity
    • dosage ( dose, frequency, duration, regimen )
    • route of administration
    • instructions for use
    • any other relevant information e. gprgnancy status
    • patient name
    • medical record number
    • sex
    • height
    • weight
  • mark preferred Pharmacies

  • print prescriptions for manual transmission / email prescriptions

  • record continuing over the counter or outpatient medications

  • track all changes or additions to orders - visually highlighted in the patient’s medication list

  • orders for surgical supplies by theater staff / anaesthesiologists

  • request for documentation when prescribing controlled medications

  • scanning of hard copy prescriptions

  • change drug brand when doing refills

  • detect early refills e.g for suspected overuse

2.3.2. Epic: Investigation orders

Investigation orders include lab, imaging, clinical assessment ( e.g speech assessment ) etc

Note

As a:
  • ward nurse or doctor
  • lab employee ( lab clerk )
I need to:
  • enter investigation orders. A proper investigation order has similar elements to those listed for a prescription before.

    • ordering provider
    • send to ( internal or external lab )
    • order date
    • free text notes
    • priority
    • status
    • internal comments / free text notes
    • specimen collected - on lab or on site
    • bill to ( patient, third party, facility )
    • patient instructions
    • diagnoses ( one or more, coded in ICD 10 or SNOMED )
    • location of the patient
  • be able to order any test or panel from LOINC, and also custom tests / panels

  • have the system check for - and flag - duplicate orders; there should be a prompt to verify or cancel the duplicate

  • override duplicate order warnings with a reason

  • charge for tests - with the ability to handle multiple pricing schemes, prevent charges for redraws, place multiple charges per test and add comments

  • enter no charge tests

  • sign orders; with the ability for a junior provider to enter orders on behalf of a senior e.g verbal orders and sign on behalf of

  • have order suggestions - brought up by diagnostic ( ICD 10 and SNOMED ), age or gender triggers, results of previous tests etc

  • have flags from medical necessity checks e.g orders which do not correspond to the primary diagnosis

  • view the patient record, including current test results and vital signs in the context of ordering

  • print a patient’s orders - current, discontinued; chronological and reverse order

  • view previous results on the order screen, with abnormal results clearly flagged; these orders could be summarized on a flowsheet or a 24 hour panel

  • assign priorities to orders

  • suspend, reinstate, cancel or amend existing orders - with automatic credit for cancelled tests

  • pick from community and custom / practice level order sets

  • save favorite order sets

  • create user order sets - linked to diagnoses, specialties, patient events, facilities, departments, clinical pathways etc

  • copy and edit order sets; changes should be highlighted and tracked

  • print orders e.g for sharing with external labs

  • print specimen labels

  • send orders - in whole or in part, even split - to diagnostic partners

  • mark favorite diagnostic partners e.g favorite labs

  • alerts for time bound diagnostics e.g glucose tolerance tests, cortisol levels etc

  • warnings and reports for uncollected orders

  • alert on patient discharge of orders needing action or completion

2.3.3. Epic: Imaging orders

Note

As an:
  • imaging employee
I need to:
  • enter orders that are linked to imaging appointments

  • support emergency order entry ( name, age, sex, reason for order, physician name ) to expedite examination followed by full registration including insurance information at a later time

  • each order has: patient details, medical record number, ordering doctor’s, details, diagnosis, exam type, isolation type, reason for ordering, patient current condition e.g pregnancy, patient allergies, date and time ordered, free text or coded comments

  • prevent use of abbreviations in order entry - known error sources

  • automatically require scheduling for some orders

  • entry and charging of backdated orders e.g after downtime

  • display procedure description at order entry for verification

  • rank procedures by priority when multiple procedures are ordered for the same visit

  • assign unique exam numbers to each order; which will also appear in bar coded form when printed

  • assign priorities to orders e.g STAT, urgent, routine

  • place multiple exams in a single order for a patient

  • match orders with associated procedures, tests or preparations

  • notify the ordering physician and the nursing department of preparation procedures or instructions regarding a test during order entry

  • display and print order-associated preparation procedures

  • modify orders wwith comments - by authorized personnel

  • cancel orders - specific orders, orders for a date/time range, all orders; supply a reason

  • notify ordering unit of order cancellation

  • retrieval of orders by: order number, date range, order status, patient, ordering physician, department ( most recent orders first )

  • perform the following checks on orders:
    • checks for conflicts e.g pregnancy
    • checks for duplication
    • checks for allergies - contrast interactions
    • checks for proper exam sequence
    • checks for previous exams e.g Barium
    • check for patient having another order in a similar modality for the day

2.4. Theme: Radiology

This chapter focuses on features that are unique to radiology.

2.4.1. Epic: Radiologists’ and radiographers’ dashboards

Note

As a:
  • radiologist or radiographer
I need to:
  • view a list of all scheduled exams, with exam status and the ability to filter by radiologist / radiographer, room, modality, order time, exam time etc
  • track patients through the radiology department
  • track patient check-in and departure times, exam start and stop, rooms, name, results report start and sop
  • show status of exams: scheduled, imaging done, dictated, transcribed, authenticated, sent etc
  • split ordered exams into more than one exam request
  • view a log of completed exams
  • view unsigned reports under my name
  • track waiting and turnaround times; by mnitoring arrival times, exam times and departure times
  • view my workload and colleagues’ workloads; organized by modality and procedure
  • print schedules by room, radiologist, technician, nursing station, department, equipment, patient etc
  • click through to patient records, which include a log of their current and past orders
  • alerts for patients who have staid for longer than the normal waiting time
  • receipts and tracking of films from outside entities e.g other hospitals
  • tracking of film movement using bar codes

2.4.2. Epic: Capturing the radiology exam

All exam notes are user and date/time stamped. In imaging, more than one radiographer / radiologist may be involved in a single exam.

Note

As a:
  • radiologist or radiographer
I need to:
  • work through a pre-examination checklist that also includes consent
  • access the patient’s full medical record
  • scanning and attachment of documents
  • display information to technologists: special instructions, equipment needed, number of repeats
  • enter imaging reports using reporting templates that: support rich text formatting, have spell checking and can auto-populate demographic data. Some of these reports may be predefined e.g reports for normal findings
  • enter comments, diagnostic codes in results
  • use graphical templates ( schematics, diagrams )
  • support a workflow that has transcriptionists enter dictated reports
  • document adverse incidents
  • review reports e.g in a maker-checker workflow
  • electronically sign reports and send them to the correct department e.g the requesting department
  • preview and print reports
  • record supplies used, decrement stocks and charge for the supplies
  • charge patients for the procedures - with the ability to apply relevant discounts
  • record charges from independent radiologists
  • perform retakes ( repeat exams ) without charging the patient
  • automatically update order status after entering results
  • track follow-up for abnormal results
  • support transcription workflows: with word processing, spell checking, glossary, medical dictionary
  • support batch reporting: by physician, medical record number, modality, patient location etc
  • automatic printing and sending of stat reports to remote sites
  • remote reporting
  • dictation
  • voice recognition
  • co-reporting
  • notify nursing of abnormal results or emergencies
  • capture preliminary and final report timestamps
  • replace preliminary report with final report when ready
  • attachment of addenda to the final report
  • listing of reports, filterable by patient, MRN, sex, age, test, location etc
  • printing of final reports after approval
  • listing of reports pending final approval
  • on-demand re-printing of patient reports
  • retrieve reports by: radiologist, transcriptionist
  • release or restriction of unverified or un-approved reports
  • link multiple procedures to one report
  • alerts to patients and ordering doctors

2.4.3. Epic: Image management

The ‘party trick’ here is the integration of PACS into a teleradiology ecosystem. The images that can be shared over PACS run the full gamut of imaging modalities - from echosonographs to ECGs; from angiographic images to MRIs; from endoscopic images to CT scans.

Note

As a:
  • radiographer or radiologist
I need to:
  • track the locations of all films
  • print labels for films and jackets
  • interface with PACS to view images online and link reports to images
  • receive images from local and remote PACS

2.4.4. Epic: Imaging operations management

Note

As a:
  • team leader in an imaging department
I need to:
  • set up the schedule - designate times when staff, rooms, equipment etc are not available
  • manage equipment maintenance schedules
  • get alerts on expired films
  • track quality control data e.g number of repeats and reasons for repeat
  • analyze workload / utilization - by exam type, patient type, radiologist, technician, requester, department, equipment / device etc
  • monitor inventory levels - with auto-restock notifications when supplies fall below a user specified threshold
  • monitor departmental financial performance at a summary level

The implementation will need to be benchmarked against a commercial RIS/PACS e.g the Philips eXtended Internet Radiology Information System ( XIRIS )

2.5. Theme: Laboratory

The domain of laboratory medicine includes:

  • hematology and blood transfusion
  • clinical pathology - with histopathology and cytology
  • clinical chemistry / biochemistry - includes serology
  • special chemistry - applies elaborate techniques e.g electrophoresis, immunoassays etc
  • microbiology - including TB

Some hospitals may place the blood transfusion department under the lab, while run it as an independent department. However the administrative setup is done - there will always be an intimate interplay between the laboratory and the blood transfusion unit e.g screening of all blood donations.

Within a lab, there are multiple roles. A partial list includes:

  • clients or patients - who may need to access results online in a patient portal
  • clerks - front desk administrators who handle sample receipt, billing etc
  • analysts - technical lab staff
  • supervisors - review results before publishing
  • regulatory inspectors
  • system administrators

The domain is regulated by a variety of standards, with ISO 17025 being one of the more important ones.

2.5.1. Epic: Laboratory user dashboard

The laboratory user dashboard is focused on ‘task visibility’.

Standard access control usually prevents analysts from seeing patient identification details, and clerks from seeing results.

Note

As a:
  • laboratory user
I need to:
  • have visibility into my worklist; this includes my pending tasks
  • have visibility into my colleagues worklists
  • filter or sort the worklist by patient
  • see a summary of incomplete orders, abnormal results, recent activity, consult status ec
  • see my scheduled / recurring tasks e.g recording observations on a blood culture daily
  • print or share/send any worklist on demand
  • transfer a case to a colleague’s queue - for additional consultation or to balance workload
  • allocate pending tasks to myself / colleagues
  • reschedule pending tasks
  • track instrument workloads
  • track turnaround times
  • assign priorities to worklist items

2.5.2. Epic: Investigation sample collection

Investigation samples may be collected in the clinical areas - wards, clinics, casualty etc - or at the lab itself. The samples may also be collected by laboratory staff or by clinical staff.

All collections are user and date/time stamped. These ‘stamps’ must be displayed everywhere the sample is displayed.

For quantitative tests ( e.g an electrolyte asseay ), the input worksheet closely resembles a spreadsheet. For semi-quantitative tests ( e.g culture and sensitivity in microbiology ), the results are entered using a mix of pre-defined pick-lists and free text comments. For purely qualititive results ( e.g reporting on the morphology of a blood film ), the system should provide the same template driven input mechanisms available to doctors.

Note

As a:
  • lab or clinical user
I need to:
  • access a sample collection worklist that I can sort and filter by test type, test, technologist, time etc. The collection list includes the test name, code, priority, accession number, patient allergies, comments, scheduled draw time, sample size, tube type, patient location and associated practitioner(s)

  • merge items from multiple worklists into a new worklist

  • generate collection labels - with bar and QR codes - and print them

  • access a log of pending collections

  • access a log of uncollected specimens, with alerts for overdue collections

  • have auto assigned accession numbers for each sample. These numbers shall be bar and QR coded on sample labels

  • view payment status before sample collection; charge tests that are uncharged and require payment for cash patients before tests

  • register samples with the following information:

    • number / ID
    • requester
    • collection date/time
    • type e.g blood, urie, serum, stool, semen, CSF, sputum, pus, synovial fluid, slit skin, pleural fluid, pericardial fluid, peritoneal fluid, QA test samples, others
    • source - IPD, OPD, emergency, sub center, community program
    • priority
    • a special mark for outbreak specimens
  • get flags / warnings when sample types are linked to the wrong tests

  • issue sample receipts for accepted samples; with the ability to print

  • track the chain of custody of every sample; a sample could be in the following statuses - pending, sampled, preserved, received, assigned, cancelled, to be verified, verified, invalid, published

  • support partitioning and storage of samples

  • reject samples - with reasons picked from a predefined picklist and plain text reasons; an alert should be sent back to the responsible practitioner(s) for action

  • register and track specimens in batch

2.5.3. Epic: Investigation results entry

Laboratory results can be entered manually or captured directly from analyzers. For the manual entry scenarios, design so that the results can be entered in multiple passes.

The system should provide rich text editing for qualitative reports e.g pathology reports.

Note

As a:
  • lab analyst
I need to:
  • enter results via test type specific worksheets. Worksheets are spreadsheet like and should support configurable automatic calculations, rouding and adjustment factors. They should also support graphing / visualization. Results may be quantitative, semi-quantititative or qualitative. Quantitative results have values, units, reference ranges, flags [ high / low / critical high / critical low / normal ] and comments. Large changes / deltas in a test series should be flagged.
  • export worksheets to Excel
  • import worksheet data from Excel
  • add comments at the worksheet level or for individual entries
  • attach versioned documents to results e.g images, MS word reports etc
  • edit results on unsaved worksheets; no editing after the worksheet is processed
  • fill a worksheet in via a bidirectional link to lab equipment
  • publish results ( could be access controlled in a maker-checker setup )
  • retract or invalidate results
  • send alerts to practitioners for panic values
  • mark some results as classified and control access to named people e.g VIP patient results, HIV
  • preview and print / send / email results; the requester and requesting department should get automatic alerts

2.5.4. Epic: Laboratory operations management

Note

As a:
  • lab manager
I need to:
  • manage equipment maintenance schedules
  • track expiry dates and inventory for culture media, regents, stains and other laboratory supplies
  • keep track of licensing inspections and reinspections
  • access quality control information - including non-conformities, PT and IQA results
  • keep track of quality documents - SOPs, instrument calibration certificates, certificates of analysis, QC reports, reference specifications etc
  • analyze workload - by analyst, instrument, procedure, diagnosis etc
  • do case management - disease tracking, trend analysis etc
  • generate surveillance reports - e.g notifiable positive test results

2.6. Theme: Clinical dashboards

Each clinical worker ( e.g nurse, doctor ) shall have their own individually customizable dashboard. This dashboard is focused solely on their own tasks. Each practitioner can work in multiple stations e.g multiple nursing desks or wards for nurses, multiple consulting rooms or wards for doctors.

Note

The messaging system shall send notifications to these points of service whenever there is a new unit of work e.g notifications to pharmacy when there is a new prescription or a newly discharged patient who needs discharge meds and inpatient drug returns

When the number of patients in a point-of-service queue exceeds a set threshold, an alert should be generated. This condition should also be displayed prominently on the dashboard.

The dashboards should clearly distinguish ‘information that is new to me’ from ‘information that I have already seen before’. This should occur on a user by user basis.

2.6.1. Epic: My messages

Messaging - between care team members, between the care team and the patient, between provider and payers etc - shall be the backbone of ‘care coordination’ and ‘telemedicine’.

If you want a mental metaphor, think ‘a secure / confidential Slack for Healthcare’ and you’ll not be far off. The system shall support the following kinds of messaging:

  • communication between care providers in the same healthcare organization or practice
  • communication between care providers and patients
  • communication between care providers in different organizations e,g in referrals
  • communication with payers
  • communiation with service providers e.g labs, imaging centers

This is literally the ‘backbone’ or care coordination and telemedicine ( repetition for emphasis ). We cannot afford to do this in a half-assed manner.

The user should be able to opt in to desktop and background push ( service worker ) based alerts.

Note

As a:
  • clinical or administrative user
I need to:
  • communicate with my colleagues e.g primary care physician to specialist
  • communicate with the patient
  • communicate with service providers e.g labs and imaging centers that we work with, sending post discharge communication to post-acute care centers
  • communicate with partners e.g referral centers that we collaborate with
  • communicate with payers e.g insurers and employers
  • conduct televisits, with access to voice, video, text and image communication modalities
  • access a log of all patient specific communications ( e.g teleconsultation notes ) in the patient chart
  • record charges for teleconsultations, where applicable
Because:
  • I need to pass on important patient care information - information that is safety or outcome critical
  • I need to pass on scheduling information - which will help me attain high utilization levels and increased revenue
  • I need to get important updates as soon as they are available e.g when an insurer authorizes an admission and my patient is waiting
  • I need to get life-saving information as quickly as I can e.g a patient with lab results that should prompt immediate life saving interventions

2.6.1.1. Scenario: Receive lab results update

This scenario is merely representative; the same thing could be said of any time critical update e.g an incoming insurance approval / rejection, an incoming referral from a lower level health facility etc

Note

Given:
  • that I am logged in to the system
And:
  • the lab ( internal or external ) posts results for a patient under my care
When:
  • I look at any open application window, I should be able to see an alert and visual indication of my new messages
And:
  • upon clicking on the message indication
Then:
  • I should be able to access the message
  • I should have be able to reply to a message thread, in the same way that I am accustomed to doing on Google Hangous, Slack, WhatsApp, Facebook etc
  • I should be able to link a patient in for context or view the record of the patient that has already been linked in for context
And:
  • interact with its contents

The main ‘metaphor’ going on here is the ‘rich inbox’. It is not enough to see a message, it should be possible to act on it, right from the inbox.

2.6.1.2. Scenario: Task inbox

With all the messages that need action flying around, the ‘task specific inbox’ is a key metaphor. For example: here are all the claims that need to be reviewed, here are all the imaging reports that need to be reviewed etc

Note

Given:
  • that I am logged in to the system
And:
  • I have any screen open
When:
  • I look at the top of the screen, I should be able to see a clear indication of what tasks I have pending, including a sense of how many new tasks of each category I have
And:
  • Upon clicking on any task type
Then:
  • I should be able to view further detail on the task
  • I should be able to click on a shortcut that takes me to the relevant task window e.g to review the results if the task is to review lab results
And:
  • the number of pending tasks should decrease automatically whenever I interact with a task e.g act on a pre-authorization that needed review

This task inbox is complicated by the fact that tasks may be shared between several individuals in a group.

2.6.1.3. Scenario: Contact support from within the product

For a SAAS product, support cannot afford to be ‘distant’ or ‘remote’.

The system shall provide a constant ( permanent in the user interface ) mechanism to access help ( the knowledge base ) and contact human support. The user interface design shall also focus on ‘teaching’, esp. for the first use interfaces or new users.

Note

Given:
  • that I am logged in to the system
And:
  • I have a question or need help with a system task
When:
  • I look at the bottom of the screen
And:
  • Click on the support button / popup / link
Then:
  • I should be able to initiate a chat session ( text, audio or video ) with a support person
And:
  • Get help with my question or problem

2.6.1.4. Scenario: Access online help

The system should provide guidance each time the user accesses an unfamiliar page. This help should be contextually relevant.

Note

Given:
  • that I am logged in to the system
And:
  • I have accessed a page that I am not familiar with
When:
  • I look at the bottom of the screen
And:
  • Click on the help icon / popup / link / icon
Then:
  • I should be able to access simple guidance that is relevant to the screen that I am on
And:
  • Use the information so gained to complete my task

2.6.1.5. Scenario: Setup wizard

We should strive to avoid a ‘blank’ experience on first setup.

Note

Given:
  • that I am a new user logged in to the system
And:
  • I have not completed my system setup
When:
  • I access the default / home page
And:
  • Interact with the dashboard
Then:
  • I should see an indication of how far I have gone with my setup / onboarding
  • I should be able to access setup / onboarding information
  • I should be able to click on a shortcut to the next step on my setup / onboarding
And:
  • I should be guided gently to complete my orientation / onboarding / setup

One thing that may not be obvious when reading the scenario above - it is user / role specific.

2.6.2. Epic: Triage dashboard

‘Triage’ is the name given to the clinical process of assessing incoming patients and separating them into different queues based on the urgency with which they need to be attended to. In common practice, ‘triage nurses’ also collect vital signs and document the chief complaint / presenting problem.

In a typical outpatient department / casualty, the triage nurses manage the flow of patients and staff. They ‘make the call’ on which patients are so sick the need to be seen NOW and which patients can wait for their turn on the queue.

In order for an emergency room to offer an acceptable standard of care, the staff should have continous visibility over the status and location of all patients.

The patient display should be color coded e.g by urgency and waiting time. It is not just patients that are tracked - providers ( e.g nurses and doctors ) are also tracked. This tracking interface should be mobile friendly, so that it can be used from tablets and other portable displays.

Note

As a:
  • emergency room worker ( nurse, doctor, adminisrator, records employee etc )
I need to:
  • capture code and time of triage; triage codes can be customized
  • see a color coded display of all patient and provider locations that is updated in real time. This display should be graphical. It should be easy to filter e.g status of all patients with imaging orders, bed requests etc
  • see a clear indication of patient wait times, with patients that have not been attended to for longer than a departmentally defined task duration threshold clearly flagged
  • see a clear indication of patients awaiting attention or transfer to other departments
  • see notifications of incoming results, patients awaiting triage etc. In addition to notifications, there should be a permanently visible task inbox / queue. Results that are flagged as critical or abnormal should be clearly marked.
  • filter or sort my patient location dashboard by patient type, diagnosis, triage status, provider and arrival mode
  • have visibility into ambulance status for both own and third party ambulances
  • enter and receive notifications of remotely entered requests
  • book patients for ambulance services
  • book multiple patients for the same ambulance e.g for transfers
  • cancellation of ambulance bookings
  • capture requirements when booking ambulances e.g mechanical ventilation
  • charging for ambulances e.g on distance / mileage
  • show where ambulance booking was made from
  • booking outsourced ambulances; tracking and reporting
  • ambulance logs - driver, patient,
  • ambulance inventory e.g ventilators
  • update vitals and other data prior to arrival; requests pre-arrival
  • dispatch ambulances
  • record arrival of ambulances
  • track ambulances
Because:
  • I need to keep the patients / tasks moving; prompt visibility into delays will allow me to intervene in time`
  • I need to filter the large volume of information that I get, and opt in to what I need only
  • I should be able to respond promptly to urgent or critical results - it could save lives

Note

Given:
  • that I am a logged in triage nurse
And:
  • I am at the triage ‘dashboard’ or home page
When:
  • I look at my summary / dashboard
Then:
  • I should be able to see the queue of patients awaiting triage
  • I should be able to prioritize patients on the basis of of their acutity level
  • I should be able to see the queues ( with color coded statuses ) for the patients that I have already triaged and e.g. sent to a specific consulting room
  • I should be able to see the queue of patients awaiting re-consults e.g after lab results are in, and the status of their pending tests
  • I should be able to move patients around between queues
  • I should be able to remove patients from the queue e.g patients who have already left
  • I should be able to assign patients in specific rooms to particular care providers e.g to particular doctors or nurses
  • I should be able to see a particular doctor or nurse’s ( or other care team member’s ) queue
  • I should be able to manage observation rooms for outpatients

2.6.2.1. Story: Triage

Listing 2.1 Triage
  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
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
Feature: Triage 
    Triage controls the flow of patients. The primary roles are: prioritization,
    observation of vitals and 'pre-clerking' ( updating the problem list and 
    performing a routine review of systems ).

    Every entry made here is date/time- and user- stamped. The identity of the
    user that last updated it and the exact time of that event MUST always be 
    shown.

    The complaints search box should have "predictive" or "learning" behavior 
    i.e common conditions in the local practice / hospital and for the patient
    should be suggested before less common ones.

    Background: Find a visit through the listing of active visits
        Given that I am logged in via the triage role
        And I navigate to the "Active Visits" queue
        When I type into the search box any of the following:
            | field         | explanation                                   |
            | name          | any of the patient's name or a fragment of it |
            | visit number  | a full or partial visit number                |
            | patient number| a full or partial visit number                |
            | priority      | triage priority status                        |
        Then I should see a filtered list of visits that match the query 
        And the list should become more specific as I type more
        And I should be able to click on one of the visits to see the patient's
            face sheet

    Scenario: Add a complaint 
        Given that I have opened a single patient's visit / face sheet 
        Then I should see the patient's existing complaint(s) if any
        Then I should see an "Add Complaint" control 
        When I click on "Add complaint"
        And type a complaint name or fragment into the search box that appears
        Then the search box should show matches for the typed input
        And I should be able to select one match
        And The selected match should then appear in the patient's problem list

    Scenario: Dismiss the complaint form 
        Given that I have opened a single patient's visit / face sheet 
        Then I should see the patient's existing complaint(s) if any
        Then I should see an "Add Complaint" control 
        When I click on "Add complaint"
        Then I click on the "X" or "Cancel" controls 
        Then the form should dismiss and I should be taken back to the patient
            face sheet

    Scenario: Remove a complaint 
        Given that I have opened a single patient's visit / face sheet 
        Then I should see the patient's existing complaint(s) if any
        And I should see a "Remove" button next to each complaint 
        When I click on the "Remove" button
        Then the complaint should be removed from the "Active Complaints" list
        And added to the "Inactive Complaints" list

    Scenario: Record vitals successfully
        Given that I have opened a single patient's visit / face sheet 
        Then I should see the patient's existing vital signs for the visit in a 
            tabular 'flowsheet' and graphical form
        And I should see a "Note New Vitals" button
        When I click on the "Note New Vitals" button
        Then I should see a form that allows me to input vitals
        And I should be able to fill in the form with normal values and click 
            "Save Vitals"
        And I should see a "Vitals Saved" success message
        And I should be navigated back to the patient's face sheet

    Scenario: Record vitals that are abnormal but feasible 
        Given that I have opened a single patient's visit / face sheet 
        Then I should see the patient's existing vital signs for the visit in a 
            tabular 'flowsheet' and graphical form
        And I should see a "Note New Vitals" button
        When I click on the "Note New Vitals" button
        Then I should see a form that allows me to input vitals
        And I should be able to fill in the form with abnormal values and click
            "Save Vitals"
        And I should see a "Vitals Saved" success message
        And I should be navigated back to the patient's face sheet
        And I should see the abnormal values clearly flagged on the 
            color coded flowsheet

    Scenario: Record vitals that are incompatible with life 
        Given that I have opened a single patient's visit / face sheet 
        Then I should see the patient's existing vital signs for the visit in a 
            tabular 'flowsheet' and graphical form
        And I should see a "Note New Vitals" button
        When I click on the "Note New Vitals" button
        Then I should see a form that allows me to input vitals
        And I should be able to fill in the form with infeasible values and click 
            "Save Vitals"
        And I should see an on-screen prompt that highlights the infeasible
            values
        And the "Save Vitals" button should be disabled until those values are
            corrected        

    Scenario: Dismiss the vitals form 
        Given that I have opened a single patient's visit / face sheet 
        Then I should see the patient's existing complaint(s) if any
        Then I should see an "Note New Vitals" button 
        When I click on "Note New Vitals"
        Then I click on the "X" or "Cancel" controls 
        Then the form should dismiss and I should be taken back to the patient
            face sheet

    Scenario: Record the review of systems
        Given that I have opened a single patient's visit / face sheet 
        Then I should see the patient's existing review of systems 
        And I should see a "Review of systems" button
        When I click on the "Review of systems" button
        Then I should see a checklist style form that allows me to input ROS
            responses
        And I should be able to fill in the form and click "Save Vitals"
        And I should see a "Review of Systems Saved" success message
        And I should be navigated back to the patient's face sheet

    Scenario: Dismiss the review of systems form 
        Given that I have opened a single patient's visit / face sheet 
        Then I should see the patient's existing review of systems 
        And I should see a "Review of systems" button
        When I click on the "Review of systems" button
        Then I should see a checklist style form that allows me to input ROS
            responses
        Then I click on the "X" or "Cancel" controls 
        Then the form should dismiss and I should be taken back to the patient
            face sheet

    Scenario: Assign a priority to the patient
        Given that I have opened a single patient's visit / face sheet 
        Then I should see the patient's color-coded current "Priority" in the
            patient banner
        When I click on the priority badge
        Then I should see a pop up control with a listing of priorities
        When I click on a new priority
        Then the new priority should immediately show on the patient banner
        And the new priority should be seen when I navigate back to the visit
            listing

    Scenario: Assign the patient to a queue
        Queue are one of the primary constructs of the EMR workflow. Queues are
        attached to resources e.g doctors, consulting rooms, diagnostic machine
        etc ( any schedulable resource ).

        Some queues will be unconstrained / unbounded in size e.g orders 
        awaiting processing at a lab. Some queues will be limited in capacity 
        e.g patients assigned to an observation room.

        Given that I have opened a single patient's visit / face sheet 
        Then I should see the patient's color-coded current "Queue" in the
            patient banner
        When I click on the queue badge
        Then I should see a pop up control with a listing of downstream queues 
        When I click on a new queue 
        Then the new queue should immediately show on the patient banner
        And the new queue should be seen when I navigate back to the visit
            listing

2.6.3. Epic: Doctors’ and nurses dashboard

This dashboard should be mobile friendly - the ability to access and update the EMR when on the go or in between shifts is an important efficiency booster.

Clinical templates allow us to strike a balance between detail and user convenience. They can be thought of as ‘documentation accelerators’.

Templates contain rich text formatting within them. They may also support keyboard shortcuts ( see Practice Fusion for a good example in practice ). They can take many forms, for example:

  • a checklist for review of systems
  • orthopaedic charts
  • dental charts
  • growth charts - CDC, WHO
  • psychiatry - DSM 4 and global assessment of functioning
  • diabetic patient insulin history tracking
  • standardized wound description templates e.g templates that describe wound appearance and drainage
  • immunization records - schedule, consent, refusal with reasons etc
  • obstetric history forms - recording e.g foetal heart rates, fundal heights, weight, urinalysis, blood pressure, notification dates - EDD, scheduled delivery, date to start ART etc, auto calculation of EDD from LMP or ultrasound EGA etc

Clinical templates will be a common ongoing customization. We should design a ‘plugin’ architecture for templates. We might want to take a good look at SMART on FHIR. The practitioner portal will include this functionality.

Note

As a:
  • doctor or nurse
I need my dashboard to:
  • access a personalized calendar that has my appointments and tasks, and can be toggled between day / week / month or agenda views; the schedule should include the reason for visit and symptoms documented during the intake process
  • book new appointments; scheduling patients by time, type of appointment, location etc
  • cancel appointments
  • confirm or remind patients of appointment times via automated email, text and phone notifications
  • add reminders that are not tied to appointment slots
  • add and view tasks / TODOs, also not tied to appointment slots
  • be able to opt in to email / mobile push / SMS reminders and set the times when the reminders are sent
  • be able to opt in to daily agenda emails and set the time when the emails are sent
  • able to access ( and search, filter, sort ) listings of my patients
  • click through to each patient’s detailed patient record
  • view orders and results / reports for each patient
  • view pending medication refills and refill / cancel
  • write and send prescriptions
  • show me my patients - name, contacts, emergency contacts, medical history, demographic and diagnostic data, current orders, current results, images
  • show me my worklist - with the ability to export or print on demand
  • show me my urgent tasks and priority items e.g unacknowledged results, unsigned documents, incomplete tasks; new tasks should be flagged
  • show a quicklist of procedures to be performed during a shift
  • provide easy access to specimen collection lists, with the ability to rapidly print bar coded labels
  • allow me to prioritize the tasks on my worklist
  • alert me when there are overdue tasks
  • alert me when there are new tasks
  • show me a list of my patients, with those that I have interacted with recently appearing earlier in the list
  • allow me to click through and see my patients medical records - with their medications, history, orders, results, images etc - along with the ability to edit and input new clinical notes. The actions that can be performed on each patient record are defined in further detail in a ‘My patients’ feature below.
  • access theatre lists for patients under my care and monitor progress across pre-operative checklists ( that work towards transfer to operating theaters )
  • show me alerts for incoming investigation reports and results that need review
  • request consults and view the status of pending consults
  • allow me to click through to the patient tracking and bed board pages
  • enter charges for ward and clinic procedures
  • process birth and death notifications
  • browse a template library that is organized by specialty and has featured templates, template preview and ratings
  • create custom templates or custom template sections and link them to the appropriate sections of the patient chart. The template builder should provide at least the following field types: short text fields, yes/no fields ( always generate text ), on/off fields ( generate text only if off ), single selects, multiple selects, diagrams, fractions, headers, sub-headers and blank fields / spacers
  • create custom templates by saving notes as a template ( placeholders or variables? )
  • sharing templates with specific users

2.6.4. Epic: Dispensing dashboard

In addition to dispensing medications - for inpatients and outpatients - many hospital pharmacies also maintain a poison information center.

Note

As a:
  • pharmacist, pharmaceutical technologist or nurse with a dispensing role
I need to:
  • view a worklist - medications pending dispense, filterable by station or pharmacy; the patient should be cleared from the worklist only when fully dispensed

  • dispensing statuses: not atended, in processing, ready for dispensing, partially dispensed, dispensed

  • listing of patients waiting at various locations / pharmacies

  • distinguish between inpatient and outpatient orders

  • process discharge drugs - returns of inpatient medicines, issuance of discharge medicines

  • get alerts on new location when a patient is transferred / moved

  • perform price checks ( quotations ) without the need to register the patient in advance

  • management of pre-packaged kits / packages

  • produce Patient Information Leaflets

  • record patient arrival at the counter and departure after dispensing

  • monitor turnaround times from receiving orders to final dispensation

  • show average waiting time at the display monitor

  • clearly identify orders that need a Pharmacists’ review

  • print labels. General labels should contain the following information:

    • name of the patient
    • name of the medicine ( generic and trade )
    • strength
    • form of medicine e.g tablet, capsule, injection, suspension
    • expiry date
    • quantity
    • instructions for use e.g avoid alcohol
    • dispensing date
    • storage requirements
    • name of the dispensing facility and department

    IV labels have the following additional information:

    • start time
    • solution and volume
    • time to run
    • drip rate
    • initials of the pharmacist or technician that compounded the solution
    • administration insructions
    Label types are:
    • inpatient
    • outpatient
    • discharge
    • pack
  • reprinting of labels, as necessary

  • ISMP ( Institute of Safe Medication ) compliant labels

  • generate and print compounding worksheets: preparer, checker, components used, manufacturers, lot numbers, expiration date, volume, weight

  • automatic pricing of compound items, including the compounding fee

  • susbstitute generic drugs - except where there is a do not substitute order

  • dispense a prescription in full or in part

  • charge dispensing fees

  • print prescriptions for medications not dispensed e.g to send to third party pharmacy

  • place prescriptions on hold ( with a comment )

  • acknowledge / ignore alerts

2.6.5. Epic: Medication administration dashboard

Note

As a:
  • ward nurse or doctor
I need to:
  • access a medication administration list; printable for easier communication during handovers. It includes: patient, drug, dose, age, cart filler name / cart checker name, total units dispensed
  • access a summary area that includes a renewal notice list, expired treatment list, alerts on patients who missed medications and medication errors
  • be warned about potential interactions e.g drug-drug, drug-allergy, drug-food, duplicate drug; I can override warnings by writing an note that is prominently displayed on the patient record
  • be notified of abnormal lab results or vitals prior to medication administration
  • be able to check medication labels against patient wrist bands
  • place orders on hold
  • receive notice of orders that are near expiry
  • document why a medication was not administered
  • add administration notes to the medication adminisration record
  • record adverse drug reactions
  • synchronize the medication administration list with a dispensing system
  • automatically decrease inventory during cart filling
  • print a specific patient’s medication administration record on demand