Ilmoittautumisjärjestelmä vol 2

Ilmoittautumisjärjestelmän rakentaminen

Ilmoittautumisjärjestelmän rakentaminen alkoi kattavalla tarpeiden kartoituksella, jossa selvitettiin sekä asiakkaan tarpeet että olemassa olevien järjestelmäiden puutteet. Projekti sisälsi uuden asiakasrekisterin luomisen sekä kaiken vanhan koodin uudelleenkirjoittamisen modernilla teknologialla. Tämä mahdollisti helppokäyttöisen, turvallisen ja skaalautuvan ratkaisun toteuttamisen.

Teknologiavalinnat ja arkkitehtuuri

Projektin ohjelmointikieleksi valittiin PHP sen laajan tuen ja soveltuvuuden vuoksi verkkosovellusten rakentamiseen. Tietokantana käytettiin MySQL, joka tarjoaa tehokkaat ja vakaat ratkaisut suurten tietomäärien hallintaan. Järjestelmä asennettiin pilvipohjaiselle palvelimelle, jota voi helposti skaalata tarpeen mukaan kuormituksen kasvaessa.

Järjestelmän arkkitehtuuri suunniteltiin modulaariseksi ja skaalautuvaksi. Se koostui seuraavista pääosioista:

  1. Asiakasrekisteri: Kaikki asiakastiedot tallennettiin keskitetyyn tietokantaan, joka mahdollistaa tietojen helpon hallinnan ja raportoinnin.
  2. Ilmoittautumisprosessi: Ilmoittautumislogiikka rakennettiin selkeäksi ja monivaiheiseksi, jotta eri tapahtumatyypit voitiin ottaa huomioon.
  3. Hallintakäyttöliittymä: Kehitettiin selainpohjainen hallintapaneeli, jonka avulla asiakas pystyy tarkastelemaan ja muokkaamaan tietojaan sekä hallitsemaan tapahtumia.
  4. Käyttäjäautentikointi: Toteutettiin turvallinen kirjautumisjärjestelmä, joka käyttää bcrypt-salausta salasanojen tallentamiseen.

Asiakasrekisteri

Asiakasrekisteri suunniteltiin alusta asti uudelleen, jotta se vastaisi nykyajan tietosuojavaatimuksia, kuten GDPR:aa. Jokaiselle asiakkaalle luotiin yksilöllinen tunniste, ja tiedot tallennettiin rakenteiseen tietokantaan. Tietokannan rakenne sisälsi seuraavat taulut:

  • Asiakkaat: Sisälsi perustiedot, kuten nimi, sähköpostiosoite ja yhteystiedot.
  • Tapahtumat: Luettelo kaikista tapahtumista, joihin asiakas on ilmoittautunut.
  • Kirjautumistiedot: Tietoa käyttäjätileistä ja niiden oikeuksista.

Tietokannan optimointiin panostettiin erityisesti, jotta järjestelmä pystyy palvelemaan suurta käyttäjämäärää ilman suorituskykyongelmia.

Koodin uudelleenkirjoittaminen

Kaikki vanha koodi koodattiin uusiksi modernin PHP:n parhaiden käytäntöjen mukaisesti. Käytimme PHP:n uusimpia ominaisuuksia, kuten tyypitystä ja olio-ohjelmointia. Uusi koodi jaettiin modulaarisiin osiin, jotka voidaan helposti testata ja huoltaa. Esimerkiksi ilmoittautumistoiminnot erotettiin kokonaan asiakasrekisterin hallinnasta, jotta koodi pysyy selkeänä ja helposti laajennettavana.

Projektissa hyödynnettiin myös Composer-pakettienhallintaa, jotta ulkoisten kirjastojen integrointi sujui joustavasti. Kehitysympäristöä varten luotiin automaattiset testit PHPUnit:lla, minkä ansiosta pystyttiin varmistamaan, että uusi koodi toimii virheettömästi.

Pilvipohjainen palvelin ja skaalautuvuus

Palvelimen toteutus pilvessä mahdollisti järjestelmän joustavan skaalautuvuuden. Käytimme palveluntarjoajaa, joka tukee automaattista resurssien skaalautumista, kuten CPU:n ja muistin lisäämistä kuormituksen kasvaessa. Tämän ansiosta järjestelmä pystyy palvelemaan tuhansia samanaikaisia käyttäjiä ilman katkoksia.

Järjestelmälle toteutettiin myös jatkuva varmuuskopiointi, joka tallentaa tietokannan tiedot turvallisesti useaan sijaintiin. Palvelimen tietoturva varmistettiin SSL-sertifikaateilla sekä tarkasti rajatuilla palomuurisäännöillä.

Lopputulos

Uusi ilmoittautumisjärjestelmä vastaa nykyajan tarpeita tarjoten käyttäjille helppokäyttöisen ja turvallisen tavan hallita tapahtumiaan. Skaalautuvuuden ansiosta järjestelmä on valmis kasvamaan asiakkaiden mukana, ja moderni koodipohja takaa helpon jatkokehityksen.

Tämä projekti osoitti, kuinka tarkalla suunnittelulla, nykyaikaisilla teknologioilla ja laadukkaalla toteutuksella voidaan rakentaa järjestelmä, joka palvelee sekä nykyhetken että tulevaisuuden tarpeita.

Työtilausseuranta

Olemme tehneet reilu vuoden verran töitä, jotta saatiin työnseuranta järjestelmä käyttöön. Sovellus on tuotanto käytössä yhdessä yrityksessä ja siitä pidetään kovin.

Sovelluksen kautta voidaan hallinnoida työmaita ja näiden työtilauksia. Työtilauksen etenemistä voidaan seurata reaaliaikaisesti ja kaikki kommunikointi työntekijän ja työjohdon välillä voidaan tehdä sovelluksen avulla.

Sovellus löytyy osoitteesta: https://testi.hooveri.fi/projekti/etusivu/

Tunnus: demo
ss: 5570b7

Sovellukseen on tehty myös sisäinen varastosovellus, jolla voidaan hallinnoida yrityksen varastoja.

  • Varastosta voidaan noutaa tuotteita suoraan työmaahan
  • Varastoon voidaan lisätä työkaluja, jolloin työkaluja voidaan seurata