Attualmente la mia azienda ha una singola applicazione interna utilizzata dai nostri agenti di supporto. Supporta solo un prodotto in questo momento. Lo stack tecnologico è angolare sul front end e offre servizi micro di primavera per il middleware.
Stiamo lanciando un nuovo prodotto e l'applicazione interna dovrà supportare anche questo. Tuttavia, per il nuovo prodotto ci saranno diversi ruoli utente che concedono l'autorizzazione per la funzionalità e molte modifiche, ad esempio quali dati vengono visualizzati nelle tabelle (nuove colonne e pulsanti per agire sui dati). Esiste il potenziale che queste applicazioni 2 ui divergano notevolmente nella somiglianza. Inoltre, è quasi certo che avremo più prodotti che avranno bisogno di un interfaccia utente simile per il supporto.
La decisione di fronte è:
- Crea un repository separato per ogni applicazione dell'interfaccia utente che evolverà indipendentemente.
- Compilare l'applicazione corrente e aggiungere la logica per mostrare e nascondere la funzionalità.
La mia preoccupazione per il # 1 è la duplicazione del codice e manualmente la necessità di effettuare aggiornamenti in 2 (o più) repository per funzionalità comuni. La mia preoccupazione per il n. 2 è che questa logica diventerà molto complessa e renderà difficile lo sviluppo e il testing.
Quale pensi che sia l'opzione migliore?