Progetto Online Stock
Creators: name: Minardi, Luca
Publisher: name: Scuola Universitaria della Svizzera Italiana (SUPSI)
Year: 2020

description: Questo testo documenta l’intero sviluppo del progetto:”Progetto Online Stock” commissionato dall’azienda Montansthal con sede a Stabio, Svizzera. Il progetto costituisce il lavoro di tesi per l’ottenimento del bachelor in Ingegneria Informatica a tempo pieno presso la Scuola Universitaria Professionale della Svizzera Italiana. Il progetto consiste nello sviluppo di una web app che permetta ai clienti di visualizzare il magazzino dei prodotti dell’azienda, inoltre permetta di filtrare i prodotti attraverso determinati campi, includa la possibilità di aggiungerli ad un carrello ed effettuare un preventivo direttamente all’azienda. Parallelamente a ciò, si è necessitato lo sviluppo di un backend che supporti l’applicazione web e che offra compatibilità con la REST API attuale in modo che i clienti possano aggiornare automaticamente il proprio magazzino. Come framework di sviluppo per il backend è stato scelto Spring, mentre per il frontend è stato scelto NodeJs. Sotto l’aspetto tecnologico, il backend è stato sviluppato in Java e offre un’api di tipo REST, inoltre espone un endpoint per l’aggiornamento del magazzino il quale esegue chiamate SOAP al server di gestione interno all’azienda. Per quanto riguarda lo scambio di dati, è stato adottato il DTO pattern. L’autenticazione è gestita attraverso i dati presenti nel database e attraverso i Json Web Token. L’applicazione web è scritta in Ecmascript 6 ed è stata sviluppata con il framework React, mentre per la gestione dello stato è stato introdotto Redux. L’interfaccia utente si presenta sulla destra con una tabella per la visualizzazione dei prodotti, ogni riga rappresenta un prodotto ed è munita di un bottone che permette di aggiungere o modificare un ordine nel carrello. Sulla sinistra, è presente un menu per la scelta delle categorie e gli input per il filtraggio dei prodotti. L’applicazione web è costituita da altre due pagine: una per le informazioni sul profilo e una per visualizzare il carrello. Backend e frontend sono stati sviluppati per gestire la localizzazione e quindi è presente il supporto per lingue differenti. Il progetto è stato completato solo in parte per via del poco tempo a disposizione. Tuttavia, in concordanza con l’azienda, mi sento di dire che è stato un successo sia dal punto di vista lavorativo Abstract italiano Questo testo documenta l’intero sviluppo del progetto:”Progetto Online Stock” commissionato dall’azienda Montansthal con sede a Stabio, Svizzera. Il progetto costituisce il lavoro di tesi per l’ottenimento del bachelor in Ingegneria Informatica a tempo pieno presso la Scuola Universitaria Professionale della Svizzera Italiana. Il progetto consiste nello sviluppo di una web app che permetta ai clienti di visualizzare il magazzino dei prodotti dell’azienda, inoltre permetta di filtrare i prodotti attraverso determinati campi, includa la possibilità di aggiungerli ad un carrello ed effettuare un preventivo direttamente all’azienda. Parallelamente a ciò, si è necessitato lo sviluppo di un backend che supporti l’applicazione web e che offra compatibilità con la REST API attuale in modo che i clienti possano aggiornare automaticamente il proprio magazzino. Come framework di sviluppo per il backend è stato scelto Spring, mentre per il frontend è stato scelto NodeJs. Sotto l’aspetto tecnologico, il backend è stato sviluppato in Java e offre un’api di tipo REST, inoltre espone un endpoint per l’aggiornamento del magazzino il quale esegue chiamate SOAP al server di gestione interno all’azienda. Per quanto riguarda lo scambio di dati, è stato adottato il DTO pattern. L’autenticazione è gestita attraverso i dati presenti nel database e attraverso i Json Web Token. L’applicazione web è scritta in Ecmascript 6 ed è stata sviluppata con il framework React, mentre per la gestione dello stato è stato introdotto Redux. L’interfaccia utente si presenta sulla destra con una tabella per la visualizzazione dei prodotti, ogni riga rappresenta un prodotto ed è munita di un bottone che permette di aggiungere o modificare un ordine nel carrello. Sulla sinistra, è presente un menu per la scelta delle categorie e gli input per il filtraggio dei prodotti. L’applicazione web è costituita da altre due pagine: una per le informazioni sul profilo e una per visualizzare il carrello. Backend e frontend sono stati sviluppati per gestire la localizzazione e quindi è presente il supporto per lingue differenti. Il progetto è stato completato solo in parte per via del poco tempo a disposizione. Tuttavia, in concordanza con l’azienda, mi sento di dire che è stato un successo sia dal punto di vista lavorativo che didattico. Infatti, mi ha introdotto nel mondo del lavoro e mi ha insegnato a collaborare con clienti di un’azienda al di fuori dell’ambiente universitario.