{"id":82,"date":"2018-05-27T14:55:27","date_gmt":"2018-05-27T11:55:27","guid":{"rendered":"https:\/\/blogi.eoppimispalvelut.fi\/tilitoimisto\/?page_id=82"},"modified":"2018-05-27T15:51:48","modified_gmt":"2018-05-27T12:51:48","slug":"tehtavienhallinnan-jarjestelma","status":"publish","type":"page","link":"https:\/\/blogi.eoppimispalvelut.fi\/tilitoimisto\/lopputulos\/tehtavienhallinnan-jarjestelma\/","title":{"rendered":"Teht\u00e4vienhallinnan j\u00e4rjestelm\u00e4"},"content":{"rendered":"<h3>Uusi kehitett\u00e4v\u00e4 j\u00e4rjestelm\u00e4<\/h3>\n<p>Kehitysprojektin edetess\u00e4 ja tilitoimiston nykyisten kankeiden ty\u00f6prosessien k\u00e4yty\u00e4 ilmi, p\u00e4\u00e4dyin siihen, ett\u00e4 toiminnan tehostamiseksi ja parantamiseksi toimivin sek\u00e4 helpoin ratkaisu on kehitt\u00e4\u00e4 tilitoimiston tarpeisiin soveltuva teht\u00e4vienhallinnan j\u00e4rjestelm\u00e4. J\u00e4rjestelm\u00e4 tulisi olemaan tietokantapohjainen ja selaink\u00e4ytt\u00f6inen sek\u00e4 mahdollisimman helppok\u00e4ytt\u00f6inen ty\u00f6kalu p\u00e4ivitt\u00e4iseen ty\u00f6skentelyyn. Uuden ratkaisun my\u00f6t\u00e4 ja yhden j\u00e4rjestelm\u00e4n avulla, tilitoimisto voi tarjota jatkossa asiakkailleen aidosti s\u00e4hk\u00f6isi\u00e4 taloushallinnon palveluja, jotka vastaavat hyvin pitk\u00e4lle tulevaisuuden tarpeisiin.<\/p>\n<p>Teknisesti j\u00e4rjestelm\u00e4n rakentaminen on selke\u00e4\u00e4, mutta vaatii ennen toteutusta yksityiskohtaisen tietoj\u00e4rjestelm\u00e4suunnittelun, joka voidaan toteuttaa opintoihini liittyv\u00e4n\u00e4 erillisen\u00e4 projektina tai opinn\u00e4ytety\u00f6n\u00e4. Teht\u00e4vienhallinnan j\u00e4rjestelm\u00e4lt\u00e4 vaadittavien ominaisuuksien perusteella, olen hahmotellut vaatimukset t\u00e4ytt\u00e4v\u00e4n teht\u00e4v\u00e4nhallinnan j\u00e4rjestelm\u00e4n alustavaa tietokantarakennetta tutkinut rajapintoja teknisten mahdollisuuksien sek\u00e4 rajoitteiden tunnistamiseksi. My\u00f6s asiakasviestinn\u00e4n hoitaminen uudesta sovelluksesta k\u00e4sin on edellytt\u00e4nyt alustavia tutkimuksia. Teknisesti toteutukselle ei ole esteit\u00e4.<\/p>\n<h6>Tekniset tiedot<\/h6>\n<p>Alkuvaiheessa kehitett\u00e4v\u00e4 ratkaisu toimisi yhten\u00e4 palveluna hy\u00f6dynt\u00e4en valmiita palveluita mm. tietokantoihin ja s\u00e4hk\u00f6postipalvelimiin liittyen. Mik\u00e4li kehitysvaiheessa ilmenee, ett\u00e4 se rakentuu selke\u00e4sti erillisist\u00e4 osioista, voidaan ne irrottaa omiksi palveluikseen. J\u00e4rjestelm\u00e4 pystytet\u00e4\u00e4n omille virtuaaliservereille, joilla se py\u00f6rii <a href=\"https:\/\/www.docker.com\/what-docker#\/container-platform\" target=\"_blank\" rel=\"noopener\">Docker-konteissa<\/a>. Docker-alustalla toimiminen helpottaa skaalautuvuutta, jolla en t\u00e4ss\u00e4 tarkoita samaa kuin useimmissa webbipalveluissa, joissa k\u00e4ytt\u00e4j\u00e4m\u00e4\u00e4r\u00e4n lis\u00e4\u00e4ntyminen koetaan t\u00e4rkeimm\u00e4ksi syyksi skaalautuvuudelle. Teht\u00e4vienhallintaj\u00e4rjestelm\u00e4n k\u00e4ytt\u00e4j\u00e4m\u00e4\u00e4r\u00e4 ja k\u00e4ytt\u00f6 on rajattua, ja skaalautuminen on t\u00e4rke\u00e4\u00e4 l\u00e4hinn\u00e4 tavoitettavuuden ja yll\u00e4pidon kannalta. Mik\u00e4li samasta palvelusta on k\u00e4yt\u00f6ss\u00e4 yht\u00e4 aikaa useampia kopioita, voidaan esimerkiksi kriittiset p\u00e4ivitykset tehd\u00e4 ilman ett\u00e4 loppuk\u00e4ytt\u00e4jien palvelun k\u00e4ytt\u00f6 keskeytyy.<\/p>\n<p>Kaikki palvelut teht\u00e4isiin <a href=\"https:\/\/pivotal.io\/cloud-native\" target=\"_blank\" rel=\"noopener\">\u201dcloud native\u201d -tekniikoilla<\/a>, jotta ne ovat viet\u00e4viss\u00e4 sellaisenaan yleisimmille pilvialustoille. J\u00e4rjestelm\u00e4n ydintoimintojen toteutus tapahtuisi Javalla ja <a href=\"http:\/\/spring.io\/\" target=\"_blank\" rel=\"noopener\">Spring Frameworkilla<\/a>, joilla t\u00e4llaisten sovellusten tuottaminen on vaivatonta. Muita teknologioita voidaan ottaa k\u00e4ytt\u00f6\u00f6n tarpeiden mukaan. J\u00e4rjestelm\u00e4n kehityksess\u00e4 pyrit\u00e4\u00e4n k\u00e4ytt\u00e4m\u00e4\u00e4n valmiita avoimen l\u00e4hdekoodin komponentteja ja palveluita, eli ei yritet\u00e4 keksi\u00e4 py\u00f6r\u00e4\u00e4 uudelleen, vaan keskityt\u00e4\u00e4n yrityksen toiminnan kannalta t\u00e4rkeiden toiminnallisuuksien kehitt\u00e4miseen. Yrityksen olemassa olevia palveluita, eli Office365 yms., voidaan hy\u00f6dynt\u00e4\u00e4 k\u00e4ytt\u00e4jienhallinnassa ja autentikoinnissa.<\/p>\n<p>Tallennettavat tiedot tulevat olemaan rakenteeltaan yhten\u00e4isi\u00e4 ja hyvin m\u00e4\u00e4riteltyj\u00e4, joten suunnitelman mukaiseen palveluun paras tallennusratkaisu on relaatiotietokanta. Tietokannaksi olen alustavasti valinnut <a href=\"https:\/\/www.postgresql.org\/about\/\" target=\"_blank\" rel=\"noopener\">PostgreSQL<\/a>:n, koska sen k\u00e4yt\u00f6st\u00e4 ja yll\u00e4pidosta on kokemusta ja se laajentuu tarvittaessa my\u00f6s dokumenttitietokannaksi. Tietokannan tyyppi ei sin\u00e4ns\u00e4 ole t\u00e4rke\u00e4\u00e4, koska sen suuntaan teht\u00e4v\u00e4 rajapinta on vaihdettavissa k\u00e4ytt\u00e4m\u00e4\u00e4n muita tietokantatyyppej\u00e4, mik\u00e4li tarpeen. T\u00e4llainen tarve voi tulla esimerkiksi, jos jo aluksi tai my\u00f6hemm\u00e4ss\u00e4 vaiheessa halutaan siirt\u00e4\u00e4 palvelu pilvialustalta ja -palveluntarjoajalta toiseen, eik\u00e4 siell\u00e4 tarjolla ole valmiina kyseisen tyyppist\u00e4 tietokantaa. Redis-dokumenttitietokantaa k\u00e4ytet\u00e4\u00e4n k\u00e4ytt\u00e4j\u00e4istuntojen aikaiseen tallentamiseen ja senkaltaisen tiedon jakamiseen j\u00e4rjestelm\u00e4n eri palveluiden v\u00e4lill\u00e4. T\u00e4m\u00e4 tieto s\u00e4ilytet\u00e4\u00e4n ainoastaan muistissa ja se poistetaan, kun se tulee tarpeettomaksi, esimerkiksi k\u00e4ytt\u00e4j\u00e4n uloskirjautumisen yhteydess\u00e4.<\/p>\n<p>Tietokantarakenne mahdollistaa teht\u00e4vien vapaan kategorisoinnin ja luokittelun tilitoimiston vaatimusten ja k\u00e4yt\u00e4nn\u00f6n tarpeiden mukaan heid\u00e4n itsens\u00e4 toimesta niin, ett\u00e4 tietoja voidaan hakea niiden perusteella. Tietokantahakuja voidaan lis\u00e4ksi rajata my\u00f6s muiden tietojen, kuten henkil\u00f6iden, asiakasyritysten, laskutettavien tietojen ja ajanjaksojen mukaan. Tietokantaan tallennetut tiedot ovat hy\u00f6dynnett\u00e4viss\u00e4 raportoinnissa ja liittym\u00e4rajapinnoissa, joista esimerkkin\u00e4 tilitoimiston laskutus. Laskutus tapahtuu k\u00e4yt\u00e4nn\u00f6ss\u00e4 siten, ett\u00e4 yritt\u00e4j\u00e4 suorittaa tietokantahaun laskutettavista teht\u00e4vist\u00e4 valitsemillaan kriteereill\u00e4 ja laskut siirtyv\u00e4t nappia painamalla <a href=\"https:\/\/dev.procountor.com\/\" target=\"_blank\" rel=\"noopener\">API-rajapinnan<\/a> kautta tilitoimiston omassa k\u00e4yt\u00f6ss\u00e4 olevaan Procountor-tietokantaan, josta laskut l\u00e4htev\u00e4t asiakkaille. Procountorissa voidaan nykyisin tarkastella kerrallaan vain yht\u00e4 asiakasyrityst\u00e4 ja sen yksitt\u00e4isi\u00e4 toimintoja. <a href=\"https:\/\/dev.procountor.com\/\" target=\"_blank\" rel=\"noopener\">API-rajapinnan<\/a> kautta voidaan jatkossa hakea samaan n\u00e4kym\u00e4\u00e4n kaikkien asiakasyritysten halutut tiedot ja esitt\u00e4\u00e4 ne kokonaisuutta selkiytt\u00e4v\u00e4n\u00e4 yhteenvetona tilitoimiston toiminnan helpottamiseksi.<\/p>\n<h6>Aikataulu<\/h6>\n<p>Teht\u00e4vienhallinnan j\u00e4rjestelm\u00e4n kehitt\u00e4minen tulisi porrastaa sopiviin vaiheisiin siten, ettei kehitysty\u00f6 rasita tarpeettomasti tilitoimiston henkil\u00f6kuntaa.<\/p>\n<p>Tietoj\u00e4rjestelm\u00e4suunnittelu voidaan toteuttaa opintoihini liittyv\u00e4n\u00e4 projektina kes\u00e4ll\u00e4 2018, jonka j\u00e4lkeen yksityiskohdat ovat selvill\u00e4, jotta niiden perusteella voidaan pyyt\u00e4\u00e4 tarjous toteutuksesta, mahdollisesti my\u00f6s jossain m\u00e4\u00e4rin osana opintojani. Varsinainen ohjelmistokehitys voitaisiin n\u00e4in ollen aloittaa syksyll\u00e4 2018.<\/p>\n<p>K\u00e4yt\u00e4nn\u00f6ss\u00e4 ohjelmistoty\u00f6n kehitysaikataulu tarkentuu sen j\u00e4lkeen, kun j\u00e4rjestelm\u00e4n ensimm\u00e4inen demoversio valmistuu ja j\u00e4rjestelm\u00e4n tulevilta k\u00e4ytt\u00e4jilt\u00e4 saadaan lis\u00e4tietoja. T\u00e4ss\u00e4 vaiheessa n\u00e4kemykseni on, ett\u00e4 varsinainen ohjelmistokehitys tulisi vaiheistaa ainakin kahteen osaan, jotka on mahdollista toteuttaa loppuvuoteen 2018 menness\u00e4 siten, ett\u00e4 vuodenvaihteen j\u00e4lkeen vuonna 2019 tilitoimistolla olisi k\u00e4yt\u00f6ss\u00e4\u00e4n uusi teht\u00e4vienhallinnan osio ja Procountorin API-rajanpinnan kautta saatavat tiedot seuraavia kev\u00e4tkiireit\u00e4 helpottamaan.<\/p>\n<p>Asiakasviestinn\u00e4n osuus voidaan j\u00e4tt\u00e4\u00e4 viimeiseksi ja toteuttaa vasta kes\u00e4ll\u00e4 2019, mik\u00e4li se aiemmin toteutettuna ja kiireiseen kev\u00e4tkauteen ajoittuvana kehitysvaiheena tulisi vaatimaan tilitoimiston henkil\u00f6kunnalta resursseja.<\/p>\n<h6>Kehitysty\u00f6n hy\u00f6dyt<\/h6>\n<p>Varsinaiset taloudelliset ja toiminnalliset hy\u00f6dyt tulevat esille t\u00e4ss\u00e4 kehitysprojektin toisessa vaiheessa, jossa uusi j\u00e4rjestelm\u00e4 tehostaa ty\u00f6prosesseja ja s\u00e4\u00e4st\u00e4\u00e4 sit\u00e4 kautta merkitt\u00e4v\u00e4n m\u00e4\u00e4r\u00e4n ty\u00f6ntunteja. Samalla koko yrityksen toiminta selkiytyy sek\u00e4 laadukkaiden ja virheett\u00f6mien palvelujen tuottaminen asiakkaille on nopeampaa ja vaivattomampaa. Merkitt\u00e4vimm\u00e4t ty\u00f6n tehostumisen hy\u00f6dyt ovat yritt\u00e4j\u00e4lt\u00e4 vapautuvat ty\u00f6tunnit, jotka mahdollistavat aiempaa nopeamman laskutussyklin lis\u00e4ksi yrityksen kehitt\u00e4mistoimet sek\u00e4 kokonaan uudet liiketoiminnan tuotot.<\/p>\n<p>Maltillisesti laskettuna voidaan olettaa, ett\u00e4 laskutettavien ty\u00f6tuntien (70 \u20ac\/h) m\u00e4\u00e4r\u00e4 lis\u00e4\u00e4ntyy jokaisena kuukauden ty\u00f6p\u00e4iv\u00e4n\u00e4 (21,5 pv) kaksi tuntia, joka tarkoittaisi yrityksen liikevaihdon kasvavan vuosittain noin 36 000 eurolla (2 h x 70 \u20ac\/h x 21,5 pv x 12 kk).<\/p>\n<h6>Kustannukset<\/h6>\n<p>Tietoj\u00e4rjestelm\u00e4n suunnittelu voidaan toteuttaa oppilasty\u00f6n\u00e4. Muilta osin uuden teht\u00e4vienhallinnan j\u00e4rjestelm\u00e4n kustannukset muodostuvat kehitysty\u00f6st\u00e4 ja yll\u00e4pidosta ja ne lasketaan niin, ett\u00e4 takaisinmaksuaika on enint\u00e4\u00e4n viitt\u00e4 vuotta. Yrityksille on lis\u00e4ksi olemassa erilaisia tukimuotoa, esimerkiksi t\u00e4h\u00e4n tarkoitukseen hyvin soveltuvia kehitt\u00e4misavustuksia, joiden avulla takaisinmaksuaika voi pienenty\u00e4 jopa puoleen.<\/p>\n<p>Kolmannen osapuolen kehityskustannukset eiv\u00e4t ole t\u00e4ss\u00e4 vaiheessa tiedossa, mutta arvioni mukaan ne ovat mahdollisia tukimuotoja huomioimatta on noin 25\u00a0000 euroa. Kustannukset muodostuvat v\u00e4hitellen kehitysty\u00f6n edetess\u00e4 ja ne voidaan rahoittaa tulorahoituksella. On selv\u00e4\u00e4, ett\u00e4 teht\u00e4vienhallinnan j\u00e4rjestelm\u00e4n kustannukset m\u00e4\u00e4r\u00e4ytyv\u00e4t suunnitteluty\u00f6n edetess\u00e4 ja k\u00e4ytt\u00e4jien m\u00e4\u00e4rittelemien lopullisten ominaisuuksien mukaan.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Uusi kehitett\u00e4v\u00e4 j\u00e4rjestelm\u00e4 Kehitysprojektin edetess\u00e4 ja tilitoimiston nykyisten kankeiden ty\u00f6prosessien k\u00e4yty\u00e4 ilmi, p\u00e4\u00e4dyin siihen, ett\u00e4 toiminnan tehostamiseksi ja parantamiseksi toimivin sek\u00e4 helpoin ratkaisu on kehitt\u00e4\u00e4 tilitoimiston tarpeisiin soveltuva teht\u00e4vienhallinnan j\u00e4rjestelm\u00e4. J\u00e4rjestelm\u00e4 tulisi olemaan tietokantapohjainen ja selaink\u00e4ytt\u00f6inen sek\u00e4 mahdollisimman helppok\u00e4ytt\u00f6inen ty\u00f6kalu p\u00e4ivitt\u00e4iseen ty\u00f6skentelyyn. Uuden ratkaisun my\u00f6t\u00e4 ja yhden j\u00e4rjestelm\u00e4n avulla, tilitoimisto voi tarjota jatkossa asiakkailleen aidosti &hellip; <a href=\"https:\/\/blogi.eoppimispalvelut.fi\/tilitoimisto\/lopputulos\/tehtavienhallinnan-jarjestelma\/\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">Teht\u00e4vienhallinnan j\u00e4rjestelm\u00e4<\/span> <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":3093,"featured_media":0,"parent":8,"menu_order":1,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-82","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/blogi.eoppimispalvelut.fi\/tilitoimisto\/wp-json\/wp\/v2\/pages\/82","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogi.eoppimispalvelut.fi\/tilitoimisto\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/blogi.eoppimispalvelut.fi\/tilitoimisto\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/blogi.eoppimispalvelut.fi\/tilitoimisto\/wp-json\/wp\/v2\/users\/3093"}],"replies":[{"embeddable":true,"href":"https:\/\/blogi.eoppimispalvelut.fi\/tilitoimisto\/wp-json\/wp\/v2\/comments?post=82"}],"version-history":[{"count":10,"href":"https:\/\/blogi.eoppimispalvelut.fi\/tilitoimisto\/wp-json\/wp\/v2\/pages\/82\/revisions"}],"predecessor-version":[{"id":100,"href":"https:\/\/blogi.eoppimispalvelut.fi\/tilitoimisto\/wp-json\/wp\/v2\/pages\/82\/revisions\/100"}],"up":[{"embeddable":true,"href":"https:\/\/blogi.eoppimispalvelut.fi\/tilitoimisto\/wp-json\/wp\/v2\/pages\/8"}],"wp:attachment":[{"href":"https:\/\/blogi.eoppimispalvelut.fi\/tilitoimisto\/wp-json\/wp\/v2\/media?parent=82"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}