SaaS vs SOA
Recentment, tots els aspectes del desenvolupament d'aplicacions de programari empresarial s'han allunyat de l'enfocament tradicional basat en productes cap als nous enfocaments basats en serveis. El ràpid creixement de SaaS (Software as a Service) i SOA (Service Oriented Architecture) és un resultat directe d'això. SaaS és la categoria de cloud computing en què els principals recursos disponibles com a servei són les aplicacions de programari. SOA és un model arquitectònic en què la lògica de la solució es presenta com a serveis.
Què és SaaS?
La informàtica en núvol és un estil d'informàtica en què els recursos estan disponibles a Internet. Molt sovint aquests recursos són recursos extensibles i altament visualitzats i es proporcionen com a servei. SaaS és una de les categories/metodologies de cloud computing. Com s'ha esmentat anteriorment, els recursos disponibles com a servei a través de SaaS són específicament aplicacions de programari. Aquí, una aplicació es comparteix entre diversos clients mitjançant el model "un a molts". L'avantatge que ofereix l'usuari de SaaS és que l'usuari pot evitar la instal·lació i el manteniment de programari i pot alliberar-se de requeriments complexos de programari/maquinari. El proveïdor de programari SaaS, també conegut com a programari allotjat o programari sota demanda, s'encarregarà de la seguretat, la disponibilitat i el rendiment del programari perquè s'executen als servidors del proveïdor. Mitjançant una arquitectura multitenant, una única aplicació es lliura a milions d'usuaris mitjançant navegadors d'Internet. Els clients no requereixen llicències inicials, mentre que els proveïdors gaudeixen d'un cost més baix perquè només mantenen una aplicació. El programari SaaS popular és Salesforce.com, Workday, Google Apps i Zogo Office.
Què és SOA?
SOA és un model arquitectònic en què la lògica de la solució es presenta com a serveis. En tenir els serveis com el mètode principal per oferir solucions, SOA s'esforça per ser altament eficient, àgil i productiu que altres solucions tecnològiques existents. SOA ofereix suport per adonar-se dels avantatges dels principis orientats al servei i la informàtica orientada al servei. Moltes tecnologies diferents, diversos productes, interfícies de programació d'aplicacions i altres diverses extensions solen constituir una implementació SOA. L'aplicació de principis d'orientació de serveis a solucions de programari produeix serveis i aquests són la unitat bàsica de la lògica en el SOA. Aquests serveis poden existir de manera autònoma, però certament no estan aïllats. Els serveis mantenen determinades característiques comunes i estàndard, però es poden desenvolupar i ampliar de manera independent. Els serveis es poden combinar per crear altres serveis. Els serveis són conscients d' altres serveis només a través de les descripcions de serveis i, per tant, es poden considerar que no estan acoblats. Els serveis es comuniquen mitjançant missatges autònoms prou intel·ligents com per autogovernar les seves pròpies parts de la lògica. Els principis de disseny SOA més importants són l'acoblament fluix, el contracte de servei, l'autonomia, l'abstracció, la reutilització, la composició, l'apatriditat i la descoberta.
Quina diferència hi ha entre SaaS i SOA?
SOA és un model de fabricació que s'ocupa del disseny i la creació de programari aplicant els principis d'informàtica orientada a serveis a solucions de programari, mentre que SaaS és un model de venda i distribució d'aplicacions de programari. En termes més senzills, SaaS és un mitjà per oferir programari com a serveis a través d'Internet als seus subscriptors, mentre que SOA és un model arquitectònic en què la unitat lògica més petita és un servei. Per tant, SOA (una estratègia arquitectònica) i SaaS (un model de negoci) no es poden comparar directament. Tanmateix, per obtenir els màxims beneficis de la reducció de costos i l'agilitat, és molt recomanable que les empreses integrin SOA i SaaS junts.