Tipicamente, una metodologia di sviluppo è progettata per gestire un progetto software durante il suo ciclo di vita, dalla nascita alla fine del ciclo di vita. Quello a cui sei stato assegnato sembra più un compito piuttosto che un progetto di sviluppo software. È un compito importante che deve essere suddiviso, ma non è niente che necessiti di una metodologia di sviluppo formale. Invece, dovresti lavorare all'interno del processo definito per l'utilizzo nel progetto a cui è correlata questa attività.
Vorrei iniziare con una serie di passaggi molto semplice e metodica:
- Scopri il sistema. Richiedi le specifiche dei requisiti, i documenti di progettazione e qualsiasi altro documento pertinente associato a questo codice. Esaminali insieme al codice. Se qualcosa non è aggiornato, vorrei informarsi sull'aggiornamento della documentazione, poiché sarebbe utile ai futuri sviluppatori.
- Leggi il codice e i test associati. Una volta letti i documenti, leggi il codice. Annota le discrepanze tra i documenti e il codice. Se qualcosa non è corretto, i difetti dei file sono appropriati. Tratteniti qui - non saltare dentro e iniziare a sistemare le cose senza seguire il processo a livello di progetto. Se non ci sono test o casi di test mancanti, è un buon momento per crearli, specialmente se il tuo lavoro comporterà il refactoring.
- Esegui i casi di test. Se qualche test fallisce, riporta i rapporti sui difetti come appropriato.
- Strumento e profilo del codice. Non ho familiarità con gli strumenti di sviluppo di JavaScript, ma cerco di profilare il codice in esecuzione e scoprire dove sono le perdite di memoria e se determinate condizioni li innescano. Potrebbe anche essere utile creare un profilo di prestazione generale del codice di base per determinare dove si trova il codice meno efficiente. Anche se non hai il compito di risolverlo, hai gli strumenti necessari per trovarlo, quindi documentali per risparmiare tempo per i futuri sviluppatori.
- Priorità ai difetti. Ciò include le perdite di memoria. Si spera che tu abbia più informazioni su di loro da "c'è una perdita di memoria" a questo punto, quindi ci dovrebbe essere una serie di difetti relativi a questi problemi. Se ci sono difetti nei moduli con perdite di memoria, risolverli prima. Vuoi migliorare le prestazioni del codice che altrimenti supera i test.
- Inizia a correggere i difetti, iniziando da quelli con la priorità più alta. Assicurati di eseguire i test (automatici e manuali) per assicurarti che il sistema non sia diventato instabile.
- Fai domande. Non dare mai nulla per scontato. Se hai accesso agli sviluppatori precedenti, approfittane quando hanno tempo. In caso contrario, consultare la documentazione e Stack Overflow secondo necessità. Assicurati di avere una buona comprensione di come si comporta il sistema, perché si comporta in questo modo e di trasmettere tali informazioni agli sviluppatori futuri attraverso varie forme di documentazione.
Durante questa attività, assicurati di utilizzare il controllo della versione per tenere traccia delle modifiche. Un buon controllo delle versioni e dei registri di commit ti aiuterà a tenere traccia di quali modifiche hai apportato e quando li hai creati. Il monitoraggio del tempo e delle attività completate ti aiuterà a migliorare le stime e a mantenere i manager oi supervisori in-the-loop sullo stato corrente del progetto.