SaaS vs SOA
Viime aikoina kaikki yritysohjelmistojen sovelluskehityksen osa-alueet on siirretty pois perinteisestä tuotepohjaisesta lähestymistavasta kohti uudempia palvelupohjaisia lähestymistapoja. SaaS:n (Software as a Service) ja SOA:n (Service Oriented Architecture) nopea kasvu on suora seuraus siitä. SaaS on pilvipalveluiden luokka, jossa tärkeimmät palveluna käytettävissä olevat resurssit ovat ohjelmistosovellukset. SOA on arkkitehtoninen malli, jossa ratkaisulogiikka esitetään palveluina.
Mikä SaaS on?
Pilvilaskenta on laskentatyyli, jossa resurssit tuodaan saataville Internetin kautta. Useimmiten nämä resurssit ovat laajennettavia ja hyvin visualisoituja resursseja ja ne tarjotaan palveluna. SaaS on yksi pilvipalvelun kategorioista/menetelmistä. Kuten edellä mainittiin, SaaS-palvelun kautta saatavilla olevat resurssit ovat erityisesti ohjelmistosovelluksia. Tässä sovellus jaetaan useiden asiakkaiden kesken käyttämällä "yksi moneen" -mallia. SaaS-käyttäjälle tarjottu etu on, että käyttäjä voi välttää ohjelmistojen asentamisen ja ylläpidon sekä vapautua monimutkaisista ohjelmisto-/laitteistovaatimuksista. SaaS-ohjelmiston, joka tunnetaan myös nimellä isännöity ohjelmisto tai tilausohjelmisto, toimittaja huolehtii ohjelmiston turvallisuudesta, saatavuudesta ja suorituskyvystä, koska ne toimivat palveluntarjoajan palvelimilla. Monen vuokraajan arkkitehtuuria käyttämällä yksi sovellus toimitetaan miljoonille käyttäjille Internet-selaimien kautta. Asiakkaat eivät vaadi etukäteislisensointia, kun taas palveluntarjoajat nauttivat alhaisemmista kustannuksista, koska he ylläpitävät vain yhtä sovellusta. Suosittuja SaaS-ohjelmistoja ovat Salesforce.fi, Workday, Google Apps ja Zogo Office.
Mikä on SOA?
SOA on arkkitehtoninen malli, jossa ratkaisulogiikka esitetään palveluina. Koska palvelut ovat pääasiallinen ratkaisujen toimitustapa, SOA pyrkii olemaan muita olemassa olevia teknologiaratkaisuja erittäin tehokas, ketterä ja tuottava. SOA tarjoaa tukea palvelulähtöisten periaatteiden ja palvelukeskeisen laskennan etujen toteuttamiseen. SOA-toteutuksen muodostavat tyypillisesti monet erilaiset tekniikat, erilaiset tuotteet, sovellusohjelmointirajapinnat ja muut erilaiset laajennukset. Palvelulähtöisten periaatteiden soveltaminen ohjelmistoratkaisuihin tuottaa palveluita ja nämä ovat SOA:n logiikan perusyksikkö. Nämä palvelut voivat olla itsenäisiä, mutta ne eivät todellakaan ole erillisiä. Palveluissa on tiettyjä yhteisiä ja vakioominaisuuksia, mutta niitä voidaan kehittää ja laajentaa itsenäisesti. Palveluita voidaan yhdistää muiden palveluiden luomiseksi. Palvelut ovat tietoisia muista palveluista vain palvelukuvausten kautta, joten niitä voidaan pitää löyhästi kytkettyinä. Palvelut kommunikoivat autonomisten viestien avulla, jotka ovat riittävän älykkäitä hallitsemaan omia logiikkaosiaan. Tärkeimmät SOA-suunnittelun periaatteet ovat löysä kytkentä, palvelusopimus, autonomia, abstraktio, uudelleenkäytettävyys, koostettavuus, v altiottomuus ja löydettävyys.
Mitä eroa on SaaS:lla ja SOA:lla?
SOA on valmistusmalli, joka käsittelee ohjelmistojen suunnittelua ja rakentamista soveltamalla palvelukeskeisiä laskentaperiaatteita ohjelmistoratkaisuihin, kun taas SaaS on malli ohjelmistosovellusten myyntiin ja jakeluun. Yksinkertaisemmin sanottuna SaaS on keino toimittaa ohjelmistoja palveluina Internetin kautta tilaajilleen, kun taas SOA on arkkitehtuurimalli, jossa logiikka pienin yksikkö on palvelu. Joten SOA:ta (arkkitehtuuristrategia) ja SaaS:ää (liiketoimintamalli) ei voi suoraan verrata. Jotta kustannussäästöistä ja ketteryydestä saadaan maksimaalinen hyöty, on kuitenkin erittäin suositeltavaa, että yritykset yhdistävät SOA:n ja SaaS:n.