Fondamenti di Project Management
Il project management ci aiuta a gestire in modo strutturato ed organizzato tutte le attività che riguardano la realizzazione di un progetto. Un progetto è
Recentemente in azienda ho avuto l’occasione di partecipare ad una sessione di Pair Programming al fianco dello sviluppatore senior che lavora con me durante l’implementazione di una funzionalità strategica relativa ad uno dei progetti che sto seguendo in prima persona. Ma di preciso che cos’è il Pair Programming? Oggi vediamo nel dettaglio la tecnica della programmazione in coppia con i relativi vantaggi e svantaggi.
Il Pair Programming è una tecnica di lavoro facente parte della metodologia AGILE nella quale due sviluppatori software lavorano insieme in una sola postazione sullo stesso codice contemporaneamente. Lo stesso discorso vale anche per il Pair Programming da remoto, dove due programmatori lavorano insieme sullo stesso codice dalla propria abitazione attraverso la condivisione dello schermo o strumenti che consentono di lavorare in maniera collaborativa sul codice sorgente come Live Share, un’estensione di Visual Studio.
Le due persone che lavorano assumono ruoli distinti: il conducente o pilota, dall’inglese driver, che si occupa di scrivere il codice e ha come obiettivo quello di sviluppare una soluzione funzionante; l’osservatore o il navigatore, dall’inglese navigator, che si occupa di supervisionare e revisionare in tempo reale il codice scritto dal collega segnalando errori e proponendo soluzioni più efficienti. Come facilmente intuibile, questi termini sono stati adottati dal Rally. Solitamente i due sviluppatori si alternano nei ruoli ed hanno un livello di anzianità diverso: uno junior e un senior.
Questa tecnica viene anche utilizzata in ambito formativo, io stesso alle scuole superiori ho lavorato per diversi mesi al fianco di un compagno di lavoro. In questo modo lo sviluppatore con meno esperienza ha la possibilità di seguire il processo di scrittura di codice qualitativamente migliore rispetto al suo e il senior, spesso facente funzione di tutor o mentore, ha la possibilità di vedere il modo di ragionare del collega ed, eventualmente, dirigerlo verso una soluzione migliore.
Come facilmente intuibile, questa metodologia di lavoro porta con sé dei vantaggi e degli svantaggi. L’attività richiede l’impiego di due programmatori e, inevitabilmente, aumenta i tempi di sviluppo. L’uso di due sviluppatori di diversa seniority sullo stesso codice, tuttavia, aumenta la qualità del codice, la manutenibilità e riduce il proliferare di bug e malfunzionamenti, questo può essere utile durante lo sviluppo di funzionalità strategiche. Una sessione di Pair Programming è comunque d’alto valore formativo per gli sviluppatori junior. Lavorare a stretto contatto con i colleghi più esperti può essere molto utile per la condivisione della conoscenza, evitando di avere programmatori che detengano il monopolio del codice, per il rapido inserimento di nuove risorse all’interno del team e per mantenere coesi team già esistenti. Inoltre bisogna stare attenti all’effetto traino dove il navigatore risulta poco collaborativo e alla scelta delle coppie perché ci sono alcuni programmatori che sono poco inclini al lavoro di squadra e più produttivi nel lavoro “in solitario” con la musica nelle orecchie.
Avevi già sentito parlare del Pair Programming prima di oggi oppure hai avuto l’occasione di lavorare con questa metodologia di lavoro? Raccontami la tua esperienza!
Il project management ci aiuta a gestire in modo strutturato ed organizzato tutte le attività che riguardano la realizzazione di un progetto. Un progetto è
La tecnica del pomodoro è una metodologia di gestione del tempo sviluppata negli anni ottanta da Francesco Cirillo. Come funziona? Si applica utilizzando un timer
Per realizzare un progetto necessitiamo di un certo quantitativo di risorse, tra le varie tipologie di risorse troviamo quelle economiche, materiali, umane e il famigerato
Questo sito utilizza cookie e tecnologie simili per garantire il corretto funzionamento delle procedure e migliorare l’esperienza di uso delle applicazioni online. L'utente è invitato a leggere le relative pagine di documentazione elencate di seguito:
Titolare del trattamento
Riccardo Riggi – Via Campomorone, 40/16 16164 Genova (Italia)
Indirizzo email: info@riccardoriggi.it
Hosting provider
Aruba S.p.A. - Via San Clemente n.53 Ponte San Pietro 24036 BG
Indirizzo email: dpo@staff.aruba.it
Gli Utenti che dovessero avere domande sono incoraggiati a contattare il Titolare
I cookie tecnici sono necessari per consentire la navigazione del sito e l’utilizzo di alcuni prodotti e servizi. Vengono utilizzati, ad esempio, per riconoscere l’utente che si è autenticato alla propria casella di posta elettronica e mantenere aperta la sessione anche quando visita altre pagine del sito, oppure per garantire alcune misure di sicurezza del sito e monitorarne il corretto funzionamento. Fra i cookie utilizzati troviamo:
L'utente è invitato a leggere l'intera Cookie Policy
Se disabiliti questo cookie, non saremo in grado di salvare le tue preferenze. Ciò significa che ogni volta che visiti questo sito web dovrai abilitare o disabilitare nuovamente i cookie.