how to manage such a complicated setup?
Hai bisogno di due cose che sono estremamente importanti:
1. Buoni sviluppatori
Stiamo parlando di reverse engineering qui.
Ci sono molti programmatori che possono seguire un tutorial o un codice copia-incolla che capiscono a malapena, o seguire il programma di formazione dell'azienda e distribuire il codice di lavoro, ma per questo tipo di situazione è necessario che le persone facciano il contrario. Invece di costruire qualcosa, devi tare qualcosa a parte e vedere come funziona in modo da poterlo poi costruire su di esso, mantenerlo, evolverlo ecc.
Le competenze sono necessarie per questo, quindi hai bisogno di sviluppatori esperti . Juniors non lo farà! Anche se sono bravi sviluppatori e persone che lavorano sodo, "non hanno ancora visto gli orrori della guerra" ... se capisci cosa intendo.
2. Supporto dalla direzione
Questo è ancora più importante del numero uno. Se disponi di molti framework, è un progetto enorme, non è documentato, forse il dominio aziendale è nuovo per te ecc., Quindi per essere aggiornato e poter migliorare il sistema hai bisogno di tempo . Non puoi semplicemente rimboccarti le maniche e iniziare a codificare le nuove funzionalità. Devi imparare, analizzare, analizzare un po 'il cambiamento, testare un po' ecc.
La direzione lo comprende? Sono perfettamente consapevoli dei rischi che tale incertezza genera? Ti stanno supportando (devono essere loro a comprarti questa volta, i progetti non hanno il lusso di andare avanti per sempre) o stanno facendo pressioni perché "tutto ciò che serve a lungo"?
Non è mai facile gestire una situazione come questa, ma le persone sono le persone su cui puntare, non strumenti o diagrammi UML.
Buona fortuna!