A public transport authority in the Middle East runs a mixed fleet of buses and trucks across several depots and terminals. Like most operators of that size, it was not short of data. Telematics were streaming. Work orders were being raised. Registration, insurance and inspection documents were on file. Parts were stocked and consumed.
What did not exist was anything that answered the only question that matters at seven in the morning: what needs doing today, and in what order.
The problem with having the data already
Every one of the failures on this estate was visible in a system somebody owned. That is precisely why they kept happening.
A vehicle developing a fault produces fault codes, a rising engine temperature and a change in braking behaviour — across telematics, maintenance history and driver logs, none of which are read together. A document expiring is known to the compliance system and unknown to the depot supervisor rostering that vehicle. A part running out is known to stores and discovered by the workshop.
So the operator was in the ordinary position of having the answer distributed across five systems and nobody holding all five. The work was not to collect more data. It was to put a layer over what existed that could reason across it and produce a ranked list.
What the system does
The interface opens on an executive briefing rather than a dashboard. It states, in a sentence, what needs triage now and what is running normally — then supports that with the numbers behind it.
Operational picture. Fleet availability against target, on-time performance, trips, ridership, distance run, and drivers on duty against establishment. Each figure carries its own interpretation rather than sitting there as a number: availability below target is expressed as vehicles off-road eating into service capacity, because that is the form in which somebody can act on it.
Failure risk, scored per vehicle. This is the part that earns the system. Each vehicle carries a risk score derived from signals that are individually unremarkable and collectively predictive: harsh-braking events over the last seven days, fault codes raised in the same period, distance since the last service, engine temperature expressed as deviation from that vehicle's own normal, and months in service.
A vehicle scoring in the nineties is not broken. It is a vehicle where intervening at the next planned stop turns a roadside breakdown into a routine workshop visit — which is the entire economic argument for predictive maintenance, and it only works if the flag arrives before the failure.
The things that ground vehicles for non-mechanical reasons. Expired registration, insurance or inspection documents make a vehicle illegal to operate regardless of its condition, and lapsed driver licences do the same to the roster. The system surfaces these as a compliance queue with counts of what has already expired, what expires within a week, and what expires within a month — because the useful alert is the one that arrives while renewal is still routine.
The parts loop. Vehicles held in the workshop waiting on out-of-stock parts are counted separately from vehicles being worked on, since they represent a different failure and a different fix. Critical and low stock lines are surfaced with the cost to replenish, which turns an inventory decision into a service-availability decision.
Safety and claims. Open incidents, investigations and claims yet to be filed, with cost to date — kept alongside operations rather than in a separate system nobody opens.
The design decisions worth recording
Every figure is expressed as a consequence. Not "availability 87.5%" but what that means for service today. A number a depot manager has to translate is a number that gets ignored, and the translation is the part a system can do reliably.
Risk is explained, not scored. Each flagged vehicle shows the signals behind its score — the braking events, the fault codes, the temperature deviation, the distance since service. A maintenance supervisor who cannot see why a vehicle was flagged will not take it off the road on the system's word, and should not.
The system schedules nothing on its own. It ranks, explains and proposes. Taking a vehicle out of service is an operational decision with consequences for the timetable, and it stays with the people accountable for the timetable.
What it is worth
The system attributes roughly a tenth of operating cost to decisions it changed — interventions moved earlier, breakdowns converted into planned visits, documents renewed before they grounded a vehicle, parts ordered before a bus was waiting on them.
That figure is the one the operator tracks, and it is worth being precise about what it represents: not a saving the AI produced by itself, but the difference between acting on signals that were already present and continuing not to.
Have a system that needs to do this?
500+ systems shipped since 2011, and we still maintain most of them. Tell us what you are trying to move.




