Adoben, Microsoftin ja SAP:in Open Data – aloitteen tuloksena syntynyt Common Data Model (CDM) pyrkii mallintamaan liiketoiminnan yleiset käsitteet yhtenäiseksi tietomalliksi, joita sovellukset pystyisivät käyttämään sellaisenaan tai pienin laajennuksin. Mallin avulla tietojen hyödyntäminen, yhteiskäyttö ja integraatiot olisi helpompi toteuttaa sovellus-, organisaatio-, sekä ekosysteemirajojen yli.

Open Data – aloite

Adobe, Microsoft ja SAP julkistivat vuoden 2018 Microsoft Ignite-tapahtumassa yhteisen Open Data – aloitteen. Lukemalla rivien välistä korusanoja pursuavan julkilausuman, käytännön tavoitteeksi paljastuu a) päästä eroon tietosiiloista ja b) saada aikaan yksi yhteinen tietomalli, joka kuvaa liiketoiminnan peruskäsitteet ja näiden käsitteiden väliset suhteet. Yhteinen tietomalli voisi tuoda siiloutuneet liiketoimintasovellukset, organisaatiot ja ekosysteemit lähemmäs toisiaan.

Yhteisen tietomallin tavoittelu ei suinkaan ole alalla uutta. Yksittäisten organisaatioiden lisäksi kentän suuret toimijat kuten IBM, Oracle, Adobe, SAP, Microsoft ja SalesForce – ovat pitkään kehittäneet omia mallejaan, ja tarjonneet näitä paketoituna oman ekosysteeminsä sovelluksissa. Uutta on se, että osa avainpelureista pyrkii nyt yhdistämään mallinsa, joka teoriassa voisi helpottaa sovellusten rakentamista.

Common Data Model (CDM)

CDM määrittelee joukon yleisesti liiketoimintasovelluksissa käytettyjä liiketoimintaobjekteja (entities), näiden kentät sekä objektien väliset suhteet (relations). Mallin liiketoimintaobjekteja ovat mm:

  • Asiakasyritys (Account)
  • Kontakti (henkilö joka työskentelee asiakasyrityksessä)
  • Aktiviteetti (vaikkapa: myyjä lähettää sähköpostin asiakasyrityksessä töissä olevalle kontaktille)
  • Omistaja (käyttäjä tai tiimi joka “omistaa” kyseisen asiakkuuden tai muun mallin objektin)
  • Tehtävä
  • Tilaus ja TilauksenTuote (= yksittäinen tilausrivi tilauksessa)
  • Tuote, Tuotehinnasto
  • Malli sisältää noin 700 liiketoimintaobjektia, joissa keskimäärin +-100 kenttää per objekti.

Mallin sisältämät paketit (package) kattavat yleiset tietorakenteet joita voidaan käyttää esimerkiksi asiakkuudenhallinta-, myynti-,  markkinointi-, Service Desk- tai HR-järjestelmän rakentamisessa. Pakettien lisäksi malli sisältää kaikille toiminnoille yhteisen Core-paketin. Core sisältää mm. asiakasyritys-, aktiviteetti-, kontakti- sekä valuuttaobjektit. Asiakaspalvelun (= tiketöintijärjestelmän) toteutuksessa käytetyt Service – paketin objektit käyttävät omien lisäksi Core-paketin objekteja. Alla oleva kuva hahmottaa pakettien sisältöä toiminnoittain.

CDM Schema

» Lataa koko “Overview PDF poster” kuva tästä!

CDM GitHub repo & mallin graafinen selain

Malli on julkaistu github repositoryna, josta voit kloonata mallin määritykset json-tiedostoina sisältävän hakemistorakenteen. Json-tiedostot kuvaavat mallin tietotyypit, objektit, niiden kentät sekä objektien väliset suhteet. Malli on lisensoitu Creative Commons Attribution 4.0 International Public lisenssillä (viitattu 14.4.2020).

Microsoft on toteuttanut myös CDM model browser – työkalun mallin miellyttävämpää selaamista varten.

Mitä CDM on – ja mitä se ei ole

CDM ei ota kantaa tiedon todelliseen tallennusmenetelmään. Tieto voidaan tallentaa mille tahansa valitulle medialle, tai useampaan eri rakenteeseen. Malli määrittelee ainoastaan rakenteen (schema) jossa tieto tulee tallentaa yhteensopivuuden takaamiseksi. Mikäli tallentaisit tiedon perinteiseen SQL-relaatiokantaan, malli määrittäisi käytännössä tietokannan rakenteen: Taulujen nimet, niiden sarakkeet sekä taulujen väliset foreign-key viittaukset.

CDM ei tarjoa tiedon tallennuspaikkaa tai menetelmää, käyttöliittymiä tietojen syöttämiseen, työpöytiä, prosesseja, käyttäjähallintoa, integraatioita tai API-rajapintoja dataan. Nämä kaikki jäävät mallin toteuttavan järjestelmän vastuulle. Microsoftin tuoteperheen Dynamics 365, PowerApps – alusta sekä PowerBI osaavat hyödyntää mallin määrittelemän rakenteen mukaisesti tallennettua omassa toiminnassaan. Yhteinen tietomalli takaa tietojen helpomman yhteiskäyttöisyyden kyseisissä tuoteperheissä. Tarkempaa tietoa löydät Microsoftin Common Data Model – dokumentaatiosta.

Mallin hyötyjä

Malli pyrkii helpottamaan datan siiloutumisesta aiheuttavia ongelmia. Otetaan esimerkki: Organisaatiossasi on kolme massiivista operatiivista sovellusta: Markkinointi- Myynti- sekä Asiakaspalvelusovellukset. Jokainen näistä järjestelmistä sisältää Asiakas-tietorakenteen, joka on melkein (mutta ei täsmälleen) sama kuin sisarsovellusten vastaava. Järjestelmän on rakentanut eri toimittaja, hieman eri aikakaudella. JOS käyttäisit yhteistä tietomallia, kaikki sovellukset voisivat käyttää samaa käsitystä siitä, mikä Asiakas oikeastaan on, ja mitä tietoa asiakkaaseen liittyy. Jokainen sovellus voi toki laajentaa asiakas-käsitystä tarpeen mukaan, mutta yhteinen käsitys asiakkaasta on määritelty vain kertaalleen. Jos olet järjestänyt asiasi hyvin, tarvisit vain yhden tallennusrakenteen, yhden asiakkuus-näkymän, yhden rajapinnan ja yhden työkalun tiedon käyttämiseen. Asiakkuuteen tehdyt muutokset olisivat kaikkien sovellusten käytössä ilman mutkikkaita integraatioita.

CDM:n pitäisi teoriassa helpottaa tiedon ajantasaisuuden ongelmaa, sekä monesta-moneen integraatioita/konversioita useiden eri järjestelmien välillä. Kokonaiskuvan hahmottaminen olisi takuuvarmasti helpompaa yhteisen jaetun tietomallin avulla. Yhtenäinen useiden toimijoiden sopima tietorakenne tarjoaa myös mahdollisuuden (joskaan ei vielä lupausta) vakioitujen työkalujen ja menetelmien (ehkä jopa AI:n) käyttöönotossa, ilman lopullista sitoutumista yhden ekosysteemin välineisiin.

Lisätietoja