Ho la responsabilità di un grande sito web basato su Asp.Net. Attualmente è un sito Web (non un'applicazione web), alcuni servizi Windows e un certo numero di librerie di classi.
Il livello dati utilizza una combinazione di LLBLGEN e Linq To LLBGen, nonché un numero di esempi di legacy in linea SQL che non è stato refactored.
Ci sono alcune implementazioni di tipo manager, ma in molti casi l'applicazione mostra l'anti-pattern Smart UI (cioè troppa logica di business nel codice dietro le classi)
Il sito ha un traffico ragionevolmente alto e le prestazioni vanno bene, ma stiamo aumentando le nostre capacità di sviluppo per un team di circa 10 persone, ed è sempre più chiaro che abbiamo bisogno di un design stratificato sovrapposto al middleware esistente.
La mia domanda è da dove cominciare? Abbiamo 10 anni di codice (alcuni di essi hanno ancora migrato le cose ASP Classic), molti approcci e stili diversi.
Il refactoring dell'intero code base non è realistico e, probabilmente, non auspicabile
So che questa non è una situazione nuova, ci sono idee o concetti utili su come affrontare questo problema?