• Ei tuloksia

Predicting customer lifetime value

N/A
N/A
Info
Lataa
Protected

Academic year: 2022

Jaa "Predicting customer lifetime value"

Copied!
61
0
0

Kokoteksti

(1)

Petri Raatikainen

ASIAKKAIDEN ARVON ENNUSTAMINEN

Diplomityö, joka on jätetty opinnäytteenä tarkastettavaksi diplomi-insinöörin tutkintoa varten.

Vaasassa 1.5.2006

Valvoja:

Prof. TkT Jorma Tarhio

Ohjaaja:

Prof. FT Matti Linna

(2)

Tämä diplomityö on tehty rakkaudesta tietojenkäsittelyyn.

Haluan kiittää työn ohjaajaa, valvojaa ja kaikkia niitä henkilöitä ja tahoja, jotka ovat kannustaneet minua eteenpäin elämässä ja opiskelussa.

Erityisesti haluan kiittää vaimoani Anu Raatikaista siitä tuesta ja kannustuksesta, jota olen saanut työn tekemisen aikana ja ennen sitä, sekä kärsivällisyydestä niinä pitkinä iltoina, jolloin uppouduin välillä tuntikausiksikin LTV-laskennan ihmeelliseen maail­

maan ja työn viimeistelyyn.

Vaasassani .5.201

Petri Raatikainen

(3)

Tietotekniikan osasto

Tekijä

Petri Raatikainen

Päiväys 1.5.2006 Sivumäärä 37

Työn nimi

Asiakkaiden arvon ennustaminen Professuuri

Ohjelmistojärjestelmät

Koodi T-106 Työn valvoja

Prof. TkT Jorma Tarhio Työn ohjaaja

Prof FT Matti Linna

Diplomityön tavoitteena on antaa lukijalle kuva asiakassegmenttien tulevaisuuden laskennasta ja siihen liittyvästä teoriasta sekä tekniikasta. Lisäksi tavoitteena on selvittää laskennan perusteena olevat matemaattiset perusteet ja kaavat.

Kirjallisuusosassa kerrotaan asiakkuudenhallinnan ohjelmistoympäristöstä sekä tar­

peesta johon LTV-laskenta on kehitetty. Lisäksi kerrotaan asiakkuudenhallintaohjelmis- tojen yleisistä ominaisuuksista, jotta lukijalla olisi kuva siitä mihin laskentaa käytetään.

Teoriaosassa kuvataan laskennan keskeiset kaavat ja havainnollistetaan esimerkein kaa­

vojen käyttöä.

Tutkimusosassa selostetaan ja havainnollistetaan kehitetyn järjestelmän toteutus SQL- lausein ja kommentein sekä kerrotaan kehitystyön aikana tehdyistä havainnoista.

Päällimmäiseksi havainnoksi muodostui se, että LTV-laskenta on SQL-tietokannassa toteutettuna riittävän kevyt ajettavaksi jopa kannettavalla tietokoneella.

arvon

Avainsanat

arvo, asiakas, cltv, crm, Itv, segmentti, sql

(4)

Department of Software Technology

Author

Petri Raatikainen

Date 1 May 2006 Pages 37 Title of thesis

Predicting customer lifetime value

Chair Chair Code

Software systems T-106

Supervisor

Professor Jorma Tarhio Instructor

Professor Matti Linna

The aim of the thesis is to give the reader a picture of predicting the value of customer segments and the theory and techniques behind it and to describe the mathematical foundation and formulae used.

The literature section tells about the software environment and the need for LTV. I also want to give the reader a picture of customer relations management and the general functionality of CRM programs in order to clarify the usage of LTV.

The theory section describes the fundamental formulae and tries to give examples of the mathematics involved.

The research part of this thesis describes the implementation of the LTV system demo version with comments and some SQL statements.

The main result of the research was that the LTV-calculations are fiesibly implementable on a portable computer with a suitable SQL database.

Keywords

customer, cltv, crm, life time value, Itv, segment, sql

(5)

Lyhenneluettelo

LTV lifetime value, asiakkuuden arvo NPV net present value, nettonykyarvo

CRM customer relations management, asiakkuudenhallinta ROI return on investment, sijoituksen tuottavuus

SQL Structured Query Language, rakenteinen kyselykieli

NULL SQL-tietokannoissa käytetty merkintätapa tiedon puuttumiselle

(6)

Sisältö

1 Johdanto

1.1 Työn tausta...

1.2 Diplomityön tavoitteet . Kirjallisuusosa

2 Asiakkuudenhallinta

2.1 Tarve asiakkuudenhallintaan ja sen historia ...

2.2 Asiakkuudenhallinnan tulevaisuus...

2.3 Asiakkuudenhallintasovelluksen yleisimpiä toiminnallisuuksia . . 2.3.1 Asiakasrekisteri...

2.3.2 Ostohistoria...

2.3.3 Henkilörekisteri...

2.3.4 Tapahtumahistoria...

2.3.5 Raportointi...

2.3.6

2.3.7 Käyttäjärekisteri . 2.3.8 Ylläpitotoiminnot .

Poiminta

3 Asiakkaan tulevaisuuden arvon ennustaminen 3.1 Tarve ...

3.2 Historia...

3.3 Nykytila...

3.4 Ennustamisessa käytettäviä muita malleja . 3.4.1 Lineaarinen ja epälineaarinen malli 3.4.2 Malli X...

3.4.3 LTV...

4 Rajaus ja ryhmittely 4.1 Segmentointiperusteita 4.2 Ryhmittely ...

(N

0 C 0 0 -~ J( 7 \O \O \O i( V x 4 x -P > .'_ > j(

>jONONOOenenm

(7)

5 SQL

5.1 Yleistä...

5.2 Peruskäsitteet...

5.3 SQL:n syntaksin alkeet Teoriaosa

6 Laskennan teoria

6.1 Markovin ketjut...

6.2 NPV Net Present Value, nettonykyarvo . . 6.3 LTV Life Time Value, asiakkuuden arvo . Tiitkimusosa

7 Työn kokeellisen osan tausta ja tavoite 7.1 Työn tausta...

7.2 Työn tavoite...

8 LTV-laskennan toteutuksen kuvaus

8.1 Syöttö- ja tulostustoiminnot...

8.2 Lähtötietojen muokkaus...

8.3 Rajaukset ja raportointi...

8.4 LTV-1 askentakaavat...

8.4.1 LTV-laskennan toteutus SQL-lauseina ja ohjelmakoodina . . 8.5 Toteutuksen oikeellisuuden testaaminen...

8.6 Ennusteen onnistuminen...

9 Muita pohdintoja ja uusia tutkimuskohteita 9.1 Muita pohdintoja...

9.2 Uusia tutkimuskohteita...

10 Yhteenveto ja johtopäätökset 10.1 Yhteenveto...

10.2 Johtopäätökset...

Lähdeluettelo

iO'nOnOnONONONONOГ"ГЧ(N(N QCOOOOOOOOOCNCN

rtC N C N C N C N C O cn cn

U>U><*> UiUi*.NONONOenen<г) ocЮЮ'VJ

(8)

1 Johdanto

1.1 Ityön tausta

Idea ja kiinnostus työn tekemiseen tuli, kun ammatissani järjestelmäkonsulttina pääsin mukaan projektiin, jonka tarkoituksena oli toteuttaa eräälle suurelle laivanvarustajalle esittelyversio asiakkaiden tulevaisuuden arvon ennustamisesta kahden edellisen vuo­

den ostokäyttäytymisen perusteella erään konsulttiyhtiön valitsemalla menetelmällä.

Esittelyversion oli oltava riittävän nopea ja näyttävä ja sen antamien tulosten tuli olla oikeita, eli laskennan oli oltava kunnossa, ja sen tuli pohjautua annettuun oikeaan asia- kasdataan. Asiakasdata oli laivayhtiön kassajärjestelmän tuottamaa ja sisälsi matkojen tilaukset ja laivalla tapahtuneet ruoka-ja tavaraostokset.

Tein annetun työn sadassaviidessäkymmenessä tunnissa etätyönä Lieksassa. Tähän työmäärään sisältyi neljä palaveria asiakkaan luona. Palavereissa määriteltiin lasken- perusteet, kaavat, tulosteiden ulkoasuja demosovelluksen ulkoasu sekä raporttien sisältö, rajausominaisuudet, ryhmittelyominaisuudet, laitteistovaatimukset, tiedonsiir­

to järjestelmästä toiseen, laskettujen tietojen siirto muihin järjestelmiin sekä testiai­

neisto.

n an

Työ oli mielenkiintoista ja haastavaa ja kehitys eteni annetussa aikataulussa yhteistyös­

sä asiakkaan kanssa. Välivaiheita esiteltiin asiakkaalle aina kun jotain mielenkiintoista ja kysymyksiä herättävää oli valmiina. Suunnitelmaa täydennettiin matkan varrella ja osa raportoitavista asioista määriteltiin toimimaan kehitysympäristön rajoitusten vuok­

si hieman toisella tavalla. Kyseessä olivat lähinnä joidenkin raporttien ulkoasuun liit­

tyvät pikkuviilaukset.

Työ toteutettiin Sybasen Powerbuilder -kehittimellä ja Sybase Adaptive server Any­

where -tietokannalla. Laitteistona oli kannettava Windows XP -työasema ja Windows XP -pohjainen tietokantapalvelin.

Suurin osa laskennasta toteutettiin SQL-lauseilla suoraan tietokannassa.

(9)

1.2 Diplomityön tavoitteet

Diplomityön tavoitteena on antaa lukijalle kuva asiakassegmenttien tulevaisuuden ar­

von laskennasta ja siihen liittyvästä teoriasta sekä tekniikasta. Työssä tulen kuvaamaan järjestelmän toiminnallisuutta, laskentaan liittyviä ongelmia sekä asiakkaan toivomuk­

sia ja vaatimuksia järjestelmän toiminnallisuudelle.

Lukijalle pitäisi tulla selväksi laskennan matemaattiset perusteet ja kaavat, sekä nii­

den taustalla oleva teoria. Lisäksi kuvaan kaavojen toteuttamisen ja asiakasvaatimus- ten huomioonottamisen toteutusta suunniteltaessa ja toiminnallisuutta määriteltäessä.

Samoin määrittelen asiakkaan käyttämät lyhenteet ja termit, sekä selostan niiden mer­

kityksen niin, että lukijalla on käsitys mistä puhutaan ja mitä lasketaan tai raportoidaan.

Käyn läpi esimerkein laskennan eri vaiheita ja esittelen välituloksia. Pyrin havainnol­

listamaan selkein kuvin esille tulevia asioita ja tarkennan ja selitän mielenkiintoisena pitämiäni yksityiskohtia.

Selvitän lukijalle lyhyesti myös toimintaympäristön ja tarkastelun kohteena olevan las­

kennan liittymisen laajempaan kokonaisuuteen, asiakkuudenhallintaan, sekä siinä ylei­

sesti käytettävien ohjelmistojen perustoiminnallisuuksiin.

Kokonaan oma kappaleensa on ennustamisessa käytetyn laskennan toteutuksen ku­

vaaminen SQL-lauseilla. Kappale selventää lukijalle lauseiden merkityksen kertomal­

la kunkin lauseen toiminnan ja tarkoituksen.

Yksi osa työtä on kirjallisuusselvitys asiakkuudenhallinnasta ja sen historiasta,

tamisessa käytetyn laskennan teoriasta kirjallisuudessa ja katsaus mahdollisista muista tavoista ennustaa nykyisten asiakkaiden tulevaa tuottoa sekä vilkaisu asiakkuudenhal- linnan tulevaisuuteen.

ennus-

(10)

2 Asiakkuudenhallinta

Viime vuosikymmenellä asiakkuuden arvon laskennasta, eli LTV:stä, on tullut vakio- menetelmä asiakkuudenhallinnan (CRM programs) menestyksen mittaamisessa. Kam­

panjoiden tehokkuden mittaamisessa käytetään ROI:ta ja pankkimaailmassa tarkastel­

laan tuottavuutta haluttaessa mitata asiakasotoksen suoriutumista. Asiakkuuden laskenta ennustaa edellisistä poiketen asiakasryhmän tulevaisuuden kehitystä penis-

aiempaan ja nykyiseen ostokäyttäytymiseen. Se myös mahdollistaa koko yrityk­

sen tulevan menestymisen arvioimisen. [5]

arvon tuen

Asiakkuuden arvo on nykyisten tai juuri hankittujen asiakkaiden tuottojen nykyarvojen (NPV) summa tietyllä vuosina annettavalla aikavälillä. Asiakkuuden arvon laskemi­

seksi täytyy olla asiakastietokanta, josta käy ilmi asiakkaan ostohistoria. Asiakkuuden arvoa käytetään sekä yritysten välisessä että asiakkaille tapahtuvassa markkinoinnissa.

Sitä käytetään kaikenlaisten tuotteiden ja palveluiden markkinoinnissa eri toimialoilla.

[5]

2.1 Tarve asiakkuudenhallintaan ja sen historia

Edellä kerrotusta käy ilmi se, että asiakkuuden arvon laskennassa pitää olla olemassa tieto asiakkaista, sekä asiakkaiden ostotapahtumista. Erityisen tärkeää on, että asiak­

kaan tekemät ostokset voidaan kohdistaa juuri oikeaan asiakkaaseen. Tässä auttaa suu­

resti kaupan alalla yleistynyt käytäntö erilaisine asiakkuudentunnistuskortteineen. Eri kaupparyhmillä on omat kanta-asiakasohjelmansa ja niihin oleellisesti liittyvät kortit.

Kortin avulla ostotapahtuma pystytään kohdentamaan tietylle asiakkaalle. Tyypillisesti yksi talous tai ruokakunta muodostaa asiakkaan. Tämän mahdollistavat samaan asia- kastiliin kytketyt rinnakkaiskonit, joilla yksilöidyt ostokset voidaan kohdistaa yhteen asiakastiliin. [10]

Asiakkuuden arvon laskemiseksi riittää yksinkertaisimmillaan, että asiakkaasta on tie­

dossa asiakasnumero ja ostoksesta tekohetki ja ostoksen summa, josta on vähennetty

(11)

ostoksesta aiheutuneet kulut. Tyypillisesti asiakkuudenhallintajärjestelmien tietokan- muutakin tietoa, joiden avulla saadaan palveltua asiakasta ja ryhmiteltyä asiakkaita ja ostotapahtumia. [10]

noissa on

Nykyiset asiakkuudenhallintaohjelmistot ovat kehittyneet alkuaikojen asiakasrekiste­

ristä käsittämään asiakkuudenhallinnalle tarpeellisia lisätoimintoja, joita tyypillisesti ovat asiakkaiden luokittelu, ryhmittely ja poiminta, kampanjanhallinta, tapahtumahis­

toria sekä erilaiset raportit ja niiden ylläpitotoiminnot. Nämä toiminnot ovat sinällään vielä yksinkertaisia perustoimintoja, joiden avulla olemassaolevasta tiedosta ei juuri­

kaan tuoteta mitään toiminnan mittaamiseen liittyvää tietoa. [10]

Kaupan alalla on usein erikseen ohjelmistot, joilla lasketaan myyntiraportteja eri me­

netelmillä ja saadaan ulos näyttäviä raportteja myynnin historian kehityksestä tuote­

ryhmittäin, paikkakunnittain sekä tarkalla tuotetasolla viikkojen ja päivien tarkkuu­

teen saakka. Tyypillisesti perinteisissä järjestelmissä ei kuitenkaan käytetä siellä ole- tietoa asiakasmassojen käyttäytymisestä, eli siirtymisestä jonkin ryhmittelyperus- mukaan ryhmästä toiseen, ajallisella tasolla. Vasta tiedonlouhinnan käyttöönotto antanut mahdollisuuden antaa vastauksia kysymyksiin, joita ei vielä edes ole osattu esittää. [11]

vaa teen on

2.2 Asiakkuudenhallinnan tulevaisuus

Asiakkuudenhallinnan tulevaisuutta leimaa järjestelmiin kertyvän tiedon yhä laajempi analysoiminen ja ennusteiden teon yleistyminen. Asiakkaiden ryhmittelyyn tulee uusia menetelmiä, joissa käytetään yhä laajemmin tekoälyä. Ennustusmenetelmiä tulee ole- laaja kirjo ja jotkin niistä vakiinnuttavat asemansa. Eräs jo paikkansa vakiinnut­

tanut ehdokas asiakkuuden arvon kehittymisen ennustusmenetelmäksi on LTV. Muita tällaisia ovat päätöspuumallit, neuroverkot ja sääntöperustainen analyysi. [12]

maan

2.3 Asiakkuudenhallintasovelluksen yleisimpiä toiminnallisuuksia

Edellä kerroin asiakkuudenhallintasovelluksen yleisimpien toiminnallisuuksien nimiä.

Näitä olivat mm. asiakkaiden luokittelu, ryhmittely ja poiminta, kampanjanhallinta, tapahtumahistoria sekä erilaiset raportit ja niiden ylläpitotoiminnot. Näiden lisäksi so-

(12)

velluksissa on tyypillisesti useita eri rajapintoja toisiin järjestelmiin, kuten kassajärjes­

telmä, varastokirjanpito, kanta-asiakaspiste- ja palkintojärjestelmät, sähköposti sapostitukset, MMS-viestien lähetys jne. [10]

, mas-

Tietojen siirto eri järjestelmien välillä on iso osa kaupankäyntiä tukevien järjestelmien toimivuutta. Kassajärjestelmästä tuleva tieto on saatava markkinointia tukevaan järjes­

telmään. Markkinointijärjestelmästä on saatava tieto kanta-asiakaskortteja tuottavaan järjestelmään. Palkintotilausjärjestelmästä on saatava ulos tilaukset logistiikkayhtiölle, joka hoitaa palkintojen toimitukset. Ilman tarkasti määriteltyä tiedonsiirtorajapintaa

kaikki tämä ei onnistuisi.

Monesti kaupankäynnin järjestelmä koostuu useiden eri toimittajien järjestelmistä. Osa järjestelmistä käyttää yhteistä tietokantaa. Toisiin järjestelmiin tiedot on saatava jollain menetelmällä. Tiedän monessa paikassa ajettavan öisin isoja siirtotiedostoja sisään hy­

vinkin tarkalla aikamarginaalilla ennen kaupan aukeamista taas seuraavana aamuna.

2.3.1 Asiakasrekisteri

Asiakasrekisteriin talletetaan asiakkaan perustiedot. Tyypillisesti asiakkaan perustieto­

ja ovat asiakasnumero, asiakkaan nimi-ja osoitetiedot, tieto asiakkaan olemisesta jon­

kun toisen asiakkaan rinnakkaisasiakas, asiakassuhteen alkupäivämäärä ja voimassao­

lo. Järjestelmät sisältävät lisäksi toteutustavasta riippuen huomattavan määrän muita tietoja, joita voivat olla mm. postitus-ja markkinointikiellot, valmiiksi lasketut luokit­

telut jne.

Asiakasrekisteri on perinteisesti yhtiön arvokkain tietolähde markkinointiponnistelu- jen tueksi. Laskutusosasto ei halua mielellään antaa ulkopuolisen järjestelmätoimit­

tajan liittyä suoraan asiakastietokantaan. Tiedossani on onnistuneesti toteutettuja ym­

päristöjä, joissa eri toimittajien järjestelmät käyttävät hyväkseen toistensa tuottamaa tietoa suoraan samassa tietokannassa.

2.3.2 Ostohistoria

Ostohistoria sisältää tyypillisesti kassajärjestelmän tuottamaa tietoa, jota on asiakasnu­

mero, ostoksen tekopäivämäärä, loppusumma sekä tyypillisesti omana tietokantatau-

(13)

Junaan kuitin rivit, joilta ilmenee kunkin ostetun tuotteen määrä ja hintatiedot. Usein kassajärjestelmä tuottaa ostohistoriatiedon lisäksi valtavasti oheistietoa, kuten tiedot alennuksista, tuotteiden sisäänostohinnoista jne.

Ostohistoria-taulun koko kasvaa nopeasti. Sinne menee tyypillisesti jokaisen kassakui- tin jokainen rivi. Ostohistoriatiedon tallentamisen suunnittelu on tehtävä huolella pi­

täen mielessä tietoon kohdistuva raportointitarve. Raportoinnin tukena käytetään usein valmiiksi laskettua tietoa sisältäviä aputauluja.

2.3.3 Henkilörekisteri

Henkilöreksiteriin tallennetaan henkilöiden perustiedot, kuten nimi, osoite jne. Yrityk­

sen toimintatavasta riippuen asiakas on henkilö tai toinen yritys. Joissakin asiakkuu- denhallintaohjelmistoissa asiakas on aina yritys ja yritykseen liittyy yhteyshenkilöitä, joille kohdennetaan tapahtumia. Sama henkilö voi toimia useassa eri yrityksessä eri roolissa. Esimerkiksi henkilö NN voi olla samaan aikaan sekä yrityksen A pääjohtaja että yhdistyksen X puheenjohtaja.

2.3.4 Tapahtumahistoria

Asiakkuudenhallintajärjestelmällä pidetään myös kirjaa yrityksen asiakkaidensa kans­

sa tekemistä toimenpiteistä, kirjeistä, puheluista, tarjouksista, kampanja-aktivoinneista jne. Tapahtumahistoriatiedon avulla myyjä pystyy antamaan asiakkaalle mielikuvan siitä, että myyjä muistaa hänet henkilökohtaisesti. Tapahtumahistoriatiedon avulla saa­

daan myös selville asiakkaalle tehdyt toimenpiteet seka kaavaillut jatkotoimenpiteet sekä kesken olevat tapahtumaketjut. Palautteenkäsittely on nousemassa osaksi tapah- tumanhallintaa.

2.3.5 Raportointi

Raportoinnin tehtävänä on tuottaa erilaisia raportteja hyvin vaihtelevan käyttäjäkun- tarpeisiin. Joku haluaa asiakaslistan, toinen tarrat massapostitusta varten, kolmas tarvitsee tiedoston kaikkien asiakkaiden sähköpostiosoitteista jne. Tyypillisesti monet raportit ovat listamuotoisia esityksiä osasta asiakasdataa ilman suurempaa jatkojalos­

tusta.

nan

(14)

Raportointia varten on olemassa omia sovelluksia, joilla voidaan tehdä erilaisia ra­

portteja helposti olemassa olevasta datasta. Joskus nämä raporttikehittiemien tuottamat raportit voidaan liittää osaksi toista järjestelmää.

2.3.6 Poiminta

Poiminnan tehtävänä on toimia raportoinnin ja kampanjoinnin tukena muodostettaes­

sa joukkoja, joille toimenpiteet suoritetaan. Nykyaikaisissa asiakkuudenhallintaohjel- mistoissa on hyvät mahdollisuudet poimia erilaisia ryhmiä tietokannasta ja tallettaa ja käyttää hyväksi jo tehtyjä ehtoja ja tallettaa uusia ehtoja tulevaisuuden tarpeisiin.

Samoin tehtyjen poimintojen tallettaminen ja poimintojen yhdistely joukko-opillisin keinoin on toteutettu monissa jäijestelmissä. Tyypillisiä yhdistelyoperaatioita ovat unio­

ni, eli yhdiste, erotus ja leikkaus.

Yhdisteessä otetaan kahden tai useamman joukon kaikki alkiot uuteen joukkoon. Ero­

tuksessa uuteen joukkoon otetaan alkuperäisen joukon osajoukko, johon eivät kuulu johonkin toiseen joukkoon kuuluvat alkiot. Leikkauksessa otetaan uuteen joukkoon kahden tai useamman joukon yhteiset alkiot. Myös joukon komplementti, eli koko asiakasjoukko ilman alkuperäistä joukkoa, voi olla toteutettuna.

Käytön helpottamiseksi joukko-operaatiot esitetään käyttöliittymässä usein sekä ku­

vallisena, että sanallisena, sillä tavalliselle käyttäjälle voi joskus olla helpompaa taju­

ta asia kuvana tai selityksenä. Selityksen osana voi olla esimerkki kahdesta pienestä joukosta ja operaation tuloksena saatavasta joukosta esimerkiksi kirjaimin havainnol­

listettuna. {A, S, C, D) - {B, C) = {A, D)

Kuva 1. Joukkojen erotus

(15)

2.3.7 Käyttäjärekisteri

Käyttäjärekisteri palvelee tietoturvaa ja muutoksenhallintaa. Käyttäjärekisterissä mää­

ritellään käyttöoikeudet ja kerrotaan käyttäjien perustiedot raportoinnin ja muiden omi­

naisuuksien tarpeisiin. Käyttöoikeuksien hallinta on siirtymässä keskitettyihin järjes­

telmiin ja ohjelmistojen valmistajat käyttävät valmiita käyttöoikeuspa!veluita valmii­

den ohjelmistorajapintojen läpi.

2.3.8 Ylläpitotoiminnot

Ylläpitotoimintojen avulla järjestelmää voidaan hallita ja muokata joustavasti ilman, että ohjelmiston rakenteeseen pitäisi aina tehdä muutoksia tarpeiden muuttuessa ja kas­

vaessa. Esimerkiksi ylläpitotoiminnoista käy erilaisten valintalistojen arvojen muok­

kaus. Tällaisella toiminnolla syötetään järjestelmän käyttöön parametrien arvoja ja nii­

den nimiä. Järjestelmässä voi olla sisäänrakennettuna raporttikehitin tai tuki ulkoiselle raporttikehittimelle. Tällöin järjestelmästä saatavien raporttien määrää eikä ulkoasua ole rajattu.

(16)

3 Asiakkaan tulevaisuuden arvon ennustaminen

Asiakkaan tulevaisuuden arvon ennustaminen on mielenkiintoista ja tarpeellista sik­

si, että ennusteen antaman tiedon pohjalta voidaan tehdä toimintaa ohjaavia päätöksiä.

Ennusteen on syytä olla luotettava, ettei tehdä vääriä päätöksiä.

Säätilaa ennustettaessa on käytössä monenlaisia menetelmiä ja osa niistä perustuu jo­

honkin hyväksi havaittuun malliin. Toiset ennustusmenetelmät ovat puhtaasti sattu­

manvaraista arvaamista. Kaupalliseen käyttöön tarkoitetun ennustusmenetelmän, jon­

ka varassa tehdään mittaviakin taloudellisia päätöksiä, on oltava mieluummin sellai­

nen, jonka antaman ennusteen tiedetään perustuvan johonkin toistettavissa ja varmen­

nettavissa olevaan menetelmään. Menetelmän hyvyyden arviointi on osa menetelmän luotettavuuden mittaamista. Kirjassa ’The Forecasting Accuracy of Major Time Series Methods’ [2] käsitellään useita erilaisia aikasarjoihin perustuvia ennustusmenetelmiä, sekä niiden ennustustarkkuutta.

И

«■e

Kuva 2. Eräs tapa ennustaa

3.1 Tarve

Asiakkuus koostuu vähintään yhdestä asiakaskohtaamisesta. [18] Asiakkuuden nousun kannalta on oleellista, että asiakkuuden odotettavissa oleva

kuin asiakkuuden synnyttämisen ja ylläpitämisen vaatima kustannus. [19]

arvon- arvo on suurempi.

Asiakkaiden tulevaisuuden arvon ennustamiselle on useita eri tarpeita. Ennusteen pe­

rusteella voidaan huomata jotain tärkeää yrityksen tulevaisuuden talouskehityksen kan­

nalta. Samoin ennusteesta voidaan erottaa tulevaisuuteen merkittävimmin vaikuttavat tekijät, eli tiettyjen asiakasryhmien hyvä tai huono tuottavuus. Näiden saatujen arvo-

(17)

jen perusteella voidaan tehdä johtopäätöksiä siitä, mihin suuntaan yritys

ja mitä pitäisi ja voitaisiin kehittää. Samoin voidaan huomata joillekin ryhmille tehty­

jen markkinointiponnistelujen olevan vääriä tai turhia. Vertailuryhmien avulla voidaan selvittää markkinointiponnistelujen onnistuminen. Eri ryhmille voidaan kohdistaa eri­

laisia markkinointiponnisteluja ja jokin ryhmä voi olla vailla mitään markkinointia.

on menossa

[14] [15]

Asiakaskantoja analysoitaessa päätavoitteena on selvittää syyt asiakkuuksien kannat­

tavuudelle ja kannattamattomuudelle. Käytäntö on osoittanut, että asiakaskannassa on merkittäviä kannattavuuspotentiaaleja. [17] [15]

3.2 Historia

Ennen tietojärjestelmien käyttöönottoa asiakkaiden tulevaisuuden arvoa arvioitiin lä­

hes pelkästään olettamusten varassa. Jonkinlaisia lineaarisia malleja edellisten vuosien kehityksen ja nykyisen talouskehityksen sekä talousennusteiden antamaan tietoon poh­

jautuen on ehkä ollut käytössä. [13]

Asiakkaan arvoa ei aina voi mitata rahallisilla tekijöillä. Asiakkuuden arvosta muodostaa myös tieto asiakkaan arvotuotannosta ja aikaisemmasta ostokäyttäytymi­

sestä. Mitä enemmän asiakkaasta tiedetään, sitä arvokkaampi asiakkuus on. Kehitty­

nyt asiakastiedonhallinta kontaktitietoineen on yhä tärkeämmässä asemassa. [15]

osan

3.3 Nykytila

Tietokoneiden suoritus-ja tallennuskyvyn kasvaessa on otettu uudempia ja parempia ennustusmenetelmiä. LTV on eräs niistä.

Muita käyettäviä malleja ja menetelmiä ovat regressioanalyysi, päätöspuumallit ja neu­

roverkot sekä sääntöpohjainen analyysi. [12]

(18)

Regressioanalyysi pyrkii löytämään muuttujien välisiä lineaarisia riippuvuussuhteita.

Analyysin avulla muodostettavan regressioyhtälön pohjalta on mahdollista ennustaa, mitä selitettävän muuttujan arvolle tapahtuu, kun selittävän muuttujan arvo muuttuu.

[12] Lineaarinen malli sopii harvoin reaalielämän ennustustarpeisiin.

Päätöspuumallissa lopulliseen ratkaisuun johtava polku on jokin kaikista puumaiseen kuvaukseen talletetuista poluista. Jokaisessa puun haarassa kukin ratkaisuvaihtoehto todennäköisyytensä. Suurellä informaatioelementtien ja ratkaisuvaihtoeh­

tojen määrällä päästään varsin mittaviin ja monimutkaisiin päätöspuumalleihin, joita voidaan käyttää asiakkaan ostokäyttäytymisen ennustamisessa. [12] Päätöspuumallien hyvänä puolena on niistä saatava tarkka kuvaus ratkaisuun johtaneista päätöksistä.

saa oman

Hermoverkot, jotka tunnetaan myös nimellä neuroverkot, ovat käytännössä ei-lineaarisia ennustemalleja, jotka liittyvät läheisesti tekoälyn käsitteeseen. Niiden tarkkuus ja en­

nustamiskyky paranevat kun ne oppivat, eli niihin liittyvät muuttujien väli set painotuk- muuttuvat niille jo opetetun datan mukaan. Hermoverkkoja käytetään sekä

tamiseen, että tiedon segmentointiin. [12]

set ennus-

Sääntöpohjainen analyysi on usein päätöspuumallien jatkoanalyysiä. Tällöin pyritään määrittelemällä kohdentamaan markkinointia entistä tarkemmin. Määrittelysäännöt voi­

vat olla monimutkaisia, mistä johtuen markkinoinnin toteutus saattaa muodostua vai­

keaksi markkinoinnin kohdentamisen osalta. [12]

3.4 Ennustamisessa käytettäviä muita malleja

3.4.1 Lineaarinen ja epälineaarinen malli

Lineaarinen malli kuvaa valitun asiakasjoukon arvon kehitystä ekstrapoloimalla suo­

raan kahden peräkkäisen ajanjakson perusteella seuraavasti:

Asiakasjoukko, jonka koko on N, tuottaa vuonna vo no euroa ja vuonna v_i n_i euroa.

Seuraavina vuosina v¿ sama asiakasjoukko tuottaa (no - n_i) euroa kunakin vuonna.

Asiakasjoukon tuotto voidaan muuttaa nykyrahaksi jollakin oletetulla korkokannalla ja summata yhteen ja jakaa asiakkaiden lukumäärällä N. Näin on saatu yksittäisen

(19)

asiakkaan tuottavuus.

Malli ei ota huomioon asiakkaiden ostokäyttäytymisen muutosta eikä pysyvyyttä, ku­

ten ei myöskään sitä, että eri tuottoluokkaan kuuluvat asiakkaat ovat tuotoltaan erilai­

sia. Asiakkaiden pysyvyys saattaa olla erilaista eri tuottoluokissa.

Lineaarinen riippuvuus tarkoittaa sitä, että arvo Y riippuu muuttujasta X. Riippuvuus ei aina ole lineaarista, vaan voi noudattaa jotain kaavaa, joka on helposti muunnetta­

vissa lineaariseksi. Esimerkiksi yhtälö

Y = aXb

muunnettavissa lineaariseksi riippuvuudeksi У:п ja X:n välillä ottamalla yhtälön molemmilta puolilta logaritmi

on

log Y = log о + Z> log X.

Joskus riippuvuus voi olla muotoa

Y = al06X,

eli riippuvuus on eksponentiaalinen. Jos tällaisesta yhtälöstä ottaa logaritmin molem­

milta puolilta saadaan

log Y = log о + bX,

joka on lineaarinen yhtälö log У :n ja A:n suhteen. Tällaisen yhtälön piirtämisessä käy­

tetään apuna У :n arvojen esittämiseen logaritmista asteikkoa ja x:n piirtämiseen linee- arista asteikkoa. [20]

Usein lineaarinen malli ei kuitenkaan ole riittävä kuvaamaan tapahtumia. Epälineaari­

nen malli on usein muotoa

xt = ¡(xt-J + kt,

jossa /() on jokin funktio ja kt on mallinnuksen virhetekijä. Tämäntyyppisten mallien käytännöllisyydestä kertoo ehkä parhaiten f(x) = sin{y) -tyyppinen funktio, jolla ei kovinkaan usein ole reaalimaailmassa käyttöä. [21]

(20)

3.4.2 Malli X

Seuraava malli, nimitettäköön sitä malli X:ksi, voi ottaa huomioon jo sen, että asiak­

kaat tuottavat vuonna v0 eri tavalla. Nyt tarkastellaan asiakkaita, jotka on jaetm tuoton mukaan esimerkiksi kymmeneen ryhmään ja jokaiselle ryhmälle tehdään lineaarinen tuotta vuusennuste.

Tällä menetelmällä päästäneen jo huomattavasti parempaan tulokseen ennusteen oi­

keellisuudessa. Tämä malli ei vielä ota huomioon sitä, että asiakkaat muuttavat os- tokäyttäytymistään jossain määrin. On olemassa kerta-asiakkaita, jotka eivät osta kuin ehkä yhden kerran tai korkeintaan muutaman kerran vuodessa. On olemassa suurasiak­

kaita ja vakioasiakkaita, jotka ostavat säännöllisesti, usein ja paljon. Näiden ääripäiden välille mahtuu monta luokkaa ja asiakkaat siirtyvät mahdollisesti oman elinkaarensa tai elämäntilanteensa mukaan luokasta toiseen.

3.4.3 LTV

LTV-malli ottaa huomioon erilaiset ostajaluokat ja pyrkii luomaan mallin sille, miten asiakkaat siirtyvät luokasta toiseen sekä kuinka uskollisesti asiakkaat pysyvät yrityk­

sen asiakkaana.

LTV-mallissa asiakkaiden tuoton ennustaminen perustuu asiakasryhmän tuottoon ja ryhmän koon muuttumiseen vuosittain siirtymämallin osoittamalla tavalla. LTV-mallissa asiakkaiden siirtymämalli on todennäköisyysmatriisi, joka kuvaa asiakkaiden

vyyden samassa ryhmässä ja siirtymätodennäköisyyden toiseen ryhmään tai asiakkuu­

den loppumisen todennäköisyyden. Todennäköisyyksien pohjalta lasketaan aina seu- vuoden asiakasryhmisen kokoja asiakasryhmän tuottoja siitä asiakkuuden ar-

pysy-

raavan vo.[1]

(21)

4 Rajaus ja ryhmittely

LTV-laskennan mahdollistaa olemassaoleva asiakasaineisto ja siihen yksilöivästi koh­

distettavissa oleva ostohistoriatieto. Näiden lisäksi on asiakasaineisto voitava jakaa tar­

vittaessa vertailuryhmiin, joille tehdään erityyppisiä markkinointitoimenpiteitä ja jol­

lekin ryhmälle vertailun vuoksi ei tehdä mitään.

Kunkin ryhmän ostokäyttäytymistä arvioidaan sitten tekemällä havaintojakson päätyt­

tyä LTV-laskennan mukainen ennuste asiakkaan tulevaisuuden arvosta. Saatujen tulos­

ten perusteella voidaan kohdentaa markkinointitoimenpiteet entistä paremmin.

4.1 Segmentointiperusteita

Asiakkaiden ryhmittely voidaan kiteyttää seuraavasti:

Joukolle, jossa on n oliota, esimerkiksi eläimiä, kasveja, jne., joilla jokai­

sella on p ominaisuutta, pitää löytää käyttökelpoinen jako ryhmiin, joil­

le on pystyttävä määrittelemään jakoperusteet ja muodostettujen ryhmien lukumäärä. [22]

Ryhmittelyn apuvälineenä on asiakkuudenhallintajärjestelmässä oma toiminnallisuu­

tensa, poiminta eli segmentointi, jolla saadaan rajattua käsiteltävä asiakasmassa halut­

tuihin ryhmiin. Poiminta tuottaa asiakasjoukot, joille tehdään markkinointitoimenpi­

teitä ja joiden käyttäytymistä sitten tarkastellaan.

Eräässä kaupallisessa asiakkuudenhallintaohjelmistossa poiminta voidaan tehdä asia- kastauluun käyttäen haku- ja rajausperusteena asiakastietoja asiakastaulusta ja asiak­

kaaseen liitettyjä tietoja muista tauluista. Poimintaehdot muodostetaan SQL-lauseita tuottavalla graafisella käyttöliittymällä, jolla voidaan helposti muokata poimintaehto halutunlaiseksi. Tällaisessa poimintatyökalussa rajauksen suorittaa käyttäjä, eikä esi­

merkiksi hermoverkkojen mahdollistamaa ryhmien automaattista tunnistusta ja dostamista [6] käytetä hyväksi.

muo-

(22)

12034 12034 12034 12034 12034 12034 12034 12034 12034 12033

9.78 15.23 25.48 35.61 45.31 55.22 65.17 85.05 95.87 125.24 Desiilejä 10 Yhteensä 120399 asiakasta

Desiili Lukumäärä Tuotto/asiakas

Taulukko. Esimerkki helsinkiläisten asiakkaiden jakamisesta kahteen ryhmään.

4.2 Ryhmittely

Kukin asiakasjoukko jaetaan LTV-laskennassa useaan ryhmään, tyypillisesti kymme­

neen, ja jakoperusteena voidaan käyttää esimerkiksi asiakkaan keskimääräistä vuosit­

taista tuottoa. Tällainen jako on helppo toteuttaa SQL-kielellä suoraan tietokannassa.

Kymmeneen ryhmään jaettaessa puhutaan desiileistä. Kukin desiili sisältää ensimmäi­

senä vuonna suunnilleen yhtä monta asiakasta ja jako tehdään asiakkaan ostohistoriasta saatavan tuoton perusteella. Alimpaan desiiliin kuuluvat ne kymmenen prosenttia asia­

kasryhmästä, joiden tuotto on vuoden aikana ollut heikoin. Ylimpään desiiliin kuuluvat ne, jotka ovat vuoden aikana tuottaneet eniten. Loput asiakkaat jaetaan samaan tapaan väliin jääviin desiileihin.

Taulukko. 120339 asiakasta jaettuna desiileihin tuoton mukaan.

Ryhmä Asiakkaiden lukumäärä

Helsinkiläiset, keskustassa asuvat Helsinkiläiset, loput

29601 120399

Ryhmiä 2 kpl Yhteensä 150000 asiakasta

o 4 D 0 0 ^ 1 O N U t4 ^ U )b J

(23)

5 SQL

5.1 Yleistä

Relaatiotietokannat perustuvat E. E Coddin vuonna 1970 julkaisemaan relaatiomal­

liin, joka perustuu joukko-oppiin, matematiikkaan ja predikaattilogiikkaan. Mallissa ei oteta kantaa relaatiotietokannan toteutustapaan. [7] SQL on joukko-oppiin nojautuva kieli. [8]

5.2 Peruskäsitteet

Kerron tässä SQL-tietokantojen yhteydessä käytettävien peruskäsitteiden nimet hyvin pintapuolisesti ja kehoitan asiaa tuntematonta lukijaa perehtymään aiheeseen tutustu­

malla olemassa olevaan runsaaseen kirjallisuuteen.

Relaatiotietokantoja käsitellään joukko-opillisesti. Tiedot talletetaan tauluihin. Taulu muodostuu joukosta rivejä. Rivit muodostuvat sarakkeista, joita voi käyttää hakupe­

rusteena. Rivi vastaa perinteistä termiä tietue (record) ja sarake termiä kenttä (field).

[8] Esimerkiksi taulussa asiakas voisi olla sarakkeet nimi ja. ikä ja riveinä arvot Matti Meikäläinen, 37 ja Antti Asiakas, 50.

Relaatiotietokannan kaikkia sarakkeita voi käyttää hakuperusteena. Valinta tehdään sarakkeen arvoon perustuen käyttäen funktioita ja vertailulausekkeita. [9] Esimerkiksi ajza&as-taulusta voisi valita kaikki rivit, joiden zTrä-sarakkeen arvona on luku 50.

Useimmiten käyttäjä ei halua haun tuloksena kaikkia taulun sarakkeita. Projektio tar­

koittaa taulun tiettyjen sarakkeiden hakemista. [8] Esimerkiksi asiakas -taulusta voisi valita sarakkeen nimi arvot.

Monesti on tarpeen yhdistää eri tauluihin talletettuja tietoja. Tätä vastaa joukko-opillinen tulo, eli relaatio, joka on kahden tai useamman joukon alkioiden kooste. [8] Esimerkik­

si joukkojen {1,2,3} ja {A, B} tulo on joukko {(1, A), (1, B), (2, A), (2, B), (3, A), (3, B)}. Tarve tietojen yhdistämiseen tulee käytännössä usein vastaan siilon, kun teh­

(24)

dään raportteja, johin pitää saadaa koodeille selitteet - esimerkiksi kassakuitilla oleval­

le tuotekoodille vastaavan tuotteen nimi.

Joukko-opillinen yhdiste tarkoittaa kahden joukon kaikkien alkioiden valitsemista. [8]

Esimerkiksi joukkojen {1,2,3} ja {A, B} yhdiste olisi joukko {1,2,3, A, B}. Yhdis­

tettä voidaan tarvita haettaessa tietoja useammasta eri taulusta samaan hakuun. Järjes­

telmässä voisi olla nykyiset asiakkaat omassa taulussaan ja poistuneet omassa taulus­

saan ja haluttaessa hakea kaikki asiakkaat tehdäisiin yhdiste näiden taulujen tietojen hauille.

Joukkojen leikkaus tarkoittaa niiden yhteisten alkioiden muodostamaa joukkoa. [8]

Esimerkiksi joukkojen {1,2,3} ja {2,3,4} leikkaus on joukko {2,3}. Leikkaus tavanomainen operaatio rajattaessa hakujoukkoa toisen joukon sisältämän tiedon pe­

rusteella. Voitaisiin hakea kaikki asiakkaat, joiden asiakasnumero löytyy niiden kassa- kuittien joukosta, joiden päiväys on viime vuodelta.

on

Joukkojen erotus tarkoittaa sitä, että ensimmäisestä joukosta on poistettu toisen jou­

kon alkiot [8]. Esimerkiksi joukkojen {1,2,3} ja {2,3,4} erotus on joukko {1}. Tie­

tojärjestelmässä voitaisiin karhukirje lähettää niille asiakkaille, joiden maksutiedoista ei löydy kuittausta lähetetylle laskulle.

Avain yksilöi kannassa olevan rivin. Tätä tunnistetta kutsutaan perusavaimeksi. [8]

Relaatiotietokantojen valmistajat ovat toteuttaneet erilaisia menetelmiä tiedonhakujen nopeuttamiseksi. Hakujen nopeuttamiseen käytetään yleensä indeksiä, joka voi olla yksikäsitteinen tai viitata moneen eri riviin. Ilman avainta jouduttaisiin yksittäistä tie­

toa haettaessa käymään läpi keskimäärin puolet taulun kentistä. Avaimen avulla tieto löydetään tyypillisesti logaritmisessa ajassa.

5.3 SQL:n syntaksin alkeet

SQL:ssä tietojen haku tapahtuu kuvailemalla sitä, mitä haetaan. Hakuun käytetään SELECT-lausetta. Lause on yksinkertaiselta muodoltaan seuraavanlainen:

SELECT sarake FROM taulu

(25)

Esimerkiksi hakulause voisi olla SELECT nimi FROM asiakas, joka hakisi asiakas- taulusta kaikki nimi-sarakkeen arvot.

Usein on tarpeen rajoittaa hakua niin, ettei se palauta kaikkia rivejä, vaan jonkun rivien osajoukon. Tällöin SELECT-lauseeseen lisätään WHERE-osa.

Esimerkiksi SELECT nimi FROM asiakas WHERE ikä = 50.

Joskus joihinkin taulun kenttiin ei ole olemassa arvoja. Tällöin voidaan kentän arvok­

si sijoittaa erityinen NULL-arvo, joka kertoo sen, että kentälle ei ole asetettu arvoa.

Merkkijonotyyppisissä kentissä kannattaa erityisesti huomioida, että tyhjä merkkijo­

no, jonka pituus on nolla, on eri asia kuin se, että arvo puuttuu kokonaan. Samoin meerista tietoa sisältävissä kentissä pitää varautua laskuoperaatioissa siihen, että sum­

man tai keskiarvon laskennassa NULL-arvoja voidaan käsitellä eri tietokannoissa eri tavalla.

nu-

Tietokannasta pitää myös voida poistaa tietoa. Tämä tapahtuu DELETE-lauseella, j ka syntaksi on yksinkertaisesti: DELETE FROM taulu [WHERE ehto]. Ehdon avulla voidaan määrätä vain tietyt rivit poistettaviksi.

on-

Taulujen luonti tapahtuu CREATE TABLE nimi (kenttä tyyppi [, kenttä tyyppi]) -lauseella. Esimerkiksi CREATE TABLE asiakas (id integer, nimi varchar(50)).

Taulua luotaessa on mahdollista määritellä kenttätyypin lisäksi kentälle oletusarvo ja erityyppisiä rajoituksia.

(26)

6 Laskennan teoria

6.1 Markovin ketjut

Markovin ketju (Markov Chain) on joukko tiloja, joiden välisten siirtymien todennä­

köisyys ei riipu toteutuneesta siirtymähistoriasta. Eräs esitystapa on stokastinen mat­

riisi, eli neliömatriisi, jossa jokaisen rivin summa on 1. Esim.

0.70 0.10 0.20 0.20 0.80 0.0

0.0 0.0 1.0 M =

Sama matriisi yksinkertaisena kaaviokuvana voisi olla seuraavanlainen.

O

pii Ei

P21 P31

V02 P12 P1

c

В p 23 s'

zr

p32

Kuva 3. Tilasiirtymät kolmen eri tilan välillä

Ylläoleva matriisi ja kaavio kuvaavat tilannetta, jossa systeemissä on kolme tilaa: Ex, E2 ja E3 ja tilasta toiseen siirtymisien todennäköisyydet ovat seuraavanlaiset: Tilasta Ei tilaan Ei 70%, tilaan E2 10% ja tilaan E3 20%. Tilasta E2 tilaan Ex 20%, tilaan E2

(27)

80% ja tilaan Е% 0%. Tilasta E-í prosessi ei etene vaan ainoa mahdollinen siitymä pysyä tilassa E^.

on

LTV-laskennassa tämä voisi olla asiakkaiden siirtymistä kuvaava tilanne, jossa asia­

kas voi kuulua ryhmään £j tai E2 tai olla poistunut asiakas ryhmässä E^. Ryhmän Ei asiakas pysyy ryhmässä £j 70%:n todennäköisyydellä, siirtyy ryhmään E2 10%:n todennäköisyydellä tai poistuu 20%:n todennäköisyydellä. Ryhmän E2 asiakas ei iki­

nä suoraan lopeta ostamista, vaan pysyy ryhmässä E2 80%:n todennäköisyydellä tai voi siirtyä ryhmään E\ 20%:n todennäköisyydellä ja sieltä sitten seuraavana vuonna poistuneeksi asiakkaaksi 20%:n todennäköisyydellä. Kerran poistunut asiakas ei palaa asiakkaaksi. Kaaviokuvassa todennäköisyydet ja p$2 olisivat 0 ja todennäköisyys Рзз olisi 1.

6.2 NPV Net Present Value, nettonykyarvo

Kaikenlaisessa taloudellisessa laskennassa on tapana muuntaa tulevaisuudessa saatavat ja maksettavat rahasummat vastaamaan niiden nykyistä arvoa. Muuntaminen tapahtuu jakamalla tulevaisuudessa saatava raha laskentakorkokannan mukaisella kertoimella vuosittain. Tätä rahan arvon muuttamista vastaamaan nykyrahaa nimitetään diskont- taamiseksi.

Merkitään laskennallista korkoa p:llä ja laskenta-aikaa vuosissa t:llä. Tällöin rahasum­

man s nettonykyarvo S saadaan kaavasta

5 = s/(l+p)

Esimerkiksi kun laskennallinen korko p = 3%, aika t = 5 vuotta ja rahasumma 1000 euroa, niin saadaan

(28)

S = ЮООе/(1 + 3/100)5 = lOOOe/1.194 = 837.5e

eli viiden vuoden päästä saatava tuhannen euron suoritus on nykyrahaksi muutettu­

na 838 euroa.

Tämä on helppo ymmärtää ajattelemalla saavansa rahasumman itselleen nyt ja sijoitta­

vansa sen laskennallisella korolla määrätyksi ajaksi. Ajanjakson päätyttyä rahasumma olisi kasvanut tiettyyn arvoon.

NPV on määritelty toisessa lähteessä eri tavalla:

Investointiteoriasta tuttu käsite on nettonykyarvo (Net Present Value, NPV).

Se lasketaan seuraavalla kaavalla:

^ NCFt (1 + kY NPV = ]T

t=o

missä NCFt on rahavirta periodilla t ja k on yrityksen pääoman kustan- nusprosentti. [3]

Tuossa tarkoitetaan rahavirran nykyarvoa, joka muodostuu jaksottaisten rahavirtojen nykyarvojen summasta.

6.3 LTV Life Time Value, asiakkuuden arvo

Asiakkuuden arvo, josta käytetään lyhennettä LTV, on asiakkaan tulevien vuosien net- tonykyarvojen summa.

LTV = У' 7—— 4 i=0 i

Asiakkuuden arvo vastaa siis asiakkaan tuoman rahavirran nettonykyarvoa.

(29)

Esimerkki.

Voidaan ajatella että asiakas tuottaa tänä vuonna 100e, ja tulevina vuosina esimerkiksi 120e, 110e, 90e ja 150e ja laskennallinen korkokanta on 3%. Tällöin asiakkuuden arvo on

100e + 120e/(l+3/100)+ 110e/(l + 3/100)2+90e/(l+3/100)3 + 150e/(l + 3/100)4

= 100e + 116.5e + 103.7e + 82.4e + 133.2e = 535.8e.

Tämä edellä kerrottu on LTV-laskennan ensimmäinen osatekijä. Toinen osatekijä se, että asiakasmassa jaetaan jollain perusteella noin kymmeneen yhtäsuureen ja tarkkaillaan näihin ryhmiin kuuluvien asiakkaiden siirtymistä ryhmästä toiseen kah­

den vuoden aikana.

on osaan

Kullekin ryhmälle lasketaan tunnusluku: Keskimääräinen tuotto per asiakas vuodes­

sa. Samoin ryhmästä toiseen siirtymiselle ja asiakkuuden päättymiselle lasketaan to­

dennäköisyys kullekin ryhmälle erikseen.

Tarkasteltavien asiakkaiden joukko on se asiakasjoukko, joka on olemassa (tehnyt os­

toja) ensimmäisenä tarkasteltavana vuonna. Niitä toisen vuoden asiakkaita ei huomi­

oida, jotka eivät ole olleet asiakkaana jo ensimmäisenä vuonna. Ne asiakkaat, jotka ovat ostaneet ensimmäisenä vuonna, mutta joilla ei ole ostoja toisena vuonna laske­

taan poistuneiksi asiakkaiksi.

Siirtymistodennäköisyyden perusteella lasketaan asiakkaiden määrä tulevina

kussakin ryhmässä ja määrien perusteella kunkin ryhmän tulevien vuosien tuotto. Tule­

vat tuotot muutetaan nykyrahaksi ja summataan. Asiakkaiden määrän ja tuoton lasken- pidetään kirjaa koko ajan myös siitä, missä ryhmässä asiakas on ollut alunperin.

vuosina

nassa

Siirtymätodennäköisyyksistä saadaan 11*11 matriisi S, jossa on vaakariveinä kun­

kin asiakasryhmän siirtymätodennäköisyys uuteen ryhmään. Asiakkaan poistumisen todennäköisyys huomioidaan laskennassa: Poistunut asiakas ei palaa asiakkaaksi. Ti­

lanne voidaan kuvitella Markovin ketjussa tilana, johon joutuneen muuhun tilaan jou-

(30)

tumisen (palaamisen asiakkaaksi johonkin ryhmään) todennäköisyys on nolla.

Esimerkki.

Asiakkaat on jaettu kahteen ryhmään. Asiakkaita on vuonna t-\ molemmissa ryhmissä П ja r2 tasan 100 kpl. Vuonna t0 asiakkaita on ryhmästä 70 kpl edelleen ryhmässä ri ja ryhmässä r2 10 kpl. Poistuneita on siten 20 kpl. Vastaavasti ryhmästä r2 on siir­

tynyt ryhmään 20 asiakasta ja jäänyt ryhmään r2 80 asiakasta. Poistuneita on nolla.

Tästä saadaan tilasiirtymämatriisiksi S seuraavanlainen matriisi.

0.70 0.10 0.20 0.20 0.80 0.0

0.0 0.0 1.0 S =

Matriisissa viimeinen sarake kertoo sen, että ykkösryhmään kuuluvista asiakkaista poistuu vuosittain 20%, kakkosryhmään kuuluvista ei kukaan, ja jo poistuneet pysyvät poistuneina 100% todennäköisyydellä.

Lasketaan kahteen eri ryhmään alunperin kuuluvien asiakkaiden jakauma kahtena tu­

levana vuotena. Lähtötilanteeksi valitaan nyt n = 100 ja r2 = 100, eli molemmissa ryhmissä on vuonna vç, 100 asiakasta. Muodostetaan niistä vektorit Rq1 ja Rq2.

Roi = [ 100 0 0 ] До2 = [ 0 100

0]

Alkutilanteessa, vuonna 0, kaikki asiakkaat kuuluvat omaan ryhmäänsä, eikä ryhmästä ole vielä poistuneita.

Nyt voidaan laskea

Ru =R0lx S

(31)

ja

i?i2 — Ro2 x S josta saadaan

-Rii —

[ 100 * 0.7 +0*0.2+ 0* 0.0 100 *0.1 + 0 *0.8 + 0 *0.0 100 *0.2 + 0 *0.0 + 0* 1.0 ] =

[ 70 10 20 ja

Rl2 =

[ 0*0.7+ 100*0.2 + 0*0.0 0*0.1 + 100*0.8 + 0*0.0 0 * 0.2 + 100 * 0.0 + 0 * 1.0 ] =

20 80 0 ]

Yhden vuoden jälkeen, vuonna 1, ensimmäisen ryhmän asiakkaista on ensimmäisessä ryhmässä 70 kpl, toisessa ryhmässä 10 kpl ja 20 kpl on poistunut. Toisesta ryhmästä on siirtynyt ensimmäiseen ryhmään 20 asiakasta ja pysynyt toisessa ryhmässä 80 kpl.

Lasketaan toisen vuoden tilanne molemmille ryhmille.

Eli

R2l = x S

ja

R22 = Ri2 x S josta saadaan

R2i

70 * 0.7 + 10* 0.2 + 20* 0.0 70 * 0.1 + 10* 0.8 + 20* 0.0 70 * 0.2 + 10* 0.0 + 20*1.0 ] =

(32)

51 15 34 ja

R22 —

20*0.7 + 80*0.2 + 0*0.0 20*0.1 + 80*0.8 + 0*0.0 20*0.2 + 80*0.0 + 0* 1.0

4]

30 66

Nähdään, että vuonna O ensimmäiseen ryhmään kuuluneista kuuluu toisena tarkaste­

luvuonna ensimmäiseen ryhmään 51 kpl, toiseen ryhmään 15 kpl ja poistuneita on jo 34 kpl. Samoin nähdään, että alunperin toisen ryhmän asiakkaat ovat siirtyneet uusiin ryhmiin siten, että ensimmäiseen ryhmään kuuluu 30 asiakasta, toiseen ryhmään 66 asiakasta ja poistuneita on 4 kpl.

Koko asiakasmassaa tarkasteltaessa voidaan saadut vektorit laskea yhteen ja huoma­

taan ykkösryhmän kooksi 81 kpl, kakkosryhmän kooksi samoin Blkpl ja poistuneiden lukumääräksi 38 kpl.

Yleisesti vuoden г+1 ryhmän n asiakasmääriä Rt+\n kuvaava matriisi on

R(i+i)n — Rin x R

ja asiakkaiden lukumäärä A yhteensä kaikissa ryhmissä jollakin hetkellä г on

m a = Zä.,-

71= 1

(33)

Sybase PowerBuilder Enterprise

Version 7.0.2 Build 8003 Bui» on Od 21 1338 all 0:08:13

Copyright ® 1331-200G Sybase. Inc. and »s subsidiaries.

Portions Copyright ® 1331 -2006 Arthur D. Applegate

Kuva 3. Sybase PowerBuilder

7 Työn kokeellisen osan tausta ja tavoite

7.1 Työn tausta

Tehtävänä oli toteuttaa järjestelmä asiakkaan, tai tarkemmin sanottuna asiakasseg­

menttien, tulevaisuudenarvon eli nykyrahassa mitatun tuoton ennustamiseen annetul­

le ajanjaksolle. Ennustamisen pohjana tuli käyttää asiakastietojärjestelmässä jo olevaa kassakuitteihin perustuvaa todellista ainestoa. Aineiston avulla piti laskea asiakkaiden ryhmittely tuoton mukaan kymmeneen asiakasmäärällisesti yhtäsuureen ryhmään, joil­

le laskettiin tunnuslukuna tuotto (tuotto = myynti - kustannukset). Samoin ryhmille laskettin siirtymämatriisi, joka kuvaa asiakasryhmän siirtymistä toisiin asiakasryhmiin vuoden aikana tapahtuvalla tarkastelujaksolla. Tätä siirtymämatriisia käytettiin asiak­

kaiden siirtymisen mallina seuraavalle N vuodelle, tyypillisesti kymmenen vuotta, ja näin saatiin tulevien vuosien asiakasryhmien kokoja sen perusteella laskettiin ryhmän tuotto vuonna n+1 ja tuoton arvo nykyrahassa. Kunkin vuoden tuotot ja niiden kumu­

latiivinen summa tuli esittää graafisesti käyttäjälle. Raporteilla piti myös pystyä yhdis­

telemään ryhmiä ja valitsemaan tarkasteltavat ryhmät.

Rakensin ylläkuvatun kaltaisesta järjestelmästä esittelyversion ja toteutin sen SQL- kyselyillä sekä Sybasen PowerBuilder -sovelluskehittimellä.

m

About

F

-i s

(34)

7.2 Työn tavoite

Työn kokeellisen osan tavoite on esitellä LTV-laskennan perustoteutus sekä pohtia esiin tulleita sekä mahdollisia ongelmia ja kertoa SQL:n soveltuvuudesta LTV-laskentaan.

Samoin tavoitteenani on kertoa kuinka LTV-laskenta tehdään SQLdlä ja pienellä mää­

rällä koodia.

(35)

8 LTV-laskennan toteutuksen kuvaus

8.1 Syöttö- ja tulostustoiminnot

Syöttö- ja tulostustoiminnot toteutettiin siten, että ohjelma käyttää tietokannassa val­

miina olevaa aineistoa, jota käsitellään SQL-lauseilla. Valmiina oleva aineisto on kas­

sajärjestelmän tuottamaa kuittidataa, joka on yksilöity asiakasnumerolla. Kantaan tal­

letetulta kuitilta ilmenee ostoksen päivämäärä, loppusumma sekä myydyn tuotteen si- säänostohinta. Mitään varsinaista tietojen syöttöä erikseen LTV-laskentaa varten ei siis tarvinnut tehdä. Lopputuloksena laskennassa syntyy tietoa asiakkaiden nettonykyai- voista asiakasryhmittäin. Laskennan lopputulos talletetaan kantaan, josta se on haetta­

vissa muiden sovellusten käyttöön.

8.2 Lähtötietojen muokkaus

Ohjelmalle annetaan haluttu poiminta, johon on rajattu laskennassa käytettävät asiak­

kaat. Ennen ennusteen tekoa on mahdollisuus muokata asiakasjoukosta laskettua tila- siirtymämatriisia sekä desiilien kokoaja tuottoa. Muokkaus tapahtuu Windows-sovel- luksessa taulukkomuodossa.

8.3 Rajaukset ja raportointi

Laskennan tuloksia voidaan tarkastella koko laskettavalle joukolle kerralla, tai tuloksien esittämistä voidaan valita tarkasteltavat desiilit. Desiilien valinta sallii yhden tai useamman desiilin valitsemisen vertailuryhmiin, joita voi olla enintään neljä.

ennen

8.4 LTV-laskentakaavat

LTV-laskenta toteutettiin nettonykyarvojen summana siten, että ohjelman tilaajan toi­

vomus siitä, että jokaisen alkuperäisen desiilin tuottoa voidaan tarkastella erikseen, otettiin huomioon.

(36)

Alkuperäisen desiilin huomioiminen vaatii kaikkien välitulosten leimaamisen tiedolla alkuperäisestä desiilistä. Toteutin sen tietokannassa välituloksia tallentavassa taulussa yhdellä siihen tarkoitukseen varatulla kokonaislukutyyppisellä kentällä, jota käytetään hyödyksi tuloksia kyseltäessä.

(37)

8.4.1 LTV-laskennan toteutus SQL-lauseina ja ohjelmakoodina

LTV-laskenta toteutettiin hyvin pienellä määrällä ohjelmakoodia ja kaikki laskenta py­

rittiin saamaan kannassa tapahtuvaksi. Laskennassa on seuraavat päävaiheet: Lähtötie­

tojen luonti, siitymätaulukon laskenta, vuosittaisten NPV-arvojen laskenta sekä LTV- arvojen laskenta. Ennen varsinaista laskentaa valitaan asiakkaista se joukko, eli seg­

mentti, johon laskenta kohdistetaan. Liitteenä olevassa koodissa segmentin valinta ja käsittely on jätetty pois.

Lähtötietojen luonti käsittää kolme vaihetta. Ensimmäisessä vaiheessa valitaan asia­

kassegmentistä ne asiakkaat, joilla on ostoja vuonna v0. Nämä asiakkaat, tai oikeastaan asiakasnumerot, viedään laskennan tauluun, ja korvamerkitään vuotta v0 ja laskenta- kierrosta 1 kuvaavalla merkillä. Asiakasnumeron lisäksi talletetaan tieto asiakkaan os­

tojen kokonaissummasta vuonna vq. Näin saatu asiakasjoukko jaetaan kymmeneen lu­

kumäärältään yhtäsuureen osaan, eli desiiliin. Toisessa vaiheessa lasketaan samalla ta­

valla vuoden ui asiakkaiden tiedot. Kolmannessa vaiheessa merkitään lähtötietoihin vielä tieto uusista ja poistuneista asiakkaista. Uudet asiakkaat poistetaan laskennasta.

Lähtötietojen perusteella lasketaan tilasiirtymämatriisi. Käytännössä se tarkoittaa si­

tä, että olemassaoleville ja poistuneille asiakkaille lasketaan prosenttiosuudet, jotka kuvaavat todennäköisyyttä siitä, mihin uuteen desiiliin alkuperäisessä desiilissä olleet asiakkaat siirtyvät. Tilasiirtymämatriisia on mahdollisuus muokata muuttamalla siirty­

vien asiakkaiden lukumäärää ennen prosenttiosuuksien laskentaa.

Vuoden V\ tietojen perusteella lasketaan asiakasryhmän kokoja keskimääräinen tuotto per asiakas NPV-laskennan pohjaksi. Näitä lähtötietoja voidaan muokata ennen las­

kennan suorittamista.

NPV-laskenta laskee kullekin alkuperäiselle desiilille koot siirtymätodennäköisyyk- sien mukaan N seuraavalle vuodelle. Asiakkaiden lukumäärien ja desiilien keskimää­

räisen asiakastuoton perusteella voidaan laskea kunkin alkuperäisen desiilin arvo tule­

vina vuosina ja muuntaa saatu tulos nykyrahaksi.

LTV-arvo saadaan laskettua NPV-arvojen summana.

(38)

Tilasiirtymamatriisin laskeminen on SQL-toteutuksella erittäin helppoa ja laskenta käyt­

tää SQL:n perusominaisuuksia, kuten taulujen yhdistämistä jollakin kentällä, alikyse- lyä, summafunktiota, ryhmittelyä (group by) ja delete-, insert-ja select-lauseita.

// Koodiesimerkki - Laske uusi tilasiirtymämatriisi

delete from transition_matrix where calculation_id = 1;

insert into transition_matrix

select 1, a.class, b.class, 1, a.class, count(*) /(select count(*)

from cust_class c where c.pass = 1 and

c.class = a.class) as pros from cust_class a, cust_class b

where a.pass = 1 and b.pass = 2 and a.customer_id = b.customer id group by a.class, b.class;

Laskenta toteutettiin erillisenä ohjelmamodulina, joka on mahdollista liittää muihin­

kin asiakastietojärjestelmiin. Tässä työssä Hiitenä olevat SQL-lauseet on otettu Java- kielelle ja MySQL-tietokannalle toteuttamastani versiosta.

SQL-kielen siirrettävyys on melko hyvä järjestelmästä toiseen. Joissain järjestelmis­

sä saadaan jotkin asiat, esim. juokseva numerointi, esitettyä helpommin kuin toisissa.

Esimerkiksi Sybase Adaptive Server Anywheren SQL tuntee number(*) -funktion, jol­

la haun tuloksena saatavat rivit on helppo numeroida juoksevasti.

Ohjelmakoodin vähäisyys auttaa sen siirtämisessä kieleltä toiselle.

(39)

8.5 Toteutuksen oikeellisuuden testaaminen Laskennan toteutusta ei todistettu oikeaksi.

Ohjelmaan rakennettiin mahdollisuus testata laskennan eri vaiheiden onnistumista ver­

taamalla laskettuja arvoja oikeiksi tiedettyihin, käsin laskettuihin arvoihin. Ohjelma tuotti vakiomuotoista testiaineistoa, jonka tilasiirtymät ja jakaumat desiileihin, samoin kuin tuotto per desiili, tunnettiin. Ohjelman kehitysvaiheessa ja testausvaiheessa rattiin laskennan käyttämien SQL-lauseiden tuottamia arvoja näihin vertailuarvoihin.

Tällä tavalla kehittäminen oli joustavaa ja nopeaa ja virheiden havaitseminen tapahtui koko ajan ohjelmistokehityksen edetessä.

ver-

Syntynyt ohjelmakoodi ja syntyneet SQL-lauseet käytiin yhdessä asiakkaan kanssa läpi. Vaikka asiakas ei ollut koodiasiantuntija, sai asiakas tarkan selvityksen jokaisen laskennan osavaiheen toiminnasta. Samoin kehitettyjen SQL-lauseiden merkitys, riip­

puvuus ja vaikutus kantaan talletettuun tietoon kuvattiin asiakkaalle niin hyvin, että laskennan matemaattisen perusteen tunteva asiakas varmistui laskennan oikeellisuu­

desta.

8.6 Ennusteen onnistuminen

Olisi saatava lupa käyttää jonkun asiakkaan oikeaa asiakastietoa, esimerkiksi xxx Oy tai muu vastaava järjestelmä, jossa asiakkaan ja ostojen tunnistaminen on vahvaa, eli perustuu johonkin kanta-asiakasnumeroon tai vastaavaan. Aineistoa olisi oltava kah­

delta vuodelta ennustamista varten ja kolmannelta vuodelta ennusteen onnistumisen tarkistamista varten.

Ennuste on juuri niin hyvä, kuin se lähtötietojen perusteella voi olla sillä tarkkuudella kuin tämä malli todellisuudessa kuvaa asiakkaiden käyttäytymistä. Itse olisin vähin­

täänkin epäileväinen ennen kuin mallin antamia tuloksia on verrattu todellisuuteen.

Tämä jää nyt kuitenkin asiakkaan tai jonkun muun tehtäväksi, sillä en saa tämän työn aikataulun puitteissa käyttööni sellaista materiaalia, jota minun olisi lupa käyttää.

(40)

Asiakas ei ole halunnut kommentoida ennusteen onnistumista eikä tiedossani ole, ko järjestelmä tällä hetkellä demokäyttöä pidemmällä. Järjestelmän mahdollisesta jat­

kokehittämisestä vastaa demon tekemisen aikainen työnantaja. En ole enää kyseisen yrityksen palveluksessa.

on-

(41)

9 Muita pohdintoja ja uusia tutkimuskohteita

LTV-laskennassa asiakkaat ryhmitellään hyvin yksinkertaisesti pelkästään liikevaihdon tai tuoton mukaan yleensä kymmeneen määrällisesti yhtä suureen ryhmään.

Väitöskirjassa[4] oli teemana erottaa asiakasmassasta käyttäytymisen perusteella pet­

kutusta yrittävät asiakkaat. Ryhmittely oli siis kaksijakoinen: normaalit ja mahdolli­

sesti petolliset. Petollisista pyrittiin myös luotettavasti saamaan erilleen ne asiakkaat, jotka ovat hyviä ja tuottoisia siitä huolimatta että käytös on poikkeavaa.

Mikäli LTV-laskentaan lisättäisiin asiakkaiden ryhmittely ostokäyttäytymisen perus­

teella useampana kuin kahtena vuonna, voitaisiin ennusteen luotettavuutta entisestään parantaa. Jatkossa voitaisiin tutkia normaalin LTV-laskennan lisäksi erilaisia ryhmitte- lymenetelmiä ja -perusteita.

LTV-malli laskee jo olemassa olevan asiakasmassan arvon tulevaisuudessa ja ottaa huomioon poistuvat asiakkaat. Jos mallissa olisi lisäksi mahdollisuus olettaa jokin määrä uusia asiakkaita kuhunkin luokkaan tuleville vuosille, voitaisiin ennustaa yrityk­

sen tulevaa liikevaihtoa tai tuottoa myös tulevien asiakkaiden osalta. Tämä olisi help­

po toteuttaa lisäämällä asiakkaiden määrää jokaisella laskentakierroksella joko laske­

tun tai annetun jakauman mukaan jonkinlaisin oletuksin tehdystä uusien asiakkaiden vuosittaisesta (jaksokohtaisesta) kokonaismäärästä.

Diplomityössä ei kuitenkaan liene tarkoitus kehittää kovin paljon uutta ja omaa tut­

kimusta vaan lähinnä perehtyä jo olemassa oleviin menetelmiin ja dokumentoida ne ja osoittaa siten pätevyys tuottaa tieteellistä tekstiä. Omien laskentamenetelmien jat­

kokehittäminen ja laajempi teoreettinen tutkiminen onkin kai sitten lisensiaattityön tai väitöskirjan aihepiiriä.

(42)

9.1 Muita pohdintoja

Ohjelmiston jatkokehittäminen olisi kehittäjän kannalta mieluisaa ja asiakkaan kannal­

ta kannattavaa.

Mielestäni järjestelmään olisi rakennettava mahdollisuus vuosittaiseen tarkasteluun ennusteiden onnistumisesta, ja mallin korjaamiseen tehtyjen havaintojen pohjalta.

Vuosittaisen korjausmatriisin liittäminen LTV-malliin parantaisi sen kykyä ennustaa asiakkaiden arvon kehittymistä entistä tarkemmin. Samalla asiakkaan luottamus mal­

lin ennusteisiin, ja ennusteiden hyödyllisyys, kasvaisi.

Ohjelmiston ulkoasun hiominen ja käytettävyyden parantaminen lisäisivät käyttäjän kokemaa hyötyä ja laskennan käyttämistä ennustamisen apuvälineenä.

9.2 Uusia tutkimuskohteita

Aiheeseen liittyen voisi tutkia tekoälyn tuomaa mahdollisuutta havaita asiakasluokkia automaattisesti sekä asiakkaiden käyttäytymisen ja sen muutoksen havaitsemista.

Samoin voisi olla mielenkiintoista tutkia asiakkaiden ryhmittelyä useamman muut­

tujan mukaan. LTV-laskennan muuttaminen tukemaan monimuuttujaryhmiä ei olisi vaikeaa. Se voitaisiin toteuttaa muuttamalla ryhmän numero merkkijonomuotoiseksi ryhmäkoodiksi tai tallentamalla ryhmäkoodin ja ryhmän numeron välinen riippuvuus johonkin tietokannan tauluun.

(43)

10 Yhteenveto ja johtopäätökset

Tulen muistelemaan järjestelmän kehittämistä lämmöllä ja odotan tulevaisuudessa pää­

seväni aiheeseen liittyvien uusien haasteiden kimppuun.

Kaikenkaikkiaan työn tekeminen oli hauskaa ja antoisaa. Uskon asiakkaan hyötyneen suuresti kantaan kerätyn datan visualisoinnista ja uuden analysointitavan tuomasta os- tohistoriatietoon käytkeytyneen tuottavuustiedon visualisoinnista.

Aiheesta tekemäni diplomityö antoi minulle itselleni selkeämmän kuvan siitä, mihin LTV-laskentaa voidaan käyttää ja kuinka tietovarastoihin kertyvää dataa voidaan hyö­

dyntää asiakkaiden tulevaisuuden arvon ennustamiseen.

10.1 Yhteenveto

LTV-laskennan toteuttaminen laskennan osalta SQL-tietokannassa on mahdollista ja mielestäni kannattavaa, sillä SQL:n kyky käsitellä ja yhdistellä tietoa antaa hyvän mah­

dollisuuden laskennan tehokkaaseen toteuttamiseen. Laskenta on nopeaa ja helppo to­

teuttaa SQL:llä. SQL-toteutuksen siirrettävyys on hyvä.

Tietokannassa tehty laskenta mahdollistaa myös lopputulosten helpon tallentamisen tarkastelua varten ja siten niiden käyttämisen muissa tietokantapohjaisissa sovelluksis­

sa.

10.2 Johtopäätökset

Kaupan ala tulee hyötymään keräämästään tiedosta monin tavoin. Tässä työssä esitelty LTV-malli antaa yhden mahdollisuuden käyttää kertynyttä tietoa hyväksi.

(44)

Nykyisten tietokoneiden kapasitetti antaa mahdollisuuden käyttää kaikkea asiakkaista kertynyttä tietoa hyväksi monipuolisella tavalla, ja jopa kannettavan tietokoneen rituskyky on riittävä LTV-mallin mukaisen ennusteen tekemiseen.

suo-

Tulevaisuus tuo varmasti uusia ja yhä parempia menetelmiä asiakkaan tulevaisuuden arvon laskemiseen.

Laskennan suorittaminen SQL-tietokannassa ei kuormita kantaa tekemieni testien kaan juuri lainkaan. Mielestäni SQL-tietokanta ja -kieli soveltuvat hyvin laskennan toteuttamiseen. SQL:n avulla saadaan laskennan siirrettävyys eri kielillä toteutettaviin laskentaohjelmistoihin hyväksi. Lisäksi SQL:n ilmaisuvoima sopii mielestäni hyvin matriisilaskennan kuvaamiseen. Tärkeintä on kuvata tavoite ja antaa kannan laskea lopputulos. Ohjelmoijan näkökannalta vältytään monimutkaisten tietorakenteiden to­

teuttamiselta LTV-laskennan ryhmäkohtaisten välitulosten tallettamisessa.

mu-

(45)

Lähdeluettelo

[1] IBM(contact Jisook Yoon), Customer Lifetime Value,

http://www.cebt.re.kr/wh/%EC%B0%A8%EC%84%B8%EB%8C%80CRM/CLTV.pdf, 11.4.2003

[2] S.Makridakis, useita kirjoittajia.... The Forecasting Accuracy of Major Time Se­

ries Methods, s. 35, ISBN 0-471-90327-2 [3] Risto Tammela, verkkomateriaali,

http://www.jyu.fi/finance/ohjelmistot/RatkaisinJa_tavoitteenhaku.pdf, 2002

[4] Jaakko Hollmén, User profiling and classification for fraud detec­

tion in mobile communications networks, ISBN 951-666-555-1, tai http://lib.tkk.fi/Diss/2000/isbn9512252392/isbn9512252392.pdf ISBN 951- 22-5239-2

[5] Arthur Middleton Hughes, verkkoartikkeli,

http://www.dbmarketing.com/articles/Artl94.htm, 12.9.2005

[6] Michael Negnevitsky, Artificial Intelligence, s. 204, ISBN 0201-71159-1 [7] Ari Hovi, SQL-ohjelmointi, s. 5, ISBN 951-762-756-4

[8] Ari Hovi, SQL-ohjelmointi, ss. 6-7, ISBN 951-762-756-4 [9] Ari Hovi, SQL-ohjelmointi, s. 20,30, ISBN 951-762-756-4

[10] Anne Korkeamäki, Pauli Lindström, Tuula Ryhänen, Minna Saukkonen, Raili Selinheimo, Asiakasmarkkinointi, ss. 146-150, ISBN 951-0-26335-4

[11] Mikko Mäntyneva, Asiakkuudenhallinta, s. 84, ISBN 951-0-25950-0 [12] Mikko Mäntyneva, Asiakkuudenhallinta, s. 88, ISBN 951-0-25950-0 [13] Mikko Mäntyneva, Asiakkuudenhallinta, s. 76, ISBN 951-0-25950-0

[14] Kai Storbacka, Jarmo R. Lehtinen, Asiakkuuden ehdoilla vai asiakkaiden armoil­

la, s.32, ISBN 951-0-21467-1

(46)

[15] Kai Storbacka, Jarmo R. Lehtinen, Asiakkuuden ehdoilla vai asiakkaiden armoil­

la, s.60, ISBN 951-0-21467-1

[16] Kai Storbacka, Jarmo R. Lehtinen, Asiakkuuden ehdoilla vai asiakkaiden armoil­

la, S.46, ISBN 951-0-21467-1

[17] Kai Storbacka, Jarmo R. Lehtinen, Asiakkuuden ehdoilla vai asiakkaiden armoil­

la, S.59, ISBN 951-0-21467-1

[ 18] Kai Storbacka, Jarmo R. Lehtinen, Asiakkuuden ehdoilla vai asiakkaiden armoil­

la, S.80, ISBN 951-0-21467-1

[19] Kai Storbacka, Jarmo R. Lehtinen, Asiakkuuden ehdoilla vai asiakkaiden armoil­

la, s.86, ISBN 951-0-21467-1

[20] Allen L. Edwards, An Introduction to Linear Regression and Correlation, ss. 3- 13, ISBN 0-7167-0562-1, 0-7167-0561-3 pbk.

[21] David F. Findley(C. W. J. Granger and A. Andersen), Applied Time Series Ana­

lysis, ss. 25-26, ISBN 0-12-257250-5

[22] Brian S. Everitt, Cluster Analysis, s.4, ISBN 0-470-22043-0

(47)

Liite 1. Taulujen luontilauseet

Laskennassa käytettävät taulut voi perustaa tietokantaan seuraavilla lauseilla.

drop table customer_data;

create table customer_data

(

calculâtion_id integer, integer, integer, double customer_id

time id value

) ;

drop table cust_class;

create table cust_class

(

integer, customer_id integer, customer_sum double,

integer, integer rownum

pass class

) ;

drop table classification;

create table classification

(

calculation_id integer, integer, customer_count integer, value

class id

double

) ;

(48)

drop table transition_matrix;

create table transition_matrix

(

calculâtion_id class_id_l class_id_2 phase_id

integer, integer, integer, integer, original_class_id integer,

double percent

) ;

drop table transition_data;

create table transition_data

(

calculation id integer, original_class_id integer, time_id

class_id

integer, integer, integer customer_count

) ;

// Taulua Itv voidaan käyttää laskennan tulosten tallettamiseen

drop table Itv;

create table Itv

(

calculation id integer, original_class_id integer.

integer, double customer_cout

value

) ;

(49)

// Tauluun calculation voidaan laittaa laskennan perustiedot

drop table calculation;

create table calculation

(

calculation_id integer, varchar(20), number_of_classes integer, name

year_l year_2

integer, integer.

number_of_phases integer, inflation double

) ;

// Tee indeksit hakujen nopeuttamiseksi

create index custid on cust_class(pass, customer_id);

create index classpass on cust_class(pass. class, customer_id);

Viittaukset

LIITTYVÄT TIEDOSTOT

Hoitajien mielestä onnellinen lehmä makaa ja märehtii tyytyväisen ja raukean näköisenä – jopa niin tyytyväisen näköisenä, että hoitajan tekisi mieli vaihtaa lehmän kanssa

[r]

[r]

Alla olevat taulukot määrittelevät joukon

Halme-Tuomisaari, Miia (2020). Kun korona mullisti maailmamme. KAIKKI KOTONA on analyysi korona-ajan vaikutuksista yhteis- kunnassa. Kirja perustuu kevään 2020

Niiden luonne vain on muuttunut: eleet ja kasvottainen puhe ovat vaihtuneet kirjoitukseksi ja ku- viksi sitä mukaa kuin kirjapainotaito on kehittynyt.. Sa- malla ilmaisu on

voinut: säännöstellyissä, oloissa&#34;, merkitä.' Mutta jos lopputuloksena on se, että talouspo- litiikka on alhaisella reaalikorolla mitattuna ollut keynesiläistä,

Oppaassa olisi ehkä ollut tarkoituksenmukaista edes mainita, että valtakunnassa on vuosikymmenien ajan, esimerkiksi valtakunnan metsien inventoinnissa (VMI 4–9) käy- tetty