Matti Grönroos

End-to-End SLA ja käytettävyyden matematiikka

Silloin tällöin esiin nousee kuumana asiana End-to-End SLA. Sillä tarkoitetaan palvelusopimusta, jossa käytettävyyden arvoketjua mitataan käyttäjien työasemasta käsin ja jossa joku ottaa kokonaisuudesta vastuun. Tällainen olisi kiva saada, mutta harva palvelutoimittaja sellaiseen nimensä suostuu laittamaan, ainakaan ilman hinnoittelun messevää riskipreemiota.

Usein End-to-End SLA:han lisäksi kohdistetaan epärealistisia odotuksia siitä, että silläkin voitaisiin helposti ja halvalla tavoitella 99,999 prosentin käytettävyyttä.

Koska on muotia puhua End-to-End-käytettävyydestä, moni on valmis sitä haluamaan.

Tarkastellaanpa vähän kysymystä niin teknisenä kuin sopimusjuridisena kysymyksenä.

Usein tunnistetaan kolmen tasoista käytettävyyttä, komponenttien (component availability), palvelunservice availability) ja päästä-päähän-käytettävyys end-to-end availability).

Tällainen arvoketju usein pilkkoutuu usean palvelutoimittajan vastuulla olevaksi vastuusaarekkeiden saaristoksi; esimerkiksi paikallisen lähituen, tietoliikennetoimittajan, infratoimittajan, muutaman ohjelmistotoimittajan ja sovelluspalveluiden toimittajan kesken. Mikään yksittäinen taho ei ole ilmiselvässä kokonaisvastuussa, eikä kukaan yleensä sitä myöskään valmiina kantamaan. SIAM-toimintamallissa asiaan liittyvää monimutkaisuutta voidaan piilottaa käyttäjiltä, mutta sekään ei siivoa periaatteellista pulmaa mihinkään.

Tekninen kysymys on se, että puhtaasti todennäköisyyslaskun nojalla "sarjaan kytkettyjen" komponenttien kokonaiskäytettävyys on yksittäisten komponenttien käytettävyyksien tulo. Sen lisäksi, että ketju on enintään heikoimman lenkin veroinen, jokainen lenkki itsessään leikkaa kokonaiskäytettävyyttä. Tätä kuvaa fiktiivinen esimerkki päästä-päähän-käytettävyyden muodostumisesta:

Selain99,80 %
Työaseman ohjelmisto99,80 %
Työaseman laitteisto99,95 %
Reititin99,98 %
WAN99,80 %
Selain99,80 %
Sovellus99,80 %
Tietokantamoottori99,99 %
Middleware99,90 %
Palvelimen ohjelmisto99,90 %
Palvelinlaitteisto99,99 %
Levyjärjestelmä99,99 %
Yhteensä98,69 %

Tästä nähdään, että vaikka jokainen arvoketjun osanen olisi käytettävyydeltään erinomainen, koko ketju ei saavuta edes 99 prosentin tasoa.

Monet tekniikat ja redundanssi vievät tätä suoraviivaista mallia kohti korkeampaa matematiikkaa. Monesti riittää peukalosäännöksi "ylimääräisen yhdeksikön sääntö": Lisätään komponenttikäytettävyyteen yksi yhdeksikkö, jotta saadaan kohtalaisen hyvä arvio järjestelmän käytettävyydelle. Esimerkiksi tavoiteltaessa 99,90 %:n käytettävyyttä kunkin komponentin käytettävyydeksi pitää saada 99,99 %.

Oleellista on kuitenkin ymmärtää, että end-to-end-käytettävyys on aivan eri asia kuin komponenttien käytettävyys, eikä siihen ole mielekästä yrittää soveltaa samoja tavoitteita kuin yksittäisiin komponentteihin.