派翠網路運用於建構雲端服務之研究 - 政大學術集成
全文
(2) 1摘. 要. 雲端運算是近來全世界最熱門的資訊議題,任何設備只要能夠連上網路,就 可以享有各種不同的網路服務,這些服務可能建置在不同的機器設備上,甚至可 能在相隔遙遠的雲端裡,因此也稱之為雲端服務,在操作過程中,使用者不需要 擔心服務安裝在哪裡,亦不用擔心服務如何達成,可想而知網路服務的背後,隱 藏著很複雜的技術與架構。 網路服務的開發方式相當地簡單且快速,為系統帶來更大的便利與彈性,不. 治 政 大 無窮迴圈及冗餘的流程問題,甚至是在資源共享的情況下,因等待或其他因素而 立. 過在管理的部份,卻變得越來越複雜,例如不易瞭解網路的結構與狀態、潛在的. 導致死結的情況產生。這些問題將使得網路服務組合在執行時期,可能發生無法. ‧ 國. 學. 預期的錯誤。情況嚴重時,系統可能會完全鎖死或停止,對公司將造成重大的財. ‧. 務及商譽上的損失。這些流程的問題,需要在網路服務組合執行前先進行驗證,. sit. y. Nat. 本研究透過流程轉換成派翠網路的分析,以確保流程設計的正確性與穩定性。. al. er. io. 因此,本論文運用網路服務標準,將雲端服務轉換成派翠網路模型,再以派. v. n. 翠網路中的針織法為分析基礎,檢驗模型的狀態,避免死結發生,並提供網路特. Ch. engchi. i n U. 徵報告書,以降低管理的複雜度,進而提升服務的穩定性。. 關鍵字:網路服務、雲端服務、派翠網路、針織法、死結。. i.
(3) 2 Abstract Cloud computing is regarded as the most popular recent ICT topic. Any equipment which can be connected to Internet can provide its user have the access to the various services, which may be built on different machines, or even may exist in the distant 'clouds' far away. However, in the operating process, the user has no need to worry where the service locates, needless to say how the service operates, which means that a considerably amount of data and techniques hide behind the Web service.. 政 治 大 several Web services online into a bigger one according to the conditions they need, 立. Web service is an artifical piece of art, the user and the manager can concatenate. which is a considerably simple and fast developing method bringing more. ‧ 國. 學. convenience and flexibility for the system. Nonetheless, the managerial part also. ‧. becomes more complex in problems like potential infinite loops and abundant. sit. y. Nat. procedures, for instance. What is worse is under the circumstance of resource sharing,. io. er. the deadlocks happen while pending or other factors occur. These issues will lead to severe errors while the Web service compound operates. If the system completely. al. n. v i n C hdamage and loss ofUcommercial reputation will be locks and stops, serious financial engchi caused to the company. Hence the design of procedures needs to be validated and. transformed as Petri Net analysis before the Web service compound operates in order to assure the accuracy and stability of the procedure design. Therefore, this paper uses Web service standards, turning Web services into Petri Net models with knitting technique as analytical base, to validate the accuracy and stability of the model to avoid deadlock to happen in order to enhance the reliability of the service. Keywords: Web service, Cloud services, Petri Net, knitting technique, deadlock. ii.
(4) 3誌. 謝. 終於完成論文了,首先感謝我的兩位指導老師,吳忠敏老師和陳春龍老師, 在我的學習過程中,從碩士班到博士班的辛苦指導,一直不斷地幫助我、鼓勵我, 讓我有足夠的動力堅持到最後,也很謝謝趙玉老師在修課與投稿部份,給予我這 麼多的幫助與指導,另外要特別謝謝口試委員林我聰老師、季延平老師、耿慶瑞 老師的寶貴建議,和老師們的諄諄教誨,論文才能順利完成。另外也要感謝系上 曾經指導與照顧我的余千智老師、楊建民老師、湯宗益老師、周宣光老師、管郁 君老師、苑守慈老師、張維中老師、曾淑峰老師、謝明華老師和經濟系的陳樹衡. 政 治 大. 老師,還有系辦的詩晴助教、雨儒助教。. 立. 要感謝的人很多,要特別感謝從大學時代就一直指導我的世新大學資管系主. ‧ 國. 學. 任陳育亮老師、創新與產學中心主任廖鴻圖老師,還有世新的長官與同事們,計. ‧. 算機中心主任葉炳倉老師,巧菱、阿富、秀芬老師、心潔、惠雯、美娜、威伯,. y. Nat. 教務處陳麗卿組長、英語系李玉華老師、台大經濟系的吳聰敏老師。政治大學博. er. io. sit. 士班的同班同學、同門的展勝學長、俊龍學長、孝慈,此外還有婷妤學姊、寶弟、 豬毛、映曄、麗旭、于真,遠在美國的小 p 和雅雅、阿匡學弟、廣寧、元佳、宇. al. n. v i n 軒、雁予、昀瑾,感謝你們在我最需要幫忙的時候,給我最大的支持和鼓勵,真 Ch engchi U. 的謝謝你們。. 要感謝的人真的很多很多,最後要特別感謝我的父母親與我的太太淑美、佑 佑和怡君,還有在天國的弟弟俊成,謝謝你們在我最辛苦的時刻,體諒我、幫助 我,讓我能專心於課業,感謝你們付出的一切,也希望這輩子能回報你們給我的 恩情,感恩。 陳俊廷 謹誌 于國立政治學資訊管理學系博士班 中華民國一百年七月 iii.
(5) 4目 摘. 錄. 要............................................................................................................................. i. Abstract ..........................................................................................................................ii 誌. 謝.......................................................................................................................... iii. 目. 錄........................................................................................................................... iv. 圖目錄..........................................................................................................................vii 表目錄........................................................................................................................... ix 第一章. 緒 論............................................................................................................ 1. 1.1 研究動機 ....................................................................................................... 1. 政 治 大 研究範圍與步驟 ........................................................................................... 3 立. 1.2 研究目的 ....................................................................................................... 2 1.3. 1.4 研究架構 ....................................................................................................... 4. ‧ 國. 學. 第二章. 文獻探討........................................................................................................ 6. 網路服務的特性 ............................................................................... 8. Nat. y. 2.1.1. ‧. 2.1 網路服務 ....................................................................................................... 6. 2.1.3. 網路服務管理議題 ......................................................................... 11. n. al. er. sit. 網路服務技術 ................................................................................... 9. io. 2.1.2. i n U. v. 2.2 語意網路服務 ............................................................................................. 13. Ch. engchi. 2.2.1. 語意網的介紹 ................................................................................. 13. 2.2.2. 本體論定義 ..................................................................................... 15. 2.3 網路服務組合 ............................................................................................. 18 2.3.1. 網路服務組合定義與目的 ............................................................. 18. 2.3.2. 網路服務組合方法 ......................................................................... 19. 2.3.2.1 網路服務組合階段 ......................................................................... 20 2.3.2.2 網路服務組合需求規格 ................................................................. 21 2.3.2.3 網路服務組合方式 ......................................................................... 21 2.3.2.4 網路服務組合執行方法 ................................................................. 22 iv.
(6) 2.3.3. 網路服務組合平台 ......................................................................... 23. 2.3.4. 服務流程執行語言 ......................................................................... 27. 2.3.5. 網路服務組合樣式 ......................................................................... 30. 2.4 雲端服務 ..................................................................................................... 30 2.5 派翠網路介紹 ............................................................................................. 34 2.6 派翠網路死結的判斷 ................................................................................. 38 第三章. 研究方法...................................................................................................... 40. 3.1 WSBPEL 轉派翠網路機制 ........................................................................ 40 3.1.1. WSBPEL 2.0 轉換為派翠網路之規則........................................... 41. 政 治 大 3.1.1.2 指派活動轉換 立 ................................................................................. 47 3.1.1.1 WSBPEL 2.0 基礎活動轉換至派翠網路規則............................... 41. ‧ 國. 學. 3.1.1.3 驗證活動轉換 ................................................................................. 48 3.1.1.4 控制活動 ......................................................................................... 49. ‧. 3.1.1.5 錯誤處理活動 ................................................................................. 52 WSBPEL 2.0 結構化活動轉至派翠網路規則............................... 54. sit. y. Nat. 3.1.2. al. er. io. 3.1.2.1 條件式活動 ..................................................................................... 54. v. n. 3.1.2.2 循環式活動 ..................................................................................... 56. Ch. engchi. i n U. 3.1.2.3 選擇式活動 ..................................................................................... 58 3.1.2.4 多重分支式活動 ............................................................................. 60 3.1.3. WSBPEL 2.0 流程活動轉換至派翠網路規則............................... 62. 3.2 WSBPEL 2.0 轉派翠網路流程及演算法 .................................................. 66 3.2.1. BPEL-PN 引擎 ................................................................................ 66. 3.2.2. WSBPEL 2.0 轉派翠網路演算法................................................... 70. 3.2.3. 分析網路死結模組 ......................................................................... 79. 3.3 針織技術 ..................................................................................................... 81 3.4 編織的規則 ................................................................................................. 92 第四章. 系統實作與結果.......................................................................................... 95 v.
(7) 4.1 WSBPEL 轉換派翠網路 ............................................................................ 95 4.2 派翠網路範例 ............................................................................................. 95 第五章. 結論與建議................................................................................................ 108. 5.1 研究結論 ................................................................................................... 108 5.2 研究貢獻 ................................................................................................... 108 5.3 未來發展 ................................................................................................... 110 參考文獻.................................................................................................................... 111. 立. 政 治 大. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. vi. i n U. v.
(8) 5 圖目錄 圖 1-1 研究步驟架構圖 .............................................................................................. 4 圖 2-1 網路服務架構圖 .............................................................................................. 7 圖 2-2 語意網階層架構圖 ........................................................................................ 13 圖 2-3 本體架構圖 .................................................................................................... 17 圖 2-4 以服務為概念的本體架構圖 ........................................................................ 17 圖 2-5 FUSION 系統架構圖 ...................................................................................... 24 圖 2-6 雲端服務三種服務型態圖 ............................................................................ 31. 政 治 大. 圖 2-7 派翠網路基礎模型圖 .................................................................................... 36. 立. 圖 3-1 商業流程與服務溝通圖 ................................................................................ 42. ‧ 國. 學. 圖 3-2 receive 派翠網路圖 ......................................................................................... 44 圖 3-3 reply 派翠網路圖 ............................................................................................ 45. ‧. 圖 3-4 invoke 派翠網路圖 ......................................................................................... 47. y. Nat. sit. 圖 3-5 assign 派翠網路圖 .......................................................................................... 48. n. al. er. io. 圖 3-6 validate 派翠網路圖........................................................................................ 49. i n U. v. 圖 3-7 empty 派翠網路圖 .......................................................................................... 50. Ch. engchi. 圖 3-8 wait 派翠網路圖 ............................................................................................. 51 圖 3-9 exit 派翠網路圖 .............................................................................................. 52 圖 3-10 throw 派翠網路圖 ......................................................................................... 53 圖 3-11 rethrow 派翠網路圖 ...................................................................................... 54 圖 3-12 if 派翠網路圖 ................................................................................................ 55 圖 3-13 while 派翠網路圖 ......................................................................................... 57 圖 3-14 repeatUntil 派翠網路圖 ................................................................................ 58 圖 3-15 pick 派翠網路圖 ........................................................................................... 60 圖 3-16 forEach 派翠網路圖...................................................................................... 62 vii.
(9) 圖 3-17 sequence 派翠網路圖.................................................................................... 63 圖 3-18 flow 派翠網路圖 ........................................................................................... 64 圖 3-19 flow link 派翠網路圖.................................................................................... 65 圖 3-20 轉換引擎之系統架構圖 .............................................................................. 66 圖 3-21 BPEL-PN 引擎架構圖 .................................................................................. 68 圖 3-22 網路死結分析模組架構圖 .......................................................................... 80 圖 3-23 不同觸發狀況的派翠網路圖 ...................................................................... 82 圖 3-24 TT 和 PP 規則範例圖 ................................................................................... 85. 治 政 大 87 圖 3-26 TP 與 PT 生成的特殊情況範例圖 ............................................................... 立 圖 3-25 TP 生成的特殊關係‘SQ’和‘CN’範例圖...................................................... 86. 圖 3-27 TPPT 正向與反向生成圖 ............................................................................. 88. ‧ 國. 學. 圖 3-28 PT2g ‘SQ’ TP1j 範例圖 ................................................................................... 91. ‧. 圖 4-1 訂單處理流程圖 ............................................................................................ 96. y. Nat. 圖 4-2 訂單處理流程之派翠網路圖 ........................................................................ 96. er. io. sit. 圖 4-3 訂單處理流程之分析報告圖 ........................................................................ 97 圖 4-4 貸款取得流程圖 ............................................................................................ 98. al. n. v i n 圖 4-5 貸款取得流程之派翠網路模型圖 .............................................................. 102 Ch engchi U 圖 4-6 貸款取得流程死結偵測報表圖 .................................................................. 103 圖 4-7 WSBPEL 2.0 版貸款取得流程之派翠網路模型圖..................................... 106 圖 4-8 WSBPEL 2.0 版貸款取得流程死結偵測報表圖......................................... 107. viii.
(10) 6 表目錄 表 2-1 網路服務組合相關方法比較表 .................................................................... 20 表 2-2 網路服務組合平台比較表 ............................................................................ 23 表 2-3 派翠網路組成單元整理表 ............................................................................ 35 表 2-4 派翠網路特性整理表 .................................................................................... 37 表 3-1 receive 語法規則與範例表 ............................................................................. 43 表 3-2 reply 語法規則與範例表 ................................................................................ 44 表 3-3 invoke 語法規則與範例表 ............................................................................. 45. 政 治 大. 表 3-4 assign 語法規則與範例表 .............................................................................. 47. 立. 表 3-5 validate 語法規則與範例表............................................................................ 49. ‧ 國. 學. 表 3-6 empty 語法規則與範例表 .............................................................................. 50 表 3-7 wait 語法規則與範例表 ................................................................................. 51. ‧. 表 3-8 exit 語法規則與範例表 .................................................................................. 52. y. Nat. sit. 表 3-9 throw 語法規則與範例表 ............................................................................... 52. n. al. er. io. 表 3-10 rethrow 語法規則與範例表 .......................................................................... 53. i n U. v. 表 3-11 if 語法規則與範例表 .................................................................................... 54. Ch. engchi. 表 3-12 while 語法規則與範例表 ............................................................................. 56 表 3-13 repeatUntil 語法規則與範例表 .................................................................... 57 表 3-14 pick 語法規則與範例表 ............................................................................... 58 表 3-15 forEach 語法規則與範例表.......................................................................... 61 表 3-16 sequence 語法規則與範例表........................................................................ 62 表 3-17 flow 語法規則與範例表 ............................................................................... 63 表 3-18 flow link 語法規則與範例表........................................................................ 64 表 3-19 主流程演算法範例表 .................................................................................. 70 表 3-20 遞迴剖析演算法範例表 .............................................................................. 71 ix.
(11) 表 3-21 基礎活動轉換演算法範例表 ...................................................................... 72 表 3-22 結構化活動轉換演算法範例表 .................................................................. 74 表 3-23 流程活動轉換演算法範例表 ...................................................................... 76 表 3-24 連結處理演算法範例表 .............................................................................. 78 表 4-1 貸款申請範例程式碼範例表 ........................................................................ 98. 立. 政 治 大. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. x. i n U. v.
(12) 1 第一章. 緒. 論. 網路服務(Web Services)近年來發展迅速,其運用的分散式應用程式架構與 服務導向架構(Service Oriented Architecture; SOA),讓網路服務能在標準架構規 範下快速整合。結合目前雲端環境,使資訊系統的服務能快速的建置,提供多樣 化的服務。也因為服務需求快速成長,服務數量急速增加,造成服務與系統的管 理上變得非常複雜,因此,本論文提出一個轉換與分析的架構,透過系統的實作, 解決服務與服務組合後所產生的問題。. 治 政 大 本章針對論文的動機與目的進行介紹,其中共分為四節,第一節針對研究背 立. 景與動機進行討論,說明網路服務的發展與其衍生的問題,第二節則對本研究之. ‧ 國. 學. 目的進行探討,並擬定出研究方向與架構,第三節介紹本研究之範圍與步驟,最. ‧. 後,第四節介紹研究架構。. n. al. er. io. sit. y. Nat 1.1 研究動機. Ch. engchi. i n U. v. 近年來,由於全球化和服務導向系統的發展趨勢,企業面臨內部及外部龐大 的服務需求,必須尋求一種更好的解決方案,因此,正確快速與彈性便成為企業 系統建置時追求的目標,此外,服務導向系統架構與網路服務等理論與技術,也 在近期蓬勃發展,例如 Microsoft、IBM、BEA 等軟體大廠,都積極推動此技術 架構的應用。 網路服務的應用,可加速系統的開發,並增加系統彈性,使得企業可以快速 地適應新環境(Cherbakov et al., 2005)。以開發資訊系統的角度來看,網路服務的 架構,是一種可以建置在任何作業系統上,且可透過網路連結的一種應用程式, 簡而言之,網路服務的概念是將需求或功能,包裝成單一個服務,再透過統一的 1.
(13) 介面進行操作,其好處是能夠讓系統方便快速地抽換元件,或是依照環境需求加 以重組,讓企業能夠快速因應外部環境的變化,以組合的方式建置系統(Chiu and Yang, 2001)。如此不但可縮短系統開發時間,也可以減少重覆開發資源浪費的問 題(Wang and Stroulia, 2003)。 但在網路服務發展的過程中,也面臨許多問題需要被克服,這些相關問題可 歸納為安全性問題、整合性問題以及語意傳達性問題(Wang et al., 2004),其中整 合性問題會衍生出網路服務的管理問題,如先前所言,網路服務是將許多不同的 功能,重組包裝成一個新的服務。因此,如何有效地整合與管理網路服務,便成 了網路服務應用時重要的議題。. 立. 政 治 大. ‧ 國. 學. 1.2 研究目的. ‧. 網路服務的概念與架構是很簡單的,但實際上,在服務組合完成後,進入執. y. Nat. sit. 行階段時,問題就會變得越來越複雜。在目前的網路服務架構中,有三種不同的. n. al. er. io. 角色,其中包含(1)服務提供者,(2)服務的需求者,以及(3)服務註冊管理者,它. i n U. v. 們之間的關係,並不一定屬於同一個組織。簡而言之,服務提供者就是提供其所. Ch. engchi. 能執行的服務;而服務註冊管理者,是管理服務提供者所註冊的各種服務;服務 需求者可以透過搜尋的機制,尋找其所需要的服務再進行連結;因此,搜尋的結 果,如果可以找到很多堪用或是相似服務,是個很好的結果,但要嚴謹地判斷是 否為適當的服務,甚至是否為好的服務,可否順利的執行,及連結後會不會產生 冗餘的流程,而造成執行效率不彰。除此之外,公開的服務,本身就可以視為一 個可分享的資源,因此有很多的資源,很可能會處於一個或多個執行中的狀態, 如此可能造成處理程序因等待資源而鎖死,而變成難以預期的結果。 綜合以上所言,在眾多的服務的情況下,服務的組合與使用,在企業內部應 如何管理,是相當重要的問題,因此,本論文將解決當前的幾個議題: 2.
(14) (1) 服務合成後自動轉換成派翠網路模型,以利後續分析與管理。 (2) 找出服務組合中冗餘的流程,提升效率。 (3) 取代人工分析網路,系統提供分析後資訊,提升管理效能。 (4) 以有效率的演算法,找出服務組合中隱藏的死結。 因此,本研究希望提出網路服務自動轉換機制,轉換後,提供圖形化的網路 服務架構圖,以方便管理者檢視,並且自動檢驗網路結構中,是否有特殊結構或 隱藏死結的存在,以提升系統檢驗效率。過程中需先將雲端中的網路服務,轉換. 政 治 大. 成派翠網路,再針對派翠網路進行分析,最後針對結果提供分析建議書。. 立. ‧ 國. 學. 1.3 研究範圍與步驟. ‧. 本論文之研究範圍,包括企業內部與外部的服務流程,在處理過程中,先針. y. Nat. sit. 對流程中的服務進行拆解與分析,流程部份是使用標準的目錄伺服器上所提供之. n. al. er. io. 服務,針對服務流程的組合,進行分析與轉換,其中分析與轉換的基礎,都使用. i n U. v. 網際網路上的標準規範,利用網路服務商業流程執行語言(Web Services Business. Ch. engchi. Process Execution Language; WSBPEL)進行分析轉換,再針對轉換後之網路結構 進行進一步的分析。 因此,本論文之研究步驟,從蒐集文獻開始,再針對雲端運算、網路服務, 網路轉換、化簡驗證與死結判斷等模組進行整合,建置一個實作系統,最後再針 對案例進行模擬,研究流程如圖 1-1 所示。. 3.
(15) 文獻蒐集. 雲端運算. 網路服務. 轉換網路. 化簡驗證. 死結判斷. 系統架構. 系統模擬. 圖 1-1 研究步驟架構圖. ‧ sit. y. Nat. 1.4 研究架構. 結論建議. 學. ‧ 國. 立. 政 治 大. n. al. er. io. 本研究架構總共分為五個章節來進行討論,以下將依序進行介紹: 第一章 緒論. Ch. engchi. i n U. v. 本章針對本研究之動機與目的進行介紹,並將本研究之主要問題進行釐 清,以利閱讀後續章節時,可更清楚瞭解相關重點。 第二章 文獻探討 針對本研究所探討的主題,進行文獻的蒐集與討論,其中包含網路服務、 本體論、語意網路、網路服務組合、雲端運算、派翠網路與死結處理。藉此 介紹內容,瞭解技術與問題之相關性。. 4.
(16) 第三章 研究方法 本章依據第二章文獻探討延續,進行研究方法的分析與規劃,其中包括 網路服務轉換成派翠網路的規則、結構化活動的處理、網路轉換演算法、派 翠網路中針織法與編織的規則,並分別實作成數個網路服務,以方便後續移 植至其它系統使用。 第四章 系統實作與結果 本章以實際之網路服務程序,使用網路服務商業流程執行語言輸入系統,. 政 治 大. 進行實證測試,以驗證本研究之可行性。 第五章 結論與建議. 立. ‧ 國. 學. 總結前述各章對本研究之討論,並提供研究結果、研究貢獻與未來延伸 研究之建議。. ‧. n. er. io. sit. y. Nat. al. Ch. engchi. 5. i n U. v.
(17) 2 第二章. 文獻探討. 本章依據研究的動機與目的,提出幾個重要部份,進行相關文獻的討論,第 一節是介紹網路服務,第二節介紹服務組合流程中,重要的關鍵技術,包括語意 網與本體論,第三節介紹網路服務組合的定義、採用網路服務組合之目的,以及 網路服務組合的效益為何,第四節介紹雲端運算之環境與問題,第五節介紹派翠 網路,最後一節介紹派翠網路中死結的判斷。. 立. 2.1 網路服務. 政 治 大. ‧ 國. 學. 網路服務最初的發展目的,主要是用來幫助電腦與電腦之間資料的傳遞與展. ‧. 現,不論是文字、圖形或多媒體,這些功能使人們得以快速地閱讀新聞、查詢天. sit. y. Nat. 氣、分享資訊或是訂購商品等等。但是這種以文字或是圖片為傳遞基礎的網路,. al. er. io. 本質上是無法讓電腦軟體或系統間,自動地傳遞訊息,因此,一種透過網際網路,. v. n. 讓分散在各地的應用程式或系統,能夠自動彼此互相溝通服務的想法就應運而生。. Ch. engchi. i n U. 根據全球資訊網協會(World Wide Web Consortium; W3C)對網路服務的定義: 「一 個應用程式可經由延伸標記語言(eXtensible Markup Language; XML)來描述或查 詢,透過標準的資源辨識規則,此應用程式的介面與連結方式,可以被完整的定 義,且支援其他應用程式與系統,藉由延伸標記語言形式的訊息,再透過網際網 路的協定來直接驅動。」簡單來說,就是很多功能性元件,透過特定的溝通管道 相互配合,在需要時互相溝通,以提供適當的服務。 使用網路服務模式,將可以讓應用程式之間的溝通更為容易,並且透過標準 規範的方式,可以讓分散在不同地點的網路服務,透過網際網路整合在一起,形 成一個大型的資訊系統。與以往侷限於單一主機上的資訊系統比較起來,這樣的 6.
(18) 分散式服務的方式,可以使得主機的運作負荷減輕,並使服務形式更加多元化。 以軟體開法的角度來看,每一個單一的網路服務,均可視為一個軟體元件,在需 要服務的時候,不需要重複開發既有的元件,因此可以快速地連結並提供服務, 還可降低軟體開發成本。 接下來,首先要先定義網路服務的概念與架構,網路服務是由服務的提供者、 服務的需求者與服務的管理者,三個不同的角色所組成的(Curbera et al., 2002), 網路服務架構圖如圖 2-1 所示: (1) 服務需求者:需要某項系統服務的服務要求者,其會透過網際網路連線. 政 治 大. 到網路服務管理者,找尋適合的網路服務。. 立. (2) 服務提供者:服務提供者會將所提供的網路服務,包括相關的詳細資訊、. ‧ 國. 學. 使用的位置、方法等資訊,註冊在網路服務管理者系統當中,並且提供. ‧. 服務及服務本身的執行環境規格,給服務要求者。. sit. y. Nat. (3) 服務註冊管理者:提供一個公開且標準的機制,讓所有提供服務的網路. al. er. io. 服務提供者,可以登錄它們所提供的網路服務相關資訊,並且讓需要服. v. n. 務的網路服務需求者,可以透過此機制找尋適合的網路服務。. Ch. engchi. i n U. 繫結 (Bind). 服務 提供者 公告 (Publish) SOAP. 服務 需求者. SOAP. SOAP. 服務 註冊 管理者. 尋找 (Find). UDDI Registry. 圖 2-1 網路服務架構圖. 7.
(19) 網路服務結合了跨平台執行的特性,和網際網路分散架構的概念特性,使得 在網路上資料的傳遞、展現與應用,變得非常容易,並且在技術性與相容性上也 有相當程度地改善。透過網路服務的方式,使得不同服務的系統平台、硬體或是 軟體能夠彼此溝通,服務之間也能自動地運作。 2.1.1 網路服務的特性 網頁的技術標準,是網際網路發展過程中,影響相當深遠的一種技術,其規 範出一種在網際網路上資源相互連結與共享的機制,讓網路上的溝通與連結更為 方便,除了改變生活與工作的模式外,也帶動整個網路上的商務發展。雖然此技. 政 治 大. 術,可以透過網頁瀏覽器來操作,達到標準且一致的瀏覽介面,但是這僅僅只是. 立. 將資料呈現在網頁上,並不能讓不同的系統間,進行資料的存取與交換,因此系. ‧ 國. 學. 統與系統之間的「資料存取介面」問題還是存在。. ‧. 網路服務是一種網路上可提供服務的資源,處理的過程中,會透過標準資料. y. Nat. 存取介面的方法,讓所有在網路上的程式,能透過標準的協定,夠彼此相互溝通。. er. io. sit. 若將網路服務導入企業中,更可以降低系統整合與軟體開發的成本,並且能夠有 效地促進商業運作流程的效率,而且其採行目前廣泛使用的標準資料傳輸介面,. al. n. v i n 比起以往的商業流程整合,或是電子資料交換(Electronic data interchange; Ch engchi U. EDI). 機制來說,在系統整合與傳輸模式上,更是簡便有效率。. 網路服務是使用標準的網際網路技術,以超文件傳輸協定(HyperLink Text Makeup Language; HTTP)為傳遞資料的通訊協定,並以延伸標記語言為資料傳輸 的標準格式,採用網路服務軟體元件,來整合商業流程的運作,過程中,服務需 求者並不需要對這些技術底層,是如何去傳輸、呼叫與運作,只需要瞭解如何透 過標準介面,呼叫網路服務,取得所需要的服務即可。 網路服務還可用來解決分散式或異質系統的整合問題,將傳統的應用程式介 面方式,提升到與底層技術無關的層次,並且使用延伸標記語言來定義標準的資 8.
(20) 料傳遞規格,以及配合網路服務描述語言(Web Services Description Language; WSDL),來描述網路服務運作時,相關的輸出與輸入資料和服務呼叫的方法。 簡易物件存取協定(Simple Object Access Protocol; SOAP)是配合網路服務的 運作架構,所制訂出來的標準通訊協定,能夠讓程式與程式之間,透過標準的簡 易物件存取協定方式,存取它遠端的相關服務。除此之外,由於簡易物件存取協 定,採行延伸標記語言的標準語法,因此,除了應用簡單之外,也可以增進資料 通訊的傳遞效能,使得系統開發人員在建置系統的過程中,可輕易地整合不同的 平台,來實作多種不同的系統功能。. 政 治 大. 除了上述幾項特性之外,網路服務對於整個軟體開發與整合上,所帶來的效. 立. 益也是令人矚目的,網路服務可以讓不同種類的系統間,以有效率的方式來進行. ‧ 國. 學. 整合,更能提升資訊系統對於企業內部及外部的協調處理能力。. ‧. 2.1.2 網路服務技術. sit. y. Nat. 網路服務技術是定位在「機器與機器之間溝通的橋樑」 。從技術的觀點來看,. al. er. io. 網路服務就是一種以網路為基礎,將物件封裝與元件模組化技術,運用延伸標記. v. n. 語言等相關的技術標準,它能夠輕易地在網站與網站之間進行溝通,其中包括服. Ch. engchi. i n U. 務自我規格描述(description)、服務的發佈(publish)、服務的搜尋(search)以及服務 的取用(retrieval)等自動化功能(葉俊仁, 2002)。這樣運作架構的好處,在於可以 大幅降低企業或組織內、外部系統間服務整合的困難度,而且更可以為企業與企 業間系統的溝通,提供一個具有高度彈性的模式。 網路服務架構最大的優點,是它突破了以往系統整合與開發時,應用系統與 程式元件間緊密耦合的運作架構模式,而是採用耦合鬆散的方式,來建構網路環 境的資訊系統。以耦合鬆散的方式來建置網路服務的環境,其最大的好處是讓應 用程式的系統整合工作,不再限定於特定的作業平台、特定的資料結構,與特定 的合作伙伴,而是更具彈性與空間。此外網路服務對於解決網際網路上異質作業 9.
(21) 環境的系統整合,也很有成效,透過網路服務可以讓應用程式透過網路或任何的 平台與裝置,使用多元化的服務,或與其它的系統協同運作。 維持網路服務的運作,需要配合幾項以延伸標記語言為基礎的相關技術,這 些技術利用標準化方式進行溝通,因此也增加其通透性。以下針對這幾個相關的 技術,做進一步的說明。 (1) 延伸標記語言:是整個網路服務建構的基礎,由全球資訊網協會,所制 訂公佈的一項標準規格,它的作用在於制訂出一套標準的資料傳輸,與 資料定義的規格,透過這樣的標準規格,網路上的應用程式與程式之間,. 政 治 大. 才能夠依此標準傳輸與取用資料。. 立. (2) 網路服務描述語言:網路服務描述語言,主要是描述網路服務的細節,. ‧ 國. 學. 是使用延伸標記語言格式為基礎之技術,讓網路服務應用程式,能以一. ‧. 種標準方法來描述自己,擁有哪些功能與使用方法,並且定義網路服務. y. Nat. 的介面、資料與訊息的型態,以便讓互動更容易進行。例如藉由網路服. er. io. sit. 務,把遠端執行的程式、函示等,當成本機端的資源來執行,關鍵就在 於網路服務描述語言,網路服務才能夠啟動。. n. al. Ch. engchi. i n U. v. (3) 簡易物件存取協定:簡易物件存取協定,是一種提供給網路服務的標準 通訊協定,這仍然是以延伸標記語言為基礎,所發展出來的技術。簡易 物件存取協定的目的,就是讓程式與程式之間,能自動地相互溝通,但 兩者之間,不需要知道彼此的作業平台是那一種,或是兩邊各自如何實 作等細節,只需要透過網路服務描述語言,瞭解互動模式如何操作即可。 例如:電子郵件是藉由簡單郵件傳輸協定(Simple Mail Transfer Protocol; SMTP)的標準傳送資料,在一封電子郵件中,除了文字外,也定義了簡 單郵件傳輸的協定內容,如果欲將此郵件傳送出去,則郵件的封裝格式, 必須是符合簡單郵件傳輸協定看得懂的格式,才能夠傳送成功。 10.
(22) (4) 通用描述、探索與整合(Universal Description, Discovery and Integration; UDDI):通用描述、探索與整合,指的是一種提供網路服務註冊與搜尋 的機制,其架構也是以延伸標記語言為基礎,其主要的目的為提供企業 或組織,註冊通用描述、探索與整合,告知其他人提供者有提供網路服 務,並尋找其所需要的服務。因此通用描述、探索與整合的功能也類似 目前常見的電話簿,或是稱為黃頁的功能,目的就是要提供註冊與查詢 服務使用者,可利用的網路服務有哪些,以及服務的位置在哪裡。 2.1.3 網路服務管理議題. 政 治 大. 學者 Younas 等人認為,當單一網路服務無法滿足使用者需求時,就需將多. 立. 組服務加以整合(Younas et al., 2005),學者 Limthanmaphon 和 Zhang 則認為動態. ‧ 國. 學. 整合服務,較能滿足使用者需求(Limthanmaphon and Zhang, 2003),除此之外, 學者 Berardi 指出使用者需求的服務,有時必須把服務加以整合後,才能得到完. ‧. 整的功能(Berardi, 2003),然而整合本身卻具有許多需要被考慮的議題,且需要. y. Nat. sit. 逐一地克服,學者 Medjahed 等人就強烈建議,如果語意沒有被詳細表達,服務. n. al. er. io. 整合就會有困難(Medjahed et al., 2003)。然而語意的傳達中,依現在環境來看本. i n U. v. 身就有困難存在,但仍可透過其他方式提供相似的服務。. Ch. engchi. 學者 Rao 和 Su 曾經針對整合網路服務的方法進行整理,文中提到整合網路 服務是複雜度相當高的工作,由於網路服務的整合,是建構在需求者計畫進行的 流程,於是將複雜的原因歸納為三點(Rao and Su, 2004): (1) 可使用的網路服務,在近年來數量有明顯的成長,因此透過通用描述、 探索與整合搜尋時,所找到的服務數量也相當可觀。 (2) 網路服務可以隨時被創造與上傳,負責管理的通用描述、探索與整合, 也必須能即時的運作,並同步更新相關的資訊。 (3) 網路服務可以由不同的單位或組織提供,而這些單位或組織之間,並沒 11.
(23) 有特別的邏輯概念,來創建這些服務,亦沒有規範統一的語言或方法來 解釋服務的涵義,因此可能有同樣的服務,但有不一樣的解釋,或是不 一樣的服務,但有相同的解釋。 面對這些問題時,若以自動或半自動的方式,將服務進行整合,是相當重要 的工作。現行主要的方法是利用工作流程進行整合,或是以人工智慧的方式進行 規劃(Rao and Su, 2004)。以工作流程為整合方法來說,適用於已經有明確定義流 程的模型,但自動化系統的功能,需要自動地找到服務,來滿足各式各樣的需求。 人工智慧方法,較適合用於沒有先行定義程序模型的情況,但亦需要使用者提供. 政 治 大 法的主要目的,在於先針對服務自己內部的一些條件,進行上下文脈(Context) 立 一些限制條件或是使用的偏好。人工智慧的方法,泛指一些分類方法,而這些方. ‧ 國. 學. 的規劃。同樣的針對上下文脈,學者 Maamar 利用上下文脈的概念,將本體論應 用於網路服務,並指出上下文脈的方法,對服務表現與使用者需求滿足的重要. ‧. (Maamar, 2005)。. y. Nat. sit. 在服務多元化的情況下,許多研究也針對情境感知(Context Awareness)與語. n. al. er. io. 意網等議題進行探討,試圖從中尋求網路服務管理問題解套的方式,資訊過量的. i n U. v. 問題其實也與 Tim Berners-Lee 所提出了語意網(Semantic Web)的概念相符. Ch. engchi. (Berners-Lee, 1998),由於服務不斷地被創造與提供,最終的目的,就是為了提供 使用者更好的服務品質,因此問題關鍵,在於系統如何提供好的、正確的服務。 好的服務必需依情境調整,提供適當的服務,這就成了重要的關鍵,傳統的系統 開發流程,是從使用者需求分析做起,再建立整體系統之規劃;但如今網路服務 的開發環境,服務提供者將特定功能之元件,包裝成網路服務後,透過連結就可 以在雲端使用,但要如何連結使用,目前並無一定的規範,僅依據使用者提出的 需求整合而成,但如何滿足使用者需求就無法得知。若要知道外界情境,就必須 從前後關係進行分析,語意網是一個可行的方式。. 12.
(24) 2.2 語意網路服務 2.2.1 語意網的介紹 語意網的概念,是將網路上有意義的內容結構化,藉由共享的、通用的知識 本體建置,使得網路上的資源及服務,更容易取得和分享(Hendler, 2001)。在此 環境下,提供了智慧的方式存取異質性(heterogeneous)與分散性的(distributed)資 訊,使得代理人系統有能力,處理使用者之間的需求,以及處理可利用的資訊資 源(Fensel, 2000)。目的是希望在機器可以理解的情況下,各種自動化服務可以幫. 政 治 大 全球資訊網協會所制定的語意網的階層架構,此架構亦說明了網路技術與標 立. 需求者達成目標。. ‧ 國. 學. 準,在語意網各階層中執行的原則,語意網的階層架構如圖 2-2 所示。各階層的 說明如下(Guarino, 1998; Hendler, 2001; Horrocks and Patel-Schneider, 2003)。. ‧ y. er. n. aData l. Proof. i n C h Ontology vocabulary engchi U Logic. PDF + rdfschema. v. Digital Signature. Data. io Selfdesc. doc.. Trust. sit. Nat. Rules. XML + NS + xmlschema Unicode. URI. 圖 2-2 語意網階層架構圖 資料來源:Berners-Lee, 1998. (1) 萬國碼(Unicode)與通用資源標識碼(Uniform Resource Identifier; URI)階 層,是確保在語意網環境處理文字時,可以使用國際通用的字集 (international characters sets),即可支援全世界主要語文的文件,進行交 13.
(25) 換、處理或是顯示,並透過通用資源標識碼,提供識別物件,或是標示 出資源在語意網中的位置。 (2) 延 伸 標 記 語 言 層 、 命 名 空 間 (namespace) 和 延 伸 標 記 語 言 綱 要 (XML Schema)的規定,是以機器能理解的延伸標記語言編碼為基礎,以確保各 知識本體的整合性。 (3) 資源描述框架(Resource Description Framework; RDF)與資源描述框架綱 要階層,是用來定義網路上資訊的架構,使用資源描述框架所提供的表 達技術,可以使電腦能夠迅速處理詞彙和概念的意義,以描述資源或是. 政 治 大. 資源與資源之間的鏈結型態;除此之外,使用通用資源標識碼來標示實. 立. 體、概念、特性和關係。. ‧ 國. 學. (4) 本體論是一種以資源描述框架之類型的語言寫成的文件,文件中,概念. ‧. 之間的關係和推理邏輯規則,都已經清楚地被定義完成。透過網頁指向. sit. y. Nat. 的本體連結,電腦將能理解網頁上語意資料的含意。. al. er. io. (5) 邏輯(Logic)、證明(Proof)和信任(Trust)是目前許多研究正在進行的階層。. v. n. 邏輯階層所賦予撰寫規則的能力,證明階層主要是用來執行這些規則,. Ch. engchi. i n U. 而信任階層則是需要一個授信的機制,來幫助整個過程的評估,是否要 信任證明層的結果。 (6) 數位簽章(Digital Signature)階層,是作為偵測各種的文件,用以確保其安 全性的階層,是未來能否實現可信任網路的關鍵技術之一。 其中本體論是建立整個邏輯架構與關係規則的部份,而這部份在(Bada et al., 2004; Li et al., 2004; Arpinar et al., 2005; Grau et al., 2006)等學者的研究中有說明, 用於建構相關的領域概念。. 14.
(26) 2.2.2 本體論定義 本體論一詞,最初使用在哲學領域中,表示「存在的且有意識的實體或是主 體」之意,後來延伸應用在人工智慧領域方面,表示用來描述與說明特定領域下 的概念與知識,藉以分享與表達該知識領域中,存在的事件與彼此間的關係。 學者 Gruber 指出,本體論是一個對特定詞彙,具有邏輯性的解釋,亦即世 界中特定部份概念化的表稱(Gruber, 2000)。當使用本體論來描述特定領域的知識 時 , 可 以 把本體視 為是概念 (Concept) 、物件 (Object) 或是類 別(Class)、屬性 (Attribute)、特性(Property)或是角色(Role)、實例(Instance)與關係(Relation)這些元. 政 治 大. 素的組合,以下分別說明這些元素:. 立. (1) 概念:概念就是以多個底層物件,所組成的描述範圍,也就是由多個字. ‧ 國. 學. 彙(Vocabulary)所組成的集合,這個集合可以作為一個概念性的描述,描. ‧. 述出主體的基本範圍,透過這個字彙的集合,能讓系統可以自動地瞭解. sit. y. Nat. 到定義概念所代表的意思。. al. er. io. (2) 屬性:屬性可以當作是該物件的一個描述,描述該物件的特性或是特徵,. v. n. 當使用本體論表達某個特定知識領域時,概念就是其中的子集合,這些. Ch. engchi. i n U. 集合可以將它看成物件,在物件與物件之. (3) 間會有各種關係存在,而且每一個物件本身,也會有各種屬性存在。實 際上,物件擁有屬性所建構出整個本體論的資料架構,在應用上將提供 更多元且有用的訊息,不但可得知概念與其它概念之間的關係,從單一 的概念也可得知概念本身的特性或重要性,另外,若是要將一個本體論, 作充分有效的利用,屬性對於訊息的多樣化,是最有幫助的項目。 (4) 關係:若只使用物件與屬性來描述特定知識領域內,其概念與結構時候, 在知識領域的表達上來說,還不足以提供物件之間相關的細節訊息,所 以當建構出整個本體論的架構後,除了清楚地描述出物件與物件屬性之 15.
(27) 外,還可以為這些物件定義其彼此間所有的關係。由於目前自動建構本 體論的技術尚未成熟,所以大都是透過領域專家,以人工方式提供一個 有系統的知識領域架構,這個架構可以用來描述整個領域中,抽象的結 構與關係,提供相關應用系統的使用。 (5) 實例:實例可以更清楚地表達上層的概念,因此實例與上層概念,通常 會存在著某種特殊關係,並繼承某些上層概念的屬性,除此之外,實例 也可以擁有自己更詳細的屬性,以表示實例本身與其它實例之間的差異。 此時,也會產生一個問題,就是在建構本體論的過程中,對於一個項目,. 政 治 大 楚地表達概念」 ,所以通常在本體論架構中,用最底層的部份來定義實例 立. 如何定義它是概念或是實例。根據 Maedche 的建議:「實例是用來更清. ‧ 國. 學. (Maedche, 2003)。. 圖 2-3 說明了一個簡單的本體架構,其中最大概念的階層是「東西」,接下. ‧. er. io. sit. Nat. 分,可以細分到最後的實體,甚至還可以再繼續細分。. y. 來分成「動物」和「植物」,再依此兩類進行細分,動物或植物可以再依特徵細. 而這些概念與概念之間,分支後又有分支,彼此存在著特殊的關係,圖 2-4. al. n. v i n 則為學者 Sensoy 和 Yolum 針對服務所建立的基本本體架構,透過此本體說明可 Ch engchi U. 以觀察到,需求者在使用服務時,可能會面對的各種不同的情境(Sensoy and Yolum, 2006)。由上述可得知,利用本體論可以簡單的針對這些知識領域分類, 定義與描述該特殊領域的專業術語、項目與彼此之間的關係,也能瞭解特定領域 裡,所擁有的元件、關係、屬性。. 16.
(28) Branch. is-a. Tree. is-a is-a. is-a. Plnat. Leaf. owl:Thing is-a. Animal. is-a. Carnivore. is-a. Lion. Herbivore. is-a. Giraffe. is-a. 圖 2-3 本體架構圖. isA. 立. Class Fulfillment. domain isA isA. Class Description. range. range. Class Responsibility. isA. io. y. Class Demand. al. isA range. Class PreCondition. DataTypeProperty hasPreCondition. domain. range. n ObjectProperty hasService. isA. Class ConditionalCommitment. isA. domain. range. domain. DataTypeProperty hasResponsbility. sit. isA. Class Service. range. ObjectProperty hasOwner. Nat. Class Date. Class Commitment. DataTypeProperty hasFulfillment. ‧. range. Class Owner. er. ObjectProperty hasDate. ObjectProperty hasCommitment. 學. ‧ 國. isA. Class ServiceConsumer. 政 治 大. domain. Class ServiceProvider. Class Experience. Ch. i v Class. n SimilarDemand U engchi ObjectProperty hasDemand. domain. 圖 2-4 以服務為概念的本體架構圖. 將語意網的概念,結合到網路服務系統中,是可行的構想,特別是網務服務 組合自動化,將會有很好的效果,但目前語意網的建置與使用,在網路服務相關 領域的應用尚未普及,因此,本研究繼續針對網路服務其他的方式再進行探討, 其中,實作方面較成熟的技術為網路服務組合。. 17.
(29) 2.3 網路服務組合 2.3.1 網路服務組合定義與目的 網路服務組合是取得現有的服務,並且結合這些服務,形成新的服務能力 (Marton et al., 1999),也就是將現有的網路服務加以組合,可以解決更複雜問題 的網路服務,這也讓網路服務可以應用在企業流程。學者 Zeng 指出,以流程為 基礎的網路服務組合,是一種新興的服務方式,可運用在組織內,或跨組織的自 動化企業流程方法(Zeng, 2003)。以流程為基礎的網路服務組合,被認為是有效. 治 政 大 性,區分為三種類型(Zeng et al., 2004),其中包含基礎網路服務、組合網路服務 立. 地整合分散式、異質平台、獨立的應用程式的一種方式,構成網路服務組合的特. 網路服務社群,說明如下:. ‧ 國. 學. (1) 基礎網路服務:單獨的一個網路服務,不需要依賴其它的網路服務。. ‧. (2) 組合網路服務:聚集數個其它的網路服務組合而成。. y. Nat. er. io. sit. (3) 網路服務社群:一群具有相同功能的網路服務集合,但是可能具有不同 的屬性,這些屬性是和功能是不相關的,例如:有同樣的功能,不同的. n. al. Ch. 提供者、不同的服務品質等等。. engchi. i n U. v. 利用網路服務組合管理複雜的交易流程,是企業對企業(Business to Business; B2B)協同運作的方式(Benatallah et al., 2003a),最好的情況下,能根據環境條件 的變動,系統具備自我調整的能力,並且盡量減少人為的介入(Casati et al., 2000)。 網路服務組合之目的,是讓企業與企業之間的流程,進行無縫隙的整合,這和交 易的生命週期,具有相同的型態,並且能讓其它的網路服務使用;網路服務組合 的另一項目的,就是要讓具有企業流程功能的網路服務,能夠藉由發佈的程序, 讓更多的應用程式連結使用(Snell, 2001)。 當個別的服務,受限於它們所提供的功能時,就必須以網路流程的方式,重 18.
(30) 新組合現存的網路服務,以建立新的服務功能(Chandrasekaran et al., 2003)。網路 服務組合是一個包含許多組成的結構。它聚集了多個基礎網路服務或組合的網路 服務,並且根據流程模型,進行彼此互動(Zeng et al., 2004)。 學者 Lehmann 提出,網路服務組合的目的,有以下四點(Lehmann, 2003): (1) 藉由提供加值性的整合服務,來達成與其它企業的結盟,而加值性的整 合服務,是重新結合現有的網路服務而獲得的。 (2) 現有的網路服務,功能的延伸及再利用。 (3) 網路服務的數量增加。. 立. 政 治 大. (4) 支援 e 化服務組合的規劃、定義和實作。. ‧ 國. 學. 網路服務組合對於系統開發來說,是很重要的基礎。傳統的系統開發是從無. ‧. 到有,必須依據系統開發流程,從需求訪談、系統分析與設計開始,一個元件一. y. Nat. 個功能辛苦地開發,而現今的方式是藉由現有網路服務的搜尋,配合特殊需求功. 發的時間,並且可以增加網路服務的再利用性。. n. al. Ch. engchi. er. io. sit. 能的服務開發,共同組合成一個新的系統。這樣的開發方式不僅可以減少系統開. i n U. v. 網路服務的組合,當需求者和單一的網路服務互動時,很難或甚至不可能達 到服務功能的價值(VanderMeer, 2003)。如果系統可以在單一的入口,呈現相關的 服務給使用者,並且依據使用者的需求,產生和執行組合計劃的能力,這樣的系 統所提供的價值,明顯地超過個別網路服務所提供的價值。 因此,網路服務組合的必要性,在於它不僅可以將企業的流程,依據新的需 求自動化產生,並且能快速地提供服務。 2.3.2 網路服務組合方法 目前已經有許多研究針對網路服務組合的相關做法,進行分類與討論(李智 19.
(31) 偉,2004),包括:網路服務組合的階段、組合的需求規格、組合方式和執行方 式等,提出相關定義,網路服務組合相關方法比較,如表 2-1 所示:. 表 2-1 網路服務組合相關方法比較表 網路組合議題. 方法. 文獻作者. 網路服務組合階段. (1) 規劃階段 (2) 定義階段 (3) 實作階段. (Yang and Papazoglou, 2002). 網路服務組合需求規格. (1) 程序導向規格 (2) 介面導向規格. (Matskin and Rao, 2002). (1) 探索式 (2) 半固定式. 政 治 (Yang大and Papazoglou, 2002) 固定式 立(3) (1) 靜態 (Benatallah et al., 2003b). 網路服務組合執行方式. (2) 動態. (Chandrasekaran et al., 2003). (1) 中央集權模式 (2) 點對點模式. (Benatallah et al., 2003b). 學. ‧. ‧ 國. 網路服務組合方式. sit. y. Nat. 以下將針對網路服務組合的階段、組合的需求與規格、服務組合方式和執行. io. n. al. er. 的方式,進行重點摘要說明。 2.3.2.1 網路服務組合階段. Ch. engchi. i n U. v. 學者 Yang 和 Papazoglou 針對網路服務組合,將整個網路服務的組合過程, 分為規劃、定義與實作三個階段(Yang and Papazoglou, 2002): (1) 規劃階段:尋找所有可能的候選服務,並且確認它們的組合能力和符合 性。此階段,會產生替代的組合計畫,並且提給應用程式的開發者。 (2) 定義階段:產生實體的網路服務組合流程。此階段的產出是網路服務組 合的規格。 (3) 實作階段:根據定義段產的網路服務組合規格,實作出網路服務組合的 繫結。 20.
(32) 2.3.2.2 網路服務組合需求規格 學者 Matskin 和 Rao 將網路服務組合的需求規格,區分為以下兩種(Matskin and Rao, 2002),包含了程序導向規格和介面導向規格,說明如下: (1) 程序導向規格(Process Oriented Specification; POS):包含許多抽象化的網 路服務元件,結合企業應用邏輯,以工作流程的概念,描述這些網路服 務之間的協同關係;達成方式是以企業邏輯模型為基礎,配合工作流程 的規劃,來實作網路服務的協同組合。. 治 政 大 針對所需求的內容,提供輸入和輸出的相關資訊即可,但需求者不需要 立. (2) 介面導向規格(Interface Oriented Specification; IOS):組合服務需求者,. 瞭解複雜的細節,例如在組合服務中,需要包含那些網路服務元件,要. ‧ 國. 學. 以何種的結構組合這些服務。整個處理的方式,是透過程式自動化組合. ‧. 的方法,以達成網路服務的協同組合。. sit. y. Nat. 2.3.2.3 網路服務組合方式. n. al. er. io. 學者 Yang 和 Papazoglou 則將網路服務組合的方式,區分為三種組合(Yang. i n U. v. and Papazoglou, 2002),其中包括探索式、半固定式與固定式組合,說明如下:. Ch. engchi. (1) 探索式(explorative)組合:網路服務的組合是依據使用者的需求,在執行 時期產生組合流程。使用者必須先描述所需要的服務,然後,服務中介 者會比較需求服務的特性,和已註冊服務中,可能符合的服務規格進行 配對選擇,最後產生所有可能的網路服務組合計畫。這些產生的網路服 務組合計畫,可以被排序或是由使用者再根據某些條件選擇,例如:可 用程度、成本、效能等條件進行挑選。這種網路服務組合方式,是在執 行時期被決定,並且需要動態的組合與協同服務。 (2) 半固定式(semi-fixed)組合:此種網路服務組合方式,有部份的服務連結 21.
(33) 是在執行時期才決定。當此種網路服務組合被呼叫時,實際的網路服務 組合計畫才會被產生,系統也會根據組合中所指定的服務項目,和所有 可能可以使用的服務,兩者進行比較而產生結果。 (3) 固定式(fixed)組合:固定式的網路服務組合,事先就決定好要參與組合 的服務有哪些。組合的結構與服務元件都是靜態連結。傳達給此網路服 務組合型態的需求,再分送至各個參與組合的網路服務執行。 其中探索式組合,相似於動態組合方式,固定式組合,相當於靜態組合方式, 與 Benatallah 和 Chandrasekaran 所提的觀點((Benatallah, 2003b; Chandrasekaran,. 政 治 大. 2003)相似,區分為靜態與動態的方式,主要取決於網路服務組合流程設計的時. 立. 間點,靜態流程為事前即設定完成,其特性為流程固定不變,也因此缺乏彈性;. ‧ 國. 學. 而動態流程則是在執行時期才決定組合的順序,其特性為富有彈性且具延展性, 不過因為即時決定,因此難度也相對提高。兩種組合型態,都包含了網路服務的. ‧. 搜尋。. y. Nat. er. io. sit. 比較不一樣的是半固定式組合,是一種介於探索式組合和固定式組合之間的 新組合方式(Yang and Papazoglou, 2002)。此種方式的網路服務組合,有部份的服. al. n. v i n 務是在執行時期,才決定連結哪個的服務,其餘則是事先就決定的連結方式。 Ch engchi U 2.3.2.4 網路服務組合執行方法. 學者 Benatallah 指出,網路服務組合的兩種主要執行方法,包括中央集權 (Central Authority)模式和點對點(Peer-to-Peer; P2P)模式(Benatallah, 2003b)。 (1) 中央集權模式:中央集權模式的網路服務組合,是由獨立的服務提供者 管理。該提供者必須具有一個網路服務組合排程器。排程器也必須根據 網路服務組合的控制流程,初始化整個網路服務組合,並依序分派與執 行。為了達到這個目的,排程器要根據控制流程中規則的結果,呼叫每 個網路服務的元件。此外,排程器必須能夠接收,並處理來自需求者的 22.
(34) 要求。排程器也必須負責控制和處理資料的往來。 (2) 點對點模式:將工作平均分給每個管理服務元件的提供者。這樣的網路 服務組合執行模式,不只需要中央排程器的協助,還必須依靠網路服務 組合中的協調器,經由協調器的輔助,才能正常運作。多個協調器工作 時,以點對點的方式互相溝通,確保每一個網路服務組合的執行,都遵 照控制流程及資料流程的規格設計。 2.3.3 網路服務組合平台. 治 政 大 FUSION 和 SCET 等三個網路服務組合平台,本文將平台整理分析,並比較個別 立. 本節針對目前網路服務組合的相關研究,進行歸納整理。其中包括 Self-Serv、. al. sit. 程序導向 規格. er. 介面導向 規格. y. ‧. 提出者. Self-Serv. n. 特性. FUSION. io. 需求規格 類型 網路服務 組合語言 執行方式 執行後 分析. 表 2-2 網路服務組合平台比較表. Nat. 名稱 比較項目. 學. 組合平台. ‧ 國. 的優與缺點,各網路服務組合平台的比較,詳細如表 2-2 所示:. i n C 中央集權 h i U e n g c點對點 h 執行結果 效能分析 無. WSESL. 正確性分析 點對點為基礎的協 同組合模型 有服務容器的概念 VanderMeer et al., 2003. v. 服務入口的為概念 以流程需求為主的 平台 Benatallah et al., 2003a. SCET. 程序導向 規格 WSFL. 中央集權 效能分析執行模擬 分析 效能分析以及模擬 分析 有回覆機制 Chandrasekaran, 2003. 以下將分別介紹 FUSION、Self-Serv 和 SCET 等三個網路服務組合平台的特 性。 (1) FUSION:由 VanderMeer 等學者所提出,以服務入口的概念,同時也藉 由 FUSION 系統的實作,提供共同的基礎架構。服務入口必須具備以下 23.
(35) 的幾項功能:(a)蒐集使用者的目標資訊,(b)將使用者的目標,對應到實 際可執行的流程,產生滿足需求者條件,且提供邏輯性示意圖,(c)轉換 需求者的抽象目標,變成可執行的流程,且是最佳化的執行方案,(d)將 執行方案對應成網路服務,並且管理方案的執行,(e)接收執行的結果, 並且檢驗需求者的條件是否被滿足,(f)若執行結果不符合需求者的要求, 系統將會啟動適當的復原程序,回復到執行前的狀態,(g)將處理結果傳 遞給需求者(VanderMeer et al., 2003)。FUSION 的系統架構圖,如圖 2-5 所示。. 立. User Specification Subsystem (USS). Recovery Request. n. al. Ch. Service Request. sit. io. Recovery Subsystem (RS). y. Result Incomplete. Verification Subsystem (VS) No. Services. L. Nat. Recovery Result. S. ‧. ‧ 國. 學. User Response Generation Subsystem (URGS) Verified Result Yes. Dynamic Plan Generator Subsystem (WGS). T. Plan Execution Subsystem (PES). er. User Requrements. User Reqsponse. 政 治 Web大Services. Service Result. engchi. i n U. v. Service Response. Recovery Request Recovery Response. 圖 2-5 FUSION 系統架構圖 資料來源:VanderMeer et al., 2003 在 FUSION 系統架構中,包含了六個子系統,摘要如下: (a) 使用者需求規格系統(User Specification Subsystem; USS):這是一個 圖形化的介面,提供給需求者描述他的相關需求,並且轉換需求者 提供的條件,形成結構化的架構,以便讓網路服務動態方案產生子 24.
(36) 系統來處理。 (b) 網路服務動態方案產生子系統(Web Services Dynamic Plan Generator Subsystem; WGS):經由網路服務動態方案產生子系統的處理,可以 產生正確並且是最佳化的執行方案。此執行方案是以網路服務執行 規格語言(Web Services Execution Specification Language; WSESL)來 表達。處理的結果會輸入到方案執行系統。 (c) 方案執行系統(Plan Execution Subsystem; PES):將方案對應到實際可 執行的程式碼,然後真正執行方案中的每個服務,最後將執行結果 傳遞給驗證系統。. 立. 政 治 大. (d) 驗證系統(Verification Subsystem; VS):驗證系統會驗證服務的執行結. ‧ 國. 學. 果,是否符合需求者所指定的各項條件。. ‧. (e) 復原系統(Recovery Subsystem; RS):若驗證結果不符合預期條件,. sit. y. Nat. 則會將結果傳遞到復原系統,在復原系統收到之後,會啟動一連串. n. al. er. io. 的復原程序。. i n U. v. (f) 使用者回應產生系統(User Response Generation Subsystem; URGS):. Ch. engchi. 負責蒐集驗證系統或復原系統的輸出,並且以適當的方式將執行結 果呈現給需求者。 從以上的說明可以發現,希望提供一個完整的網路服務組合平台,包括服務 的取得、服務的組合、組合後服務的執行和結果的呈現等。 服務入口的概念,是以需求者的角度,考量網路服務的組合。由於需求者的 流程經常是多變的,所要求的限制條件也不會相同。服務入口所提出的方式,可 讓使用者指定最低要求的機制,使得整個網路服務的組合更有彈性。 (2) Self-Serv:Self-Serv 專案,是由 Benatallah 等學者提出。Self-Serv 實作 25.
(37) 出 以 點 對 點 為 基 礎 的 網 路 服 務 組 合 模 型 (Benatallah et al., 2003a) 。 Self-Serv 是一個網路服務動態組合的中介架構,主要包含兩個概念:合 成服務與服務容器,摘要如下: (a) 合成服務:在 Self-Serv 中,合成服務又分為兩種:基礎網路服務與 組合網路服務。基礎網路服務是指一個服務,不需要明顯的依賴其 它網路服務。組合網路服務則是聚集數個其它的服務組合而成。在 服務組合的流程邏輯描述方面,採狀態圖的方式表示。 (b) 服務容器:由於服務提供者對於移除服務、修改服務、變更服務位. 政 治 大. 置的情形非常頻繁,因此,網路服務組合常常在高度變動的環境中. 立. 運作。服務容器的概念,就是要幫助這種高度變動的服務進行組合。. ‧ 國. 學. 服務容器是指提供相同功能、可互相替代的服務聚合。服務容器有 精確、查詢與註冊三種模式。精確模式是指在容器建立時,就能精. ‧. 確地指定容器中,網路服務的成員為何。查詢模式是指容器中的網. y. Nat. sit. 路服務成員,必須透過服務中介者,例如必須透過通用描述、探索. n. al. er. io. 與整合的查詢來處理。在註冊模式中網路服務必須透過註冊程式, 才能成為容器中的成員。. Ch. engchi. i n U. v. Self-Serv 採用點對點協同方式,來執行網路服務組合,其中包含以下兩項基 本元素:狀態協調者與路由表。 (a) 狀態協調者:由 Self-Serv 中的狀態協調者,依據狀態圖的流程描述 產生,並且由每個服務的提供者自行管理。狀態協調者必須接收來 自其它狀態協調者的通知。並且從這些通知決定目前的流程狀態為 何。當所有的狀態條件符合時,狀態協調者會呼叫相關服務。當服 務執行完成時,會通知狀態協調者進入下一個狀態。 (b) 路由表:協調者必須依賴兩個路由表,以獲取所有的路由訊息。一 26.
(38) 個路由表記錄在進入前的狀態,必須符合先決的條件。另一個路由 表記錄著當狀態改變或離開時,必須通知那一個協調者。 Self-Serv 提出了實作必須具備的配套機制。並且對動態網路服務組合的實踐 方式,提出實際可行的方法。 (3) SCET:服務組合和執行工具(Service Composition and Execution Tool; SCET),主要是改善效能的問題,建構的一個完整的網路服務組合平台 (Chandrasekaran et al., 2003)。. 治 政 大 以網路服務流程語言(Web Services Flow Language; WSFL)規範的形式儲存。網路 立 使用者可以透過 SCET 的圖形化設計功能,處裡靜態的組合網路服務,然後. 服務流程語言,支援動態的網路服務挑選,因此可以達到動態網路服務組合的功. ‧ 國. 學. 能。在執行流程方面,SCET 會根據網路服務流程語言的描述,自動產生相對應. ‧. 的 Perl 執行程式碼,來完成服務的組合。在效能分析方面,SCET 採用 Java 模擬. y. Nat. 動態環境(Java-Based Simulation and Animation Environment; JSIM)的模擬方式,. er. io. al. sit. 來分析網路服務組合的效能。. v. n. 本研究將建置實作轉換與分析系統,因此將參考並整合前述系統特性,使用. Ch. engchi. i n U. 網際網路標準建構。以下將介紹服務流程部份所使用的標準執行語言。 2.3.4 服務流程執行語言 企業需要因應外界變動,需要有更彈性的企業流程,隨著網路技術演進與服 務導向概念的成熟,可透過網路服務組合語言(Web Service Composition Language) 來達成。網路服務組合語言以流程導向方式,組合出新的網路服務,其與網路服 務描述語言緊密結合,且概念是直接建構於網路服務描述語言之上(van der Aalst, 2003)。 目前網路服務語言主要有網路服務商業流程執行語言、商業流程執行語言 27.
(39) (Business Process Modeling Language; BPEL)(W3C, 2010)、延伸標記流程描述語言 (XML Processing Description Language; XPDL)(W3C, 2010)、網路服務編排介面 (Web Service Choreography Interface; WSCI)(W3C, 2010)、延伸標記流程敘述語言 (XML LANGuage; XLAN)(W3C, 2010)等,其中又以網路服務商業流程執行語言 (Web Services Business Process Execution Language; WSBPEL)為市場主流,廣泛 地應用在目前系統上。 商業流程執行語言,是一種以延伸標記語言,描述企業內部流程的語言,於 2002 年 8 月由微軟公司、IBM 公司和 BEA 等三家廠商合作開發,原名為商業流. 政 治 大 2002 年出現第一版、於 2003 年更新為 1.1 版,直至今 Services; BPEL4WS),在立 程 執 行 語 言 使 用 於 網 路 服 務 (Business Process Execution Language for Web. ‧ 國. 學. 日的 WSBPEL 2.0 版(Andrews, 2003)。其定位為整合網路服務方面的標準,這些 標準也相繼在其商業流程軟體中支援。該語言用於商業流程描述,強調規範結構. ‧. 化與標準化,其中包含多種網路服務的整合,並能將系統內部和業務夥伴之間的. y. sit. n. al. er. io. 平台互通有無。. Nat. 資訊交換標準化,使原本建立在不同系統上的商業流程,也能像網路服務可以跨. i n U. v. 網路服務商業流程執行語言文件,主要分為兩個部份:一個是描述構成流程. Ch. engchi. 的定義,例如,某項服務處理的訊息(Message)格式定義;另一個則是描述一個 完整流程,如何串起多個不同的服務,以及處理路徑的判斷規則。在描述流程如 何串起服務的部份,網路服務商業流程執行語言,使用延伸標記語言標籤,定義 商業流程中的網路服務,以及商業流程活動(Activity),活動的類型的描述包含資 料操作、關聯、錯誤處理、補償及結構化活動;除此,網路服務商業流程執行語 言,可以支援長時間的交易活動,並確保其狀態可以被保存,在實際商業活動進 行時,若遭遇到重大事故,例如停電,可以確保狀態可以獲得保存,而不會因為 突發狀況而流失,因此可增加交易的安全性。在網路服務商業流程執行語言 1.X 版中,常用的標籤如下(Fransisco et al., 2002): 28.
(40) <partners>:包含一連串網路服務組合執行時,所要呼叫的網路服務。 <variables>:在網路服務組合流程中,所需要用到的變數。 <sequence>:以串列方式執行所包含的內容。 <flow>:以平行方式執行所包含的內容。 <while>:以迴圈方式重覆執行所包含的內容。 <switch>:以程式語言常用的 case 方式,在所包含的內容中選擇一種執行。. 政 治 大 <invoke>:呼叫執行一個特定的網路服務。 立 <pick>:配合外在的事件執行活動。. ‧ 國. 學. <receive>:接收網路服務執行後所傳回的結果訊息,或呼叫該網路服務組。. sit. Nat. <assign>:指派給變數一個特定的值。. y. ‧. <reply>:傳送啟動網路服務執行所需要的參數訊息,或回覆網路服務組合。. er. io. <empty>:不執行任何行為之活動。. al. n. v i n <throw>:遇錯誤時負責接收錯誤,並進行進階錯誤處理。 Ch engchi U <wait>:指令流程暫停一段時間。 <terminate>:立即結束流程。. 以上是網路服務商業流程執行語言,於版本 1.0 與 1.1 時之常用標籤,在 2005 年商業流程執行語言,更新為網路服務商業流程執行語言 2.0 後,提供了更多定 義活動的標籤,並停用了 1.0 與 1.1 版之<switch>與<terminate>兩個標籤 ,其餘 新增標籤如下(Assaf et al., 2005)。 <validate>:驗證變數的結果。 29.
數據
相關文件
服務提供者透過 SOAP 訊息將網路服務註冊在 UDDI 中,服務需求者也可以透 過 SOAP 向服務仲介者查詢所需的 Web Service 並取得 Web Service 的 WSDL 文件,2.
in Proceedings of the 20th International Conference on Very Large Data
利用 Web Survey 來蒐集資料有許多的好處。許多研究者利用 Web Survey 進行研究的主要原因在於可以降低成本、即時的回覆。然而,Web Survey
Web 伺服器 Internet information services 6 相關應用工具 SQL Server 2005 Analysis services. SQL server business intelligence development Studio Visual
Lange, “An Object-Oriented Design Method for Hypermedia Information Systems”, Proceedings of the Twenty-seventh annual Hawaii International Conference on System Sciences, 1994,
Shih and W.-C.Wang “A 3D Model Retrieval Approach based on The Principal Plane Descriptor” , Proceedings of The 10 Second International Conference on Innovative
[16] Goto, M., “A Robust Predominant-F0 Estimation Method for Real-time Detection of Melody and Bass Lines in CD Recordings,” Proceedings of the 2000 IEEE International Conference
Li, The application of Bayesian optimization and classifier systems in nurse scheduling, in: Proceedings of the 8th International Conference on Parallel Problem Solving