軟體即服務

SARS 軟體即服務（Software as a Service，縮寫：SaaS，發音：/sæs/或/sɑs/），亦可稱為「按需即用軟體」（即「一經要求，即可使用」），它是一種軟體交付模式。在這種交付模式中，軟體僅需通過網路，不須經過傳統的安裝步驟即可使用，軟體及其相關的數據集中託管於雲端服務。使用者通常使用精簡客戶端，一般即經由網頁瀏覽器來訪問、存取軟體即服務。SaaS 最大的特色在於軟體本身並沒有被下載到使用者的硬碟，而是存儲在提供商的雲端或者伺服器。相較於傳統軟體需要花錢購買和下載，軟體即服務只需要使用者租用軟體，在線使用，不但大大減少了使用者購買風險, 也無需下載軟體本身，無設備要求的限制。

對於許多商業應用來說，軟體即服務已經成為一種常見的交付模式。這些商業應用包括會計系統、協同軟體、客戶關係管理、管理資訊系統、企業資源計劃、開票系統、人力資源管理、內容管理、以及服務台管理。軟體即服務已經被吸納進所有領先的企業級軟體公司的戰略中。這些公司的最大的賣點之一就是通過將硬體和軟體維護及支持外包給軟體即服務的提供者，來降低資訊技術（Information Technology，簡稱IT）成本。

根據一份高德納集團（Gartner Group，也稱顧能集團）的評估，軟體即服務的銷售在2010年達到了100億美元，並且曾被預計在2011年要達到121億美元，比2010年上升20.7%。高德納集團估計，到2015年，軟體即服務的收入將會超過它的2010年的收入的2倍以上，並且達到預計的213億美元。客戶關係管理系統持續成為軟體即服務的最大市場。在客戶關係管理市場中的軟體即服務曾被預測會從2010年的32億美元上升到2011年的38億美元。

「軟體即服務」（SaaS）的術語被認為是雲計算的命名法的一部分，還有IaaS、PaaS、桌面即服務（DaaS）都被認為是雲計算的學術名稱。

## 歷史

商業應用的集中式託管可以追溯到20世紀60年代。從那一年代開始，IBM和其他大型電腦提供商提供了常被稱為分時系統和公共事業計服務局業務。這種服務包括從他們在世界各地的數據中心向銀行以及其他大型組織提供計算能力及資料庫存儲。

20世紀90年代期間，網際網路的擴張使應用服務提供商作為新型集中式計算提供者而興起。應用服務提供商向商業組織提供託管的服務，並管理專門的商業應用，目的在於通過集中式管理，以及解決方案提供商在特定商業應用上的專業化，來降低花銷。

軟體即服務實質上擴展了應用服務提供商（ASP）模式的思想。然而，術語「軟體即服務」常常被用於更特定的環境：

- 雖然大多數最初的應用服務提供商聚焦於管理和託管第三方獨立軟體供應商的軟體，但到了2012年，軟體即服務提供商通常開發和管理他們自己的軟體。
- 雖然許多最初的應用服務提供商提供更傳統的、需要在使用者的個人電腦上安裝軟體的客戶機-伺服器應用，當代的軟體即服務解決方案絕大多數依賴於全球資訊網，並且僅僅需要一個網際網路瀏覽器即可使用。
- 儘管大多數最初的應用服務提供商所使用的軟體架構必須要求為每個商業組織維持一個該應用的獨立實例，但到了2012年，軟體即服務解決方案通常使用一個多租架構，在這種架構中，應用為多個商業組織和使用者提供服務，並相應地將它的數據進行分區。

「SAAS」這個簡稱據稱初次出現在一個名為「戰略背景說明會：軟體即服務」（Strategic Backgrounder: Software As A Service）的文章中。這篇文章由軟體和資訊行業協會（Software & Information Industry，簡稱SIIA）電子商務分部（eBusiness Division）於2001年在內部刊物中發表。

資料庫即服務（Database as a Service，簡稱DbaaS）已經作為軟體即服務的一個子衍生出現。

## 定價

與大多通常以直接用費以及一個可選的持續收取的支撐費用的方式作為永久許可證銷售的數傳統軟體不同，軟體即服務提供商一般地使用一個簽約費用來給應用定價，最常見的是一個月費或年費。因此，軟體即服務的初裝費用通常比同等的企業軟體要便宜。軟體即服務供應商通常基於一些用量參數來為他們的應用定價，例如使用該應用的使用者數量（座位數）。然而，因為在一個軟體即服務環境中，客戶數據存在於軟體即服務供應商，提供商也可按事務、事件或其他單位的值收費。

在一個多租環境中的相對低廉的使用者服務開通（亦即設立一個新的客戶），使得一些軟體即服務供應商得以用基本功能免費的模式來提供應用。在這種模式下，一個擁有有限功能或範圍的服務是免費可用的，增強的功能或更大的範圍則是要收費的。其他一些軟體即服務應用則對使用者完全免費，而收入則產生於變通的來源例如廣告。

軟體即服務的增長的一個關鍵驅動力就是軟體即服務供應商提供一個與駐場軟體具有競爭力的價格。這與傳統的關於外包資訊技術系統的理念是一致的，它包括將規模經濟應用到應用運營上，即一個外部的服務提供商可能有能力提供更好、更便宜、更可信賴的應用。

## 架構

絕大多數軟體即服務解決方案都是基於一個多租架構的。依靠這個模式，應用的一個單一的版本，以及一個單一的配置（硬體、網路、作業系統）被用於所有客戶（「租戶」）。為了支持可擴展性，應用被安裝在多台機器上（被稱為水平擴展）。在一些情況下，應用的第二個版本被裝好，並提供給精心挑選的客戶，讓他們訪問預發布的應用的版本（例如一個試商用版本，即beta版本）用於測試目的。這與傳統軟體形成對比。對於傳統軟體來說，軟體的多個物理副本被安裝在大量的客戶現場。這些物理副本的每一個都有可能是不同的版本，並且有不同的配置，並且常常經過定製化。

在一些特定的例外情況下，軟體即服務解決方案不使用多租技術，或使用其他技術諸如虛擬化，來替代多租戶技術，高費效比地來管理大量的客戶多租戶技術對於軟體即服務來說是否是一個必需的組件，目前仍是一個爭論的話題。

## 特徵

由於並非所有的軟體即服務應用都開放所有的功能特性，下面的這些是許多軟體即服務應用的常見的特徵：

### 配置和定製化

軟體即服務應用支持類似傳統意義上所說的應用「定製化」。換句話說，與傳統的企業軟體類似，一個單獨的客戶可以更改配置選項的設置（也稱「參數」），這些設置影響它的功能以及界面外觀。對於配置選項，每個客戶可能擁有他自己的設置（或：參數值）。基於一系列的預定義的配置選項，應用可以被定製化到他所被設計到的程度。

例如：要支持客戶的這樣一種常見需求——更改一個應用的界面外觀以使得這個應用看起來擁有該客戶的品牌（或者如果需要，聯合品牌），許多軟體即服務應用讓客戶提供（通過一個自助服務界面或通過與應用提供商員工協作）一個客戶品牌圖標，而有時候是一系列的一貫風格的顏色。然而，除非本來就設計了這麼一個選項，否則客戶不能更改頁面布局。

### 加速了的特性交付

軟體即服務應用通常比傳統軟體更快地被更新，許多情況下是每周或每月一次的頻度。這是由幾個因素來實現的：

- 應用被集中式地託管，因此新的發行版本可以直接被放上去而無需要求客戶安裝新的軟體。
- 應用只有一個單獨的配置，使得開發測試更快。
- 應用供應商可以訪問所有客戶數據，加快了設計和回歸測試的速度。
- 解決方案提供商能夠查看使用者在應用中的行為（通常通過網站分析），可以更容易地識別出值得改進的區域。

敏捷軟體開發方法論進一步使得更快的特性交付成為可能。這個在20世紀90年代中期得到了演進的方法提供了一系列軟體開發工具和實踐來支持頻繁的軟體發行版本。

### 開放式集成協議

由於軟體即服務應用不能訪問一個公司的內部系統（資料庫或內部服務），他們絕大多數提供在廣域網上操作的集成協議和API。API一般使用HTTP、REST、SOAP和JSON等技術。

軟體即服務的無處不在，以及其他網際網路服務，還有他們的AP）技術的標準化，造就了混搭的發展——它們是一些輕量級的應用，將來自多個服務的數據、展現和功能結合起來，創建一個複合服務。混搭將軟體即服務應用與駐場軟體進一步差異化，因為後者無法被在一個公司的防火牆之外被輕易地集成。

### 協作（和「社交」）功能

受到社交網路服務以及其他所謂的Web 2.0功能的啟發，許多軟體即服務應用提供讓他們的使用者協作並分享資訊的特性。例如，許多在軟體即服務模式中交付的項目管理應用提供超出傳統項目計劃功能的協作特性，讓使用者可以在任務和計劃上進行評註，並在組織內外共享文檔。其他一些軟體即服務應用允許用戶投票和提供新的特性想法。

儘管一些協作相關的功能也被集成進了駐場軟體，但不同客戶的使用者之間的隱性或顯性的協作只有在集中式託管的軟體上才有可能實現。

## 為什麼採用SaaS

軟體市場和技術前景的幾個重要變化，促進了軟體即服務解決方案的接納和增長：

- 應用對基於全球資訊網的使用者界面的不斷增長的使用，以及聯合就踐行——例如網上設計的激增，持續地降低了對於傳統客戶端-伺服器應用的需要。因此，傳統軟體供應商在基於胖客戶端的軟體上的投資變成了劣勢（它必須要持續的支持），打開大門迎接新的軟體供應商來提供一個使用者體驗，被認為更「入時」。
- 全球資訊網協議棧（HTML、JavaScript、CSS、HTTP）的標準化，網站開發作為一個實踐不斷增長的流行程度，以及像Ruby on Rails這樣的Web應用框架的引入和無處不在，逐漸地降低了開發新的軟體即服務解決方案的花費，並使得新的解決方案提供商提供有競爭力的解決方案成為可能，挑戰著傳統的供應商。
- 網際網路寬頻接入（broadband Internet access）上的持續突破，使得遠程集中式託管的應用提供能與駐場軟體可相提並論的速度成為可能。
- HTTPS作為全球資訊網協議棧（web stack）的一部分，它的標準化提供了普遍適用的輕量級安全保障的，對於日常應用來說足夠了。
- 輕量級集成協議，例如REST和SOAP的引入和廣泛接受，使得軟體即服務應用（存在於雲中）和內部應用在廣域網上與其他軟體即服務應用之間的經濟適用的集成成為可能。

## 採用SaaS的挑戰

一些限制延緩了軟體即服務被接受的速度，並阻止它被用於某些情況：

- 由於數據是被存儲在供應商的伺服器上，數據安全成為了一個問題。
- 軟體即服務應用被託管在雲端，與應用使用者相距甚遠。這樣就在環境中引入了時延；因此，舉例來說，軟體即服務模式不適合要求響應時間在毫秒級的應用。
- 多租，這個驅動了軟體即服務解決方案提供商的高費效比的架構，不允許用於大客戶的真正的對應用的定製化，阻止了這種應用被用於對於這樣一種定製化存在需求的場景（通常適用於大型企業）。
- 一些商業應用要求去訪問或與客戶的當前數據集成。當這樣的數據量很大或者敏感時（例如使用者的個人資訊），將他們與遠程託管軟體集成起來就會很花代價並且很有風險。
- 政策法規上的搜索/占有保障法律並不保護所有形式的軟體即服務動態存儲的數據。最終導致結果是，安全鏈條上又被加上了一環：在這裡，對數據的訪問，以及進一步的對該數據的不當使用，僅僅由假定是誠信的第三方或能夠訪問該數據的政府部門以他們自己的承諾書來限制。
- 更換軟體即服務供應商可能引入緩慢而困難的在網際網路上傳輸非常大的數據文件的任務。
- 採用了軟體即服務的組織可能會發現他們被強迫採用新的版本，這可能導致未預料的培訓花費或使用者會出錯的可能性的增加。
- 依賴於一個網際網路連接意味著數據會以網際網路的速度傳輸向或接受自軟體即服務公司，而不是一個公司內部網絡的可能的更快的速度。

標準模型也存在限制：

- 與硬體、其他軟體以及作業系統的兼容性。
- 許可證和遵從性問題（承載該組織的軟體程序的未授權的副本）。
- 維護、支持和補丁修正進程。

## 數據第三方擔保

軟體即服務數據第三方擔保（SaaS data escrow）是將關鍵的軟體即服務應用數據保存在一個獨立的第三方的過程。與將軟體原始碼保存在一個獨立的第三方的原始碼第三方擔保類似，軟體即服務數據第三方擔保是應用在一個軟體即服務應用中的數據的相同的邏輯。它允許各個公司保護（protect）並擔保（insure）留存在軟體即服務應用中的所有數據，防止數據丟失。

對於考慮軟體即服務數據第三方擔保來說有著各種各樣的原因，包括對關於供應商破產的擔心，未計劃的服務斷供以及可能的數據丟失或篡改。許多商業組織還熱衷於確保這些數據符合他們自己的數據支配（data governance）標準，或想擁有針對他們的軟體即服務數據的改進了的報表和商業分析。一項由清步軟體公司（Clearpace Software Ltd.）發起的對軟體即服務的增長的研究顯示，85%的參與者想要獲得他們的軟體即服務數據的一個副本。1/3的這些參與者想要每天獲取一份副本。

## 外部連結

- NCLab - 用於科學、技術、工程和數學（Science, Technology, Engineering and Mathematics，簡稱STEM）軟體即服務雲計算平台，為數以千計的研究人員、講師和學生所使用。
- 中華電信-雲市集hicloud mall