در این مطلب به بررسی این که «SaaS چیست» و ویژگیها و کاربردهای اصلی آن میپردازیم. SaaS یک مدل توزیع نرمافزار است که در آن یک ارائهدهنده ابری اپلیکیشنها را میزبانی کرده و آنها را برای کاربران عادی (end users) از طریق اینترنت در دسترس قرار میدهد. در این مدل، یک فروشنده مستقل نرمافزار یا به اختصار ISV، ممکن است با یک ارائهدهنده خدمات ابری شخص ثالث قرارداد ببندد تا اپلیکیشن را میزبانی کند، یا در شرکتهای بزرگتر مانند مایکروسافت، ارائه دهندهی ابری ممکن است فروشنده نرمافزار باشد.
SaaS همراه با زیر ساخت به عنوان سرویس (یا همان Infrastructure as a Service) و پلتفرم به عنوان سرویس (یا همان Platform as a Service) یکی از سه دسته اصلی رایانش ابری یا همان Cloud Computing هستند.عده زیادی از متخصصها، کاربران تجاری و کاربران شخصی از اپلیکیشنهای Saas استفاده میکنند. این سرویس محصولات متنوعی از سرگرمیهای شخصی مانند نتفلیکس گرفته تا ابزارهای پیشرفته فناوری اطلاعات را دربر میگیرد. برخلاف محصولات IaaS و PaaS، محصولات SaaS به طور مداوم برای کاربران B2B و B2C بازاریابی میشوند.
طبق گزارش اخیر از شرکت McKinsey، تحلیلگران صنعت فناوری، رشد بیشتری را در بازار نرمافزار به عنوان سرویس (SaaS) پیشبینی میکنند و انتظار دارند که تا سال 2024 حجم بازار محصولات SaaS به چیزی نردیک 200 میلیارد دلار برسد.
نحوه کار SaaS به چه صورت است؟
نرم افزار به عنوان سرویس یا SaaS از طریق مدل تحویل ابری (Cloud Delivery Model) کار میکند. یک ارائهدهنده نرمافزار با استفاده از سرور ابری، دیتابیسها، شبکهها و منابع محاسباتی خود، اپلیکیشن یا دیتای مرتبط با آن را میزبانی کند یا ممکن است یک فروشنده مستقل نرم افزار باشد که با یک ارائه دهنده ابری برای میزبانی دیتاسنتر ارائه دهنده قرارداد دارد. اپلیکیشن با اتصال به یک شبکه قابل دسترسی به هر دستگاهی است. اپلیکیشنهای SaaS معمولاً از طریق مرورگرهای وب دسترسی پیدا می کنند.
بنابراین، شرکتهایی که از اپلیکیشنهای SaaS استفاده میکنند درگیر عملیات نصب و نگهداری نرم افزار نیستند. کاربران برای دسترسی به نرم افزارهایی که راه حلهای آماده هستند تنها کافی است هزینه اشتراک آنها را پرداخت کنند.
نرم افزار به عنوان سرویس بهطور نزدیکی با مدلهای ارائه خدمات اپلیکیشن (ASP) و تحویل نرمافزار با مدل محاسبات درخواستی مرتبط است، که در آن ارائهدهنده نرمافزار، نرمافزار مشتری را میزبانی کرده و آن را به کاربران عادی تایید شده از طریق اینترنت ارائه میدهد.
در مدل نرم افزار در صورت تقاضای SaaS، ارائهدهنده به مشتریان دسترسی مبتنی بر شبکه به یک نسخه از اپلیکیشن ایجاد شده توسط ارائهدهنده برای توزیع SaaS میدهد. کد منبع اپلیکیشن برای تمامی مشتریان یکسان است و هنگامی که ویژگیها یا قابلیتهای جدیدی منتشر میشوند، به تمامی مشتریان ارائه میشوند. بسته به توافق سطح خدمات (SLA)، دادههای مشتری در هر مدل ممکن است به صورت محلی، در ابر و یا هم محلی و هم در ابر ذخیره شوند.
سازمانها با استفاده از رابطهای برنامهنویسی اپلیکیشن میتوانند اپلیکیشنهای نرمافزاری SasS را با سایر نرم افزارها یکپارچه کنند. به عنوان مثال، یک شرکت میتواند ابزارهای نرم افزار خود را ایجاد کرده و از API های ارائهدهنده SaaS استفاده میشود تا این ابزارها را با سرویس SaaS یکپارچه کند.
معماری SaaS چیست؟
اپلیکیشن ها و خدمات SaaS به طور معمول از رویکرد (Multi-tenant) استفاده میکنند، که به معنای این است که یک نمونه واحد از اپلیکیشن SaaS روی سرورهای میزبان در حال اجرا خواهد بود و این نمونه واحد به هر مشتری مشترک یا کاربر ابری ارائه خواهد شد. اپلیکیشن بر روی یک نسخه واحد و پیکربندی برای همهی مشتریان یا کاربران اجرا خواهد شد.
با این حال، مشتریان مشترک شدهی مختلف بر روی همان نمونه ابر با یک زیرساخت و پلتفرم مشترک کار خواهند کرد، اما دادهها از مشتریان مختلف تفکیک خواهند شد.
معماری چند کاربره (Multi-tenant) رایج برای اپلیکیشنهای SasS به معنای این است که ارائهدهنده سرویس ابری میتواند نگهداری، آپدیتها و رفع اشکالات را سریعتر، آسانتر و کارآمدتر مدیریت کند. به جای اینکه تغییرات را در چندین نمونه انجام دهد، مهندسان میتوانند تغییرات لازم را برای تمامی مشتریان با حفظ یک نمونه مشترک اعمال کنند.
علاوه بر این، چند کاربره بودن باعث میشود تا یک مجموعه بزرگتر از منابع برای یک گروه بزرگتر از افراد در دسترس باشد، بدون اینکه ویژگیهای مهم ابری مانند امنیت، سرعت و حریم خصوصی به خطر بیفتد.
مزایای SaaS چیست؟
SaaS نیاز به نصب و اجرای اپلیکیشنها روی کامپیوترها یا در دیتاسنتر خود سازمانها را از بین میبرد. این مزیت باعث حذف هزینههای تهیه و راهاندازی سختافزار، تأمین، نگهداری و همچنین خرید، نصب و پشتیبانی نرمافزار میشود.
مزایای دیگر مدل SaaS عبارتند از:
پرداختهای منعطف: به جای خرید نرمافزار برای نصب یا سختافزار اضافی برای پشتیبانی از آن، مشتریان در یک بسته SaaS مشترک میشوند. تبدیل هزینه به هزینه عملیاتی تکراری، به بسیاری از کسبوکارها امکان میدهد تا برنامهریزی بودجه بهتر و قابل پیشبینیتری را داشته باشند. کاربران همچنین میتوانند در هر زمان بستههای SasS را لغو کرده تا از هزینههای تکراری و بی فایده جلوگیری کنند.
کاربرد مقیاس پذیر: سرویسهای ابری مانند SasS قابلیت مقیاسپذیری بالایی را ارائه می دهند، که به مشتریان امکان میدهد تا به تعداد بیشتر یا کمتری خدمات یا ویژگیها به صورت تقاضایی دسترسی داشته باشند.
آپدیتهای اتوماتیک: به جای خرید نرمافزار جدید، مشتریان میتوانند به یک ارائهدهنده SaaS اعتماد کنند تا بهطور خودکار به آپدیت ها و مدیریت پچها بپردازد. این عمل، بار مسئولیت را بر روی کارکنان داخلی IT کاهش میدهد.
دسترسی و پایداری: از آنجایی که فروشندگان SasS اپلیکیشنها را از طریق اینترنت ارائه میدهند، کاربران میتوانند از هر دستگاه و مکانی که اینترنت فعال دارد به آنها دسترسی پیدا کنند.
سفارشی سازی: اپلیکیشنهای SaaS اغلب قابلیت سفارشی سازی دارند و میتوانند با سایر اپلیکیشنهای تجاری یکپارچه شوند، به ویژه با اپلیکیشنهایی که از یک ارائهدهنده نرمافزار مشترک هستند.
چالشها و ریسکهای SaaS چیست؟
SaaS همچنین چالشها و خطراتی را به همراه دارد، زیرا کسبوکارها باید بر ارائهدهندگان خارجی نرمافزار برای ارائه نرمافزار، نگهداری و پشتیبانی از آن، پیگیری و گزارشدهی درست و دقیق از فاکتورها و ایجاد یک محیط امن برای دادههای کسبوکار خود اتکا کنند.
مسائلی خارج از کنترل مشتری: مشکلات ممکن است پیش بیایند زمانی که ارائهدهندگان با اختلالات خدمات مواجه شوند، تغییرات غیرمطلوب در پیشنهادهای خدمات را اعمال کنند یا درگیر یک نقض امنیتی شوند – همه این موارد میتوانند تأثیر چشمگیری روی توانایی مشتریان در استفاده از بسته SaaS داشته باشند. برای پیشگیری از این مسائل، مشتریان باید ارائه دهندهی SLA نرم افزار به عنوان سرویس خود را درک کنند و مطمئن شوند که آن رعایت میشود.
مشتریان کنترلی بر ورژن بندی ندارند: اگر ارائهدهنده یک نسخه جدید از یک اپلیکیشن را بهکار بگیرد، آن نسخه به تمامی مشتریانش ارائه خواهد شد، بدون توجه به اینکه آیا مشتری میخواهد نسخه جدید را داشته باشد یا خیر. این ممکن است نیازمند اختصاص زمان و منابع اضافی برای آموزش سازمان باشد.
مشکلات در تغییر فروشندهها: همانطور که در استفاده از هر ارائهدهنده خدمات ابری، تغییر فروشندهها ممکن است دشوار باشد. برای تغییر فروشندهها، مشتریان باید حجم بسیار زیادی از دادهها را منتقل کنند. علاوه بر این، برخی از فروشندهها از فناوریها و انواع دادههای مالکی استفاده میکنند که میتواند فرآیند انتقال داده مشتریان را بین ارائهدهندگان مختلف ابری پیچیدهتر کند. قفل شدن فروشنده، زمانی است که یک مشتری به سادگی نمیتواند بین ارائهدهندگان خدمات به دلیل این شرایط جابجا شود.
امنیت: امنیت ابری بهطور معمول بهعنوان یک چالش مهم برای اپلیکیشنهای SaaS ذکر میشود.
امنیت و حریم خصوصی در SaaS
خطرات امنیت سایبری مرتبط با نرمافزار به عنوان یک سرویس با ریسکهای مرتبط با نرمافزارهای سنتی متفاوت است. در نرمافزارهای سنتی، تولید کننده نرمافزار مسئولیت حذف آسیبپذیریهای مبتنی بر کد را بر عهده دارد، در حالی که کاربر مسئول اجرای نرمافزار در یک زیرساخت و شبکه امن است. به عبارتی، امنیت بیشتر، مسئولیت تولید کننده مستقل نرمافزار و ارائهدهنده ابری شخص ثالث است.
با وجود پذیرش سریع مدلهای مبتنی بر ابر برای محصولات نرمافزاری کاملاً خدمترسان، سازمانها هنوز نگرانیهایی درباره محصولات SaaS در زمینه امنیت و حریم خصوصی دارند. این نگرانی ها شامل موارد زیر میشود:
- رمزگذاری و مدیریت کلید؛
- مدیریت هویت و دسترسی (IAM)؛
- نظارت امنیتی؛
- پاسخگویی به حوادث؛
- ادغام ناکارآمد در محیطهای امنیتی سازمانی گستردهتر؛
- رعایت الزامات محل نگهداری داده؛
- حفظ حریم شخصی؛
- هزینه سرمایهگذاری در ابزارهای شخص ثالث برای تعویض خطر امنیتی SaaS؛
- عدم ارتباط با کارشناسان فنی و امنیتی در طول فرآیند فروش.
مقایسه SaaS و IaaS و PaaS
همانطور که پیشتر گفتیم SaaS و LaaS و PaaS سه مدل اصلی خدمات ابری هستند. در هر سه مدل، ارائهدهندگان ابری منابع دیتاسنتر خود را به مشتریانشان از طریق اینترنت ارائه میدهند.
در حالی که تفاوت مدلها در تکامل محصول است. محصولات SasS اپلیکیشنهایی کامل و به طور کامل مدیریت شده هستند. LaaS به طور عمده بهعنوان خروجی منابع مرکز داده استفاده میشود، و PaaS یک پلتفرم توسعه ابزارهای دیگر را که توسط دیتاسنتر ارائهدهنده میزبانی میشوند ارائه میدهد.
کاربران اپلیکیشن SasS نیازی به دانلود نرمافزار، مدیریت هر نوع از زیر ساختهای موجود IT یا مدیریت هیچ جنبهای از مدیریت نرمافزار ندارند. فروشندهها مسئولیت نگهداری، ارتقاء، پشتیبانی، امنیت و سایر جنبههای مدیریت نرمافزار را بر عهده دارند.
LaaS توسط شرکتهایی که میخواهند دیتاسنتر و منابع رایانه خود را به یک ارائهدهنده ابری برون سپاری کنند استفاده میشود. ارائهدهندگان اجزای زیرساختی LaaS که شامل سرورها، ذخیرهسازی، سختافزار شبکه و منابع مجازیسازی میشود را میزبانی میکنند. سازمانهای مشتریانی که از خدمات LaaS استفاده میکنند هنوز هم باید مدیریت مصرف دادهها، اپلیکیشنها و سیستمعاملهای خود را انجام دهند.
PaaS یک فریمورک از منابع را برای توسعهدهندگان داخلی یک سازمان فراهم میکند. این پلتفرم میزبانی شده، به توسعهدهندگان اجازه میدهد اپلیکیشنهای سفارشی ایجاد کنند. فروشندگان منابع دیتاسنترها را که از ابزارها پشتیبانی میکند را مدیریت میکند. سازمانهای مشتری که از خدمات PaaS استفاده میکنند نیازی به مدیریت سیستم عاملهای خود ندارند، اما باید اپلیکیشنها و مصرف دادههای خود را مدیریت کنند.
فروشندگان SaaS و نمونههای آن
بازار SaaS شامل مجموعهای از فروشندگان نرم افزار و محصولات میشود. این بازار شامل فروشندگان کوچک با یک محصول تا غولهای ابری مانند AWS و Google میشود.
همچنین محصولات SaaS متنوع هستند و از خدمات استریم ویدیو تا ابزارهای تجزیه و تحلیل تجارت را در بر میگیرند. اپلیکیشنهای SaaS برای اپلیکیشنهای تجاری اساسی مانند ایمیل، مدیریت فروش، مدیریت ارتباط با مشتری (CRM)، مدیریت مالی، مدیریت منابع انسانی (HRM)، صدور صورت حساب و تعامل به کار برده میشود. محصولات SaaS به عنوان محصولات سازمانی برای صنایع خاص مانند بیمه یا پزشکی، که به نام محصولات عمودی SasS هم شناخته میشوند وجود دارند.
محصولات SasS ممکن است به طور اصلی در بازارهای B2B و B2C یا هر دوی آنها به فروش عرضه شوند. نمونههایی از محصولات محبوب SaaS عبارتند از:
- Salesforce
- Google Workspace apps
- Microsoft 365
- HubSpot
- Trello
- Netflix
- Zoom
- Zendesk
- DocuSign
- Slack
- Adobe Creative Cloud
- Shopify
- Mailchimp
قیمت گذاری SaaS
بطور کلی، استفاده از یک محصول SaaS اقتصادیتر از یک لایسنس نرمافزار سنتی برای نرمافزارهای سازمانی است، زیرا نیاز به نصب و راهاندازی روی سختافزار وجود ندارد. ارائهدهندگان SasS از مدلهای قیمتگذاری مبتنی بر اشتراک برای مشتریان خود استفاده میکنند.
- رایگان یا مبتنی بر تبلیغات: سرویسی ممکن است برای کاربران رایگان باشد و ارائهدهنده SasS درآمد خود را از فروش فضای تبلیغاتی کسب کند. در این مدل، معمولاً گزینهای برای ارتقا به یک سطح پرداختی بدون تبلیغات مزاحم وجود دارد.
- نرخ ثابت: مشتریان برای دسترسی به تمام امکانات نرمافزار، هزینه ثابتی به صورت ماهانه یا سالیانه پرداخت میکنند.
- بر اساس تعداد کاربران: قیمتگذاری بر اساس تعداد افرادی که برای هر اشتراک از خدمت استفاده میکنند تعیین میشود. برای هر کاربر هزینه ثابتی وجود دارد.
- سطوح بر اساس تعداد کاربران: سطوح قیمتگذاری بر اساس محدودهای از تعداد کاربران فعال در یک اشتراک تعیین میشود.
- سطوح ذخیرهسازی: مشتریان ممکن است به صورت رایگان به خدمت دسترسی داشته باشند، اما در صورت تمایل به استفاده از محصول بعد از اتمام محدودیت رایگان، باید برای ذخیرهسازی پرداخت کنند.
- پرداخت بر اساس استفاده: هر چه مشتریان بیشتر از خدمت استفاده کنند، هزینه بیشتری پرداخت میکنند و بالعکس.
بر اساس کاربر فعال: این مدل جنبههایی از رویکردهای per-user و pay-as-you- go را در بر میگیرد. صورتحساب مشترکین به ازای هر کاربر هزینه میپردازند، اما تنها در صورتی که کاربر فعالانه از آن سرویس بیش از یک آستانه تعریف شده استفاده کرده باشد.
طبقه بندی بر اساس ویژگیها: سطوح قیمتگذاری بر اساس تعداد ویژگیهایی درخواستی مشترک تعیین میشود. در این مدل، نسخههای کاهش یافته نرمافزار با ویژگیهای محدود با قیمتی کمتر از سطح حداکثر عملکرد موجود است. سطوح ویژگی اضافی بین سطح حداقل و حداکثر عملکرد نیز ممکن است وجود داشته باشد.
فریمیوم: سرویس به طور کلی رایگان برای استفاده ارائه میشود، اما معمولاً محدودیتهای عملکردی در نظر گرفته شدهاند که طراحی شدهاند تا مشتریان را به سمت سطح پرداختی هدایت کنند.