• 沒有找到結果。

各大IT 廠商開始在雲端環境提供 BPM (Business Process Management) 服 務,像是RunMyProcess [4]、Visual Workflow [5]、Aneka [6]、Azure Services Platform [7] 以及 Google App Engine [8]。一般來說,他們是平台即服務 (Platform as a Service ,PaaS) 的系統,他們的平台支援基於工作流程管理系統的 函式庫,讓客戶可以建造自己的工作流程管理系統。舉例來說,Aneka container 是一個中介軟體的組件以及執行雲端應用程式的運行環境 [6]。Aneka cloud 的

構造 (fabric) 層可以包含私有雲的物理資源以及像是 Amazon、IBM 或是 Microsoft 等公有雲的虛擬資源。基於引擎的工作流程管理系統被安裝在 Aneka container 中。Frece 等人總結了超過十四個基於引擎的工作流程管理系 統的雲端要素 [40],包含了資料獨立性、效能獨立性以及是否有雲端管理的可 用工具等。他們認為,隨著當前 BPMS (Business Process Management Suite) 的 實現,特定的組織無法完全地遷移到雲端上,因為他們不能遵守所有關於資料 隱私的法律規定。一般來說,這些工作流程管理系統會佈署在供應商的伺服器 上,這些伺服器會由供應商事先安裝在一些虛擬機器中。多租戶技術能夠透過 以許多虛擬機器來共享一個實體機器的方式來獲得。客戶必須信任供應商的伺 服器。因為工作流程程序實例的格式或形式沒有被公開,因此在不同的供應商 之間執行客戶端的工作流程程序實例遷移及備份似乎是不可能的。並且,他們

全部都是基於引擎的工作流程管理系統。

最近,許多研究者試圖去提出一個新興的基於雲端的工作流程管理系統架 構。Pathirage 等人提出了一個 BPEL (Business Process Execution Language) 的 多租戶架構 [16]。他們激發了多租戶工作流程管理系統的重要性。他們使用 Apache ODE [41] 作為 BPEL 的執行環境。他們所提出的多租戶架構是利用 WSO2 Carbon 對於多租戶技術的支援來實做 [42]。WSO2 Carbon 平台提供使 用者一個註冊表 (registry) 來儲存他們的資料。註冊表是一個可支援多租戶技 術 (multi-tenant aware) 的結構,其透過在資源表中加入一個租戶列 (tenant column) 以及經由在執行時重寫 (rewriting) 查詢語句驗證及過濾查詢的結果

以提供跨租戶的資料獨立性。Anstett 等人解決了在雲端環境中執行 BPEL 程序 的相關議題 [43]。他們的結論是,一個 BPEL 引擎若有支援多租戶的需求,

會伴隨著傳送模式的複雜化。當處於組織內運作 (on-premise) 以及 IaaS 模式 時,可以使用底層作業系統的機制,處於 PaaS 與 SaaS 模式時,在運作模式 上,甚至是程序實例層級上都需要多租戶技術。Han 等人認為會發生企業不樂 意將他們的敏感資料放在雲端上的狀況,因為他們害怕當他們為了進行處理而 發布資訊到雲端時,他們會失去他們對於資料的控制權。他們也提出了一個基 於雲端的 BPM 架構,將非計算密集的流程活動以及敏感資料儲存在使用者端 的引擎內 [44]。Muthusamy 與 Jacobsen 解決了雲端工作流程系統的可擴展性 議題 [45]。在他們的架構中,集中式引擎可以被備份,工作流程程序實例在副

45

本間被平衡地執行,據此,甚至可以讓個別的工作流程程序實例以分散式的方 式執行。分散式執行引擎會分解程序(像是 BPEL 程序)為獨立的流程活動,

並將這些流程活動佈署到系統中的任何一組執行引擎上執行。Zheng 等人描述

了一個商業流程導向平台即服務的框架,其包含一個整合的商業流程應用程式 的程式設計模型以及商業流程導向平台即服務的中介軟體 [46]。其特別針對在

透明的多個商業流程實例平行調度。然而,這個框架的安全性議題沒有被討論。

Mao 等人考慮了在雲端上的分散式異質環境佈署雲端導向的工作流程管理系 統的特徵 [47]。他們認為將工作流程引擎移到雲端上需要做架構上的改變、縮 放流程活動節點的方法以及雲端管理工具的整合。他們提出了一個新的動態雲 端 調 度 演 算 法 , 其 兼 顧 了 雲 端 工 作 流 程 以 及 雲 端 資 源 的 特 點 。Lins 與 Stephenson 等人展示了一個可以協作建立商業流程模型的環境,其考慮了安全 性的需求以及可以自動將模型佈署到雲端環境上,並強制要求其安全性 [48]。

在他們的框架中,客戶端公司必須相信服務提供者已經在雲端的引擎伺服器上 實施安全性保護。Liu 等人指出現在的工作流程系統有兩個重要的議題:資源 的可擴展性以及分散式管理 [49]。他們提出了一個基於點對點的雲端工作流程 系統,以管理大規模的工作流程應用程式。然而,他們的框架不能支援流程活 動執行的不可否認性,也因為工作流程程序實例的遷移與備份無法被客戶端公 司控制,所以無法將其框架建構於不受信任的雲端環境中。Hua 等人總結了兩 種雲端工作流程的層次:在雲上 (above-the-cloud) 以及在雲內 (in-the-cloud)

[50]。因為 DRA4WfMS 的工作流程程序實例自我保護以及工作流程程序實例 遷移與備份等性質,我們的系統可以輕易地在雲上操作。

在不受信任的伺服器上建構應用程式的研究主要集中在雲端儲存的應用程 式。從惡意伺服器破壞持久性儲存資料的行為中恢復的一個方法是將資料備份 在一些伺服器上 [22, 23, 24, 25]。即使在許多伺服器都是惡意的情況下,在多 數伺服器上的副本可以確保資料的保存。隨著 DRA4WfMS 的客戶端工作流程 程序實例遷移與備份的特性以及其安全性機制,客戶可以在雲端環境中採用不 受信任的伺服器來建構具可信性 (trustworthy) 的工作流程管理系統。

47