This document offers guidelines and practical tips I’ve gathered while supervising thesis work, which I hope can help students navigate the writing process.
These tips focus on the practical aspects of writing a thesis rather than “strategic” elements such as selecting a supervisor, defining a topic, establishing timelines to meet graduation deadlines (particularly when results may be uncertain, as often happens with cutting-edge research), or determining potential outcomes including the final grade.
These are unique, personal aspects of thesis work that extend beyond the writing process itself. When seeking guidance on these matters, I recommend discussing them openly with both one’s peers (who may share similar concerns or offer valuable advice) and faculty members (researchers and professors) who are there to help students identify their interests and chart a path toward pursuing them.
Writing a thesis (for a bachelor’s or master’s degree) is a significant undertaking that demonstrates a student’s ability to conduct independent research while providing an opportunity to engage with and contribute to the state of the art in their field.
Theses have broadly four parts, frequently each corresponding to one (or more) chapter(s):
While readers typically progress through a thesis from beginning to end, that doesn’t mean one has to write it in that order. In fact, jumping straight into the introduction can be tough because the rest of the ideas for the other chapters are still swirling around in one’s head rather than being neatly organised into chapters.
For this reason, I generally recommend beginning the writing process with the pulp and doing it alongside the development of the thesis work in a structured note-taking style — not as a daily journal (“Day X: Today I implemented…”), but as organised technical notes that, once the work is complete, capture all the key aspects of the contribution.
This approach ensures one has comprehensive notes to effectively describe their work and helps to avoid situations where one has to try to recall details of work completed months before writing — at best, this might mean wasting time reviewing code to remember certain design decisions; at worst, it could mean failing to report or incorrectly guessing details about experiments that can’t be replicated before the thesis deadline.
As one refines these pulp chapters, I suggest listing in the background chapter the technical concepts that appear and need explaining for the non-expert audience (see below, about the “time-machine” exercise), as this categorised collection forms the content of the chapter on background knowledge. Once the structure of the background section is established, gathering the necessary information — presented concisely to give readers only what they essentially need to understand the thesis work — becomes relatively straightforward.
With the “pulp” and background chapters in place, it becomes much easier to write the conclusion, followed by the introduction. I recommend tackling the conclusion first mainly because it allows for more technical detail than the introduction. Additionally, having completed all other chapters makes writing the introduction significantly easier since the thesis structure and content are already established and one can refer to the latter to guide the writing of the contents of the introduction.
I noticed that one of the hardest parts of writing a thesis is formulating a convincing introduction. After all, the Romans already knew that “Dimidium facti, qui coepit, habet” or “They who have begun are half done”, or, looking at the other side of the coin, “Getting started is half the battle”.
Indeed, if one writes an effective introduction they are giving the reader all the necessary information to convince them of the aspects and validity of the thesis work. However, reaching that point is far from easy and requires efficient structuring to guide the reader from being a complete stranger to the work to appreciate its contributions.
For this reason, while I do not suggest following a specific template for the other chapters, I include below a basic layout for the introduction which I’ve seen working efficiently for most students.
The introduction usually begins by situating the thesis work within the broader field of computer science, gradually narrowing the focus toward the specific problem(s) which lead to the research (questions) that motivate the work. This kind of presentations tend to form a sort of “funnel” that drives a non-expert reader (but one with a bachelor/master-level computer science background) from the broad context to the problems and contributions of the thesis.
As an exercise, I usually advise the students to consider the task as if they have to explain to their colleagues their thesis work or (in a more introspective and sci-fi(ish) fashion) as if they had a time-machine, went back in time, and had to explain their thesis contributions to themselves before they started working on them, i.e., as complete novices. Their task is to introduce their thesis, aiming to present the work in a clear and accessible manner that a non-expert could understand, reflecting on the knowledge and perspective their interlocutor has, before delving into the details of the work (pondering what are the more and less important ones, leaving out the latter to the “pulp” chapters1), and figuring out how to explain the importance and context of the work, considering their interlocutor’s knowledge and perspective. In doing so, it’s useful to focus on offering a narrative that bridges the gap between the more generic, superficial understanding and the insights gained after finishing the work.
It’s standard to conclude this chapter with a brief presentation of the structure of the remaining chapters, which helps readers navigate the document and understand how the pieces fit together.
Questo documento offre linee guida e consigli pratici raccolte durante la supervisione di tesi e che si spera che possano aiutare gli studenti ad affrontare il processo di scrittura.
Questi suggerimenti si concentrano sugli aspetti pratici della scrittura di una tesi piuttosto che sugli elementi “strategici” come la selezione di un supervisore, la definizione di un argomento, la definizione di tempistiche per rispettare le scadenze di laurea (particolarmente quando i risultati potrebbero essere incerti, come spesso accade in ricerca) o nel determinare potenziali risultati, incluso il voto finale.
Questi sono aspetti unici e personali del lavoro di tesi che si estendono oltre il processo di scrittura stesso. Quando si cerca orientamento su queste questioni, raccomando di discuterne apertamente sia con i propri colleghi (che potrebbero condividere preoccupazioni simili e/o offrire consigli preziosi) sia con i membri del corpo docente (ricercatori e professori) che sono lì per aiutare gli studenti a identificare i loro interessi e tracciare un percorso per perseguirli.
Scrivere una tesi (per una laurea triennale o magistrale) è un’impresa significativa che dimostra la capacità di uno studente di condurre ricerca indipendente, fornendo al contempo un’opportunità di lavorare su e contribuire allo stato dell’arte del proprio campo.
Le tesi hanno generalmente quattro parti, spesso ciascuna corrispondente a uno (o più) capitolo/i:
Mentre i lettori tipicamente procedono attraverso una tesi dall’inizio alla fine, questo non significa che si debba scriverla in quell’ordine. In effetti, saltare direttamente all’introduzione può essere difficile perché il resto delle idee per gli altri capitoli stanno ancora turbinando nella propria testa piuttosto che essere organizzate ordinatamente in capitoli.
Per questa ragione, generalmente raccomando di iniziare il processo di scrittura con la polpa e di farlo insieme allo sviluppo del lavoro di tesi come appunti strutturati — non come un diario quotidiano (“Giorno X: Oggi ho implementato…”), ma come note tecniche organizzate che, una volta completato il lavoro, catturano tutti gli aspetti chiave del contributo.
Questo approccio assicura che si abbiano note complete per descrivere efficacemente il proprio lavoro e aiuta a evitare situazioni in cui si deve cercare di ricordare dettagli di lavori completati mesi prima della scrittura — nel migliore dei casi, questo potrebbe significare sprecare tempo rivedendo il codice per ricordare certe decisioni di design; nel peggiore dei casi, potrebbe significare fallire nel riportare o indovinare erroneamente dettagli sugli esperimenti che non possono essere replicati prima della scadenza della tesi.
Mentre si raffinano questi capitoli della polpa, suggerisco di elencare nel capitolo background i concetti tecnici che appaiono e necessitano di spiegazione per il pubblico non esperto (vedi sotto, sull’esercizio della “macchina del tempo”), poiché questa raccolta categorizzata forma il contenuto del capitolo sulla conoscenza di background. Una volta stabilita la struttura della sezione background, raccogliere le informazioni necessarie — presentate in modo conciso per dare ai lettori solo ciò di cui hanno essenzialmente bisogno per comprendere il lavoro di tesi — diventa relativamente semplice.
Con i capitoli della “polpa” e del background pronti, diventa molto più facile scrivere la conclusione, seguita dall’introduzione. Raccomando di affrontare prima la conclusione principalmente perché permette più dettagli tecnici dell’introduzione. Inoltre, aver completato tutti gli altri capitoli rende la scrittura dell’introduzione significativamente più facile poiché la struttura e il contenuto della tesi sono già stabiliti e si può fare riferimento a quest’ultimo per guidare la scrittura dei contenuti dell’introduzione.
Ho notato che una delle parti più difficili dello scrivere una tesi è formulare un’introduzione convincente. Dopo tutto, i Romani sapevano già che “Dimidium facti, qui coepit, habet” o “Chi ben comincia è a metà dell’opera”.
Infatti, se si scrive un’introduzione efficace, si stanno dando al lettore tutte le informazioni necessarie per convincerlo degli aspetti e della validità del lavoro di tesi. Tuttavia, raggiungere quel punto è tutt’altro che facile e richiede una strutturazione efficiente per guidare il lettore dall’essere un completo estraneo al lavoro a poter apprezzare i suoi contributi.
Per questa ragione, mentre non suggerisco di seguire un modello specifico per gli altri capitoli, includo sotto un layout di base per l’introduzione che ho visto funzionare efficacemente per la maggior parte degli studenti.
L’introduzione di solito inizia situando il lavoro di tesi nel campo più ampio dell'informatica, restringendo gradualmente il focus verso il/i problema/i specifico/i che portano alla/e domanda/e di ricerca che motivano il lavoro. Questo tipo di presentazioni tendono a formare una sorta di “imbuto” che guida un lettore non esperto (ma con un background di informatica a livello di laurea triennale/magistrale) dal contesto ampio ai problemi e contributi della tesi.
Come esercizio, di solito consiglio agli studenti di considerare il compito come se dovessero spiegare ai loro colleghi il loro lavoro di tesi o (in modo più introspettivo e fantascientifico) come se avessero una macchina del tempo, tornassero indietro nel tempo, e dovessero spiegare i loro contributi di tesi a se stessi prima di iniziare a lavorarci, cioè, come completi novizi. Il loro compito è introdurre la loro tesi, mirando a presentare il lavoro in modo chiaro e accessibile che un non esperto possa comprendere, riflettendo sulla conoscenza e prospettiva che il loro interlocutore ha, prima di addentrarsi nei dettagli del lavoro (ponderando quali sono quelli più e meno importanti, lasciando questi ultimi ai capitoli della “polpa”1), e capendo come spiegare l’importanza e il contesto del lavoro, considerando la conoscenza e prospettiva del loro interlocutore. Nel farlo, è utile concentrarsi sull’offrire una narrativa che colmi il divario tra la comprensione più generica e superficiale e le intuizioni acquisite dopo aver finito il lavoro.
È usuale concludere questo capitolo con una breve presentazione della struttura dei capitoli rimanenti, che aiuta i lettori a navigare il documento e comprendere come i suoi contributi si compongono.
In particolare, è importante descrivere i contributi senza addentrarsi troppo nei dettagli di cui il lettore ha poca o nessuna conoscenza e avrebbe difficoltà a posizionare nella prospettiva generale che sta costruendo della tesi, cioè, spiegare le tecniche/metodologie/strumenti/framework chiave impiegati/presentati ma tralasciare dettagli che sono troppo specifici (ad esempio, le configurazioni specifiche usate per eseguire gli esperimenti) o non peculiari/nuovi rispetto al lavoro di tesi (ad esempio, l’uso di una tecnica standard e/o software specifico per implementare/eseguire gli esperimenti). ↩ ↩2