WYTH Agenda
Creators: name: Ferrario, Giada
Publisher: name: Scuola Universitaria della Svizzera Italiana (SUPSI)
Year: 2022

description: Il progetto di diploma esposto nel documento è stato sviluppato in collaborazione con WYTH, una startup nata con l’idea di sviluppare una piattaforma web in grado di offrire alle organiz- zazioni ed ai loro utenti una community fatta su misura in cui possano collaborare, interagire, organizzare incontri, studiare e molto altro, in modo semplice e veloce, e permettendo l’ac- cessibilità dei contenuti da qualsiasi luogo, in qualsiasi momento e nel modo in cui coloro che utilizzano la piattaforma lo desiderano. Essendo l’agenda uno strumento molto presente nella quotidianità delle persone poiché permette di tenere sotto controllo i propri appuntamenti ed impegni, si è pensato, insieme al committente, di sviluppare un componente che fornisca agli utilizzatori della piattaforma un mezzo con cui pianificare i propri impegni e le proprie riunioni all’interno della community. Durante il processo di sviluppo si ha avuto modo di conoscere e utilizzare tecnologie che non sono state affrontate durante il percorso di studi, come il linguaggio TypeScript ed alcune librerie a supporto dello sviluppo. Inoltre, per gestire al meglio lo sviluppo è stata utilizzata la metodologia agile, suddividendo il lavoro in iterazioni con relativi standup meeting. La soluzione proposta ha come base di partenza un componente UI già sviluppato e messo a disposizione dalla libreria FullCalendar. Durante il percorso è stato personalizzato in modo da renderlo più vicino alla piattaforma, sia dal punto di vista estetico che funzionale. Il componente sviluppato consente agli utenti di inserire i propri impegni attraverso un form di aggiunta dedicato con la possibilità di invitare dei partecipanti, ai quali, dopo aver conferma- to l’inserimento dell’evento, verrà inviata un’email contenente la richiesta di partecipazione al meeting. In aggiunta, i partecipanti ricevono un’email quando l’evento viene modificato, cancellato o sta per iniziare. Gli eventi pianificati sono consultabili in più visualizzazioni. L’agenda sviluppata sfrutta l’utilizzo di una macchina a stati per facilitarne la gestione e la comprensione. Durante lo sviluppo del progetto le criticità riscontrate, e superate nel giro di qualche settimana, riguardano l’iniziale comprensione del linguaggio di programmazione e del sistema. La soluzione proposta non è una soluzione definitiva in quanto con WYTH sono stati identificati alcuni sviluppi futuri, tra cui l’integrazione con calendari di altri providers. In conclusione, si è molto soddisfatti del lavoro svolto e della qualità del codice redatto. Inoltre, la collaborazione con WYTH ha portato alla proposta di una posizione lavorativa come sviluppatore da ricoprire durante il proseguimento degli studi. --- The project set out in the paper was developed in collaboration with WYTH, a startup born with the idea of developing a web platform capable of offering to organizations and their users a tailor-made community in which they can collaborate, interact, organize meetings and study, in a quick and easy way, allowing in addition the accessibility of content from anywhere, at any time and in the way those who use the platform want it. Since the agenda is a tool that is very present in people’s daily lives, as it allows them to keep track of their appointments, in according to customer, it was thought to develop a component that would provide to users a way by which they could plan their meetings and appointments within the community. During the development process there was the opportunity to learn and use technologies that were not introduced during the course of study, such as the TypeScript language and some libraries to support development. In addition, to manage the development was used the agile methodology, dividing the work into sprints with related standup meetings. The proposed solution uses as its starting point an already developed UI component provided by the FullCalendar library. Along the way, it was customized to make it closer to the platform, both aesthetically and functionally. The developed component allows users to enter their appointments through a dedicated form with the possibility of inviting participants. After confirming the entry of the event, an email containing the request to participate in the meeting will be sent to participants. In addition, they receive an email when the event is changed, cancelled or it is starting. Scheduled events are consultable in multiple views. The developed agenda leverages the use of a state machine for easy management and understanding. During the development of the project the critical issues encountered concern the initial understanding of the programming language and the system. These difficulties were overcome within a few weeks. The proposed solution is not a final solution, therefore some future implementations were identified in according to WYTH, including integration with calendars of other providers. In conclusion, the work has been done well and the quality of the code written is in line with what was already there. In addition, the collaboration led to the proposal of a job position as a developer to be filled during further studies.