Gerarchia dei Dati: La Piramide di Elaborazione
Questo diagramma mostra i livelli di dipendenza del sistema. I dati grezzi entrano dall'alto e scendono "raffinandosi" fino a diventare azioni concrete (Notifiche) in basso.
Più si scende, più il dato è elaborato e specifico.
La Catena di Comando
- Ingestione: Il
Decoderriceve i byte grezzi dal device. Non giudica, traduce solo. - Elaborazione (Positions Service):
- Filtra: Scarta posizioni invalide (GPS 0,0, velocità impossibile, HDOP troppo alto).
- Arricchisce: Aggiunge distanza, stato moto/sosta, totalDistance.
- Persiste: Salva nel database PostgreSQL.
- Pubblica: Manda su
positions:validatedper i consumatori downstream.
- Business Logic:
Eventsservice analizza il dato pulito: "Stiamo andando troppo veloci? Siamo entrati in una geofence?"- Se SÌ → genera l'evento e pubblica su stream
events.
- Reazione:
Notificationservice è l'ultimo anello. Non analizza la velocità. Riceve solo l'ordine: "Manda email per eccesso velocità!".WebSocketriceve le posizioni validate e le inoltra al frontend in tempo reale.