API-taloutta Azuren avulla

API-taloutta Azuren avulla

API-talous muuttaa liiketoimintaa

Me Sofectan asiantuntijat olemme tehneet vuosien saatossa lukemattoman määrän integraatioita eri järjestelmien kesken. Rajapintaosaaminen ja suunnittelu osana liiketoiminnan prosessien määrittämistä on tullut jokapäiväiseksi rutiiniksi. Uusien sovellusten rakentamisen sijaan toimeksiannot ovat yhä useammin eri sovellusten ja muiden resurssien toisiinsa liittämistä eli integroimista niin, että yrityksen operatiiviset prosessit muodostavat sujuvan kokonaisuuden. Integraatioilta odotetaan vikasietoisuutta, valvottavuutta, skaalautuvuutta ja niiden on oltava helposti muokattavia, tietoturvallisia sekä kustannustehokkaita. Tässä ns. API-taloudessa tekniset rajapinnat, datan välitys ja tietoliikenne ovat kriittisiä tekijöitä koko yrityksen toiminnalle. Vaatimukset täyttyvät, kun integraatiot toteutetaan Azure PaaS (Platform as a Service)- alustan moderneja palveluja hyödyntäen, ja tarvittaessa rikastaen liittymäprosessia ESB (Enterprise Service Bus)- väylän asynkronisella viestinvälityksellä.

Case ”Gargo tracker”

APIen merkitystä yritykselle voidaan konkretisoida anonyymillä case-esimerkillä (Cargo Tracker) uran varrelta. Esimerkin sovelluspalvelua ei oltu integroitu aiemmin yhteenkään loppuasiakkaan toiminnanohjausjärjestelmään, mutta APIen mahdollisuuksien ymmärtäminen muutti yrityksen toimintaperiaatteet. Esimerkissä yrityksen liiketoiminta oli globaalia ja sen tuottama sovelluspalvelu piti saada keskustelemaan useiden erilaisten ERP-järjestelmien kanssa. ERPien kirjavuuden lisäksi haasteena oli mm. alueelliset erot tietoliikenneinfrastruktuurissa sekä vaatimus vika- ja häiriösietoisesta sanomien vaihdosta palvelun ja ERPien välillä. Cargo Tracker- palvelun ydinprosessiksi muodostui uudistuksen myötä globaalin online-paikkatietodatan tuottaminen loppuasiakkaiden ERPeille rahdin paikantamiseen.

Cargo Tracker-palvelussa rahdin paikkatietodata saadaan gsm-paikantimista. Paikantimet laitetaan rahdin mukaan sen lähtöpisteessä. Paikannin lähettää sijaintidadaa tietyin väliajoin. Paikantimet konfiguroidaan Cargo Tracker-palvelussa rahti- ja asiakaskohtaisesti, jonka perusteella ne voidaan integroida lähettäjän/vastaanottajan ERP-järjestelmään. Integroitavat ERP-järjestelmät voivat sijaita globaalisti missä tahansa. ERPien toteutusteknologia vaihtelee, mutta palvelulle riittää, että ERPillä on tarjota rajapinta, joka mahdollistaa paikkatiedon välittämisen.

Alkuperäisessä palvelussa loppuasiakkaat kokivat ongelmaksi sen, että paikannettu rahdin sijainti piti erikseen käydä katsomassa portaalista. Haasteena oli myös se, että ennakoivia hälytyksiä ei saatu suoraan loppuasiakkaiden toiminnanohjauksen käyttöön esimerkiksi tilanteista, joissa rahti oli pysähtynyt liian pitkäksi aikaa yhteen paikkaan. Globaalissa toiminnassa vaatimuksena on luonnollisesti 24/7-toimivuus ja häiriöttömyys, mutta samalla kustannustehokkuus. Uusien loppuasiakkaiden kytkeminen palvelun käyttäjiksi piti olla suoraviivaista.

Palvelun modernisointi Azureen

Palvelu päätettiin uudistamisen yhteydessä siirtää PaaS-alustalle, jotta globaali saavutettavuus ja skaalautuvuus saatiin toteutettua kustannustehokkaasti. Ajoympäristöksi valikoitui Microsoft Azure, joka tarjosi hyvät virtualisointi-, tietoliikenne ja datapalvelut, peilaten ne globaalisti haluttuihin datakeskuksiin. Azuren kattavat valvonta- ja ylläpitotyökalut tehostivat ylläpitovaiheessa operointia. Koska alkuperäisessä Cargo Tracker-palvelusta puuttuivat tekniset rajapinnat, toteutettiin ne REST API-arkkitehtuurin mukaisesti projektin aikana. Rajapintojen kehittäminen oli nopeaa .netin mallipohjilla Visual Studio Online-ympäristössä.

Azure, PaaS, ESB-väylä, integraatio, viestinvälitys ERP, GSM-paikannus

Loppuasiakkaiden ERP-järjestelmien ja paikannussovellusten integroimiseksi tarvittiin sanomajonoteknologiaa ja ohjelmallinen viitekehys, joka mahdollisti mm. vika- ja häiriötilanteista palautuvuuden, rajattoman skaalautuvuuden, pitkäaikaiset prosessit, valvonnan ja palvelujen uudelleenkäytön. Luonnollisesti ratkaisun piti olla edullinen. Näillä kriteereillä integraatioalustan toteutusteknologiaksi valittiin NserviceBus (Particular), joka hyödynsi Azuren sanomajonopalveluja.

Komponenttien valinnan myötä palvelun kehitettävä logiikka pysyi yksinkertaisena ja helposti testattavana. Integraatioalusta sai tarvitsemansa asiakas- ja paikkatietodatan REST/API-rajapinnoilta. Data prosessoitiin ja välitettiin eteenpäin sanomia odottaville ERP-järjestelmien liittymille. Yksi rahti/kuljetus oli pitkäaikainen prosessi, jonka elinkaarta palvelussa seurattiin. Teknisesti gsm-paikantimien valvonta, hälytykset ja paikkatiedon varastointi toteutettiin käyttämällä NserviceBus:n saga-ominaisuutta. Saga-prosessi alustettiin rahtiin lisätyn paikantimen rekisteröinnin yhteydessä, jolloin se alkoi pitää kirjaa rahdin paikkatiedosta, tekemään hälytyksiä sekä lähettämään sijaintitietoja integroidulle loppuasiakkaan ERP-järjestelmälle aina rahdin määränpäähän saakka. Kun rahti (ja paikannin) saapui määränpäähän, saga-prosessin elinkaari päättyi. Integraatioalusta huolehti liittymien valvonnasta ja koosti hälytysviestit poikkeamista valvojille.

Yhteenvetona

Cargo Tracker -palvelun uudistamisen myötä sovelluksesta tuli API-rajapintojen kautta osa loppuasiakkaiden toiminnanohjausta. Yrityksen tuottama palvelu loi saumatonta lisäarvoa loppuasiakkaiden liiketoimintaan ja siirsi paikannuspalvelua tuottavan yrityksen kasvu-uralle. Mahdollisuus liittää gsm-paikannus osaksi loppuasiakkaan toiminnanohjausta lisäsi merkittävästi loppuasiakkaiden kiinnostusta rahdin ja kuljetusten seurantaan.

Palvelun globaali toimintavarmuus nousi aivan uudelle tasolle Azure PaaS-palveluihin siirtymisen myötä. Vastaavasti sovellustasolla uusien loppuasiakkaiden ERP-järjestelmien liittäminen osaksi paikannuspalvelua saatiin suoraviivaiseksi, koska integraatioalusta tarjosi kerran toteutetun liittymälogiikan muunnoksineen ja validointeineen uudelleenkäytettäväksi. Myös integraatioiden elinkaarikulut saatiin hallintaan; loppuasiakkaiden ERP-järjestelmien päivitykset tai muut mahdolliset rajapintoihin tai logiikkaan vaikuttavat muutokset rajautuivat vain kyseiseen liittymään, eivät muuhun Cargo Tracker- järjestelmään tai muiden loppuasiakkaiden rajapintoihin.

Paikannuspalvelun käyttöönoton ja testauksen jälkeinen ylläpito on ollut minimaalista. Yhdistetyllä Azure PaaS-alustan ja sen palvelujen sekä ESB- logiikan valvonnalla havaitaan mahdolliset virhetilanteet jo ennen kuin ne ehtivät vaikuttaa loppuasiakkaiden liiketoimintaan. Seuraava steppi olisi tehostaa entisestään paikannuspalvelun käyttöönottoa, hallintaa ja APIen tuotteistamista Azure API Management– tuotteella.

Lue lisää API-hallinnan käyttöönotosta web-sivuiltamme!

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *

Back to Top