تاریخچه پیدایش سرویس SaaS :
میزبانی متمرکز از برنامه های کاربردی و کار با آنها به سال 1960 برمی گردد.در شروع دهه ی اول، آی بی ام و سایر ارائـه دهنـدگان پردازنده ی مـرکزی در حوزه کسـب و کار ، اغلب از طریق مراکز داده خود سرویس زمان اشتراک گذاری و قدرت محاسباتی و ذخیره سـازی پایگاه داده ها را بـه بانکها و دیگر سـازمان هـای بزرگ به سراسر جهان ارائه می دادند.با گسترش اینترنت در طول سال 1990، سبک جدیدی از محاسبات متمرکز به نام ارائه دهندگان نرم افزار خدمات (ASP) به وجود آمد
.
ASP، سرویس میزبانی و مدیریت برنامه های تخصصی با هدف کاهش هزینه در کسب و کار را ارائه کرد.

نرم افزار به عنوان سرویس (SaaS)، در اصل ایده ی ASP را گسـترش می دهد.اگرچه نرم افزار به عنـوان سرویس، معمولا در تنظیمات خاص تری استفاده می گردد،
از سال 2012 ، راه حل های SaaS با استفاده از یک معماری برای چند یوزر ارائه گردید که در آن نرم افزار در خدمت تعداد زیادی ازکسـب و کارها با کاربران متعدد قرار می گرفت.
توزیع سرویس :SaaSمدل ابر یا SaaS به دلیل اینکه از لحاظ فیزیکی توزیع نشده است نیاز فیزیکی برای توزیع غیر مستقیم ندارد، وتقریبا بلافاصله استقرارمی یابد.امروزه چشم انداز جدیدی با سرویس SaaS توسط ارائه دهندگان آن درحال شکل گیری می باشد که مدل فروش غیر مستقیم را با مدل تجاری ارائه دهندگان ترکیب می کند، و کسانی که به دنبال تعریف دوباره نقش خود در اقتصاد فناوری اطلاعات هستند نیز در این چشم انداز حضور دارند.
معماری سرویس :SaaS
راه حل های SaaS اکثرا به صـورتی هستند کـه همـزمان چنـد مشتری یـا کـاربر بتوانند استفاده کنند.با استفاده از این مدل یک نسخه از برنامه با پیکربندی خاص از نظر سخت افزار ، شبکـه و سیستم عامل را بـرای همه ی مشتریان اجـرا می کنـند ، البته تعـداد مشتریان بسته به مقیاس پذیری نرم افزار متغییر است.
از دیگر محاسن ایـن معمـاری میتوان بـه این موضوع اشاره کـرد که هر مشتری می تواند چند سرویس را با پیکربندی های سفارشی بخرد ، در نتیجه هزینه ای که پرداخت می کند ، دقیقا مطابق با نیازش از نظر سخت افزاری و نرم افزاری است و هزینه های اضافی پرداخت نمی کند.
در این معماری گاهی اوقات برای اینکه نسخه جدید نرم افزار را تست کنند آن را برای یکسری از مشتریان اجرا می کنند و اگر برنـامه نسخه جدیـد بـه درستی کـارکرد ، آن موقع نسخه ی جدید را برای همه ی مشتریان اجرا می کنند. این کار در برنامه های سنتی به این صورت بود که هر مشتری باید نسخه ی بتا جدید را برای خود به صورت فیزکی نصب می کرد که اینکار هم زمان بر و هم هزینه بر بود، البته در چنین مواقعی راه حل هایی از SaaS وجود دارد که برنامه را بطـور همزمان برای چنـد مشتری اجرا نمی گردد و تنها برای یک مشتری اجرا می شود که آن هم در نوع خود محاسنی دارد از جمله قدرت بیشتر نرم افزار، زیرا نرم افزار فقط برای یک مشتری به اجرا درآمده است و فقط یک مشتـری بـه تنهایی از تمـام منـابع سخت افزاری و نـرم افزاری استفاده می کند.
روشهای اصلی سرویس :SaaS
عمودی (vertical SaaS): نیاز یک صنعت خاص را تامین می کند.(کشاورزی، بهداشت، مسکن، صنایع مالی)
افقی(vertical SaaS): محصولی که روی مجموعه ای از نرم افزار ها متمرکز است.(بازاریابی ، فروش ، تامین تجهیزات)

مشخصات سرویس :SaaS
ویژگی های زیر در بین همه ی برنامه های SaaS مشترک هستند اگرچه در برخی برنامه های SaaS ، استثنا هم وجود دارد.
پیکربندی و سفارشی سازی
همانطور که اشاره شد معماری SaaS قابلیت استفاده همزمان توسط چندمشتری را دارد که این قابلیت را نرم افزارهای سنتی نداشتند البته ذکر این نکته ضروریست که نرم افزارهای سنتی قابلیت سفارشی سازی داشتند اما نمی توان تغییری در کد منبع یا پایگاه داده نرم افزار و یا ظاهر برنامه ایجاد کردکه بر خلاف نرم افزارهای سنتی، برنامه های SaaS قابلیت پیکربندی مجموعه ای از تنظیمات را دارندکه می تواند،عملکرد برنامه را تغییردهند. به عنوان مثال: برای حمایت از مشتریان، گاهی کاربران احساس می کنند که باید نگاه و احساس برنامه را تغییر دهند، مثلا لوگوی برنامه یا رنگ های استفاده شده در برنامه را تغییر دهند.این اعمال تا جای که برنامه SaaS به آنها قابلیت پیکربندی بدهد ، قابل انجام هستند.
سرعت در اعمال تغییرات جدید
برنامه های کاربردی SaaS ، به مراتب بیشتر از نرم افزار های سنتی به روزرسانی می شوند، ( در بسیاری از موارد به صورت هفتگی یا ماهانه) و با چند عامل فعال می گردند از انجاییکه نرم افزار به صورت مرکزی ، میزبانی می گردد عملیات به روزرسانی توسط ارائه دهنده تصمیم گیری و انجام می پذیرد و مشتریان در این امر دخالتی ندارند همچنین با توجه به اینکه نرم افزار دارای یک پیکربندی واحد می باشد این امر باعث سرعت ساخت و توسعه نرم افزار می گردد.
یکپارچه سازی پروتکل های باز
از آنجایی که برنامه های کاربردی SaaS نمی توانند به سیستم های داخلی یک شرکت (پایگاه داده ها یا خدمات داخلی) دسترسی پیداکنند، عمدتا پروتکل ها را ادغام می کنند و رابط های برنامه نویسی کاربردی (API) بیش از یک شبکه ی گسترده به کار گرفته می شوند.به طور معمول ، این پروتکل ها براساس Rest و Http و SOAP می باشند. در دسترس بودن برنامه های کاربردی SaaS و سایر خدمات اینترنتی و همچنین استانداردسازی فناوری API ، باعث شده تا ترکیبی از برنامه های کاربردی سبک وزن با قابلیت سرویس های متعدد ارائه گردد و یک سرویس مرکب ایجاد گردد. ترکیب های متفاوت برنامه های کاربردی SaaS در محل نرم افزار را نمی توان به راحتی خارج از فایروال شرکت، یکپارچه سازی کرد.
عملکرد به صورت همکاری و اجتماعی
با الهام از موفقیت شبکه های اجتماعی آنلاین و دیگر قابلیت های وب 20 ، بسیاری از برنامه های کاربردی SaaS ، ویژگی هایی را در اختیار کاربران قرارمی دهند ، که در آن اجازه همکاری وب به اشتراک گذاری اطلاعات موجود است.به عنوان مثال ، بسیاری از برنامه های کاربردی مدیریت پروژه در مدل SaaS ، علاوه بر اینکه قابلیت برنامه ریزی پروژه سنتی را دارا می باشند، به کاربران قابلیت همکاری و همچنین قابلیت اظهار نظر در مورد وظایف و برنامه ها ، و اشتراک گذاری اسناد در داخل و خارج از سازمان را می دهند.
انعطاف پذیری سرویس
چندین تغییر مهم در بازار نرم افزار و فناوری ، چشم انداز پذیرش و رشد راه حل های SaaS را تسهیل کرده است.استفاده ی روز افزون از رابط کاربری مبتنی بر وب توسط برنامه های کاربردی ، همراه با گسترش شیوه های دسترسی همراه، به طور مدوام باعث کاهش نیاز به برنامه های کاربردی کلاینت سرورهای سنتی شده است.در نتیجه سرمایه گذاری فروشندگان نرم افزار سنتی بر روی مشتریان بزرگ متمرکز شده که باعث بروز نقطه ضعف گردیده است و این باعث ایجاد کار برای فروشندگان یا ارئه دهندگان سرویس تک کاربری شده است..نفوذ افزایش دسترسی به پهنای باند فعال ، برنامه های میزبانی مرکزی را قادر ساخت تا سرعت قابل ملاحظه ای در محل نرم افزار میزبانی ارائه دهند.

قیمت گذاری سرویس:SaaS
بر خلاف نرم افزار های سنتی، که معمولا یک هزینه به عنوان مجوز دائمی و هزینه دیگری جهت پشتیبانی از آن نرم افزار در طول سال پرداخت می شود این هزینه ها در نرم افزار به عنوان سرویس (SaaS) بدین صورت است که یک هزینه راه اندازی اولیه و همچنین یک هـزینه ی اشـتراک کـه معمولا به صـورت مـاهیانه یا سـالانـه می باشد پرداخت می گردد که این اشتراک می تواند بر اساس پارامترهای مختلف مانند تعـداد کاربران، فضای ذخیره سازی داده ها و یا محیط نرم افزار ،هزینه های مختلفی را داشته بـاشد و البته این هزینه ها از نرم افزار های سازمان معادل خود ارزانتر و بهینه تر می شوند. نکته ی کلیدی رشدSaaS توانایی فروشندگان SaaS با ارائه قیمتی است که قابل رقابت با نرم افزارهای سنتی باشد به همین دلیل است که برون سپاری سیستم ها یا همان نرم افزار به عنوان سرویس در مقایسه با نرم افزارهـای سنتی هم بهینه تر و هم ارزانتر و قابل اطمینان تر است.




امنیت در سرویس :SaaS
امنیت درمحاسبات ابری ، نگرانی بزرگی است . داده در ابر باید به فرم رمز شده ای ذخیره شود . برای ممنوع کردن مشتری از دسترسی مستقیم به داده به اشتراک گذاشته شده ، سرویس های پراکسی و واسطه ای مورد استفاده قرار می گیرند. رمز گذاری کمک می کند تا از داده در برابر خطر محافظت کنیم . این کار ،کمک می کند تا از داده ای که می خواهیم انتقال دهیم به خوبی داده ذخیره شده در ابر ، محافظت کنیم. اگرچه رمز گذاری کمک می کند تا داده را از هر دسترسی بدون اجازه محافظت کنیم ، اما متاسفانه از مفقود شدن داده جلوگیری نمی کند.