Mi è stato chiesto di valutare ciò che sembra essere una base di codice legacy sostanziale, come precursore di un contratto che mantiene quel codebase.
Questa non è la prima volta che mi trovo in questa situazione. Nella presente istanza, il codice è per un sito di gioco multiplayer di alto profilo e abbastanza alto carico, che supporta almeno diverse migliaia di giocatori online contemporaneamente. Come molti di questi siti, questo è un mix di tecnologie front e back-end.
La struttura del sito vista da dentro e fuori, è un casino. Ci sono cartelle con suffisso "_OLD" e "_DELETE" distese dappertutto. Molte cartelle sembrano non servire a niente o hanno nomi molto criptici. Potrebbero esserci molti vecchi script inutilizzati che giacciono anche in cartelle dall'aspetto legittimo. Non solo, ma ci sono indubbiamente molte sezioni di codice defunte anche in script altrimenti operativi (una preoccupazione molto meno urgente).
Questo è un passaggio dai manutentori incumbent, agli sviluppatori / manutentori originali del sito. Come è comprensibilmente tipico in questo tipo di scenari, l'incumbent non vuole avere nulla a che fare con il passaggio di consegne diverso da quello che è richiesto contrattualmente e legalmente per spingerlo al manutentore appena eletto. Quindi estrarre le informazioni sulla struttura del sito esistente dall'incumbent è semplicemente fuori questione.
L'unico approccio che ti viene in mente di entrare nella base di codice è di iniziare dalla radice del sito e lentamente ma sicuramente navigare attraverso gli script collegati ... e ci sono probabilmente centinaia in uso, e altre centinaia che non lo sono. Dato che una parte sostanziale del sito è in Flash, questo è ancora meno semplice poiché, in particolare nelle vecchie applicazioni Flash, i collegamenti ad altri script possono essere incorporati nei file binari (.FLA) piuttosto che nei file di testo (.AS / ActionScript).
Quindi mi chiedo se qualcuno abbia suggerimenti migliori su come affrontare la valutazione della base di codici nel suo complesso per la manutenibilità. Sarebbe meraviglioso se ci fosse un modo per guardare un grafico della frequenza di accesso ai file sul sistema operativo del server web (a cui ho accesso), in quanto ciò potrebbe offrire alcune informazioni su quali file sono più critici, anche se non sarebbe essere in grado di eliminare quei file che non vengono mai utilizzati (poiché alcuni file potrebbero essere utilizzati solo una volta all'anno).