|
云計算服務(wù)模型,第 3 部分: 軟件即服務(wù)(PaaS)軟件即服務(wù) (SaaS) 為商用軟件提供基于網(wǎng)絡(luò)的訪問。您有可能已經(jīng)使用過 SaaS,即使您當時并不知道。SaaS 的示例包括 Netflix、Photoshop.com、Acrobat.com、Intuit QuickBooks Online、Gmail 和 Google Docs。可能不太明顯的 SaaS 實現(xiàn)包括移動應(yīng)用程序市場中的相當一部分。
SaaS 為企業(yè)提供一種降低軟件使用成本的方法——按需使用軟件而不是為每臺計算機購買許可證。尤其是考慮到大多數(shù)計算機在差不多 70% 的時間是空閑的,SaaS 可能非常有效。企業(yè)不必為單一用戶購買多個許可證,而是讓許可證的使用時間盡可能接近 100%,從而盡可能節(jié)省成本。 為了方便,表 1 再次給出本系列第 1 部分中提供的三類服務(wù)的概念交叉矩陣。 表 1. 三類云計算的概念交叉矩陣
SaaS 推動 ROI 的四個因素 SaaS 給軟件廠商提供了新的機會。尤其是,SaaS 軟件廠商可以通過四個因素提高 ROI:
部署的速度 在過去,部署傳統(tǒng)的桌面應(yīng)用程序需要很大的工作量。實際上,我曾經(jīng)多次聽到桌面應(yīng)用程序開發(fā)人員把更新他們的應(yīng)用程序稱為 “部署噩夢”。正如 Tariq Ahmed 在 Flex 4 in Action (Manning Press) 的第 1 章中指出的,“要想讓數(shù)千甚至數(shù)萬客戶機同時運行軟件的某一版本,后勤方面的復(fù)雜性是非常高的?!?/p> Ahmed 說,復(fù)雜性這么高,以致于大多數(shù)桌面軟件開發(fā)公司甚至認為這根本不合理或不可行。過去受到這個問題困擾的開發(fā)商應(yīng)該考慮部署軟件的 SaaS 版本。但是,妨礙傳統(tǒng)軟件開發(fā)公司進入 SaaS 市場的最大障礙是讓桌面應(yīng)用程序能夠作為 SaaS 應(yīng)用程序運行。在許多情況下,這需要在某種程度上重新編寫軟件,一些公司覺得這么做成本太高。 這正是向云計算轉(zhuǎn)移的過程比較緩慢且平緩的主要原因之一。在大多數(shù)情況下,符合邏輯的解決方案是分階段地把軟件轉(zhuǎn)移到云中,首先以 SaaS 的形式提供原應(yīng)用程序的高度簡化的版本。考慮到開發(fā)商對版本控制的控制水平,這么做是很合理的。在這里,分析一下 SaaS 的特點會很有幫助。 您可以看出在云計算與過去的 “LAN 計算” 之間有許多相似之處。典型的 LAN 架構(gòu)由站內(nèi)的許多工作站組成,它們常常被稱為啞終端,它們通過連接強大的大型機(常常由 IBM 提供)運行應(yīng)用程序,見 圖 1。 圖 1. 顯示在基本 LAN 中客戶機終端與大型機系統(tǒng)的關(guān)系的簡單示意圖
這種計算類型過去非常適合企業(yè),因為 IT 部門能夠完全控制版本,可以非常方便地多次部署更新。同樣,過去妨礙桌面軟件應(yīng)用程序開發(fā)商進行版本控制的后勤障礙在云中也不存在,因為軟件在開發(fā)公司能夠直接訪問的基礎(chǔ)設(shè)施上運行。 考慮到 SaaS 必須能夠服務(wù)的客戶機數(shù)量,SaaS 基礎(chǔ)設(shè)施的規(guī)模要比 LAN 大得多。但是,底層的概念是相同的。圖 1 所示的大型機能夠駐留足夠多的軟件實例,從而為本地網(wǎng)絡(luò)中連接它的所有客戶機提供服務(wù);而 圖 2 所示的云由許多不同的計算機資源組成,它們共同提供計算能力,從而運行為世界各地的客戶機提供服務(wù)所需的許多軟件實例。 圖 2. 顯示在 SaaS 中客戶機設(shè)備與云的關(guān)系的簡單示意圖 增加接受率 如果您走出企業(yè),看看 SaaS 對于一般消費者的意義,就會發(fā)現(xiàn)以前一些軟件的許可證費用太高,而現(xiàn)在 SaaS 讓一般消費者能夠以合理的價格使用它們。一個好例子是 Adobe 以 SaaS 的形式提供 Adobe? Photoshop?。盡管這項工作是 Adobe 正在做的試驗,但是已經(jīng)取得了一些效果。例如,我注意到在需要執(zhí)行簡單的照片編輯任務(wù)時,在我的朋友和家庭成員中越來越多的人開始使用 Photoshop.com 進行基本的照片編輯,而不是啟動全功能的版本。出現(xiàn)這種趨勢的原因是,不需要完整版本中的功能的人現(xiàn)在可以省錢。與此同時,過去不使用 Photoshop 的人也開始使用 Photoshop.com 了,這給 Adobe 帶來了爭取新的長期客戶的機會,擴大了潛在客戶的范圍。 SaaS 提供的多種業(yè)務(wù)模型尤其有吸引力。例如,Intuit 以 SaaS 的形式提供 QuickBooks Online,按月收取服務(wù)費。作為經(jīng)常旅行的企業(yè)主,我發(fā)現(xiàn)這種服務(wù)非常有用,尤其是因為我的業(yè)務(wù)伙伴住在 400 英里外的另一個州里。同時,Adobe 在 Photoshop.com 和 Acrobat.com 中應(yīng)用了 SaaS,以 freemium 服務(wù)的形式提供軟件——freemium 服務(wù)是指一種基于許可證軟件產(chǎn)品的 SaaS 縮略版的業(yè)務(wù)模型。 freemium SaaS 基于的收入模型是,預(yù)計免費用戶中的一部分最終會覺得軟件很有用,他們會升級到啟用了更多特性的 SaaS 付費版本,或者購買包含所有特性和功能的桌面版本的許可證。這種方法往往比通過 “受限制的演示” 模式試用軟件更好,因為演示模式要求用戶在桌面計算機上安裝他們可能不會購買的應(yīng)用程序。另外,如果免費用戶中升級的比例低于預(yù)期,還可以通過廣告進一步補充這個模型。隨著云計算的發(fā)展,傳統(tǒng)的桌面軟件廠商經(jīng)常使用這種方法適應(yīng)市場的變化。 減少支持的需要 大型客戶服務(wù)中心的成本很高,不得不支持多種平臺會導(dǎo)致支持問題增加,而 SaaS 可以大大緩解這些難題。首先,部署的簡便性讓開發(fā)人員能夠在發(fā)現(xiàn) bug 之后很快進行修復(fù),這意味著大多數(shù) bug 可以在大量用戶遇到它們之前被修復(fù),這會減少客戶支持部門接到的電話數(shù)量,提高客戶滿意度,降低客戶流失的可能性。 另外,傳統(tǒng)桌面軟件應(yīng)用程序的開發(fā)商常常必須支持多種平臺。例如,開發(fā)商可能必須支持 Windows? 7 和 Apple Mac OS X 10.6 操作系統(tǒng),添加對第二種操作系統(tǒng)的支持差不多會讓開發(fā)成本加倍;而且,如果支持這些操作系統(tǒng)的許多不同版本,問題會更多。支持操作系統(tǒng)的多個版本還會產(chǎn)生限制。 例如,如果您要構(gòu)建一個在 Windows 7 上運行的程序,但是它必須與 Windows XP 兼容,就必須非常小心,要確保特性和功能在這兩個版本上都能夠運行;否則,就必須把項目分為兩個分支,為每個版本開發(fā)單獨的代碼,這會不可避免地降低生產(chǎn)力和效率,延長完成項目的預(yù)期時間。讓業(yè)務(wù)執(zhí)行官心跳加速的最快方法之一是,告訴他后兩年的預(yù)期開發(fā)進度要減慢一半兒。另外,支持不同的操作系統(tǒng)和這些操作系統(tǒng)的不同版本會增加預(yù)算;這個問題和其他因素導(dǎo)致目前軟件開發(fā)項目的失敗率非常高。 降低實現(xiàn)和升級的成本 SaaS 推動 ROI 的第四個因素與第一個因素有點兒相似。但是,部署的速度是指快速、簡便地部署應(yīng)用程序更新所帶來的好處。與之相反,降低實現(xiàn)和升級的成本是指開發(fā)公司由于能夠控制版本和運行軟件的基礎(chǔ)設(shè)施所獲得的經(jīng)濟利益。 因為開發(fā)商可以控制運行軟件的平臺(平臺通常對于用戶完全透明),所以他們不必負擔在多個平臺上測試和部署 bug 補丁和新特性的額外開銷,這會節(jié)省大量資金。這讓 SaaS 應(yīng)用程序的升級成本更低。節(jié)省的大量時間和資金讓開發(fā)商有機會更好地響應(yīng)客戶的請求并增強易用性,從而提高客戶滿意度,降低客戶流失的可能性,這會帶來間接的經(jīng)濟利益。 SaaS 和用戶體驗設(shè)計 SaaS 應(yīng)用程序代表著一種新一代應(yīng)用程序設(shè)計方式。盡管在我目前看到的文檔中沒有明確地指出,但是看起來 SaaS 程序也帶來了一種新的 UI 設(shè)計方式,這種方式與大多數(shù)其他行業(yè)中的產(chǎn)品設(shè)計流程更一致。這種方式包含一個稱為用戶體驗設(shè)計 (UXD) 的流程,在這個流程中由產(chǎn)品團隊而不是開發(fā)團隊設(shè)計 GUI。 UXD 的主要目的是,確定哪些特性會讓應(yīng)用程序?qū)τ谀繕丝蛻糇钣袃r值,并在設(shè)計中融入這些知識。盡管對于是否應(yīng)該在所有類型的軟件的開發(fā)中都執(zhí)行這個流程有爭議,但是在 SaaS 應(yīng)用程序開發(fā)中這種做法非常普遍。出現(xiàn)這種現(xiàn)象的原因可能是,SaaS 可以實現(xiàn)的業(yè)務(wù)模型與傳統(tǒng)軟件不同,需要執(zhí)行 UXD;而且通過開發(fā) SaaS 可以節(jié)省大量時間和資金,讓開發(fā)商有能力執(zhí)行 UXD。 SaaS 對于開發(fā)人員的意義 正如您看到的,完全成熟的云計算對于企業(yè)和消費者來說都是巨大的轉(zhuǎn)變,必須克服很多難題。因此,這個轉(zhuǎn)變過程會花費一段時間,要經(jīng)過幾個階段的漸進遷移。在這次計算模式演變期間,軟件開發(fā)商必須能夠適應(yīng)變化的環(huán)境,從而繼續(xù)滿足企業(yè)和消費者的需要。 隨著云計算的發(fā)展,企業(yè)必須能夠適應(yīng)變化的環(huán)境,而軟件程序員需要擴充他們的技能并了解 SaaS 編程模型,從而適應(yīng)企業(yè)的要求。云計算不僅僅是通過虛擬化提供可伸縮的基礎(chǔ)設(shè)施和平臺可移植性。它還把軟件提升到全新的水平,可以認為它代表著新一代計算機編程模型。這一論斷可能比較大膽,但是考慮到本文中討論的 SaaS 提供的機會,這并非沒有根據(jù)。 例如,一般消費者能夠負擔軟件費用意味著潛在客戶更多。能夠控制平臺、基礎(chǔ)設(shè)施和軟件版本會直接節(jié)省成本。顯然,SaaS 很快會帶來某種程度的 “民主”,也就是說中小型的開發(fā)企業(yè)也能夠與大型開發(fā)商在同一領(lǐng)域中競爭。 結(jié)束語 在本文中,我們分析了云計算的第三種類型 SaaS。更重要的是,您了解了 SaaS 應(yīng)用程序的日益流行所帶來的機會和挑戰(zhàn)。 在閱讀本系列中的三篇文章之后,我希望您對云計算對于您的職業(yè)前途和企業(yè)意味著什么有了更清晰的認識。除了前兩篇文章中提供的 IaaS 和 PaaS 方面的參考資料之外,參考資料提供關(guān)于 SaaS 的更多信息的鏈接。 參考資料
關(guān)于作者 Dan Orlando 是企業(yè)開發(fā)社區(qū)公認的領(lǐng)導(dǎo)者。作為長期顧問,Dan 經(jīng)常向行業(yè)領(lǐng)導(dǎo)者以及 IBM developerWorks、Adobe Developer Connection 和 Amazon Web Services 等出版物提供 Adobe 技術(shù)平臺方面的專業(yè)經(jīng)驗。Dan 還在 DanOrlando.com 上定期發(fā)表博客文章。 |
|
|
來自: 昵稱10504424 > 《工作》