Nykyisin on olemassa useita erilaisia Ops-jälkiliitteellisiä termejä kuten BizOps, DataOps, DevOps ja RegOps. Matkalaukkusanat (suitcase words), kuten tekoäly (artificial intelligence, AI), ja erityisesti sulautumat/yhdistelmäsanat (portmanteaus), kuten Ops-jälkiliitteelliset, ovat laajasisältöisiä ja monimerkityksellisiä. Ops on lyhenne sanasta operations (suomentuu käyttö, operaatiot, tai toiminnat1)) ja Ops-jälkiliitteellisiä termejä käytetään kuvaamaan toimintatapojen ja työkalujen yhdistelmiä, joilla saadaan mahdollisimman laadukkaasti ja nopeavasteisesti kehitettyä ja toimitettua jotain asiakkaille hyötykäyttöön yhden tai useamman toiminnon, kuten HR tai Talous, palvelujen tarjoamiseksi.

Tänä päivänä asiakkaat ostavat tietoteknisten ratkaisujen kehitys- ja käyttöpalvelut yhdeltä tai useammalta toimittajalta – kehitykseen osallistuvia tahoja kutsutaan yleisesti kehitystiimeiksi ja käyttöpalveluista vastaavia tuotantotiimeiksi. Kun kehityksen lopputulokset eli kehitystiimin tuottamat julkaisut ovat valmiita toimitettaviksi, niin tuotantotiimien tehtävänä on julkaisujen toimittaminen asiakkaiden ajoalustoille. Julkaisu (release) mielletään pääasiassa ohjelmistoihin liittyväksi ja DataOps-kontekstissa julkaisulla tarkoitetaan esimerkiksi koneoppimismalleja ja tilannekuvia (dashboards).

Työnkulut, joissa on peräkkäin ja/tai rinnakkain suoritettavia vaiheita (stages) ja niihin kuuluvia tehtäviä, kutsutaan liukuhihnoituksiksi2) tai putkiksi/putkistoiksi/putkilinjoiksi (pipelines) ja niiden päätarkoitus on tehostaa toimintaa minimoimalla ihmisen tekemä työ ja maksoimoimalla automaatio. Toimittajien tulee varmistaa liukuhihnoituksien osalta niiden soveltuvuus (utility – fit for use) ja toimintavarmuus (warranty – fit for purpose)3) asiakaskohtaisesti. Ops-jälkiliitteellisten termien yhteydessä puhutaan orkestroinnista, jolla tarkoitetaan ihmisten, prosessien ja teknologioiden yhteensovittamista. DataOpsin yhteydessä orkestroinnilla voidaan tarkoittaa esimerkiksi ohjelmoitavia tehtäviä, joita voidaan ohjelmoimalla ajoittaa ja valvoa määrittelemällä esimerkiksi suunnattuja asyklisiä graafeja (directed acyclic graphs, DAGs)4) – yleisemmin puhutaan konfiguraatiosta koodina (configuration as code), mikä konkretisoituu esimerkiksi merkintäkielisinä (kuten JSON, XML, tai YAML) tai koodattuina (kuten Java, Python tai Scala) tiedostoina.

DataOps keskittyy menetelmiin ja työkaluihin, jotka mahdollistavat laadukkaan ja nopeavasteisen data-analytiikan5). DataOps manisfestissa6) kehoitetaan arvostamaan analytiikassa seuraavia asioita, joista osa on samoja kuin ketterän ohjelmistokehityksen julistuksessa7):

  • ”Yksilöitä ja kanssakäymistä enemmän kuin menetelmiä ja työkaluja” (individuals and interactions over processes and tools)
  • Toimivaa analytiikkaa ”enemmän kuin kattavaa dokumentaatiota” (working analytics over comprehensive documentation)
  • ”Asiakasyhteistyötä enemmän kuin sopimusneuvotteluja” (customer collaboration over contract negotiation)
  • Kokeilua, iterointia ja palautetta enemmän kuin laajaa etukäteissuunnittelua (experimentation, iteration, and feedback over extensive upfront design)
  • Monialalaista toimintojen omistajuutta enemmän kuin siiloutuneita vastuita (cross-functional ownership of operations over siloed responsibilities)

DataOps manifestissa on 18 periaatetta, joiden suomennokset voidaan kiteyttää seuraavasti:

  1. Vakuuta asiakas jatkuvasti (continually satisfy your customer). Ensisijainen tavoite on mahdollistaa se, että asikas saa jatkuvasti hyödyllisiä analyyttisiä näkemyksiä (insights).
  2. Arvosta toimivaa analytiikkaa (value working analytics). Analytiikassa käytetään robusteja/vakaita viitekehyksiä ja järjestelmiä.
  3. Omaksu muutos (embrace change). Asiakastarpeet muuttuvat ja niistä keskustellaan asiakkaan kanssa sekä kannustetaan asiakkaita esittämään erilaisia tarpeita esimerkiksi kilpailuedun saavuttamiseksi.
  4. Kyseessä on joukkueurheilu (it’s a team sport). Ihmisillä on erilaisia suosikkityökaluja ja taitoja – monipuolisuus lisää innovaatioita ja tuottavuutta.
  5. Päivittäinen vuorovaikutus (daily interactions). Kehitystiimien, asiakkaiden ja tuotantotiimien on työskenneltävä yhdessä.
  6. Itseorganisoidu (self-organize). Itseorganisoituvat tiimit tuottavat parhaat tulokset.
  7. Vähennä sankaruutta (reduce heroism). Pyritään luomaan kestäviä ja skaalautuvia tiimejä ja prosesseja.
  8. Reflektoi (reflect). Toimintaa hienosäädetään (fine-tune) eri sidosryhmilta saatavan palautteen perusteella.
  9. Analytiikka on koodia (analytics is code). Esimerkiksi datan integrointiin, mallinnukseen ja visualisointiin käytetyt työkalut generoivat koodia ja konfiguraation, joka kuvaa datalle tehdyt toiminnot (actions).
  10. Orkestroi (Orchestrate). Data, työkalut, koodit, ympäristöt ja tiimityöskentely tulee yhteensovittaa.
  11. Tee siitä toistettava (make it reproducible). Versioi kaikki mahdollinen.
  12. Käytettävissä olevat ympäristöt (disposable environments). Tee kokeiluja ja minimoi kokeilukustannukset, jotta on mahdollista tehdä kokeiluja tuotantoympäristön kaltaisissa kokeiluympäristöissä.
  13. Yksinkertaisuus (simplicity). Maksimoi tekemättömän työn määrä.
  14. Analytiikka on teollisuutta (analytics is manufacturing). Keskity prosessiajatteluun, sillä analytiikkaputket vastaavat lean-menetelmän tuotantolinjoja (manufacturing lines).
  15. Laatu on ensiarvoisen tärkeää (quality is paramount). Rakenna analytiikkaputket siten, että poikkeavuudet (abnormalities, jidoka) ja tietoturvaongelmat kyetään havaitsemaan. Lisäksi anaklytiikkaputkien tulee tuottaa jatkuvaa palautetta operaattoreille virheiden välttämiseksi (error avoidance, poka yoke).
  16. Valvo laatua ja suorituskykyä (monitor quality and performance). Seurataan mittareita jatkuvasti odottamattomien muutosten havaitsemiseksi ja operatiivisten tilastojen tuottamiseksi.
  17. Käytä uudelleen (reuse). Vältä yksilön tai tiimin aiemman työn toistamista.
  18. Paranna ideasta tuotantoon kiertoa (improve cycle times). Minimoi aika ja vaiva muuttaa asiakkaan tarpeet analytiikkaideaksi, luoda se kehitykseen, julkaista se toistettavana tuotantoprosessina ja viimeisenä refaktoroi ja käytä uudelleen.

DataOps kaipaa edelleen selkeyttämistä alkaen termimäärittelyistä ja niiden lokalisoinneista kuten on tehty DevOpsin osalta8). DataOpsin tulevaisuus tukeutunee niin sanottuihin yleisiin data malleihin (common data models) ja yleisiin datavarastoihin (common data lakes)9), jotka tukevat erityisesti mukaansatempaavien (immersive)10) ja älykkyyttä lisäävien (augmented intelligence)11) AI-BI-ratkaisujen tuottamista ja mahdollisimman reeliaikaista online-käyttäytymisen hallintaa. Ops-jälkiliitteelliset orkestroinnit (liukuhihnoittamiset ja yhteensovittamiset) onnistuvat, kun organisaatiot tiedostavat ja tekevät läpinäkyväksi sekä eri järjestelmien käyttämät tietokokonaisuudet ja niiden lähteet että järjestelmien tuottamat tuotokset ja niiden kohteet – liukuhihnoittamisen ja yhteensovittamisen tulee olla tarkoituksellista.

Esimerkki erilaisten Ops-jälkiliitteellisten yhdistelmäsanojen päävastuuosa-alueista. RegOps (regulatory operations) yhteensovittaa viranomaisasiakirjojen (kuten lait ja standardit) yhteisten valvontavaatimukset (common controls) organisaation toimintaan. BizOps (business operations) yhteensovittaa erilaiset toimintaympäristön (ml. organisaation sisäiset ja ulkoiset sidosryhmät) vaatimukset organisaation toimintaan. DevOps (development operations) liukuhihnoittaa tietoteknisten ratkaisujen tuotannon. DataOps (data operations) liukuhihnoittaa kuratoituun dataan pohjautuvien objektiivisten näyttöjen (evidences)12) tai toiminnallisten näkemysten (insights)13) muodostamisen.

Lähteet

  1. https://termipankki.fi/tepa/fi/haku/operations
  2. https://termipankki.fi/tepa/fi/haku/pipeline
  3. ITSMF Finland ry. ITSM-sanasto 2019. https://www.itsmf.fi/site/assets/files/1931/itsmf_itsm_sanasto_2019_v1_00.pdf
  4. Atwal Harvinder. (2020). Practical DataOps: Delivering Agile Data Science at Scale. https://www.scribd.com/document/445002788/Harvinder-Atwal-Practical-DataOps-Delivering-Agile-Data-Science-At-Scale-Apress-2020-pdf
  5. The DataOps Channel by DataKitchen https://www.youtube.com/playlist?list=PLVbsAdgZXvtyy6HVKCP0HChjCcq2oW3eK
  6. https://www.dataopsmanifesto.org/
  7. http://agilemanifesto.org/iso/fi/manifesto.html
  8. DASA (Devops Agile Skills Assiciation). DevOps Fundamentals – Glossary ja DASA (Devops Agile Skills Assiciation). DevOps Fundamentals – Syllabus https://drive.google.com/uc?export=download&id=1fnd34jOtHNYd-0Nx0CK80i4BKEn5t9n_
  9. https://www.microsoft.com/en-us/open-data-initiative
  10. https://www.gartner.com/en/newsroom/press-releases/2019-10-02-gartner-reveals-five-major-trends-shaping-the-evoluti
  11. https://www.gartner.com/smarterwithgartner/top-trends-on-the-gartner-hype-cycle-for-artificial-intelligence-2019
  12. ISO (the International Organization for Standardization). (2020). ISO 8000-2:2020(en) Data quality — Part 2: Vocabulary. https://www.iso.org/obp/ui/#iso:std:iso:8000:-2:ed-4:v1:en
  13. ISO (the International Organization for Standardization). (2020). ISO 56000:2020(en) Innovation management — Fundamentals and vocabulary. https://www.iso.org/obp/ui/#iso:std:iso:56000:ed-1:v1:en

Virpi Hotti, FT, on kouluttaja ja konsultti, joka haluaa oivalluttaa ja voimaannuttaa omaksumaan uusia asioita kuten yleisiä tietomalleja (common data models) ja low-code-ratkaisuja sekä erilaisia datasta näkemyksiä (insights) asioita. Lisätietoja https://fi.linkedin.com/in/virpihotti