SaaS vs SOA
Сүүлийн үед аж ахуйн нэгжийн програм хангамжийн хэрэглээний хөгжүүлэлтийн бүх тал нь уламжлалт бүтээгдэхүүнд суурилсан арга барилаас татгалзаж, үйлчилгээнд суурилсан шинэ хандлага руу шилжсэн. SaaS (Software as a Service) болон SOA (Үйлчилгээнд чиглэсэн архитектур) хурдацтай хөгжиж байгаа нь үүний шууд үр дүн юм. SaaS нь үүлэн тооцооллын ангилал бөгөөд үйлчилгээний хувьд ашиглах боломжтой гол нөөц нь програм хангамжийн програмууд юм. SOA нь шийдлийн логикийг үйлчилгээ хэлбэрээр харуулсан архитектурын загвар юм.
SaaS гэж юу вэ?
Үүлэн тооцоолол нь эх сурвалжийг интернетээр ашиглах боломжтой тооцоолох арга юм. Ихэнхдээ эдгээр нөөцүүд нь өргөтгөх боломжтой, маш сайн дүрслэгдсэн нөөц бөгөөд тэдгээрийг үйлчилгээ хэлбэрээр өгдөг. SaaS нь үүлэн тооцооллын ангилал/арга зүйн нэг юм. Дээр дурьдсанчлан, SaaS-ээр дамжуулан үйлчилгээ болгон ашиглах боломжтой нөөц бол тусгайлан програм хангамжийн програмууд юм. Энд "нэгээс олон" загварыг ашиглан програмыг олон үйлчлүүлэгчдэд хуваалцдаг. SaaS хэрэглэгчдэд санал болгож буй давуу тал нь хэрэглэгч програм хангамж суулгах, засвар үйлчилгээ хийхээс зайлсхийж, програм хангамж/техникийн нарийн төвөгтэй шаардлагаас өөрийгөө чөлөөлж чаддагт оршино. SaaS програм хангамжийн үйлчилгээ үзүүлэгч нь үйлчилгээ үзүүлэгчийн сервер дээр ажилладаг тул програм хангамжийн аюулгүй байдал, хүртээмж, гүйцэтгэлийг хариуцах болно. Олон түрээслэгчийн архитектурыг ашиглан нэг програмыг интернет хөтчөөр дамжуулан сая сая хэрэглэгчдэд хүргэдэг. Үйлчлүүлэгчид урьдчилж лиценз авах шаардлагагүй, үйлчилгээ үзүүлэгчид зөвхөн нэг програмыг ажиллуулж байгаа тул хямд өртөгтэй байдаг. Хамгийн алдартай SaaS програм хангамж нь Salesforce юм.com, Workday, Google Apps болон Zogo Office.
SOA гэж юу вэ?
SOA нь шийдлийн логикийг үйлчилгээ хэлбэрээр харуулсан архитектурын загвар юм. Үйлчилгээг шийдлийг хүргэх үндсэн арга болгон ашигласнаар SOA нь одоо байгаа бусад технологийн шийдлүүдийг бодвол өндөр үр ашигтай, уян хатан, бүтээмжтэй байхыг эрмэлздэг. SOA нь үйлчилгээнд чиглэсэн зарчим, үйлчилгээнд чиглэсэн тооцооллын давуу талыг хэрэгжүүлэхэд дэмжлэг үзүүлдэг. Олон төрлийн технологи, төрөл бүрийн бүтээгдэхүүн, хэрэглээний програмчлалын интерфейс болон бусад төрөл бүрийн өргөтгөлүүд нь ихэвчлэн SOA хэрэгжилтийг бүрдүүлдэг. Програм хангамжийн шийдэлд үйлчилгээний чиг баримжаа олгох зарчмуудыг ашиглах нь үйлчилгээг бий болгодог бөгөөд эдгээр нь SOA-ийн логикийн үндсэн нэгж юм. Эдгээр үйлчилгээ нь бие даасан байдлаар оршин тогтнох боломжтой боловч тэдгээр нь мэдээжийн хэрэг тусгаарлагдмал биш юм. Үйлчилгээнүүд нь тодорхой нийтлэг болон стандарт шинж чанаруудыг хадгалдаг боловч тэдгээрийг бие даан хөгжүүлж, өргөжүүлж болно. Бусад үйлчилгээг бий болгохын тулд үйлчилгээг нэгтгэж болно. Үйлчилгээнүүд нь зөвхөн үйлчилгээний тодорхойлолтоор дамжуулан бусад үйлчилгээний талаар мэддэг бөгөөд иймээс сул холболттой гэж үзэж болно. Үйлчилгээнүүд нь өөрийн логик хэсгүүдийг өөрөө удирдах хангалттай ухаалаг бие даасан мессежүүдийг ашиглан харилцдаг. SOA-ийн дизайны хамгийн чухал зарчмууд нь сул холболт, үйлчилгээний гэрээ, бие даасан байдал, хийсвэрлэл, дахин ашиглах боломжтой, нэгтгэх боломжтой, харьяалалгүй байх ба илрэх боломжтой.
SaaS болон SOA хоёрын ялгаа юу вэ?
SOA нь үйлчилгээнд суурилсан тооцооллын зарчмуудыг програм хангамжийн шийдэлд ашиглах замаар программ хангамжийг зохион бүтээх, бүтээхэд зориулагдсан үйлдвэрлэлийн загвар бол SaaS нь програм хангамжийн хэрэглээний борлуулалт, түгээлтийн загвар юм. Энгийнээр хэлбэл, SaaS нь програм хангамжийг хэрэглэгчдэдээ интернетээр үйлчилгээ болгон хүргэх хэрэгсэл бол SOA нь логикийн хамгийн жижиг нэгж нь үйлчилгээ болох архитектурын загвар юм. Тиймээс SOA (архитектурын стратеги) болон SaaS (бизнес загвар) хоёрыг шууд харьцуулах боломжгүй юм. Гэсэн хэдий ч зардлаа бууруулж, авхаалж самбаагаа дээд зэргээр хүртэхийн тулд аж ахуйн нэгжүүдэд SOA болон SaaS-ийг нэгтгэхийг зөвлөж байна.