Kategoriat
Yleinen

Power Apps tuntiseurantasovellus

Annetun tehtävänantoni perusteella minun oli luoda tuntiseurantaan suunnattu ohjelma. Ohjelman tarkoituksena olisi tarjota Xamkin oppilaille helppo ja vaivaton keino suoritetun tuntimäärän kirjaamista ja seuraamista varten, lähinnä työharjoittelun yhteydessä, ja sitä tulisi pystyä käyttämään älylaitteella kuten puhelimella tai tabletilla.

Varsinaisesta sovelluskehittämisestä itselläni ei ollut minkään sortin kokemusta, vaikka eri ohjelmointikielten alkeita oli tultukin opiskeltua, kuten muun muassa Python, JavaScript ja PHP. Sovellus oli tarkoitus luoda Power Appsia käyttäen. Nimi ei sanonut omalla kohdallani mitään, mutta helpotuksekseni asiat pian avauvuivat.


Power Apps on Microsoftin Power -tuoteperheeseen (kuva 1) kuuluva sovellusten kehittämistä varten luotu työkalu. Power -tuoteperheen sovellukset ovat suunniteltu toimimaan nimenomaan keskenään, mutta moni niistä toimii myös muiden Microsoftin -palveluiden kesken.

Kuva 1. Microsoft Power -tuoteperhe.

Power Apps -kehittämisympäristö on toteutettu pilvipalveluna ja löytyy osoitteesta https://make.powerapps.com. (kuva 2) Sillä luodut sovellukset toimivat älylaitteilla, kuten puhelimilla ja tableteilla, mutta myös selaimessa. Sovelluskehitys on yhdistelmä palikkaohjelmointia ja kyselykieltä muistuttavien käskyjen kirjoittamista.

Kuva 2. Power Apps käyttöympäristö ja ohjelman aloitussivu.

Tuot projektiisi ennalta luotuja elementtejä jonka jälkeen asetat niille haluamasi arvot ja kerrot kuinka ohjelma reagoi käyttäjän ollessa vuorovaikutuksissa käyttöliittymän kanssa. Nämä tuodut elementit voivat olla näppäimiä, listoja, ajastimia, tai pelkkiä kuvioita tai ihan vain puhdasta tekstiä.

Power Apps -ohjelmat tukevat sisäänkirjautumista Microsoft -tilin kautta, jolloin sovelluskehittäjän itse ei tarvitse huolehtia salasanojen ja käyttäjätunnuksien salaamiseen liittyvistä tietoturvaongelmista. Samalla ohjelma mahdollistaa käyttäjätietoja käsittelevien funktioiden käytön kuten User().FullName ja User().Email, jotka ovat suuri apu luodessa ohjelmaa, jonka on tarkoitus pystyä erittelemään eri käyttäjät toisistaan.

Ja kuten edellä mainitsin Power Apps on suunniteltu toimimaan vuorovaikutuksissa eri Microsoft -palveluiden kanssa. Käytin projektissani Microsoft Sharepoint -palvelun alla toimivaa Lists -sovellusta, joka mahdollistaa taulukkodatan säilömisen ja jakamisen. Loin kaksi listaa/taulukkoa johon toiseen listasin tällä hetkellä olevat työtehtävät (kuva 3) ja toiseen käyttäjien tunnit. Lisäksi siirsin taulut DataLabs Sharepoint -ryhmän alle, jotta kaikilla DataLabs ryhmän jäsenillä olisi lähtökohtaisesti oikeudet taulujen käsittelemiseen sovelluksen käytön yhteydessä. Ohjelma toimi halutulla tavalla jos käyttäjältä puuttuvat taulujen muokkaamista varten edellytettävät oikeudet.

Kuva 3. Sharepoint työtehtävät -lista.

Käyttäjä pystyy hakemaan työtehtäviä sovelluksen saatavilla olevat työtehtävät -painikkeen kautta, joka tulostaa edeltävän kuvan 3 työtehtävät -listan (kuva 4). Työtehtävän nimeä koskettamalla käyttäjä saa esille kyseistä tehtävää koskevat tarkemmat tiedot ja voi halutessaan valita tehtävän itselleen painiketta painamalla.

Kuva 4. Power Apps työtehtävät -lista.

Työtehtävän valitsemisen jälkeen kyseinen tehtävä löytyy tehtävien lisäämisessä käytetyn valikon alta (kuva 5) ja käyttäjä voi kasvattaa sen tehtävän tunteja kirjatessaan suorituksiaan. Valikon kautta käyttäjä pystyy myös muokkaamaan tai poistamaan aikaisemmin kirjattuja tehtäviä. Kenttinä ovat päiväys, työ, tunnit ja valinnainen tekstikenttä johon voi halutessaan kirjoittaa jotain.

Kuva 5. Oman tehtävän lisäys/muokkaus.

Tehtävän kirjaamisen jälkeen tehtävä tulostuu käyttäjän työtehtävät -sivulle (kuva 6), jossa käyttäjä voi tarkastella kirjaamisiaan. Kirjattuja päiviä voi suodattaa halutun päivän mukaan ja niitä voi halutessaan muokata tai poistaa. Tehtävien yhteenlaskettu tuntimäärä tulostuu sovelluksen aloitussivulle. (kuva 2)

Kuva 6. Omien tehtävien näkymä.

Sovelluksen käyttöliittymä on vielä tässä vaiheessa ei-niin-täydellinen ja siitä puuttuu muutama ominaisuus. Pohjimmiltaan sen runko kuitenkin toimii. Tarkoituksena olisi myös luoda interaktiivinen Power BI -visualisointi, jota kautta sovelluksen käyttäjät, opettajat, tai joko kummatkin pystyisivät seuraamaan tuntikirjanpitoon liittyvä tunteja ja tavoitteita.


Power Apps esittää itsensä helppokäyttöisenä ja nopeana tapana luoda sovelluksia Microsoft -ympäristössä sijaitsevan datan ympärille. Omalta osaltani ohjelma ei kuitenkaan ollut aina niin yksiselitteinen mitä se lupasi. Joskus ohjelma ei vain toiminut halutulla tavalla ja sen yksinkertaisuuden takia ongelman löytäminen osoittautui odotettua turhauttavammaksi, mutta vikaa oli aivan varmasti myös käyttäjässä. Ja vaikka välillä ohjelman palikkamainen rakenne voikin tuoda omat rajoitteensa, niin se on silti erinomainen työkalu kaikille heille, jotka eivät ole ohjelmoinnin mestareita.

Kategoriat
Yleinen

R-studio ja Eurostat

R-studio on hallitseva ilmainen avoimeen lähdekoodiin perustuva ohjelmointiympäristö, joka tarjoaa graafisen käyttöliittymän R-kielen kirjoittamiselle antaen huomattavan määrän työkaluja kielen hallintaan. R-ohjelmointikieli on alusta alken luotu datasettien käsittelemistä varten, mutta sen tarjoamista ominaisuuksista eivät nauti pelkästään data-analytiikot ja -tieteilijät, vaan sen käytön ovat omaksuneet myös muunlaiset käyttäjät. (Giorgi F, Ceraolo C & Mercatelli D. 2022.)

Ohjelmointikieli tukee sovitettujen kirjastojen luomista, jotka pitävät sisällään ennalta luotuja komentoja laajentaen ja tehostaen R-kielen käyttöominaisuuksia. Yhtenä näistä kirjastoita on Eurostatin tarjoama eurostat-kirjasto. Eurostat (https://ec.europa.eu/eurostat/web/main/home) on Euroopan komission alainen yksikkö, joka tuottaa tilastotietoa Euroopan unionin käyttöön. Palvelun tarkoituksena on tarjota mahdollisuus suurien tilastojen jalostamiseen EU alueella ja palveluiden parantamiseen. (European Commission. 2022.) Tilastoihin pääsy ja niiden käyttäminen on täysin maksutonta.

Eurostat-kirjasto pitää sisällään funktioita, jotka mahdollistavat R-kielen tarraamisen Eurostatin ylläpitämän tietokannan (https://ec.europa.eu/eurostat/web/main/data/database) ohjelmointirajapintaan. Näin ollen käyttäjä voi tarkastella, käsitellä ja tallentaa sivustolta löytyvää dataa suoraan R-kielen välityksellä.

Eurostatin käyttöönotto

Eurostat kirjaston käyttämäinen edellyttää eurostat paketin asennusta ja se tapahtuu samalla lailla kuin minkä tahansa muunkin paketin asennus. Voit asentaa sen joko R-studion yläreunasta löytyvästä Tools -> Install packages valikosta tai käyttäen install.packages() funktiota malliin install.packages(”eurostat”) (kuva 1). Paketin asentamisen jälkeen saat kirjaston käyttöösi lisäämällä eurostat kirjaston projektiisi library(eurostat) funktiolla.

Kuva 1. Eurostat pakettien ja kirjaston asennus.

Tämän jälkeen Eurostatin eurostat-kirjasto on käytettävissäsi ja pystyt hyödyntämään sen tarjoamia uusia funktioita. Yhtenä alustavimmista funktioista on get_eurostat_toc(), joka tulostaa kaikki Eurostatista nykyhetkellä löytyvät datasetit. Alhalla (kuva 2) on esimerkki kyseisen kyselyn muuttujaan asettamisesta.

Kuva 2. Eurostat datasettien hakeminen.

Muuttujan asettamisen jälkeen voit avata sen ja tarkastella funktion tuoman kyselyn tulosta (kuva 3). R-studio muuntaa datan oletuskohtaisesti taulukkomuotoon, jossa se on myös ihmissilmälle helposti luettavassa muodossa. Taulukosta löytyvä code-sarake on olennainen tieto asian etenemisen kannalta, sillä se toimii taulukon tunnuksena.

Kuva 3. Haetut datasetit.

Datasetin hakeminen

Haetaan cens_hnmga tunnusta käyttävä taulu komennolla df <- get_eurostat(”cens_hnmga”, type = ”label”, time_format = ”num”). Taulu on avattavissa myös selaimella osoitteessa https://ec.europa.eu/eurostat/web/products-datasets/-/cens_hnmga. Taulu sisältää 30 Euroopan valtion väkiluvun vuosina 1981, 1991 ja 2001, sekä sukupuolijakauman. Taulun hakemisen jälkeen se on käytettävissä kuin mikä tahansa muukin R-studiossa sijaitseva taulu, mahdollistaen sen sisältämän datan suodattamisen ja muokkaamisen. (kuva 4)

Kuva 4. Taulun muokkaus.

Muokkaamisen lisäksi taulun dataa voidaan myös tulostella perinteiseen tapaan esimerkiksi ggplot-kirjaston voimin. (kuva 5)

Kuva 5. Esimerkkitulostus.

Loppumietteet

Tarpeen sitä vaatiessa Eurostat soveltuu hyvin erinäisten dataharjoitusten ja projektien datalähteeksi, mutta kaikki Eurostatin tietokannasta löytyvä data ei kuitenkaan käänny yhtä helposti käsiteltävään muotoon. Kokenut R-kielen osaaja jalostaa datasetin kuin datasetin, mutta kokeneemmattomalle käyttäjälle sopivan datasetin löytäminen tuhansien joukosta voi osoittautua omaksi ongelmakseen.

Palikoiden osuessa kohdalleen Eurostat kuitenkin hoitaa roolinsa sujuvasti ja näen sen varteen otettavana vaihtoehtona data-analytiikkaa opiskeleville vailla aineistoa, tai vaikkapa opettajille uuden opetusmateriaalin luonnin yhteydessä.

Lähteet

Giorgi F, Ceraolo C & Mercatelli D. 2022. The R Language: An Engine for Bioinformatics and Data Science. Päivitetty 4.2021. Saatavissa: https://www.ncbi.nlm.nih.gov/pmc/articles/PMC9148156/ [viitattu 18.11.2022].

European Commission. 2022. About Eurostat. Saatavissa: https://ec.europa.eu/eurostat/web/main/about-us/ [viitattu 18.11.2022].