This thesis documents the internship activity focused on the development of a web application dedicated to managing and splitting shared expenses among groups of users. The main objective of this work lies not only in the final product but also in the detailed analysis of the entire software development lifecycle and the methodologies adopted for its implementation. Starting from the requirements analysis and the user experience study, the paper describes the decision-making process that led to the definition of the software architecture and the choice of the technology stack, which consists of Django (python) for the backend and JavaScript, HTML, and CSS for the frontend. Particular emphasis is placed on the engineering challenges faced during development, such as database design, focusing on entity-relationship modeling to efficiently translate real-world requirements into optimized data structures and the respective solutions implemented. In conclusion, the thesis highlights how a structured approach to problem-solving and the adoption of programming best practices enabled the creation of a robust and scalable application, demonstrating the effectiveness of the internship in combining theoretical knowledge with the actual dynamics of software development.
Il presente lavoro di tesi documenta l'attività di tirocinio focalizzata sullo sviluppo di una web application dedicata alla gestione e alla ripartizione delle spese condivise tra gruppi di utenti. L'obiettivo principale dell'elaborato non risiede unicamente nel prodotto finale, ma nell'analisi dettagliata dell'intero ciclo di vita del software e delle metodologie adottate per la sua realizzazione. Partendo dall'analisi dei requisiti e dallo studio dell'esperienza utente, il lavoro descrive il percorso decisionale che ha portato alla definizione dell'architettura software e alla scelta dello stack tecnologico, composto da Django python per il backend e JavaScript, HTML e CSS per la parte di frontend. Viene dato particolare rilievo alle sfide ingegneristiche affrontate durante lo sviluppo, quali la progettazione del database, focalizzandosi sulla modellazione delle entità e delle loro relazioni per tradurre in modo efficiente i requisiti del mondo reale in strutture dati ottimizzate, e alle relative soluzioni implementate. In conclusione, la tesi evidenzia come l'approccio strutturato al problem solving e l'adozione di buone pratiche di programmazione abbiano permesso di realizzare un'applicazione robusta e scalabile, dimostrando l'efficacia del percorso di tirocinio nel coniugare le conoscenze teoriche con le dinamiche reali dello sviluppo software.
Progettazione e sviluppo full-stack di un'applicazione web per la gestione delle spese condivise
NAFTULOVYCH, MAKSYM
2025/2026
Abstract
This thesis documents the internship activity focused on the development of a web application dedicated to managing and splitting shared expenses among groups of users. The main objective of this work lies not only in the final product but also in the detailed analysis of the entire software development lifecycle and the methodologies adopted for its implementation. Starting from the requirements analysis and the user experience study, the paper describes the decision-making process that led to the definition of the software architecture and the choice of the technology stack, which consists of Django (python) for the backend and JavaScript, HTML, and CSS for the frontend. Particular emphasis is placed on the engineering challenges faced during development, such as database design, focusing on entity-relationship modeling to efficiently translate real-world requirements into optimized data structures and the respective solutions implemented. In conclusion, the thesis highlights how a structured approach to problem-solving and the adoption of programming best practices enabled the creation of a robust and scalable application, demonstrating the effectiveness of the internship in combining theoretical knowledge with the actual dynamics of software development.| File | Dimensione | Formato | |
|---|---|---|---|
|
Presentazione_tesi_Naftulovych_Maksym (1).pdf
accesso aperto
Dimensione
898.07 kB
Formato
Adobe PDF
|
898.07 kB | Adobe PDF | Visualizza/Apri |
The text of this website © Università degli studi di Padova. Full Text are published under a non-exclusive license. Metadata are under a CC0 License
https://hdl.handle.net/20.500.12608/114276