上海 2007-07-05(中國商業電訊)--目前,每當一種新的技術、商業模式、商業規則出現的時候,總會導致公司的大變化。公司要適應變化,生存競爭的法則就是優勝劣汰,適者生存。現在的企業環境里面,需要多地點多組織的運作,企業需要在全球的供應鏈里面找到自己的位置,全球化的運作,全球化的客戶,全球化的市場,將給企業帶來國際性運作的適應性變革,需要供應商更多的協助互動,降低成本,提高通路,這些變化的速度越來越快。這些變化一方面是危機,另一方面帶來一種新的機會和挑戰,那么作為企業,如何快速適應變化,成為未來快速成長的關鍵。SOA(面向服務的架構)就是解決這個問題的方法論。
企業應變方法論:SOA
SOA的核心價值在于組織能力服務化,通過服務編排實現靈活的業務過程,SOA不僅是技術導向的,而且是未來企業用來提高敏捷度靈活性的關鍵,采用SOA技術架構時,必須以業務為中心,按照服務來構造企業的關鍵應用系統,將實現過程,人員和信息的實質集成,高度協調。
通過SOA架構我們把組織能力服務化以后,通過服務的編排實現動態的變化,所以SOA不僅是技術導向,不僅是WEB服務,更重要的是把IT服務和業務服務,用同一種口氣來表達,關鍵是業務流程業務動態改變,所以實施SOA架構的時候,技術只是一個方面,更重要是以業務為中心,按照服務構造用友的關聯應用,是按照業務,服務于軟件開發部署的頭等大事,這樣才能基于SOA推動敏捷建立。
至于SOA通向敏捷企業之路,在企業內部,每個業務之間也是相互獨立的,是孤島型的應用模式。在模塊化時代,有了接口,但是這個接口是固化的,IT的靈活性跟業務的靈活性相比有很大的差別。到SOA時代我們更重要的是服務,軟件模塊的概念。產品的概念已經打破,更重要的是服務。服務可能來自于企業,來自于合作伙伴,來自于海關、銀行等等。把服務動態的變化集成在一塊,實現業務模型、商務過程、業務對于IT的要求,這樣才能實現系統的流程的整合,根據變化動態適應技術標準。所以本質上來講,SOA是一種價值模型,所有的軟件功能都是服務,軟件功能的實現都是通過服務的標準進行實現的,通過服務的部署來實現應用。SOA架構里面,更關注的是結合。服務里面最重要的4大要素,第一個服務是邊界清晰,服務之間共享結合,服務接口決定服務以什么方式組裝,服務接口的設計是什么決定的?更重要的是業務決定的。通過業務的分析,通過業務模型,需要什么業務支撐。這樣才能實現SOA架構。
通過服務接口的標準化和BPM的結合來簡化應用之間由流程驅動的應用集成,通過服務快速適應業務需求的變化,使整個企業的IT架構不再直接依賴細粒度的技術實現。所以說面向服務給企業帶來的變化是企業和企業之間的連接,業務和業務之間的連接,從面向功能轉變到面向流程,從軟件一開始是重新構造的IT系統,到我們的IT可以根據變化來構造,從全部部署到增量部署,從應用孤島到流程的協作,從緊密偶合和松散偶合,從面向對象到面向消息。
靈活的企業應用部署方式,對于用戶企業來講,用的一個系統,這個系統分散到很多地理位置上面,分散在不同的組織上面,分散到很多不同的應用上面,對于我來講就是一個系統,這個系統里面通過服務和服務的接口實現互動互聯,這樣基于SOA架構實現集中式管理。
用友SOA實踐論
用友公司推出SOA整體解決方案,分成4個方面,第一個方面商務應用驅動,第二面向服務的全程應用開發,第三是企業最佳始建于可應用資產率,最后是應用開發框架與IDE。
用友公司成立20年一直在管理應用領域做工作,經過多年的工作,形成內部模型,是基于世界上最先進的管理理念做的。從KPI怎么落實到商務,再落實到具體的流程,再落實到活動,一層層落實下來。這樣可以決定服務的接口,另外通過特色的選配,在哪些行業和地區,有類似的流程和類似的服務。然后形成客戶用戶,哪些是相對穩定的部分,哪些是相對變化的部分。根據這些東西,用友成立了服務部,服務部里面,有這些服務,這些服務支持哪些流程,支持哪些特征,這些服務部里面有很多組件組成,不光是后臺的組件,也有前端表現的組件,通過這些東西組裝,用友公司交付表面上還是產品,但是這個產品是由不同服務組成的。
要實現這個目標,用友的UAP主要作了幾個事情:第一個事情支持SOA架構,實現ESB支持BPM,第二個基于框架模型和模式,全面支持基于服務的可視化業務過程建模,自動生成組件代碼框架控制服務發布和配置。遵循開放的技術標準,方便與其他軟件的操作性,業務與技術相分離的架構,易于擴展和更新,內置國際化支持,全面支持集中式、分布式、混合模式的應用部署。
UAP的技術架構中有表示層、業務層、數據層,數據層里面有持久化引擎,有查詢引擎,再到業務層里面有業務實體,有業務策略,業務操作、服務,UDDI,表示層有表單模型、表單視圖、表單邏輯、服務代理。這里有抽象空間模型,有WEB客戶端,還有智能客戶端,實現跟RICH的交互行為,用友支持PDA,支持OFFICE,通過這樣的技術架構,用友支持SOA的實踐,當然業務層里面,部署到服務引擎里面去,可以解決具體的調用技術,因為整個技術模型里面,他們是原生的對象模型,與具有的技術是無關的。
基于這樣的技術架構,解決了技術層面的問題。UAP對于軟件有統一的描述,由業務人員描述服務,描述流程,描述業務對象,描述表單,形成組裝,通過組裝語言,組裝成產品,產品是通過這些組件組裝起來的。
在用友應用平臺里面,最核心的服務引擎,是工作引擎和流程引擎。在第一層面有模型描述,組裝有服務庫的組裝,實現采購管理,供應鏈管理等等,還有門戶,實現審批管理,實現搜索引擎,實現支持共享,也可以在支持用戶里面,通過客戶端,可以通過瀏覽器訪問應用,也可以通過客戶端訪問應用,也可以通過Office,回復郵件的時候訪問ERP數據。
UAP應用架構中有工具、運行時態、元數據、設計時態。集成開發環境IDE:SOA應用開發的利器,集成的可視化開發環境,基于PLUG-IN的開放架構,使用工作臺模型整合各種工具,工具通過定義良好的擴展點插接到工作臺上。全面角色過程支持,包括模型分析,模型設計,支持及時構造系統的集成,整個生態鏈的交付實施過程等。
領域模型設計工具,有業務實體、狀態機,業務操作等等。設計器能夠表述出有那些事件、哪些經驗都會表述出來。在操作服務里面,會定操作服務具體的技術實踐手段。在流程工具里面,用友支持POP模式表達商務過程,這是幾個例子。用友總結出來的模型以及服務要求中有很多來源,有基于合同的,基于母廠的,有基于報價的,基于商機的等等,然后選配,基于接單情況指定相應的工廠,下達指令。
用友的產品有很大的特色,表面上當企業行為是靜態行為時,好象用SOA架構產品沒有什么區別,當發生變化的時候,就有很大的差異了。在這個例子里可以看到,當增加新的服務的時候,當組織能力需要改變的時候,在于服務庫里面,可以方便的組裝到產品里面去,然后調整用友的產品,讓用友的產品、用友的系統適應新的變化。
基于SOA理念的U9套件產品即將上市。U9是完全基于SOA架構的產品,第二他有很多服務組合,面向服務的組合最終到服務庫,用戶可以很容易進行互聯。U9的全新理念是通過SOA架構實現架構實時企業,商務應用。未來用友還將把更多的產品轉換到新的集成開發環境中去。