Durante lo sviluppo di un'applicazione (app mobile per Android), il nostro team cerca sempre di utilizzare le migliori pratiche di sviluppo come interfacce, stratificazione e separazione delle preoccupazioni.
Quando si tratta di segnalare eventi di analisi dalla nostra app, i requisiti a volte ci costringono a inviare eventi con dati archiviati e gestiti da più "componenti" di app differenti.
Alcuni di questi dati non sono direttamente disponibili a livello di componente / livello per i rapporti, né in qualsiasi posizione centrale nell'applicazione.
Per me, questo sembra contraddire tutti gli sforzi dell'architettura e del design che sono stati fatti durante lo sviluppo dell'applicazione.
La mia domanda è :
Qual è il modo corretto di affrontare questo problema?
Il problema è nei requisiti che abbiamo ricevuto o è un problema comune a cui un'applicazione a strati / modulare a volte ha bisogno di rendere le cose "globali"? In tal caso, qual è il modo per risolvere questo problema, continuando a sfruttare i vantaggi delle best practice di sviluppo?