Web-sovellus laitteiden näkymien hallintaan : case: LAB-ammattikorkeakoulu
Hannolainen, Leo (2023)
Hannolainen, Leo
2023
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2023112932712
https://urn.fi/URN:NBN:fi:amk-2023112932712
Tiivistelmä
Opinnäytetyön tarkoituksena oli suunnitella ja toteuttaa web-sovellus, jonka avulla LAB-ammattikorkeakoulu voi keskitetysti hallita laitteidensa näkymiä eri koulun tiloissa. Työssä keskityttiin näkymien päivitysprosessin yksinkertaistamiseen ja tehostamiseen, koska henkilökunta on kokenut manuaalisen päivitysprosessin monimutkaiseksi ja aikaa vieväksi.
Opinnäytetyössä perehdytään yleisellä tasolla web-kehityksen historiaan sekä keskeisiin käsitteisiin. Sen jälkeen analysoidaan projektin luomisessa käytettyjä web-teknologioita. Tarkastelun kohteena ovat TypeScript ohjelmointikielenä, Node.js ja NestJS palvelinpuolen toteutuksessa, MongoDB ja Mongoose tietokantaratkaisuina, React-kirjasto käyttöliittymän rakentamisessa sekä Socket.io-kirjasto reaaliaikaisen kommunikaation mahdollistajana.
Työn suunnitteluvaiheessa tehtiin tiivistä yhteistyötä asiakkaan kanssa vaatimusten määrittelyssä. Toteutusprosessissa keskityttiin sovelluksen kolmeen osaan: palvelinpuoleen tietojen käsittelyyn ja säilytykseen, asiakaspuolen hallintapaneeliin, joka mahdollisti näkymien hallinnan ja päivitysten toteuttamisen käyttäjäystävällisessä muodossa selaimessa, sekä laitenäkymään, joka kehitettiin varmistamaan laiteiden näkymien ajankohtaista näyttämistä
Tuloksena saatiin käyttäjäystävällinen web-sovellus, joka tarjoaa selkeän, keskityn ratkaisun laitteiden näkymien hallintaan. Projektin toteutuksessa korostui teknologian valinnan merkitys sekä sen soveltuvuus LAB-ammattikorkeakoulun tarpeisiin. Lopuksi pohdittiin mahdollisia jatkokehitysideoita. The purpose of the thesis was to design and develop a web application for managing device content across various locations at LAB University of Applied Sciences. The focus was on simplifying and streamlining the content update process, which was previously complex and time-consuming¨.
The study begins with an introduction to the general history of web development and its key concepts. This is followed by an analysis of the web technologies used in the project, including TypeScript as the programming language, Node.js, and NestJS for server-side development, MongoDB as the database solution, React for building the user interface, and the Socket.io library for enabling real-time communication.
The thesis describes the collaborative process of requirement gathering with the client during the design phase and the meticulous implementation of the project, focusing on three core components: server-side data handling and storage, a user-friendly client-side admin panel for managing and updating displays via a web browser, and a specialized view-app developed for each device, ensuring the timely and accurate display of information.
The result of this thesis was a user-friendly web application, meticulously developed to fulfill all the requirements specified at the start, to manage device content efficiently. The thesis concludes with a reflection on the suitability of the selected technologies for the project and consideration of possible directions for further development.
Opinnäytetyössä perehdytään yleisellä tasolla web-kehityksen historiaan sekä keskeisiin käsitteisiin. Sen jälkeen analysoidaan projektin luomisessa käytettyjä web-teknologioita. Tarkastelun kohteena ovat TypeScript ohjelmointikielenä, Node.js ja NestJS palvelinpuolen toteutuksessa, MongoDB ja Mongoose tietokantaratkaisuina, React-kirjasto käyttöliittymän rakentamisessa sekä Socket.io-kirjasto reaaliaikaisen kommunikaation mahdollistajana.
Työn suunnitteluvaiheessa tehtiin tiivistä yhteistyötä asiakkaan kanssa vaatimusten määrittelyssä. Toteutusprosessissa keskityttiin sovelluksen kolmeen osaan: palvelinpuoleen tietojen käsittelyyn ja säilytykseen, asiakaspuolen hallintapaneeliin, joka mahdollisti näkymien hallinnan ja päivitysten toteuttamisen käyttäjäystävällisessä muodossa selaimessa, sekä laitenäkymään, joka kehitettiin varmistamaan laiteiden näkymien ajankohtaista näyttämistä
Tuloksena saatiin käyttäjäystävällinen web-sovellus, joka tarjoaa selkeän, keskityn ratkaisun laitteiden näkymien hallintaan. Projektin toteutuksessa korostui teknologian valinnan merkitys sekä sen soveltuvuus LAB-ammattikorkeakoulun tarpeisiin. Lopuksi pohdittiin mahdollisia jatkokehitysideoita.
The study begins with an introduction to the general history of web development and its key concepts. This is followed by an analysis of the web technologies used in the project, including TypeScript as the programming language, Node.js, and NestJS for server-side development, MongoDB as the database solution, React for building the user interface, and the Socket.io library for enabling real-time communication.
The thesis describes the collaborative process of requirement gathering with the client during the design phase and the meticulous implementation of the project, focusing on three core components: server-side data handling and storage, a user-friendly client-side admin panel for managing and updating displays via a web browser, and a specialized view-app developed for each device, ensuring the timely and accurate display of information.
The result of this thesis was a user-friendly web application, meticulously developed to fulfill all the requirements specified at the start, to manage device content efficiently. The thesis concludes with a reflection on the suitability of the selected technologies for the project and consideration of possible directions for further development.