本書在全面介紹服務計算中的基本概念、關鍵問題、與云計算的關聯的基礎上,著重介紹在SOA架構下Web服務研究中包含的兩大關鍵問題——服務管理與服務組合,主要包括Web服務架構與標準、服務的分類管理、服務檢索、服務選擇、服務推薦等問題。
服務計算為一門新興的交叉學科,包含了多種突破性的技術。本書將其劃分成兩部分內容,分別為服務管理與服務組合。事實上,服務管理研究的目的也是為服務組合過程提供技術支撐。對服務有效的分類管理有助于用戶或系統快速、精確地查找服務。
服務組合中的服務是指Web服務,而Web服務的實現理念是基于面向服務的架構的,發布于互聯網上的Web服務,可被互聯網上的任何機構和人所調用。這些Web服務通常具有一些簡單的功能,其本質是軟件模塊。單獨的一個服務是無法對復雜問題求解的,此時需要將服務進行組合以完成對復雜任務的求解。因此,服務之所以具有重要的研究價值,是因為它可以被組合形成流程,用于復雜問題求解。最理想的目標是在求解問題時,從互聯網上調用服務,將這些服務按邏輯操作組合建立形成流程。這些操作只需通過圖形化界面,將它們建立連接并運行,不理解服務技術背景的人也可以完成。但是現在的服務組合技術的發展還遠沒有達到這種階段。隨著Web服務的發展,流程中另一重要的要素——人與工作流的交互也逐漸受到了重視,如2007年Web Services Human Task(WS-HumanTask)規范的發布,它將與工作流交互的人需完成的任務定義為人工任務,包含了服務流程與人的交互。
本書以服務流程為研究對象,以服務的已有技術、標準為研究基礎,通過應用相關的理論與技術,主要包括語義、本體、分類算法、TF-IDF算法、命題庫、粒子群優化算法、遺傳算法、Agent等,分階段地探討了服務計算的關鍵問題——服務組合,以幫助實現服務流程。
本書的特色在于:將服務組合劃分成多個階段并分別做了介紹,且每部分的內容都有相應的提出的方法、實驗與結論,分別為服務檢索、服務選擇、服務推薦,以及應用Agent技術構建服務組合流程的方法。在服務檢索中,為了檢索到滿足用戶功能需求的服務并提高服務檢索的效率與準確率,在同一服務類別中,提出利用相似度建立服務間關系模型,并對個體服務的描述元素的內容進行語法結構分析,通過語法結構以及語義相似度以完成查詢內容與檢索服務之間的匹配。在服務推薦中應用用戶組建形成的社會網絡預測候選服務的信任值,為用戶推薦滿足其非功能需求的服務,還介紹了Protege平臺支持的服務解析與組合的實現過程。Agent技術與服務的結合,則應用了BDI模型于分布式服務組合流程的構建。最后是對云計算模式下的未來發展趨勢——多云架構的介紹。
本書的主要目標是在闡述服務計算的基礎上,重點探討服務管理與服務組合的內容及其實現技術。面向的讀者是相關領域的研究人員、科技工作者、高年級的本科生與研究生。
本書出版得到了浙江省高校人文社科重點研究基地“管理科學與工程”項目(No.ZX140204304001/007)專著出版基金的資助,作者在此表示由衷的感謝。
本書在編寫過程中參考了大量的國內外文獻,在此感謝這些作者。
由于作者水平有限,書中難免存在一些不足之處,懇請讀者批評指正。
第1章 服務計算
1.1 云計算
1.1.1 云計算的定義
1.1.2 云計算的特點
1.1.3 云計算的挑戰
1.1.4 云計算與服務計算
1.2 服務計算
1.2.1 SOA與SOC
1.2.2 服務計算的關鍵問題
1.2.3 服務計算的挑戰
1.3 服務管理
1.4 服務組合
1.4.1 服務組合的特征與分類
1.4.2 分布式服務組合
1.4.3 服務檢索
1.4.4 服務選擇與推薦
1.5 總結
本章參考文獻
第2章 Web服務架構與標準
2.1 Web服務
2.1.1 定義
2.1.2 特性
2.1.3 實現平臺
2.2 Web服務流程的總體實現架構
2.3 Web服務實現的支撐技術
2.3.1 XML
2.3.2 WSDL
2.3.3 SOAP
2.3.4 UDDI
2.3.5 RPC
2.4 Web服務的描述語言
2.4.1 WSDL
2.4.2 OWLS與WSML
2.5 服務質量
2.5.1 簡單服務的QoS計算
2.5.2 組合服務的QoS計算模型
2.5.3 QoS的應用場景
2.6 人件服務
2.6.1 定義
2.6.2 特性
2.6.3 描述方式
2.6.4 挑戰
2.7 總結
本章參考文獻
第3章 語義網與Web服務
3.1 語義網
3.2 本體
3.2.1 本體的定義
3.2.2 本體的建模元語
3.2.3 本體的描述語言
3.2.4 本體的建模工具
3.2.5 已有本體及其分類
3.2.6 本體的應用
3.3 本體和Web服務
3.3.1 Web服務的本體語言
3.3.2 OWLS與WSDL
3.4 語義相似性
3.4.1 語義和Web服務
3.4.2 語義相似性算法
3.4.3 語義在Web服務中的應用
3.5 總結
本章參考文獻
第4章 服務的分類管理
4.1 服務分類管理的提出
4.2 服務分類管理的過程
4.3 服務的分類步驟
4.3.1 服務的描述文檔解析
4.3.2 服務預處理
4.3.3 服務的向量化
4.3.4 機器學習分類算法
4.4 服務分類實驗
4.4.1 數據源
4.4.2 分類正確率
4.4.3 實驗結果
4.5 實驗結果分析
4.6 服務的輸出預測
4.6.1 人件服務的輸出預測
4.6.2 人件服務的輸出預測結果分析
4.7 總結
本章參考文獻
第5章 服務檢索
5.1 服務檢索的提出
5.2 服務檢索的過程
5.3 基于語義和語法的服務建模
5.3.1 基于相似度的服務間關系模型
5.3.2 個體服務的建模
5.4 服務與檢索條件的匹配算法設計
5.5 服務檢索實驗
5.5.1 測量指標
5.5.2 實驗步驟與數據
5.5.3 實驗結論
5.6 總結
本章參考文獻
第6章 服務選擇
6.1 服務選擇的提出
6.2 服務選擇的過程
6.3 服務選擇中的QoS
6.3.1 QoS指標
6.3.2 信任值計算
6.4 服務選擇問題的形式化
6.4.1 目標函數
6.4.2 QoS約束條件
6.5 基于QoS與優化算法的服務選擇模型
6.5.1 基于窮舉搜索算法的服務選擇求解
6.5.2 基于隨機算法的服務選擇求解
6.5.3 服務選擇求解的優化算法——粒子群優化算法
6.5.4 服務選擇求解的優化算法——遺傳算法
6.6 實驗結論
6.6.1 服務選擇優化算法的比較
6.6.2 信任在服務選擇問題中的分析
6.7 總結
本章參考文獻
第7章 服務推薦
7.1 服務推薦的提出
7.2 基于信任網絡的服務推薦
7.2.1 服務選擇
7.2.2 信任及信任的度量
7.2.3 基于信任網絡的服務推薦
7.3 信任網絡模型
7.3.1 信任網絡構成
7.3.2 網絡特性
7.3.3 網絡信任值計算
7.4 基于信任網絡的服務推薦
7.4.1 服務推薦算法
7.4.2 用戶間的間接信任值計算算法
7.5 服務推薦實驗
7.5.1 實驗環境
7.5.2 衡量標準
7.5.3 實驗結果
7.6 總結
本章參考文獻
第8章 服務組合
8.1 服務組合過程
8.2 服務組合實現
8.2.1 實驗環境及開發工具
8.2.2 服務的統一分類管理
8.2.3 服務的操作解析
8.2.4 服務的組合實現
8.3 總結
本章參考文獻
第9章 Agent技術在服務組合中的應用
9.1 分布式服務組合
9.2 問題描述
9.3 Web服務與Agent
9.3.1 服務與Agent的特性
9.3.2 服務與Agent的結合
9.4 擴展的BDI模型
9.4.1 經典BDI模型
9.4.2 擴展的BDI模型
9.4.3 基于擴展BDI模型的架構
9.5 基于擴展BDI模型的服務操作與演化
9.5.1 服務的基本邏輯操作
9.5.2 流程動態演化操作
9.5.3 環境變化對操作的影響
9.5.4 定理與結論
9.6 實例分析
9.7 總結
本章參考文獻
第10章 云計算中存在的問題
10.1 多云
10.2 多云平臺下的研究方向
10.3 基于信任的多云安全機制
10.4 從多方面比較單云與多云
10.5 總結
本章參考文獻