Abbiamo alcune app diverse X, Y, X di terze parti diverse e vogliamo trasferire i dati in un'app centralizzata C, quindi quando gli utenti immettono i dati in C possono precompilare moduli con dati correlati. Se inseriscono un ID cliente dall'app X in C, riceveranno informazioni sull'indirizzo cliente, indirizzo, ecc. Da X, compilando moduli in C.
Un'idea, avere uno script di cron job per ogni app X, Y, Z ..., che interroga i loro database e produce un file / urson standard json: X-related-info.json, Y-related-info. json ecc. ogni giorno. L'app C può ritirare su richiesta. Questa informazione cambia raramente ed è un numero limitato di record. Puoi eseguire il cron ogni minuto senza problemi.
Costo per scrivere script bash personalizzati / cron + test + documenti = 60 minuti (per ogni X, Y, Z ... app).
[ X ] --> bash script --> [ C ]
Un'altra idea è quella di creare un'app gateway GW, che farebbe una query in tempo reale a X, Y, Z e presenterebbe similmente un url json all'app C. Avrebbe una GUI per aggiungere app di terze parti che si desidera ottenere dati da Tuttavia, è necessario scrivere codice personalizzato per ogni X, Y, Z poiché sono app di terze parti diverse con design di database diversi.
Quindi il costo per fare GW app + test + documentazione = 1 settimana, + costo per scrivere codice personalizzato + test = 60 minuti (per ogni X, Y, Z ... app)
[ X ] --> custom code --> GW app --> [ C ]
La mia conclusione è che dal momento che devi comunque creare codice personalizzato per ogni X, Y, Z, per l'app GW, basta usare lo script cron e bash - non c'è bisogno dell'app GW. Ho sentito che è abbastanza chiaro. Sono riluttante a realizzare un'altra app perché abbiamo un sovraccarico di risorse, test e documentazione a basso costo e ci occupiamo di futuri bug / problemi di manutenzione di un'altra app e siamo in ritardo su altri aspetti. Ma un responsabile senior dice no, dovremmo creare l'app GW perché è più flessibile e a prova di futuro. Andato oltre la sua spiegazione di nuovo, abbiamo ancora bisogno di codice personalizzato per X, Y, Z ... app. Non penso che la flessibilità / l'impermeabilità al futuro battano i costi effettivi del tempo.