Web服務組合的敏捷軟件開發研究論文

時間:2021-04-16 14:09:39 論文 我要投稿

Web服務組合的敏捷軟件開發研究論文

  敏捷思想為軟件開發帶來了新思路。面向服務應用的普及以及Web服務的出現為敏捷開發關于構件和精益的思想提供了新的實現途徑。不同粒度的Web服務組合滿足不同業務需求,也符合快速交付可以使用軟件思想。

Web服務組合的敏捷軟件開發研究論文

  當今的軟件行業依舊在焦油坑中痛苦掙扎,為平衡項目時間、預算、成本、質量等基本要素,從管理到開發過程提出眾多解決方案,可問題依舊很難得到解決[ 1 ]。隨著《敏捷宣言》和《敏捷原則》的發布,敏捷開發思想逐步普及。隨著互聯網的出現,軟件開發按老套路很難跟上市場變化。

  目前,軟件功能變化快,業務交叉增多,用戶需求變化快,因此需要將新思想和開發技術引入到軟件開發中。隨著面向服務應用的增多,擁有不同軟硬件資源的單位為軟件開發用戶提供了大量Web服務。充分利用這些服務也符合敏捷開發中精益思想和快速使用軟件的思想。

  1 敏捷軟件開發思想

  瀑布模型將軟件開發的過程設計成一個線性過程,主要分為5個階段:需求分析、設計、編碼實現、測試和部署維護,依次線性進行,只有當前一個階段任務完成后,才能進行下一個階段。只有到測試階段才能發現問題,而要解決這些問題,幾乎要再來一遍,很難適應中途需要變更的項目。前一個階段出現錯誤會被后一個階段放大,可能造成災難性后果。

  在互聯網和移動互聯網快速發展的今天,業務改變更快、更頻繁。業務需求分析和設計往往還沒完成,市場和消費需求已經發生變化,這就要求軟件開發能適應新時代要求。在這種背景下提出敏捷開發,軟件工程的另一個重要進展是基于構件的開發。

  盡可能利用可復用構件,組裝成新系統,提高軟件使用率,減少故障和降低成本,提高系統質量。基于構件的系統,更適用Internet技術和分布式系統開發的需要[ 2 ]。二戰后日本豐田公司陷入困境,豐田開始從全新的角度思考制造、物流和新產品研發活動,并逐步形成豐田生產系統這一新型的生產方式。

  豐田生產系統的根本思想是精益原則,即消除浪費,并對浪費的概念重新進行定義,即“不能為客戶創造價值的事物都是浪費”[ 3 ]。浪費也是軟件開發中的常見問題,過度文檔設計到最后卻不能變成實實在在的軟件,導致開發軟件反復返工、開發人員頻繁跳槽、經常加班等。Web服務能很好地共享資源,減少浪費,方便連通不同企業、不同信息平臺,合理整合業務鏈內的上中下游企業資源。

  2 Web服務組合

  所謂Web服務組合是指通過服務查找以及服務之間的接口集成,將多個自治Web服務根據需求進行組合,從而提供新的、功能更強的Web服務。從粒度意義上講,Web服務組合是對Web服務進行更大規模封裝,并將該封裝結果作為一個Web服務展現給外界。從順序意義上講,Web服務組合是一個滿足用戶需求的Web服務調用序列[ 4 ]。

  如游客想到北京旅游,希望在提供旅游業務的網站上完成整個旅行安排。其要求如下:首先,選擇景點,包括人文和自然;其次,選擇交通工具以及所選交通工具的價格類型,希望根據預計的旅游時間和當天的.天氣選擇交通工具,如果天氣晴朗則坐飛機,否則坐火車;

  再次,酒店預定和支付。在這個案例中用戶涉及的服務主要是景點服務(ws1)、交通服務(ws2)、酒店服務(ws3)、支付服務(ws4)。提供這些服務的提供商并不是一家,但商家之間需要相互合作。這4個服務是大的復合型服務,其也是更多具體服務的組合。

  具體的服務可以劃分為多個層次,每個層次可由復合服務和原子服務組成。葉子節點處的服務都是原子結點。按從上到下邏輯劃分,具體組合由下而上填充服務,組合成更具體服務。因此,進行Web服務組合的第一步是對業務流程進行分析,劃分業務單元。

  Web服務組合層次結構

  3 快速交付可使用軟件

  當用戶提出需求時,不可能一次性將所有需求都表達清楚,而且開發過程不可能一直等待所有需求都最終確定。這就需要開發人員針對用戶需求做優先級排序,先解決優先級最高、最緊迫、用戶最關心的需求。由于Web服務都是已封裝好的業務功能,可快速使用,縮短開發時間。

  在基于服務架構的系統中,不同業務Web服務可根據需要進行組合和替換,增強軟件靈活性和適應性,更好適應多變需求,減少不必要浪費。近年來網絡上Web 服務數量急劇上升,從Internet 上尋找滿足需求的服務變得困難[ 5 ]。

  為讓Web服務成為計算機可理解的軟件實體, 將語義Web技術引入Web 服務, 形成能夠在語義層面支持Web服務間互操作的語義Web服務,使基于Web的服務應用更靈活、更智能。基于語義的服務描述主要是利用本體表述領域內知識,使服務描述帶有語義。本體是共享的概念模型的形式化的規范說明[ 6 ]。

  本體對于Web網絡的意義在于:本體通過統一術語概念及其聯系的解釋,闡述網絡上的數據、程序、網頁及其它網絡資源包含的語義[ 7 ]。Web服務語義是指服務提供者與服務請求者之間就使用某個具體服務的必需條件、交互過程及服務運行結果所達成的共識或協議[ 8 ]。

  用語義標識描述Web服務,最終目的是實現語義Web服務自動查找、組合調用,改變軟件開發模式,使計算機可以參與到開發過程中,加快軟件開發進度、降低人工成本、提高開發效率。

  由于Web服務不同于傳統軟件開發,所提供的Web服務并不是針對具體用戶需求專門設定,服務功能粒度和用戶期望有一定區別。因此,需要一種智能化技術組合Web服務,可以實現動態調整和自我修正。

  神經網絡是用大量神經元的互連以及對各連接權值分布來表示特定的概念或知識。在知識獲取過程中,其只要求專家提出范例及相應的解,通過特定學習算法對樣本進行學習, 通過網絡內部自適應算法不斷修改連接權值分布達到要求, 并將專家求解實際問題的啟發式知識和經驗分布到網絡神經元的權值和閥值上 [ 9 ]。

  知識表示不再是規則,而是分布于整個網絡中的權值和閾值,神經網絡利用領域專家解決實際問題樣本訓練神經網絡, 使神經網絡在測試數據輸入條件下能獲得與專家方案盡可能接近的結果。根據規則集生成神經網絡,如圖2所示。

  神經網絡訓練web服務

  基于規則的神經網絡推導眾多的服務組合,可通過計算機自動實現。減少人工選擇組合時間,開發人員可以省去繁雜的選擇比較過程。知識庫集中領域專家經驗,使降低開發人員之間溝通不便。使用大量自動化智能技術和軟件復用技術,可以快速設計和開發出可使用的軟件,從而降低浪費,提高開發效率。

  4 結語

  敏捷開發強調快速開發能滿足業務需求的軟件,業務本身隨市場變化而變化。用戶有更直接體驗,與開發人員溝通起來更加明確,也可更清楚描述出自己所需軟件產品。

  Web服務使孤立資源能真正整合,但服務提供者不會按照每個需求者的需求提供個性化服務。為完成具體業務功能,需要進行Web服務組合。不同方案組合就是一次次重構,可避免浪費,同時也可加快開發進度。

【Web服務組合的敏捷軟件開發研究論文】相關文章:

對于基礎Web服務信息評價指標體系研究的論文10-30

軟件開發的性能測試與研究論文11-03

服務軟件開發技術思考論文01-12

組合式的家具設計研究論文11-04

價格競爭與營銷戰略組合研究論文10-22

關于邯鋼基于WEB的客戶服務平臺設計論文11-17

研究銀行服務轉型論文04-02

專業學生軟件開發能力培養研究論文11-20

基于Web的農機推廣信息系統的研究與設計論文11-02

久久综合国产中文字幕,久久免费视频国产版原创视频,欧美日韩亚洲国内综合网香蕉,久久久久久久久久国产精品免费
网站不卡在线观看资源精品 | 一区二区三区精品视频 | 亚洲国产日韩欧美综合 | 最新国产啪精品视频网站免 | 伊人婷婷色香五月综合缴缴情 | 亚洲中文有码字幕日本第一页 |