Liikennevalojen ennakointia auttavan sovelluksen suunnittelu ja toteuttaminen
Lahtinen, Aleksi (2025)
Lahtinen, Aleksi
2025
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2025052214474
https://urn.fi/URN:NBN:fi:amk-2025052214474
Tiivistelmä
Opinnäytetyön tarkoituksena oli suunnitella ja toteuttaa mobiilisovellus, joka tarjoaa autoilijoille tietoa Tampereen liikennevaloristeysten vaihtumisajoista. Tavoitteena oli saada sovellukseen mahdollisimman tarkka vaihtumisaika ja näin tehdä liikennevaloristeyksissä liikkumisesta sujuvampaa sekä autoilijoille myös taloudellisempaa. Työ toteutettiin oman kiinnostuksen ja aiemman harrasteprojektin pohjalta. Harrasteprojekti suunniteltiin ja toteutettiin uudelleen, ja siihen lisättiin puuttuneet ja sovelluksen toiminnan kannalta tärkeimmät toiminnallisuudet.
Aiempi sovellus oli toteutettu käyttäen Flutter- ja Dart-teknologioita, eikä sitä ollut jaettu frontend- ja backend-osiin. Uusi projekti jaettiin oikeaoppisesti frontend- ja backend-osiin. Oman osaamisen takia frontend-teknologia vaihdettiin sovelluksessa React Nativeen sekä JavaScriptiin. Projektin backend toteutettiin Node.js- ja Express-teknologioilla. Erillistä tietokantaa projektissa ei tarvittu, koska lähes kaikki tieto on reaaliaikaisuuden takia muistin varassa. Lisäksi kiinteät parametrit sekä tiedon rakenteet on tallennettu JSON-tiedostoihin.
Työn lopputuloksena saatiin mobiilisovellus, joka saatiin toimimaan muutamassa Tampereen liikennevaloristeyksessä. Sovellus antaa aika-arvion valittujen liikennevalojen vaihtumisesta sekä näyttää sekunteina, kauanko tietty liikennevalo on palanut.
Aiempi sovellus oli toteutettu käyttäen Flutter- ja Dart-teknologioita, eikä sitä ollut jaettu frontend- ja backend-osiin. Uusi projekti jaettiin oikeaoppisesti frontend- ja backend-osiin. Oman osaamisen takia frontend-teknologia vaihdettiin sovelluksessa React Nativeen sekä JavaScriptiin. Projektin backend toteutettiin Node.js- ja Express-teknologioilla. Erillistä tietokantaa projektissa ei tarvittu, koska lähes kaikki tieto on reaaliaikaisuuden takia muistin varassa. Lisäksi kiinteät parametrit sekä tiedon rakenteet on tallennettu JSON-tiedostoihin.
Työn lopputuloksena saatiin mobiilisovellus, joka saatiin toimimaan muutamassa Tampereen liikennevaloristeyksessä. Sovellus antaa aika-arvion valittujen liikennevalojen vaihtumisesta sekä näyttää sekunteina, kauanko tietty liikennevalo on palanut.