SaaS vs SOA
Onlangs zijn alle aspecten van de ontwikkeling van zakelijke softwaretoepassingen weggeschoven van de traditionele productgebaseerde benadering naar de nieuwere op servicediensten gebaseerde benaderingen. De snelle groei van SaaS (Software as a Service) en SOA (Service Oriented Architecture) is daar een direct gevolg van. SaaS is de categorie cloud computing waarbij de belangrijkste bronnen die beschikbaar zijn als een service softwaretoepassingen zijn. SOA is een architectonisch model waarin de oplossingslogica wordt gepresenteerd als services.
Wat is SaaS?
Cloud computing is een stijl van computergebruik waarbij bronnen via internet beschikbaar worden gesteld. Meestal zijn deze middelen uitbreidbare en sterk gevisualiseerde bronnen en worden ze als een service aangeboden. SaaS is een van de categorieën / methodologieën van cloud computing. Zoals hierboven vermeld, zijn bronnen die als een service via SaaS beschikbaar zijn, specifiek softwaretoepassingen. Hier wordt een toepassing met meerdere clients gedeeld via het "one-to-many" -model. Het voordeel voor de SaaS-gebruiker is dat de gebruiker kan voorkomen dat hij software installeert en onderhoudt en zichzelf kan bevrijden van complexe software / hardwarevereisten. De leverancier van SaaS-software, ook wel gehoste software of on-demand software genoemd, zorgt voor de beveiliging, beschikbaarheid en prestaties van de software omdat deze op de servers van de provider worden uitgevoerd. Met behulp van een multitenant-architectuur wordt een enkele applicatie aan miljoenen gebruikers geleverd via internetbrowser. Klanten hebben geen voorafgaande licenties nodig, terwijl providers lagere kosten hebben omdat ze slechts één applicatie onderhouden. Populaire SaaS-software is Salesforce.com, Workday, Google Apps en Zogo Office.
Wat is SOA?
SOA is een architectonisch model waarin de oplossingslogica wordt gepresenteerd als services. Door services te gebruiken als de belangrijkste methode voor het leveren van oplossingen, streeft SOA ernaar zeer efficiënt, wendbaar en productief te zijn dan andere bestaande technologische oplossingen. SOA biedt ondersteuning om de voordelen van servicegerichte principes en servicegeoriënteerde computing te realiseren. Veel verschillende technologieën, verschillende producten, interfaces voor toepassingsprogrammering en andere verschillende uitbreidingen vormen meestal een SOA-implementatie. Toepassing van servicegerichte principes op softwareoplossingen levert diensten op en deze vormen de basiseenheid van logica in de SOA. Deze diensten kunnen autonoom bestaan, maar ze zijn zeker niet geïsoleerd. Services onderhouden bepaalde algemene en standaardfuncties, maar ze kunnen onafhankelijk worden ontwikkeld en uitgebreid. Services kunnen worden gecombineerd om andere services te maken. Services zijn alleen op de hoogte van andere services via servicebeschrijvingen en kunnen daarom losjes gekoppeld worden beschouwd. Services communiceren via autonome berichten die intelligent genoeg zijn om zelf hun logica te bepalen. De belangrijkste SOA-ontwerpprincipes zijn losse koppeling, servicecontract, autonomie, abstractie, herbruikbaarheid, compatibiliteit, staatloosheid en vindbaarheid.
Wat is het verschil tussen SaaS en SOA?
SOA is een productiemodel dat zich bezighoudt met het ontwerpen en bouwen van software door de service-oriented computing-principes toe te passen op software-oplossingen, terwijl SaaS een model is voor de verkoop en distributie van softwaretoepassingen. In eenvoudiger bewoordingen is SaaS een middel om software als diensten via internet aan haar abonnees te leveren, terwijl SOA een architectonisch model is waarin de kleinste eenheid van logica een dienst is. Soa (een architectuurstrategie) en SaaS (een bedrijfsmodel) kunnen dus niet direct worden vergeleken. Om echter de maximale voordelen van kostenreductie en flexibiliteit te behalen, wordt bedrijven ten zeerste aangeraden SOA en SaaS samen te integreren.