SaaS pret SOA
Pēdējā laikā visi uzņēmuma programmatūras lietojumprogrammu izstrādes aspekti ir novirzīti no tradicionālās uz produktiem balstītas pieejas uz jaunākām, uz apkalpošanu balstītām pieejām. SaaS (Software as a Service) un SOA (Service Oriented Architecture) straujā izaugsme ir tiešs tā rezultāts. SaaS ir mākoņdatošanas kategorija, kurā galvenie resursi, kas pieejami kā pakalpojums, ir programmatūras lietojumprogrammas. SOA ir arhitektūras modelis, kurā risinājuma loģika tiek parādīta kā pakalpojumi.
Kas ir SaaS?
Mākoņdatošana ir skaitļošanas stils, kurā resursi ir pieejami internetā. Visbiežāk šie resursi ir paplašināmi un ļoti vizualizēti resursi, un tie tiek sniegti kā pakalpojums. SaaS ir viena no mākoņdatošanas kategorijām/metodoloģijām. Kā minēts iepriekš, resursi, kas pieejami kā pakalpojums, izmantojot SaaS, ir īpaši programmatūras lietojumprogrammas. Šeit lietojumprogramma tiek koplietota vairākiem klientiem, izmantojot modeli “viens pret daudziem”. SaaS lietotājam piedāvātā priekšrocība ir tā, ka lietotājs var izvairīties no programmatūras instalēšanas un uzturēšanas un var atbrīvot sevi no sarežģītām programmatūras/aparatūras prasībām. SaaS programmatūras nodrošinātājs, kas pazīstams arī kā mitināta programmatūra vai programmatūra pēc pieprasījuma, rūpēsies par programmatūras drošību, pieejamību un veiktspēju, jo tā tiek darbināta pakalpojumu sniedzēja serveros. Izmantojot vairāku nomnieku arhitektūru, viena lietojumprogramma tiek piegādāta miljoniem lietotāju, izmantojot interneta pārlūkprogrammas. Klientiem nav nepieciešama iepriekšēja licencēšana, savukārt pakalpojumu sniedzējiem ir zemākas izmaksas, jo viņi uztur tikai vienu lietojumprogrammu. Populāra SaaS programmatūra ir Salesforce.com, Workday, Google Apps un Zogo Office.
Kas ir SOA?
SOA ir arhitektūras modelis, kurā risinājuma loģika tiek parādīta kā pakalpojumi. Izmantojot pakalpojumus kā galveno risinājumu piegādes metodi, SOA cenšas būt ļoti efektīva, elastīga un produktīva nekā citi esošie tehnoloģiju risinājumi. SOA sniedz atbalstu, lai realizētu uz pakalpojumiem orientētu principu un uz pakalpojumiem orientētas skaitļošanas priekšrocības. Daudzas dažādas tehnoloģijas, dažādi produkti, lietojumprogrammu saskarnes un citi dažādi paplašinājumi parasti veido SOA ieviešanu. Pakalpojumu orientācijas principu piemērošana programmatūras risinājumiem rada pakalpojumus, un tie ir SOA loģikas pamatvienība. Šie pakalpojumi var pastāvēt autonomi, taču tie noteikti nav izolēti. Pakalpojumos ir noteiktas kopīgas un standarta funkcijas, taču tos var attīstīt un paplašināt neatkarīgi. Pakalpojumus var apvienot, lai izveidotu citus pakalpojumus. Pakalpojumi ir informēti par citiem pakalpojumiem, tikai izmantojot pakalpojumu aprakstus, un tāpēc tos var uzskatīt par brīvi saistītiem. Pakalpojumi sazinās, izmantojot autonomus ziņojumus, kas ir pietiekami inteliģenti, lai paši pārvaldītu savas loģikas daļas. Svarīgākie SOA izstrādes principi ir brīvs savienojums, pakalpojumu līgums, autonomija, abstrakcija, atkārtota izmantošana, kompozīcija, bezpavalstniecība un atklājamība.
Kāda ir atšķirība starp SaaS un SOA?
SOA ir ražošanas modelis, kas nodarbojas ar programmatūras projektēšanu un izveidi, programmatūras risinājumiem piemērojot uz pakalpojumiem orientētus skaitļošanas principus, savukārt SaaS ir programmatūras lietojumprogrammu pārdošanas un izplatīšanas modelis. Vienkāršāk sakot, SaaS ir līdzeklis programmatūras kā pakalpojumu sniegšanai internetā saviem abonentiem, savukārt SOA ir arhitektūras modelis, kurā mazākā loģikas vienība ir pakalpojums. Tātad SOA (arhitektūras stratēģija) un SaaS (biznesa modelis) nevar tieši salīdzināt. Tomēr, lai gūtu maksimālu labumu no izmaksu samazināšanas un veiklības, uzņēmumiem ir ļoti ieteicams integrēt SOA un SaaS kopā.