Skip to main content

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

  1. Ingestione: Il Decoder riceve i byte grezzi dal device. Non giudica, traduce solo.
  2. 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:validated per i consumatori downstream.
  3. Business Logic:
    • Events service analizza il dato pulito: "Stiamo andando troppo veloci? Siamo entrati in una geofence?"
    • Se SÌ → genera l'evento e pubblica su stream events.
  4. Reazione:
    • Notification service è l'ultimo anello. Non analizza la velocità. Riceve solo l'ordine: "Manda email per eccesso velocità!".
    • WebSocket riceve le posizioni validate e le inoltra al frontend in tempo reale.