軟體的銷售與部署方式,以往的作法是消費者到實體店面購買套裝軟體後再回家安裝,這幾年開始流行起在網路上直接購買軟體並立刻下載安裝。

和軟體線上市集同時開始形成潮流的還有SaaS(Software as a Service,軟體即服務)。

在SaaS的作法下,軟體不再是以往的軟體,而是以服務的方式存在。SaaS讓軟體(主要是商用軟體)不需要安裝在客戶的電腦,使用者只要連上網路就能使用。由於軟體不需要安裝在客戶端電腦,所以部署、維護、更新都相當容易。因此,許多企業對於SaaS相當感興趣。Salesforce的CRM系統,便是SaaS最成功的典範之一。

SaaS最常見的作法是,前端利用網頁瀏覽器當平臺,以JavaScript語言開發;後端利用Web伺服器當平臺、使用PHP、Java、C#……等語言。如此的SaaS系統只需要部署到伺服器上,用戶便能透過瀏覽器操作此系統。大部分運算在伺服器上進行,而需要處理使用者互動或者客戶端主動聯繫伺服器的部分,則由被載入瀏覽器的JavaScript程式負責。

如何將既有的程式SaaS化?如果目前的系統已經是Client/Server架構(Fat Client),可以選擇將Client的部分用JavaScript改寫,再寫一個程式當作JavaScript和Server之間的溝通橋樑,儘管這麼做的工程不小,但還是會比全面改寫更快。許多比較舊式的軟體,為了因應Web時代的需求,便會考慮這種做法,以快速地為顧客提供Web方案。

不過,只有Client/Server軟體可以用上述局部改寫的方式來符合SaaS,桌面程式(例如Word、Excel、PowerPoint、Photoshop)想要SaaS化,難度相當高,必須整個用JavaScript重寫。而且JavaScript寫出來的程式,在實際操作上還是不如桌面程式來得流暢與美觀。因此,桌面程式進入SaaS還是有相當高的門檻。

為了讓此門檻降低甚至完全消失,有些廠商利用虛擬化技術(virtualization)將所有軟體都部署在企業伺服器,員工只要登入該企業的domain,就會自動啟用OS層級的虛擬機制,使用者只要選取執行虛擬桌面的軟體,該軟體就會立刻從伺服器派送過來,快取在本地端並啟動執行,讓桌面軟體立刻變成SaaS。

利用虛擬化技術讓軟體變成SaaS的觀念類似「隨選視訊」(VoD,Video on Demand),你可以稱它為「隨選軟體」(SoD,Software on Demand)或「隨選應用」(AoD,Application on Demand)。目前已有大型企業在內部採用此技術,實現隨處辦公(無固定座位的辦公);也有ISP業者正以此平臺為基礎,準備對其顧客提供軟體租用服務(軟體視為服務,計次計時收費)。

SoD的SaaS作法,其技術與觀念上類似無碟工作站(Diskless Node),和Thin Client的差異相當大。但SoD還是和無碟工作站不太一樣,無碟工作站的一切(包括OS)都是伺服器發派過來的,軟體會在客戶端執行;SoD的作法則是只有發派應用軟體到客戶端。

以SoD的方式進行SaaS,最明顯的好處有:
● 可以使用熟悉的軟體,員工不需重新適應軟體。現有的軟體可以立刻變成服務。
● 充分運用客戶端的運算資源,降低伺服器的負荷,符合分散式運算的精神。傳統的SaaS比較耗費伺服器的運算能力。
● 傳統SaaS利用JavaScript寫出來的應用程式,操作上不如原生(native)程式那麼順暢。
● 大多數的桌面應用往往自給自足,不需要和伺服器互動,用SoD比用傳統的SaaS更適合。
● 應用被快取(cache)在本地端,除了可以提高啟動速度,當網路不通時,也可以照樣執行。
● 資料可以選擇儲存在本地端或伺服器端。
但是SoD依然有缺點:
● 客戶端必須登入特定的domain,否則就必須事先下載安裝「啟用程式」。
● 目前的SoD有作業系統的限制(只限特定作業系統),但是傳統SaaS採用JavaScript,只要有瀏覽器即可執行。
● 有的軟體授權方式可能不允許將軟體安裝在伺服器上,並發派到許多客戶端電腦上執行。

不管使用哪一種作法,SaaS最大的好處就是簡化了軟體的部署與維護工作,降低MIS部門的人力需求,這正是SaaS最吸引人的地方。
Google、IBM等許多廠商都在推行SaaS,而且網路基礎設施也已經建設完備,未來幾年,以SaaS形式存在的軟體會越來越多。

從目前的局勢來看,SaaS確實是一股不能抵擋的潮流。你準備好你的SaaS方案了嗎?

作者簡介:
蔡學鏞-技術顧問
清華大學資訊工程碩士,曾任華碩集團軟體工程師、元智大學資訊系講師、美商歐萊禮出版社技術編輯、臺灣微軟特約專欄作家。

熱門新聞

Advertisement