Valmistuneiden projektien arkistointilogiikan suunnittelu ja toteutus : algoritmien vertailu ja haasteiden ratkaisu
Elias, Westerling (2024)
Elias, Westerling
2024
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-2024121034463
https://urn.fi/URN:NBN:fi:amk-2024121034463
Tiivistelmä
Digitalisoituneessa yhteiskunnassa toiminnanohjausjärjestelmän rooli kasvaa organisaatioissa. Erityisesti tiedonhallinnan ja arkistoinnin tarpeet korostuvat, kun tietoa tuotetaan ja käsitellään yhä enemmän. Opinnäytetyön tavoitteena oli löytää ratkaisu TPE Turun Pelti ja Eristys Oy:n arkistointitarpeisiin toiminnanohjausjärjestelmään. Arkisto on toimeksiantajalle välttämätön, sillä valmistuneiden projektien, positioiden ja työnumeroiden tietoja on säilytettävä pitkään niiden valmistumisen jälkeen. Arkistoitujen tietojen on oltava nopeasti ja vaivattomasti saatavilla. Tavoitteena oli luoda suorituskykyinen ja helposti ylläpidettävä arkistointilogiikka, joka kykenisi suodattamaan projekteja ja projektien pienempiä osia käyttäjän syöttämän hakusanan perusteella. Ratkaisun tulisi olla kestävä, eli tiedonkäsittelyn tulisi onnistua myös suurissa datamäärissä.
Opinnäytetyön tutkimusmenetelminä käytettiin tiedonhaussa kirjallisuuskatsausta ja kehittämismenetelmistä pragmatismia ja konstruktiivista lähestymistapaa. Kehittämismenetelmät ilmenivät toiminnallisena testaamisena ja soveltavana raportointina.
Teoreettisissa testeissä käsiteltiin kolmea hakualgoritmia tiedon hakemiseksi tietokannasta ja kolmea suodatuslogiikkaa, jotka perustuivat käyttäjän syöttämään hakusanaan. Teoreettisia testejä suoritettiin pienellä datamäärällä, minkä jälkeen yhdistettiin parhaaksi todettu haku- ja suodatinalgoritmi. Yhdistettyä algoritmia kokeiltiin toiminnallisissa testeissä. Toiminnallisen testaamisen tarkoituksena oli kokeilla logiikan kestävyyttä generoimalla tietokantaan suuri määrä tietoa. Testien perusteella tutkitut logiikat toimivat hyvin pienissä tietokannan tietomäärissä. Sen sijaan tutkittuja toimintamalleja ei voitu hyödyntää arkistointilogiikan toteutuksessa, koska suurilla tietomäärillä Node.js:n palvelinympäristön oletusmuistiraja ylittyi ja johti ohjelmistovirheeseen.
Opinnäytetyön tutkimusmenetelminä käytettiin tiedonhaussa kirjallisuuskatsausta ja kehittämismenetelmistä pragmatismia ja konstruktiivista lähestymistapaa. Kehittämismenetelmät ilmenivät toiminnallisena testaamisena ja soveltavana raportointina.
Teoreettisissa testeissä käsiteltiin kolmea hakualgoritmia tiedon hakemiseksi tietokannasta ja kolmea suodatuslogiikkaa, jotka perustuivat käyttäjän syöttämään hakusanaan. Teoreettisia testejä suoritettiin pienellä datamäärällä, minkä jälkeen yhdistettiin parhaaksi todettu haku- ja suodatinalgoritmi. Yhdistettyä algoritmia kokeiltiin toiminnallisissa testeissä. Toiminnallisen testaamisen tarkoituksena oli kokeilla logiikan kestävyyttä generoimalla tietokantaan suuri määrä tietoa. Testien perusteella tutkitut logiikat toimivat hyvin pienissä tietokannan tietomäärissä. Sen sijaan tutkittuja toimintamalleja ei voitu hyödyntää arkistointilogiikan toteutuksessa, koska suurilla tietomäärillä Node.js:n palvelinympäristön oletusmuistiraja ylittyi ja johti ohjelmistovirheeseen.
