Com'è strutturato il tirocinio / la tesi
Ogni progetto è un gruppo di lavoro: quando si entra nel progetto da tirocinante/tesista si lavora in gruppo con altri studenti. In un primo periodo si inizierà a prendere confidenza con gli strumenti di lavoro e con il progetto, poi successivamente si passerà a piccoli lavori (risolvere piccoli bug, altri cambiamenti) ed infine, una volta preso “confidenza” con il progetto e con gli strumenti di lavoro, si sceglie un argomento specifico che costituisce il proprio lavoro di tirocinio/tesi.
Il lavoro si articola in questo modo: ogni settimana organizziamo una riunione di “sincronizzazione” in cui si guarda al lavoro fatto e si programma quello per le settimane successive. Nella riunione vengono assegnati quindi dei micro-task, anche più di uno. Dal momento in cui si inizia a lavorare su un particolare task, è necessario portarlo a termine entro una settimana o due al massimo, per evitare di rimanere troppo indietro e dover ricominciare da capo.
Ogni singolo task, per essere completato, passa sotto una fase di “validazione” chiamata code review a cura di chi gestisce il progetto. Questo serve come safety-net verso gli studenti, per evitare che inavvertitamente si possa “danneggiare” una app che è già pubblica. In caso di dubbi su parti di codice il reviewer farà dei commenti e lo studente dovrà controllare ed eventualmente modificare il codice.
Il tirocinio (o la tesi) si conclude quando il lavoro concordato è completo e sufficiente, a prescindere dal tempo e da altri fattori (come la durata), salvo i minimi stabiliti dalla segreteria.
Affinché il lavoro sia completo è necessario che, al momento della domanda di laurea, tutte le merge request su cui si sta lavorando siano unite al ramo di sviluppo principale (ovvero in stato Merged) e non si abbiano altre issues assegnate.
Per informazioni circa la conclusione del tirocinio/tesi (procedure, etc), vedere la pagina Documenti.