Bed and Capacity Management for an NHS Acute Trust
Designed and built a clickable bed and capacity management system for a two-site NHS acute trust: a command centre with the day's bed balance, a live bed board for every ward and bay, a bed request queue that suggests safe beds with reasons, and a cleaning board that turns dirty beds around for the patients waiting on them.
Most of our work is under NDA. Per agreement, we can share the work but not the company details - all names and identifying information shown here have been changed.
Command centre, site bed board with its bed panel, bed request queue, bed request detail and the cleaning board. The site switcher filters every screen by hospital or for the whole trust.
Specialty, bay sex designation, side room for isolation, bed type and ward staffing. Beds that would cause a mixed-sex breach, put an infectious patient in an open bay or make an outlier rank last and need a reason to allocate.
Occupied, clean, dirty, cleaning, awaiting inspection, allocated, blocked and closed, each with its own colour, timer or reason, plus markers for discharge today, no criteria to reside and isolation.
14 wards and 64 bays across two hospitals, 25 bed requests from A&E, the assessment units, theatres and other hospitals, and 20 clean jobs across every stage.
Calderwick and Pellbrook ran patient flow from a spreadsheet the site team rebuilt four times a day by phoning every ward, so the numbers were already an hour old by the 08:30 bed meeting. Beds about to free up lived on ward whiteboards, domestic teams heard about dirty beds by bleep, delays to discharge sat on a separate list, the escalation level was agreed on a call and emailed, and the daily sitrep took an analyst most of the morning.
Berth reads admissions, transfers and discharges from the trust's EPR and adds the operational layer the EPR does not hold: bed cleanliness, blocks and closures, expected discharge dates, criteria to reside, bed requests and escalation. Site teams see one live position, bed managers allocate from ranked and explained suggestions, and cleaning work is ordered by the patients waiting for each bed.
An NHS acute trust has to place each patient in the right bed quickly, safely and in line with national rules, while A&E waits, ambulance handovers and discharge delays all count towards the escalation level it reports to NHS England.
Two hospitals, about 640 and 280 beds, and a picture built by phone. A clean bed could sit empty for two hours while A&E held twelve patients on trolleys, because nobody outside the ward knew it was ready.
Trusts must avoid mixing men and women in the same sleeping accommodation except where clinically justified, infectious patients need side rooms, IPC closes bays during outbreaks, and an outlier on the wrong specialty ward needs a site manager's approval.
Every inpatient is reviewed daily against the national criteria to reside, and patients who no longer meet them are reported with a delay reason and a discharge pathway from 0 to 3. Tracked on a separate list, those reasons were never joined to the bed position.
OPEL levels from 1 to 4 are scored on parameters such as handover delays, 12-hour waits and occupancy, A&E waits are measured against the 4-hour standard and from the decision to admit, and the daily sitrep for NHS England was compiled by hand.
Mapped 14 staff roles from bed manager and nurse in charge to porter, IPC nurse and on-call director, 33 screens across desktop, a command centre wall display and mobile, and the data model for wards, bays, beds, stays, bed requests, clean jobs, closures, OPEL parameters and sitrep returns. Wrote down the rules the design follows: OPEL, the 4-hour and 12-hour A&E measures, criteria to reside and discharge pathways, same-sex accommodation, IPC closures, DCB0129 and DCB0160 clinical safety, the DSPT and UK GDPR.
Built 5 key screens on a production dashboard kit: the command centre with KPI cards, the A&E strip and the bed balance by specialty group, the site bed board with floor and table views and a bed panel, the bed request queue with wait colouring, the request detail with ranked suggested beds and allocation history, and the cleaning board with timers against target. Allocate, mark clean, block and escalate run on local state.
HL7 v2 ADT messages from the trust's EPR (such as Oracle Health, Epic or System C CareFlow) through the integration engine, the ED system feed, NHS CIS2 sign-in, SDCS sitrep upload files, the facilities helpdesk, read-only staffing from rostering, and NHSmail, Teams and GOV.UK Notify messages. Plus the remaining screens: ward view, A&E demand, board round, discharges, isolation, OPEL status, forecast, sitreps, reports, a tamper-evident audit log, the wall display and mobile task lists, with the trust's hazard log and DPIA before go-live.
The command centre reads out the bed balance per specialty group: beds available now, plus confirmed discharges, plus possible discharges at the trust's conversion rate, minus patients waiting and predicted admissions, equals the gap. Each KPI card shows its change since the last bed meeting.
Each suggested bed shows when it will be ready, such as clean now, cleaning ends in about 5 minutes or discharge expected by 14:00, and why it ranks where it does. A mixed-sex breach, an open bay for an infectious patient or an outlier ward sends a bed to the bottom with a warning and an Allocate with reason button.
The top bar shows the OPEL level with when it was declared and how long since the last ADT message. Following the clinical safety hazard log, the design turns that indicator amber after 5 minutes and red after 15, so a stale bed is never shown as available without a warning.
Clean jobs move from requested to assigned, in progress, awaiting inspection and done, each timed against its target: 45 minutes for a standard clean, 90 for enhanced and 120 for terminal. Beds held for a waiting patient are marked urgent with the request id, and IPC instructions sit on the card.

Built a multi-department clinic operations console with appointment management, department load tracking, staff performance, resource utilisation and an AI assistant for staff queries - shipped from clickable AI prototype to production in 14 weeks.

Designed and built a clickable booking and intake platform for a group of GP, physiotherapy and psychology clinics in regional Victoria and southern NSW: a day calendar by practitioner or room, pre-visit forms reviewed before the visit, and a clinician-only queue that puts every risk answer in front of a clinician against a response target.
Enterprise Software Engineering - Human + AI
Contact Us
© 2026 - Copyright. All Rights reserved Oceanlab
Location
Global Headquarters
21 Merchant Road, 3rd Floor, Singapore 058267
Main corporate office and leadership operations
North America Office
548 Market Street, PMB 12345, San Francisco, CA 94104
Client operations and business development
India Office
402 Shivalik Shilp II, SG Highway, Ahmedabad 380015
Engineering and delivery center
Enterprise Software Engineering - Human + AI
Contact Us
Locations
Global Headquarters
21 Merchant Road, 3rd Floor, Singapore 058267
Main corporate office and leadership operations
North America Office
548 Market Street, PMB 12345, San Francisco, CA 94104
Client operations and business development
India Office
402 Shivalik Shilp II, SG Highway, Ahmedabad 380015
Engineering and delivery center
© 2026 - Copyright. All Rights reserved Oceanlab