Radiology Information System Screen Requirements

Radiology Information System Screen Requirements

Screen Inventory

Screen ID Screen Name Primary Actor(s) Workflow(s) Access Level
SCR-RIS-001 Radiology Worklist (Tech) Radiology Technologist, Lead Technologist WF-RIS-001, WF-RIS-002, WF-RIS-003 Radiology staff (modality-level access)
SCR-RIS-002 Patient Check-In Radiology Receptionist, Radiology Technologist, Radiology Nurse WF-RIS-002, WF-RIS-008 Front-desk radiology staff
SCR-RIS-003 Exam Execution Radiology Technologist, Lead Technologist WF-RIS-003, WF-RIS-007 Radiology technologists
SCR-RIS-004 Reading Worklist (Radiologist) Radiologist, Chief Radiologist WF-RIS-001, WF-RIS-004, WF-RIS-006 Radiologists only
SCR-RIS-005 Report Dictation / Editor Radiologist, Chief Radiologist WF-RIS-004, WF-RIS-006, WF-RIS-005 Radiologists only
SCR-RIS-006 Critical Result Notification Radiologist, Ordering Physician, Nurse WF-RIS-005 Radiologists, ordering providers, charge nurses (view/ack)
SCR-RIS-007 Radiation Dose Dashboard Radiation Safety Officer, Radiologist, Lead Technologist WF-RIS-003, WF-RIS-007 RSO, radiology leadership
SCR-RIS-008 Modality Management Lead Technologist, Radiology Admin, IT PACS Admin WF-RIS-001, WF-RIS-003, WF-RIS-007 Radiology admin / IT only
SCR-RIS-009 Protocol Management Chief Radiologist, Lead Technologist, Radiology Informatics WF-RIS-001, WF-RIS-003 Radiology clinical leadership
SCR-RIS-010 Radiology Analytics Dashboard Chief Radiologist, Radiology Manager, Quality Officer WF-RIS-004, WF-RIS-005, WF-RIS-007, WF-RIS-008 Management / QA roles

flowchart LR H["HIS Home / Role Dashboard"] --> A{"Role?"} A -->|"Tech / Reception"| B["SCR-RIS-001<br/>Radiology Worklist (Tech)"] A -->|"Radiologist"| C["SCR-RIS-004<br/>Reading Worklist"] A -->|"RSO / QA"| D["SCR-RIS-007<br/>Radiation Dose Dashboard"] A -->|"Admin / Lead Tech"| E["SCR-RIS-008<br/>Modality Management"] A -->|"Chief Rad / Lead Tech"| F["SCR-RIS-009<br/>Protocol Management"] A -->|"Management"| G["SCR-RIS-010<br/>Radiology Analytics Dashboard"] %% Tech / Reception flow B --> B1["Select Exam"] B1 -->|"Patient Arrived"| I["SCR-RIS-002<br/>Patient Check-In"] I -->|"Checked-in"| J["SCR-RIS-003<br/>Exam Execution"] J -->|"Images Acquired"| B %% Radiologist flow C --> C1["Open Exam"] C1 --> K["SCR-RIS-005<br/>Report Dictation / Editor"] K -->|"Flag Critical"| L["SCR-RIS-006<br/>Critical Result Notification"] L -->|"Notification Completed"| K K -->|"Preliminary / Final Sign"| C %% Dose / QA J -->|"Dose Captured"| D D -->|"Drill into Exam"| J %% Admin / Config E -->|"Configure Modality Slots & AE Titles"| B F -->|"Update Protocols"| B G -->|"Drill-down"| D

Screen Specifications


SCR-RIS-001: Radiology Worklist (Tech)

Purpose

Operational worklist for technologists and reception to view, filter, and manage scheduled and in-progress radiology exams per modality, including drag‑and‑drop scheduling and status updates.

Layout Description

  • Header: Module title, date selector, modality filter, priority filter, status filter.
  • Patient Banner Strip (when exam selected): Patient name (Arabic/English), MRN, Emirates ID, DOB/age, sex, allergies, pregnancy status (if female of childbearing age).
  • Worklist Table: Rows per exam with key details and visual priority/status indicators.
  • Right Panel (Collapsible): Exam details (order info, protocol, notes), mini schedule timeline for selected modality.
  • Footer: Legend (priority colours, status icons), pagination.

Field Specifications

Filters & Controls

Field Type Required Validation Default Notes
Date Date picker Yes Valid calendar date Today Limits to +/- 90 days
Modality Multi-select dropdown No Value in modality master All CT, MR, US, XR, etc.
Priority Multi-select chips No IN (Routine, Urgent, STAT, Wet Read) All Colour-coded
Status Multi-select chips No IN (Scheduled, Patient Arrived, In Progress, Images Acquired, Completed, No-show, Cancelled) Scheduled, Patient Arrived
Search Text input No Min 2 chars Empty Searches patient name, MRN, accession, Emirates ID

Worklist Table Columns

Field Type Required Validation Default Notes
Scheduled Time Time display Yes HH:MM (24h) From radiology_orders.scheduled_datetime
Patient Name Text Yes Non-empty Arabic/English; from patient master
MRN Text Yes Non-empty From patient master
Exam Type Text Yes Non-empty From radiology_orders.exam_description
Modality Badge Yes Valid modality code From radiology_orders.modality_type
Body Part / Laterality Text Yes e.g., “CT Abdomen – Left”
Priority Badge Yes IN (Routine, Urgent, STAT, Wet Read) Routine Colour-coded; icon + text
Status Badge Yes Valid status Scheduled From radiology_exams.exam_status
Assigned Tech Text No Unassigned From radiology_exams.technologist_id
Accession Number Text Yes Non-empty From radiology_exams.accession_number
Auth Status Icon + text No IN (Not Required, Pending, Approved, Denied, Expired) Not Required From prior auth integration

Drag-and-Drop Scheduling

  • Drag exam row onto time slots in mini schedule (per modality).
  • On drop, system updates radiology_orders.scheduled_datetime and checks for conflicts.

Validation Messages

Condition Message Severity
Drop exam into past time slot "Cannot schedule an exam in the past." Error
Modality overbooked (exceeds max_daily_slots) "Selected time exceeds configured capacity for this modality." Warning
Missing prior authorization where required "Prior authorization is required before scheduling this exam." Error
Attempt to change status without patient check-in "Patient must be checked in before starting the exam." Error
Network / save failure "Unable to update schedule. Please retry or contact IT support." Error

Actions / Buttons

  • Refresh: Reload worklist with latest data.
  • Bulk Actions (multi-select rows):
  • Mark as No-show
  • Cancel Exam (requires reason)
  • Row Actions:
  • “Check-In” → opens SCR-RIS-002.
  • “Start Exam” → sets status to In Progress and opens SCR-RIS-003.
  • “View Order Details” → side panel with order/protocol.
  • Drag-and-Drop:
  • Re-schedule exam within same day/modality.
  • Prompt confirmation dialog on drop.

HTML Wireframe Mockup

Show HTML code
HTML
<div style="font-family: Arial, sans-serif; max-width: 1200px; margin: 0 auto; border: 1px solid #ccc; border-radius: 8px; overflow: hidden;">
  <div style="background: #1a73e8; color: white; padding: 12px 20px; display:flex; justify-content:space-between; align-items:center;">
    <h3 style="margin: 0;">Radiology Worklist (Tech)</h3>
    <div>
      <button style="background:#fff;color:#1a73e8;border:none;padding:6px 12px;border-radius:4px;cursor:pointer;">Refresh</button>
    </div>
  </div>
  <div style="padding: 12px 20px; border-bottom:1px solid #eee;">
    <div style="display:flex; flex-wrap:wrap; gap:12px; align-items:flex-end;">
      <div>
        <label for="wl-date" style="display:block;font-size:12px;">Date</label>
        <input id="wl-date" type="date" style="padding:4px 6px; min-width:140px;">
      </div>
      <div>
        <label style="display:block;font-size:12px;">Modality</label>
        <select multiple style="padding:4px 6px; min-width:160px;">
          <option>All</option>
          <option>CT</option>
          <option>MR</option>
          <option>US</option>
          <option>XR</option>
        </select>
      </div>
      <div>
        <label style="display:block;font-size:12px;">Priority</label>
        <div>
          <label><input type="checkbox" checked> Routine</label>
          <label style="margin-left:8px;"><input type="checkbox" checked> Urgent</label>
          <label style="margin-left:8px;"><input type="checkbox" checked> STAT</label>
        </div>
      </div>
      <div style="flex:1; min-width:200px;">
        <label for="wl-search" style="display:block;font-size:12px;">Search (Name / MRN / Accession)</label>
        <input id="wl-search" type="text" style="width:100%;padding:4px 6px;">
      </div>
    </div>
  </div>
  <div style="display:flex; max-height:520px;">
    <div style="flex:2; border-right:1px solid #eee; overflow:auto;">
      <table style="width:100%; border-collapse:collapse; font-size:13px;">
        <thead style="background:#f5f5f5;">
          <tr>
            <th style="text-align:left;padding:6px;border-bottom:1px solid #ddd;">Time</th>
            <th style="text-align:left;padding:6px;border-bottom:1px solid #ddd;">Patient</th>
            <th style="text-align:left;padding:6px;border-bottom:1px solid #ddd;">Exam</th>
            <th style="text-align:left;padding:6px;border-bottom:1px solid #ddd;">Mod</th>
            <th style="text-align:left;padding:6px;border-bottom:1px solid #ddd;">Priority</th>
            <th style="text-align:left;padding:6px;border-bottom:1px solid #ddd;">Status</th>
            <th style="text-align:left;padding:6px;border-bottom:1px solid #ddd;">Tech</th>
            <th style="text-align:left;padding:6px;border-bottom:1px solid #ddd;">Actions</th>
          </tr>
        </thead>
        <tbody>
          <tr style="cursor:move;">
            <td style="padding:6px;border-bottom:1px solid #eee;">09:30</td>
            <td style="padding:6px;border-bottom:1px solid #eee;">Ahmed Al-Maktoum<br><span style="color:#555;">MRN: 0012345</span></td>
            <td style="padding:6px;border-bottom:1px solid #eee;">CT Abdomen w/ Contrast</td>
            <td style="padding:6px;border-bottom:1px solid #eee;">CT</td>
            <td style="padding:6px;border-bottom:1px solid #eee;"><span style="background:#d93025;color:#fff;padding:2px 6px;border-radius:10px;font-size:11px;">STAT</span></td>
            <td style="padding:6px;border-bottom:1px solid #eee;">Scheduled</td>
            <td style="padding:6px;border-bottom:1px solid #eee;">Unassigned</td>
            <td style="padding:6px;border-bottom:1px solid #eee;">
              <button style="padding:2px 6px;font-size:11px;">Check-In</button>
            </td>
          </tr>
          <!-- more rows -->
        </tbody>
      </table>
    </div>
    <div style="flex:1; padding:12px; font-size:13px;">
      <h4 style="margin-top:0;">Selected Exam Details</h4>
      <div style="border:1px solid #ddd;border-radius:4px;padding:8px;margin-bottom:8px;">
        <strong>Patient:</strong> Ahmed Al‑Maktoum (MRN 0012345)<br>
        <strong>Emirates ID:</strong> 784-1990-1234567-1<br>
        <strong>DOB:</strong> 12‑03‑1990 (35y) • Male
      </div>
      <div style="border:1px solid #ddd;border-radius:4px;padding:8px;margin-bottom:8px;">
        <strong>Exam:</strong> CT Abdomen w/ Contrast<br>
        <strong>Priority:</strong> STAT<br>
        <strong>Ordering Physician:</strong> Dr. Fatima Al‑Nahyan<br>
        <strong>Clinical Indication:</strong> Acute abdominal pain, r/o appendicitis
      </div>
      <div>
        <h5 style="margin:8px 0 4px;">Modality Schedule (CT)</h5>
        <div style="border:1px solid #eee;height:200px;font-size:12px;padding:4px;">
          <!-- simplified timeline placeholder -->
          <p>09:00–09:30 Booked</p>
          <p>09:30–10:00 Available</p>
          <p>10:00–10:30 Booked</p>
        </div>
      </div>
    </div>
  </div>
</div>

Accessibility (WCAG 2.1 AA)

  • All filters and table headers use <label> and <th scope="col">.
  • Drag-and-drop scheduling has keyboard alternative (e.g., “Change Time” dialog).
  • Priority/status indicated by text plus colour; not colour alone.
  • Live updates (auto-refresh) announced via aria-live="polite" region.
  • Row selection and actions reachable via keyboard (Tab/Enter/Space).

Responsive / Mobile

  • On screens < 768px:
  • Filters stack vertically.
  • Worklist table collapses to cards (time, patient, exam, priority, status).
  • Right panel becomes a slide-up drawer.
  • Drag-and-drop replaced with “Change Time” button opening a time picker.
  • Touch targets minimum 44x44 px.

SCR-RIS-002: Patient Check-In

Purpose

Capture patient arrival, identity verification, safety screening (MRI/contrast/pregnancy), and consent for imaging exams, ensuring compliance with UAE PDPL and local radiation safety requirements.

Layout Description

  • Header: Patient banner (from shared pattern) + exam summary.
  • Section 1: Identity verification (Emirates ID, MRN, DOB).
  • Section 2: Safety screening questionnaire (modality-specific).
  • Section 3: Vitals & weight (for contrast dosing).
  • Section 4: Consent capture (checkboxes + signature capture if required).
  • Footer: Buttons: Cancel, Save as Draft, Complete Check-In.

Field Specifications

Field Type Required Validation Default Notes
Emirates ID Text Yes Regex ^784-\d{4}-\d{7}-\d$ Pre-filled if on file Masked input; from patient master
MRN Read-only text Yes Non-empty From context From patients table
Full Name (Arabic / English) Read-only text Yes Non-empty From context Display both if available
Date of Birth Read-only text Yes Valid date From context Age auto-calculated
Identity Verification Method Dropdown Yes IN (Emirates ID, Passport, Other Govt ID) Emirates ID Audit logged
Identity Verified Checkbox Checkbox Yes Must be checked Unchecked Required before proceeding

Safety Screening (examples)

Field Type Required Validation Default Notes
MRI Safety Questionnaire Completed Checkbox Conditional Required if modality = MR Unchecked
Any implanted devices? Radio (Yes/No) Conditional No If Yes → details text area
Contrast Allergy History Radio (Yes/No/Unknown) If contrast planned Unknown
Pregnancy Status (for females 12–55y) Radio (Not Pregnant / Pregnant / Unknown / Not Applicable) Conditional Not Applicable Drives alerts
Last Creatinine Date Date If contrast planned <= today Empty Optional but recommended
Last Creatinine Value Numeric If date entered > 0 Empty Units: µmol/L or mg/dL

Vitals & Weight

Field Type Required Validation Default Notes
Weight (kg) Numeric Yes 1–300 Empty Used for contrast dosing
Height (cm) Numeric No 30–250 Empty For BMI if needed
Blood Pressure Text No Pattern NNN/NN Empty Optional

Consent

Field Type Required Validation Default Notes
Imaging Consent Type Multi-select Conditional At least one if required Based on exam e.g., General Imaging, Contrast, Interventional
Consent Obtained Checkbox Conditional Must be checked if consent required Unchecked
Consent Date/Time DateTime Conditional <= now Now
Consent Document Link Read-only link No Opens scanned/ e-signed consent
Patient / Guardian Name Text Conditional Non-empty Patient name For signature
Relationship to Patient Dropdown Conditional IN (Self, Parent, Guardian, Other) Self

Validation Messages

Condition Message Severity
Emirates ID format invalid "Emirates ID must be in format 784-YYYY-NNNNNNN-C." Error
Identity not verified "Identity verification is required before check-in can be completed." Error
MRI safety questionnaire not completed for MR exam "MRI safety screening must be completed for all MRI exams." Error
Female 12–55y with pregnancy status = Unknown "Please confirm pregnancy status or document 'Unknown' with justification." Warning
Contrast planned but no weight "Patient weight is required for contrast dosing." Error
Consent required but not obtained "Imaging consent is required for this exam before proceeding." Error

Actions / Buttons

  • Save as Draft: Saves entered data without changing exam status.
  • Complete Check-In:
  • Validates all required fields.
  • Sets exam status to “Patient Arrived”.
  • Returns to SCR-RIS-001.
  • Cancel: Returns to worklist without saving changes (with confirmation).
  • Print Safety Form (optional): For patient review/sign if local policy requires paper backup.

HTML Wireframe Mockup

Show HTML code
HTML
<div style="font-family: Arial, sans-serif; max-width: 900px; margin: 0 auto; border: 1px solid #ccc; border-radius: 8px; overflow: hidden;">
  <div style="background: #1a73e8; color: white; padding: 12px 20px;">
    <h3 style="margin: 0;">Patient Check-In</h3>
  </div>
  <div style="padding: 16px 20px;">
    <!-- Patient Banner -->
    <div style="border:1px solid #ddd;border-radius:4px;padding:8px 10px;margin-bottom:12px;background:#f8fafc;">
      <strong>Ahmed Al‑Maktoum</strong> • MRN: 0012345 • Emirates ID: 784-1990-1234567-1<br>
      DOB: 12‑03‑1990 (35y) • Male • Allergies: None Known<br>
      Exam: CT Abdomen w/ Contrast • Priority: STAT
    </div>

    <!-- Identity Verification -->
    <h4 style="margin:12px 0 6px;">1. Identity Verification</h4>
    <div style="display:flex; flex-wrap:wrap; gap:12px;">
      <div>
        <label style="display:block;font-size:12px;">Emirates ID</label>
        <input type="text" value="784-1990-1234567-1" style="padding:4px 6px; min-width:200px;">
      </div>
      <div>
        <label style="display:block;font-size:12px;">Verification Method</label>
        <select style="padding:4px 6px; min-width:160px;">
          <option>Emirates ID</option>
          <option>Passport</option>
          <option>Other Govt ID</option>
        </select>
      </div>
      <div style="align-self:flex-end;">
        <label><input type="checkbox"> Identity verified against ID document</label>
      </div>
    </div>

    <!-- Safety Screening -->
    <h4 style="margin:16px 0 6px;">2. Safety Screening</h4>
    <div style="border:1px solid #eee;border-radius:4px;padding:8px 10px;margin-bottom:8px;">
      <div style="margin-bottom:6px;">
        <label style="display:block;font-size:12px;">Contrast Allergy History</label>
        <label><input type="radio" name="allergy"> Yes</label>
        <label style="margin-left:8px;"><input type="radio" name="allergy" checked> No</label>
        <label style="margin-left:8px;"><input type="radio" name="allergy"> Unknown</label>
      </div>
      <div style="margin-bottom:6px;">
        <label style="display:block;font-size:12px;">Pregnancy Status (if applicable)</label>
        <label><input type="radio" name="preg"> Not Pregnant</label>
        <label style="margin-left:8px;"><input type="radio" name="preg"> Pregnant</label>
        <label style="margin-left:8px;"><input type="radio" name="preg"> Unknown</label>
        <label style="margin-left:8px;"><input type="radio" name="preg" checked> Not Applicable</label>
      </div>
      <div style="display:flex; gap:12px;">
        <div>
          <label style="display:block;font-size:12px;">Last Creatinine Date</label>
          <input type="date" style="padding:4px 6px;">
        </div>
        <div>
          <label style="display:block;font-size:12px;">Creatinine Value</label>
          <input type="number" step="0.1" style="padding:4px 6px; width:100px;">
          <span style="font-size:11px;color:#555;">µmol/L</span>
        </div>
      </div>
    </div>

    <!-- Vitals -->
    <h4 style="margin:16px 0 6px;">3. Vitals & Weight</h4>
    <div style="display:flex; gap:12px; flex-wrap:wrap;">
      <div>
        <label style="display:block;font-size:12px;">Weight (kg)</label>
        <input type="number" style="padding:4px 6px; width:100px;">
      </div>
      <div>
        <label style="display:block;font-size:12px;">Height (cm)</label>
        <input type="number" style="padding:4px 6px; width:100px;">
      </div>
      <div>
        <label style="display:block;font-size:12px;">Blood Pressure</label>
        <input type="text" placeholder="120/80" style="padding:4px 6px; width:90px;">
      </div>
    </div>

    <!-- Consent -->
    <h4 style="margin:16px 0 6px;">4. Consent</h4>
    <div style="border:1px solid #eee;border-radius:4px;padding:8px 10px;">
      <label><input type="checkbox"> General imaging consent obtained</label><br>
      <label><input type="checkbox"> Contrast consent obtained</label><br>
      <div style="margin-top:6px; display:flex; gap:12px; flex-wrap:wrap;">
        <div>
          <label style="display:block;font-size:12px;">Consent Date/Time</label>
          <input type="datetime-local" style="padding:4px 6px;">
        </div>
        <div>
          <label style="display:block;font-size:12px;">Patient / Guardian Name</label>
          <input type="text" style="padding:4px 6px; min-width:200px;">
        </div>
        <div>
          <label style="display:block;font-size:12px;">Relationship</label>
          <select style="padding:4px 6px;">
            <option>Self</option>
            <option>Parent</option>
            <option>Guardian</option>
            <option>Other</option>
          </select>
        </div>
      </div>
    </div>

    <!-- Footer Buttons -->
    <div style="margin-top:16px; text-align:right;">
      <button style="padding:6px 12px; margin-right:8px;">Cancel</button>
      <button style="padding:6px 12px; margin-right:8px;">Save as Draft</button>
      <button style="padding:6px 16px; background:#1a73e8;color:#fff;border:none;border-radius:4px;">Complete Check-In</button>
    </div>
  </div>
</div>

Accessibility

  • All questions have explicit <label> and grouping via <fieldset>/<legend> (implementation detail).
  • Required fields indicated with text (e.g., “(required)”) not just colour.
  • Error messages associated via aria-describedby.
  • Pregnancy and safety questions readable in logical order for screen readers.

Responsive / Mobile

  • Sections collapse into accordions for easier scrolling.
  • Inputs full-width; multi-column layouts become single column.
  • Signature capture (if implemented) uses touch-friendly canvas.

SCR-RIS-003: Exam Execution

Purpose

Used by technologists to manage exam execution: confirm protocol, track exam start/end, record contrast administration, capture dose (if not auto), and update exam status.

Layout Description

  • Header: Patient banner + exam summary.
  • Left Column: Protocol details, technologist notes, status controls.
  • Right Column: Contrast administration, dose capture, image count, modality info.
  • Footer: Buttons: Save, Mark Images Acquired, Mark Completed.

Field Specifications

Field Type Required Validation Default Notes
Exam Status Dropdown Yes IN (Patient Arrived, In Progress, Images Acquired, Completed, Cancelled) From context Controlled transitions only
Check-In Time Read-only datetime Yes <= now From check-in
Exam Start Time Datetime Conditional <= now; >= check-in Empty Required when status ≥ In Progress
Exam End Time Datetime Conditional >= start; <= now Empty Required when status = Completed
Technologist Read-only text Yes Non-empty Logged-in user
Modality Resource Read-only text Yes Non-empty From modality_resources AE Title, room

Contrast Administration

Field Type Required Validation Default Notes
Contrast Used Checkbox No From order/protocol
Contrast Type Dropdown Conditional FK to Contrast Agents Empty Required if Contrast Used
Route Dropdown Conditional IN (IV, Oral, Rectal, Intra-articular) IV
Volume (mL) Numeric Conditional 1–500 Empty
Lot Number Text Conditional Max 50 chars Empty For traceability
Adverse Reaction Dropdown No IN (None, Mild, Moderate, Severe) None If not None → notes
Reaction Notes Textarea Conditional Max 500 chars Empty

Dose Capture (for ionizing modalities)

Field Type Required Validation Default Notes
Dose Auto-Captured from RDSR Checkbox No Checked if RDSR received Read-only
CTDIvol (mGy) Numeric Conditional >= 0 From RDSR Editable if manual
DLP (mGy·cm) Numeric Conditional >= 0 From RDSR
DAP (Gy·cm²) Numeric Conditional >= 0 From RDSR For fluoroscopy
Effective Dose (mSv) Numeric No >= 0 Auto-calculated Based on body region & modality
Image Count Numeric No >= 0 From modality

Technologist Notes

Field Type Required Validation Default Notes
Positioning Notes Textarea No Max 1000 chars Empty
Repeat Reason Dropdown No IN (Motion, Positioning, Artefact, Other) Empty If repeats performed
Repeat Count Numeric No >= 0 0 For QA

Validation Messages

Condition Message Severity
Exam Start Time missing when status In Progress "Exam start time is required when marking exam as In Progress." Error
Exam End Time missing when status Completed "Exam end time is required when marking exam as Completed." Error
Contrast Used checked but no type/volume "Contrast type and volume are required when contrast is used." Error
Dose fields empty for CT/XR/Fluoro and no RDSR "Radiation dose must be recorded for this modality." Warning (can be hard error per policy)
End time before start time "Exam end time cannot be earlier than start time." Error

Actions / Buttons

  • Save: Persist current data without changing status.
  • Mark Images Acquired:
  • Sets status to “Images Acquired”.
  • Requires at least Exam Start Time.
  • Mark Completed:
  • Sets status to “Completed”.
  • Requires Exam Start & End Time and dose (if applicable).
  • Open in PACS: Launches PACS viewer for quick QA (if integration available).

Accessibility

  • Time fields use accessible date/time pickers with keyboard support.
  • Dose fields grouped with clear legends; units displayed in text.
  • Error messages appear inline and summarized at top in an aria-live="assertive" region.

Responsive / Mobile

  • Two-column layout collapses to single column.
  • Buttons fixed at bottom on mobile for easy access.
  • Numeric inputs use numeric keypad on mobile.

SCR-RIS-004: Reading Worklist (Radiologist)

Purpose

Provide radiologists with a prioritized list of exams ready for interpretation, with filters, assignment controls, and quick access to PACS and report editor.

Layout Description

  • Header: Filters (priority, modality, status, assigned to), search, “My List / All” toggle.
  • Worklist Table: Exams with priority, patient, exam, age, ordering provider, images availability, and SLA timers.
  • Side Panel: When exam selected, shows clinical history, prior exams, labs summary.
  • Footer: Legend and pagination.

Field Specifications

Field Type Required Validation Default Notes
View Toggle Segmented control Yes IN (My Assigned, All Unassigned, All) My Assigned
Priority Filter Multi-select chips No IN (Routine, Urgent, STAT, Wet Read) All
Modality Filter Multi-select No Valid modality All
Status Filter Multi-select No IN (Images Acquired, Preliminary, Final Pending) Images Acquired
Search Text No Min 2 chars Empty Patient, MRN, accession

Worklist Columns

Field Type Required Validation Default Notes
Priority Badge Yes STAT in red, etc.
Patient Name / MRN Text Yes
Age / Sex Text Yes
Exam Description Text Yes
Modality Badge Yes
Ordering Physician Text Yes
Clinical Indication Text (truncated) Yes Hover for full
Images Available Icon Yes From PACS
Time Since Images Acquired Text Yes >= 0 e.g., "2h 15m"
Assigned To Text No Unassigned
Status Badge Yes e.g., Unread, In Progress, Preliminary, Final

Validation Messages

Condition Message Severity
Attempt to open exam with no images "Images are not yet available in PACS for this exam." Error
Assign exam to another radiologist without permission "You do not have permission to reassign this exam." Error
Network/PACS launch failure "Unable to open images in PACS. Please retry or contact IT." Error

Actions / Buttons

  • Open Images & Report: Opens SCR-RIS-005 and PACS viewer.
  • Assign to Me: Sets assigned_radiologist_id to current user.
  • Release Assignment: Clears assignment (if allowed).
  • Mark as Wet Read Done: For wet read workflows; logs timestamp.

Accessibility

  • Table uses proper headers; sort order indicated via aria-sort.
  • SLA timers not colour-only; include text like “Overdue by 30m”.
  • Keyboard shortcuts (e.g., up/down to move between rows, Enter to open exam).

Responsive / Mobile

  • Worklist rows become cards; key info at top (priority, patient, exam).
  • Side panel becomes separate screen accessible via “Details” button.
  • “Assign to Me” and “Open” large touch buttons.

SCR-RIS-005: Report Dictation / Editor

Purpose

Primary interface for radiologists to review images (via integrated PACS), dictate or type reports, apply templates, use structured reporting, and sign preliminary/final reports.

Layout Description

  • Top: Patient banner + exam info + critical alert indicator.
  • Left (or top on small screens): Embedded PACS viewer frame/launch button.
  • Right: Report editor with:
  • Template selector.
  • Sections: Clinical Indication, Technique, Findings, Impression.
  • Structured findings panel (optional).
  • Bottom: Sign buttons (Save Draft, Sign Preliminary, Sign Final), voice recognition controls.

Field Specifications

Field Type Required Validation Default Notes
Template Selector Dropdown / search No Valid template ID Last used per exam type From radiology_templates
Clinical Indication Read-only text Yes Non-empty From order Editable if allowed
Technique Textarea No Max 2000 chars From template
Findings Rich text / textarea Yes Max 8000 chars Empty or from template
Impression Rich text / textarea Yes Max 4000 chars Empty or from template
Structured Findings JSON Hidden / structured UI No Valid JSON Empty Stored in radiology_reports.structured_findings_json
Is Critical Checkbox No Unchecked If checked → triggers SCR-RIS-006
Critical Finding Text Textarea Conditional Max 2000 chars Empty Required if Is Critical
Dictation Status Read-only No Idle / Recording From voice engine
Report Status Read-only Yes IN (Draft, In Progress, Preliminary, Final, Corrected) Draft

Validation Messages

Condition Message Severity
Sign Preliminary with empty Findings or Impression "Findings and Impression are required before signing." Error
Sign Final when preliminary required by policy and not done "Preliminary sign-off is required before finalizing this report." Error (configurable)
Mark as Critical without Critical Finding Text "Please describe the critical finding before sending notifications." Error
Voice recognition failure "Voice recognition service is unavailable. Please type your report or retry." Warning

Actions / Buttons

  • Apply Template: Loads selected template into Technique/Findings/Impression (with confirmation if text already present).
  • Insert Structured Finding: Opens structured reporting dialog; updates JSON and optionally text.
  • Save Draft: Saves without changing report status.
  • Sign Preliminary:
  • Sets report_status = Preliminary.
  • Populates preliminary_sign_datetime.
  • Triggers outbound ORU^R01 and FHIR DiagnosticReport (preliminary).
  • Sign Final:
  • Sets report_status = Final.
  • Populates final_sign_datetime.
  • Triggers outbound ORU^R01 and HIE submissions (NABIDH/Malaffi).
  • Flag Critical: Opens SCR-RIS-006 overlay with pre-filled critical text.

HTML Wireframe Mockup

Show HTML code
HTML
<div style="font-family: Arial, sans-serif; max-width: 1200px; margin: 0 auto; border: 1px solid #ccc; border-radius: 8px; overflow: hidden;">
  <div style="background:#1a73e8;color:#fff;padding:12px 20px;">
    <h3 style="margin:0;">Report Dictation / Editor</h3>
  </div>
  <div style="padding:10px 20px; border-bottom:1px solid #eee;">
    <!-- Patient Banner -->
    <div style="border:1px solid #ddd;border-radius:4px;padding:8px 10px;background:#f8fafc;">
      <strong>Fatima Al‑Nahyan</strong> • MRN: 0098765 • Emirates ID: 784-1985-7654321-3<br>
      DOB: 05‑08‑1985 (40y) • Female • Allergies: Penicillin<br>
      Exam: MRI Brain w/ and w/o Contrast • Priority: Urgent
    </div>
  </div>
  <div style="display:flex; flex-wrap:wrap;">
    <!-- PACS Viewer -->
    <div style="flex:1; min-width:320px; border-right:1px solid #eee; padding:10px 12px;">
      <h4 style="margin-top:0;">Images</h4>
      <div style="border:1px solid #ddd;border-radius:4px;height:320px;display:flex;align-items:center;justify-content:center;background:#000;color:#fff;font-size:13px;">
        PACS Viewer Placeholder
      </div>
      <button style="margin-top:8px;padding:6px 10px;">Open in Full PACS</button>
    </div>

    <!-- Report Editor -->
    <div style="flex:1.4; min-width:360px; padding:10px 12px;">
      <div style="display:flex; gap:8px; align-items:flex-end; margin-bottom:8px;">
        <div style="flex:1;">
          <label style="display:block;font-size:12px;">Report Template</label>
          <select style="width:100%;padding:4px 6px;">
            <option>-- Select Template --</option>
            <option>MR Brain - Stroke Protocol</option>
            <option>MR Brain - Tumour</option>
          </select>
        </div>
        <button style="padding:6px 10px;">Apply Template</button>
      </div>

      <div style="margin-bottom:8px;">
        <label style="display:block;font-size:12px;">Clinical Indication</label>
        <textarea style="width:100%;padding:4px 6px;height:40px;" readonly>Acute onset left-sided weakness, rule out stroke.</textarea>
      </div>

      <div style="margin-bottom:8px;">
        <label style="display:block;font-size:12px;">Technique</label>
        <textarea style="width:100%;padding:4px 6px;height:60px;"></textarea>
      </div>

      <div style="margin-bottom:8px;">
        <label style="display:block;font-size:12px;">Findings</label>
        <textarea style="width:100%;padding:4px 6px;height:120px;"></textarea>
      </div>

      <div style="margin-bottom:8px;">
        <label style="display:block;font-size:12px;">Impression</label>
        <textarea style="width:100%;padding:4px 6px;height:80px;"></textarea>
      </div>

      <div style="display:flex; justify-content:space-between; align-items:center; margin-bottom:8px;">
        <div>
          <label><input type="checkbox"> Critical finding</label>
        </div>
        <div>
          <button style="padding:4px 8px;font-size:12px;">Structured Findings...</button>
        </div>
      </div>

      <div style="border-top:1px solid #eee;padding-top:8px; display:flex; justify-content:space-between; align-items:center;">
        <div>
          <button style="padding:6px 10px;margin-right:6px;">Save Draft</button>
          <button style="padding:6px 10px;margin-right:6px;">Sign Preliminary</button>
          <button style="padding:6px 14px;background:#1a73e8;color:#fff;border:none;border-radius:4px;">Sign Final</button>
        </div>
        <div style="font-size:12px;color:#555;">
          Dictation: <span>Idle</span>
        </div>
      </div>
    </div>
  </div>
</div>

Accessibility

  • Editor fields labelled and grouped logically; heading structure supports screen readers.
  • Voice recognition controls accessible via keyboard; status updates announced via aria-live.
  • Critical checkbox has description text explaining workflow impact.

Responsive / Mobile

  • PACS viewer collapses below editor on small screens; “Open in Full PACS” opens external viewer.
  • Textareas expand vertically; horizontal scrolling avoided.
  • Sign buttons pinned at bottom on mobile.

SCR-RIS-006: Critical Result Notification

Purpose

Support radiologists in documenting and tracking critical result communication, including notification attempts, acknowledgements, escalation, and read-back confirmation, in line with UAE facility policies and accreditation standards.

Layout Description

  • Header: Patient banner + exam and report summary.
  • Section 1: Critical finding summary (pre-filled from report).
  • Section 2: Target provider selection and contact details.
  • Section 3: Notification attempts timeline.
  • Section 4: Acknowledgement and read-back confirmation.
  • Footer: Save, Mark as Completed.

Field Specifications

Field Type Required Validation Default Notes
Critical Finding Text Textarea Yes Max 2000 chars From report Editable
Notifying Radiologist Read-only text Yes Non-empty Current user
Target Provider Autocomplete Yes Valid provider ID Ordering physician Can change to covering provider
Notification Method Dropdown Yes IN (In-app Alert, Phone Call, SMS, Secure Email, Other) In-app Alert
Notification Sent Date/Time Read-only datetime Yes <= now Now
Acknowledged Date/Time Datetime Conditional >= sent Empty Required when acknowledged
Acknowledged By Autocomplete Conditional Valid provider/user Empty
Escalation Level Dropdown No IN (None, Level 1, Level 2, Department Head) None Auto-updated by rules
Read-back Confirmed Checkbox Conditional Must be checked if policy requires Unchecked
Read-back Notes Textarea No Max 1000 chars Empty

Validation Messages

Condition Message Severity
Missing target provider "A responsible provider must be selected for critical notification." Error
Mark as completed without acknowledgement "Critical result must be acknowledged before closing this notification." Error (configurable)
Read-back required but not confirmed "Read-back confirmation is required for critical results." Error
Notification method SMS/email but no contact details "Selected provider has no valid contact details for this method." Error

Actions / Buttons

  • Send Notification:
  • Creates notification record.
  • Triggers in-app alert and/or SMS/email via notification service.
  • Log Phone Call:
  • Adds entry to attempts timeline with timestamp and outcome.
  • Mark Acknowledged:
  • Captures acknowledgement time and user.
  • Mark Completed:
  • Closes notification; locks record for audit.

Accessibility

  • Timeline of attempts presented as ordered list with clear timestamps.
  • Status changes announced via aria-live.
  • All interactive elements keyboard accessible.

Responsive / Mobile

  • Sections stacked vertically.
  • Timeline collapses to cards with date/time and outcome.
  • Buttons large and spaced for touch.

SCR-RIS-007: Radiation Dose Dashboard

Purpose

Provide Radiation Safety Officer and radiology leadership with patient-level and population-level radiation dose information, DRL compliance, and trends to support ALARA and UAE MOH radiation safety reporting.

Layout Description

  • Header: Filters (date range, modality, body region, facility).
  • Top Row: KPI tiles (DRL compliance %, average dose, number of high-dose exams).
  • Middle: Charts (dose trends, modality comparison).
  • Bottom: Patient-level table with cumulative dose and alerts.

Field Specifications (Key)

Field Type Required Validation Default Notes
Date Range Date range picker Yes Start <= End Last 30 days
Modality Filter Multi-select No Valid modality All
Body Region Filter Multi-select No Valid body region code All
Facility Filter Multi-select No Valid facility Current facility

Patient Table Columns

Field Type Required Notes
Patient Name / MRN Text Yes
Cumulative Dose (mSv) Numeric Yes Lifetime or period
Exams Count Numeric Yes
Highest Single Exam Dose Numeric Yes
DRL Exceeded Exams Numeric Yes
Alerts Icons No e.g., High cumulative dose

Validation Messages

Condition Message Severity
Date range > 1 year "For performance reasons, please limit the date range to 12 months or less." Warning
No data for filters "No dose records found for the selected filters." Info

Actions / Buttons

  • Export CSV / PDF: For regulatory reporting.
  • Drill-down: Click patient row to view dose timeline and exam list.
  • Save View: Save filter configuration as named view.

Accessibility

  • Charts must have text summaries describing key insights.
  • KPI tiles labelled with <h3> and numeric values; not colour-only.
  • Table supports keyboard navigation and screen reader hints.

Responsive / Mobile

  • KPI tiles stack vertically.
  • Charts become swipeable or simplified.
  • Table uses horizontal scrolling or card layout.

SCR-RIS-008: Modality Management

Purpose

Administer imaging equipment inventory, AE Titles, IP addresses, capacity, and maintenance schedules for DICOM integration and scheduling.

Field Specifications (Key)

Field Type Required Validation Default Notes
Equipment Name Text Yes Max 255 chars Empty
Modality Type Dropdown Yes Valid DICOM modality code Empty
Facility Dropdown Yes FK to facilities Current facility
Department Dropdown Yes FK to departments Radiology
AE Title Text Yes Max 16 chars, uppercase, no spaces Empty
IP Address Text Yes IPv4/IPv6 format Empty
Max Daily Slots Numeric No >= 0 0
Maintenance Status Dropdown Yes IN (Active, Planned Maintenance, Out of Service) Active

Validation messages include IP format errors, duplicate AE Title, etc.


SCR-RIS-009: Protocol Management

Purpose

Define and maintain imaging protocols per exam type and modality, including parameters, contrast requirements, and prep instructions.

Field Specifications (Key)

Field Type Required Validation Default Notes
Exam Code (CPT) Autocomplete Yes Valid CPT radiology code Empty
Modality Type Dropdown Yes Valid modality Empty
Protocol Name Text Yes Max 255 chars Empty
Protocol Parameters JSON JSON editor / structured UI Yes Valid JSON Empty Stores kVp, mAs, sequences, etc.
Contrast Required Checkbox Yes From template
Default Prep Instructions Textarea No Max 2000 chars Empty
Estimated Duration (min) Numeric No 1–240 Empty

Validation includes JSON syntax, required fields, and uniqueness per exam+modality.


SCR-RIS-010: Radiology Analytics Dashboard

Purpose

Provide management with KPIs and visualizations for turnaround times, volumes, critical result compliance, dose metrics, and staff productivity.

Field Specifications (Key)

  • Filters: Date range, facility, modality, radiologist, technologist.
  • KPI tiles:
  • Report TAT (Routine, STAT).
  • Critical Result Notification Compliance.
  • Exam Completion Rate, No-Show Rate.
  • Radiologist Productivity (RVU).
  • Charts: Volume trends, TAT distribution, technologist utilization.

Validation: date range, required filters for staff-level metrics.

Accessibility: text summaries for each chart; keyboard focusable chart containers.

Responsive: tiles stack; charts resize; some complex charts replaced with tables on small screens.


Common UI Patterns

Patient Banner

  • Displayed on all clinical screens (SCR-RIS-001/002/003/004/005/006/007).
  • Fields:
  • Patient name (Arabic and English if available).
  • MRN.
  • Emirates ID.
  • DOB, age, sex.
  • Allergies (with severity).
  • Pregnancy status (if applicable).
  • Location / encounter.
  • Behaviour:
  • Click opens mini patient summary (problems, meds, recent labs).
  • Colour-coded allergy and alert icons with text labels.

Search Components

  • Global Search: Patient search (name, MRN, Emirates ID) with minimum 2–3 characters and debounce.
  • Worklist Search: Contextual search within lists (exams, reports).
  • Autocomplete lists with keyboard navigation and aria-activedescendant.

Alert / Notification Patterns

  • Inline Alerts: For validation and informational messages; use icon + text; severity levels (info, warning, error).
  • Toasts: Non-blocking success messages (e.g., “Report signed successfully”).
  • Modal Alerts: For critical confirmations (e.g., final sign, cancel exam).
  • Critical result alerts in EHR use high-visibility banners and require explicit acknowledgement.

Loading States

  • Skeleton loaders for tables and charts.
  • Spinners with descriptive text: “Loading worklist…”.
  • Timeouts with retry options and error messages.

Arabic / English Bilingual UI

  • All labels and static text must support both English and Arabic (RTL).
  • Layout must flip for Arabic:
  • Alignment (left/right) reversed.
  • Icons and arrows mirrored where appropriate.
  • Patient names may appear as: “أحمد المكتوم / Ahmed Al‑Maktoum”.
  • Date/time formats configurable (e.g., DD‑MM‑YYYY) but consistent across module.
  • Screen readers must handle both languages; use lang="ar"/lang="en" appropriately.

Accessibility (WCAG 2.1 AA) – General

  • Colour contrast ratio ≥ 4.5:1 for text.
  • Keyboard-only navigation supported; visible focus indicators.
  • Forms:
  • Each input has <label>; required fields indicated textually.
  • Error messages linked via aria-describedby.
  • Dynamic content updates announced via aria-live where relevant (worklists, alerts).
  • Avoid conveying information by colour alone; use icons and text.

Responsive / Mobile – General

  • Breakpoints:
  • Desktop ≥ 1024px: full multi-column layouts.
  • Tablet 768–1023px: two-column where possible.
  • Mobile < 768px: single-column, stacked sections.
  • Tables:
  • Convert to card layouts or enable horizontal scrolling.
  • Buttons:
  • Minimum 44x44 px touch targets.
  • PACS integration:
  • On mobile, open in external viewer or simplified image viewer if available.

content/clinical/ris/04-screen-requirements.md Generated 2026-02-20 22:54