System TopologyΒΆ
This topology is the map to use before opening a service repo, protocol document, or feature spec. It shows how physical assets, external standards, core ontology concepts, product domains, and user-facing surfaces fit together.
Read it from the outside inward:
- External systems and physical assets create evidence or intent.
- Standards describe the exchange boundary.
- BetterFleet projects that input onto the core ontology.
- Product domains own decisions over those concepts.
- Services, screens, reports, and support workflows expose the result.
Navigational TopologyΒΆ
flowchart TB
subgraph Sources["External intent, evidence, and constraints"]
WorkSources["Work sources<br/>schedules, dispatch, ITCS, DMS, FMS"]
PhysicalAssets["Physical assets<br/>vehicles, chargers, EVSEs, connectors, depots, meters"]
GridActors["Grid and energy actors<br/>DSO, DERMS, tariff, market, aggregator"]
CommercialActors["Commercial actors<br/>CPO, eMSP, roaming hub, payment provider"]
Users["Users<br/>operator, fleet manager, energy manager, support, driver"]
end
subgraph Standards["Standards and integration boundaries"]
TransportStandards["VDV, GTFS, TransXChange, SIRI<br/>work and operations context"]
ChargingStandards["OCPP, ISO 15118, IEC 61851, IEC 62196<br/>charging and charger state"]
EnergyStandards["OSCP, OpenADR, IEC 61850, IEEE 2030.5<br/>capacity and flexibility"]
RoamingStandards["OCPI, OICP, OCMF<br/>access, tariffs, CDRs, meter proof"]
end
subgraph Ontology["Core ontology"]
Work["work"]
Fleet["fleet"]
Vehicle["vehicle"]
Requirement["energy requirement"]
EnergySystem["energy system"]
Charging["charging"]
Activity["vehicle activity<br/>projection"]
Commercial["commercial record<br/>projection"]
end
subgraph Domains["Problem domains"]
Ops["Operations & Dispatch"]
Smart["Smart Charging"]
Energy["Energy & Cost Management"]
Roaming["Roaming & Shared Charging"]
Incidents["Incidents & Notifications"]
Reports["Reporting & Insights"]
Trust["Resilience & Security"]
UX["Accessibility & Usability"]
end
subgraph Surfaces["BetterFleet surfaces and implementation"]
Plan["Plan<br/>simulation, schedule analysis, scenarios"]
Manage["Manage<br/>live depot, control, visibility"]
Connect["Connect<br/>charger integration boundary"]
RoamingApp["Roaming services<br/>access and settlement"]
Reporting["Reports and dashboards"]
Support["Help docs and support workflows"]
end
WorkSources --> TransportStandards
PhysicalAssets --> ChargingStandards
PhysicalAssets --> EnergyStandards
GridActors --> EnergyStandards
CommercialActors --> RoamingStandards
Users --> Surfaces
TransportStandards --> Work
TransportStandards --> Activity
ChargingStandards --> Charging
ChargingStandards --> Activity
EnergyStandards --> EnergySystem
RoamingStandards --> Commercial
Work --> Requirement
Fleet --> Vehicle
Vehicle --> Activity
Requirement --> Charging
EnergySystem --> Charging
Charging --> Vehicle
Charging --> Commercial
Charging --> Activity
Work --> Ops
Fleet --> Ops
Vehicle --> Ops
Requirement --> Ops
Requirement --> Smart
EnergySystem --> Energy
EnergySystem --> Smart
Charging --> Smart
Charging --> Roaming
Commercial --> Roaming
Activity --> Incidents
EnergySystem --> Incidents
Charging --> Reports
Commercial --> Reports
Activity --> Reports
Charging --> Trust
EnergySystem --> Trust
Users --> UX
Ops --> Plan
Ops --> Manage
Smart --> Manage
Smart --> Connect
Energy --> Manage
Energy --> Plan
Roaming --> RoamingApp
Incidents --> Manage
Reports --> Reporting
Trust --> Manage
UX --> Support
How To Navigate From A QuestionΒΆ
| If the question starts with... | Start with this domain | Then inspect | Common standards |
|---|---|---|---|
| What work must this vehicle do? | Operations & Dispatch | work, fleet, vehicle, vehicle activity |
VDV 452, VDV 462/NeTEx, GTFS, TransXChange |
| Will the vehicle be ready? | Operations & Dispatch | energy requirement, vehicle activity, charging |
VDV 463, VDV 454, SIRI, OCPP |
| What should charge now? | Smart Charging | energy requirement, energy system, charging |
OCPP, ISO 15118, OSCP-derived envelopes |
| What can the site safely supply? | Energy & Cost Management | energy system, topology, limits, envelope, telemetry |
OSCP, OpenADR, IEC 61850, IEC 63110 |
| Who may charge here? | Roaming & Shared Charging | token, contract, location, EVSE, connector | OCPI, OICP, ISO 15118 |
| What should be billed or settled? | Roaming & Shared Charging | tariff, CDR, invoice, payment, signed meter value | OCPI, OICP, OCMF |
| What is broken or at risk? | Incidents & Notifications | status, fault, stale telemetry, missed readiness | OCPP, telemetry feeds, VDV real-time feeds |
| What happened and can we prove it? | Reporting & Insights | projections, lineage, meter evidence, session history | OCPP, OCMF, OCPI CDRs, schedules, telemetry |
| Who or what can act? | Resilience & Security | identity, certificate, role, audit, safe fallback | auth, OCPP security, ISO 15118 PKI, OpenADR/OSCP trust |
| How does a user understand this? | Accessibility & Usability | task, screen, help path, support evidence | help docs, UI state, permissions, audit evidence |
Mental ModelΒΆ
Use this compact model in project discussions:
flowchart LR
Intent["Operational intent<br/>work, target, deadline"]
Constraint["Supply constraint<br/>site, grid, tariff, fault"]
Decision["Product decision<br/>domain owner chooses action"]
Action["Control or workflow<br/>command, plan, alert, report"]
Evidence["Evidence trail<br/>event, meter, projection, CDR"]
Learning["Operational learning<br/>readiness, cost, carbon, reliability"]
Intent --> Decision
Constraint --> Decision
Decision --> Action
Action --> Evidence
Evidence --> Learning
Learning --> Intent
The useful habit is to ask: what is the intent, what constraint changes it, who owns the decision, and what evidence proves the outcome?