QAiRA : regulaatioiden seuranta- ja raportointityökalu lääkinnällisten laitteiden valmistajille
Heinonen, Lauri (2021)
Heinonen, Lauri
2021
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-2021121425981
https://urn.fi/URN:NBN:fi:amk-2021121425981
Tiivistelmä
Opinnäytetyön aiheena oli Kasve Oy:n tuottaman QAiRA-verkkosovelluksen uusien ominaisuuksien ja toiminnallisuuksien toteutus osana sovelluskehitysprosessia. Yhtenä pääasiallisena kehityskohteena oli kahden eri asiakastietolähteen – sovelluksen tietokannan sekä yrityksen käyttämän Severa-järjestelmän – tietojen synkronointi niin kutsutulla asiakastietointegraatiolla.
Sovellukseen suunniteltiin ja toteutettiin opinnäytetyön puitteissa kolme erillistä, mutta toisiinsa osin limittyvää kokonaisuutta. Ensimmäinen kokonaisuus laajensi QAiRAn olemassa olevia regulaatioiden seurantatyökaluja koostamalla regulaatioiden sisältöpäivityksessä syntyvät muutostiedot QAiRAn viikottaiseen sisältöpäivityskoosteviestiin lisäten käyttäjille myös käyttöliittymäkomponentit uusien viestiasetusten hallinnointiin. Toinen kokonaisuus koostui järjestelmäylläpidolle toteutetusta sovelluksen tuottamien automatisoitujen sähköpostiviestien lähetystyökalusta. Kolmas kokonaisuus piti sisällään aiemmin mainitun integraation projektin kahden asiakastietolähteen välillä. Opinnäytetyö koostui teknisen toteutuksen suunnittelusta ja implementoinnista järjestelmään. Toteutettujen ominaisuuksien frontend-toiminnallisuudet kirjoitettiin JavaScript-kielellä käyttäen jQuery-kirjastoja. Backend-prosessointi toteutettiin PHP:llä käyttäen MariaDB-tietokantaa. Sähköpostien automatisoituun lähetykseen käytettiin kolmannen osapuolen Mailgun-palvelua ja asiakastietointegraation datan synkronointi toteutettiin HTTP-pyynnöin Visman kehittämän Severa-järjestelmän REST-rajapinnan kautta.
Opinnäytetyön tuloksina syntyneet toiminnallisuudet julkaistiin sovelluksen tuotantoversioon osana kehitysprojektin normaalia julkaisuprosessia. Suunnitelman mukaisen asiakastietointegraation määrittely ja toteutus allokoitiin projektinhallinnollisista syistä muiden toteutettujen toiminnallisuuksien kustannuksella aiottua myöhemmälle, mistä johtuen sen osuus opinnäytetyössä jäi aiottua pienemmäksi ja jätti varmasti tilaa myös jatkokehitykselle. Kaikki toteutetut toiminnallisuudet koettiin kuitenkin erittäin tarpeellisiksi ja niiden tuottama hyöty jakautui monipuolisesti eri käyttäjäryhmien kesken sovelluksen loppukäyttäjistä järjestelmäylläpitäjiin ja yrityksen sisäisten markkinointi- ja liiketoiminnan hallinto-osastojen käyttäjiin. The purpose of this thesis was to develop new features and functionalities to Kasve Ltd’s QAiRA web application as part of regular web development process. One main development objective was to create a so-called customer data integration by synchronizing the data between two separate data sources – the application database and the Severa system used by the company.
Three separate but partly overlapping bodies of work were designed and implemented to the application as part of the thesis project. The first subfeature expanded on QAiRA’s existing regulatory follow-up tools by compiling the regulation content update data into QAiRA’s weekly content update notifications message and by adding the user interface components to manage the new message settings. The second feature consisted of an internal tool created for the system administrators for sending automated emails generated by the application. The third feature included the aforementioned integration between the project’s two customer data sources. The thesis was composed of the planning and the technical implementation to the system. The frontend functionalities of the implemented features were written in JavaScript by utilizing the jQuery libraries. The backend processing was implemented with PHP using MariaDB database. The delivery of the automated emails was created by using a third-party service Mailgun and the data synchronization of the customer data integration was done with HTTP requests via Severa system’s REST interface developed by Visma.
The features created during the thesis project were released to the production version as part of the normal release process of the development project. Due to reasons in internal project management, the specification and the implementation of the planned customer data integration were allocated to a later part of the project after the other implemented features which caused its portion in the thesis project to be diminished from the intended scope and surely left room also for future development. All of the implemented features were nonetheless received as important additions to the application and their benefits were diversely distributed between the application’s different user groups from the end users to the system administrators and the users of the company’s internal marketing and business management departments.
Sovellukseen suunniteltiin ja toteutettiin opinnäytetyön puitteissa kolme erillistä, mutta toisiinsa osin limittyvää kokonaisuutta. Ensimmäinen kokonaisuus laajensi QAiRAn olemassa olevia regulaatioiden seurantatyökaluja koostamalla regulaatioiden sisältöpäivityksessä syntyvät muutostiedot QAiRAn viikottaiseen sisältöpäivityskoosteviestiin lisäten käyttäjille myös käyttöliittymäkomponentit uusien viestiasetusten hallinnointiin. Toinen kokonaisuus koostui järjestelmäylläpidolle toteutetusta sovelluksen tuottamien automatisoitujen sähköpostiviestien lähetystyökalusta. Kolmas kokonaisuus piti sisällään aiemmin mainitun integraation projektin kahden asiakastietolähteen välillä. Opinnäytetyö koostui teknisen toteutuksen suunnittelusta ja implementoinnista järjestelmään. Toteutettujen ominaisuuksien frontend-toiminnallisuudet kirjoitettiin JavaScript-kielellä käyttäen jQuery-kirjastoja. Backend-prosessointi toteutettiin PHP:llä käyttäen MariaDB-tietokantaa. Sähköpostien automatisoituun lähetykseen käytettiin kolmannen osapuolen Mailgun-palvelua ja asiakastietointegraation datan synkronointi toteutettiin HTTP-pyynnöin Visman kehittämän Severa-järjestelmän REST-rajapinnan kautta.
Opinnäytetyön tuloksina syntyneet toiminnallisuudet julkaistiin sovelluksen tuotantoversioon osana kehitysprojektin normaalia julkaisuprosessia. Suunnitelman mukaisen asiakastietointegraation määrittely ja toteutus allokoitiin projektinhallinnollisista syistä muiden toteutettujen toiminnallisuuksien kustannuksella aiottua myöhemmälle, mistä johtuen sen osuus opinnäytetyössä jäi aiottua pienemmäksi ja jätti varmasti tilaa myös jatkokehitykselle. Kaikki toteutetut toiminnallisuudet koettiin kuitenkin erittäin tarpeellisiksi ja niiden tuottama hyöty jakautui monipuolisesti eri käyttäjäryhmien kesken sovelluksen loppukäyttäjistä järjestelmäylläpitäjiin ja yrityksen sisäisten markkinointi- ja liiketoiminnan hallinto-osastojen käyttäjiin.
Three separate but partly overlapping bodies of work were designed and implemented to the application as part of the thesis project. The first subfeature expanded on QAiRA’s existing regulatory follow-up tools by compiling the regulation content update data into QAiRA’s weekly content update notifications message and by adding the user interface components to manage the new message settings. The second feature consisted of an internal tool created for the system administrators for sending automated emails generated by the application. The third feature included the aforementioned integration between the project’s two customer data sources. The thesis was composed of the planning and the technical implementation to the system. The frontend functionalities of the implemented features were written in JavaScript by utilizing the jQuery libraries. The backend processing was implemented with PHP using MariaDB database. The delivery of the automated emails was created by using a third-party service Mailgun and the data synchronization of the customer data integration was done with HTTP requests via Severa system’s REST interface developed by Visma.
The features created during the thesis project were released to the production version as part of the normal release process of the development project. Due to reasons in internal project management, the specification and the implementation of the planned customer data integration were allocated to a later part of the project after the other implemented features which caused its portion in the thesis project to be diminished from the intended scope and surely left room also for future development. All of the implemented features were nonetheless received as important additions to the application and their benefits were diversely distributed between the application’s different user groups from the end users to the system administrators and the users of the company’s internal marketing and business management departments.