首頁 >
簽約 · 案例 >
華天動(dòng)力:魔方架...
華天動(dòng)力:魔方架構(gòu)是實(shí)現(xiàn)從OA到協(xié)同的必經(jīng)之路
OA正在完成其發(fā)展史上最重要的蛻變,即從一個(gè)簡單的OA上升到協(xié)同OA。
要實(shí)現(xiàn)這個(gè)轉(zhuǎn)變,OA必須在自己的體系架構(gòu)上進(jìn)行全新的設(shè)計(jì),使其具有平臺(tái)化的特征,這就是華天動(dòng)力OA“魔方架構(gòu)”的由來。
1、 什么是魔方架構(gòu)
華天動(dòng)力OA的魔方架構(gòu)是一個(gè)形象的稱呼,這個(gè)魔方由多個(gè)插接在一起的小方塊組成,每個(gè)小方塊都代表一個(gè)應(yīng)用,這些小方塊能夠根據(jù)需求靈活地轉(zhuǎn)動(dòng),最終達(dá)到一個(gè)理想的、有序的位置,實(shí)現(xiàn)了全方位的協(xié)同辦公。
魔方架構(gòu)的應(yīng)變能力就像魔方一樣靈活而強(qiáng)大,能輕松實(shí)現(xiàn)跨平臺(tái)、跨數(shù)據(jù)庫、跨架構(gòu)、多語言任意使用,這樣就為用戶建立了一個(gè)完全隨需應(yīng)變的管理平臺(tái)。對用戶來說,他可以在無需編程的情況下,通過鼠標(biāo)在可視化界面上輕松搭建各種業(yè)務(wù)流程,和其他業(yè)務(wù)系統(tǒng)進(jìn)行數(shù)據(jù)整合,消除信息孤島,為領(lǐng)導(dǎo)者提供各種類型的統(tǒng)計(jì)報(bào)表。
華天動(dòng)力OA魔方架構(gòu)的核心有二個(gè),一是基于MVC架構(gòu),一是基于SOA體系。
2、 采用MVC(Model-View-Controller)架構(gòu)
MVC 結(jié)構(gòu)是傳統(tǒng)三層結(jié)構(gòu)的另外一種描述。MVC每個(gè)字母代表不同的含義,M模型(Model)、 V視圖( View )、 C控制器(Control)。換句話說,M代表著數(shù)據(jù)的存儲(chǔ)(數(shù)據(jù)庫),V代表著最終的用戶頁面,而C代表著業(yè)務(wù)的邏輯。
MVC將數(shù)據(jù)和業(yè)務(wù)規(guī)則從表示層分開,可最大化的重用代碼。而且模型返回的數(shù)據(jù)沒有進(jìn)行格式化,因此同樣的構(gòu)件能被不同界面使用。模型是自包含的,并且與控制器和視圖相分離,很容易改變應(yīng)用程序的數(shù)據(jù)層和業(yè)務(wù)規(guī)則。如果你想數(shù)據(jù)庫從MySQL移植到Oracle,或者改變基于RDBMS數(shù)據(jù)源到LDAP,只需改變模型即可。而且,只要正確的實(shí)現(xiàn)了模型,不管你的數(shù)據(jù)來自數(shù)據(jù)庫或是LDAP服務(wù)器,視圖都會(huì)正確的顯示它們。
另外, MVC應(yīng)用程序的三個(gè)部件相互對立,改變其中一個(gè)并不會(huì)影響其它兩個(gè),依據(jù)這種設(shè)計(jì)思想能構(gòu)造良好的耦合構(gòu)件。 MVC的優(yōu)點(diǎn)不是體現(xiàn)在產(chǎn)品的功能上,而是讓軟件的結(jié)構(gòu)變得更加合理,更方便修改。如果你想改動(dòng)一個(gè)頁面,只需改動(dòng)一下頁面與控制層的關(guān)聯(lián)關(guān)系,而不需要改動(dòng)任何程序。
3、 華天動(dòng)力對MVC架構(gòu)的具體應(yīng)用
第一、在數(shù)據(jù)層,可通過中間件進(jìn)行溝通。這樣不需要書寫任何一行代碼,通過簡單的類與數(shù)據(jù)庫表的映射實(shí)現(xiàn)數(shù)據(jù)庫表的增刪改。整個(gè)程序中沒有一條SQL語句,不修改代碼就可實(shí)現(xiàn)自動(dòng)切換到各種數(shù)據(jù)庫類型。(如MySQL/SQLSERVER/ORACLE)
第二、通過標(biāo)簽定義實(shí)現(xiàn)與業(yè)務(wù)層的連接。在HTML頁面中,沒有一行程序代碼,只有標(biāo)簽定義。如果頁面需要變更,只須更改標(biāo)簽與業(yè)務(wù)層的連接關(guān)系。
第三、內(nèi)部通過獨(dú)立的子工程管理,這樣既能保證各個(gè)子工程的系統(tǒng)獨(dú)立性,又能確保對系統(tǒng)的整體管理。第四、通過頁面與程序的分離,實(shí)現(xiàn)了多語言和多風(fēng)格的不同展示系統(tǒng)。
4、 采用SOA(Service-Oriented Architecture)面向服務(wù)架構(gòu)
SOA,是一個(gè)很抽象的技術(shù)術(shù)語,也是當(dāng)前最領(lǐng)先的技術(shù)架構(gòu)之一,IBM也在重點(diǎn)推廣SOA架構(gòu)。SOA,簡單的說就是以WEB為基礎(chǔ),為每個(gè)應(yīng)用提供相關(guān)的接口,類似于原來的API。這樣,系統(tǒng)以外的其他系統(tǒng),不需要了解程序內(nèi)部的具體釋放方式,就可以調(diào)用相關(guān)系統(tǒng)功能。
例如:以短信收發(fā)的接口,如果該短信服務(wù)器提供這樣類似的接口,那么第三方軟件,就可以很方便地與之進(jìn)行短信的發(fā)送。而一套復(fù)雜的系統(tǒng),通常會(huì)提供成千上萬個(gè)類似的接口,外面系統(tǒng)可通過這些接口,在一定的規(guī)范內(nèi)與原系統(tǒng)進(jìn)行交互。
5、 華天動(dòng)力對外提供兩種接口類型
第一種接口是BEAN型的,這是最初始的。通過他的類包和相關(guān)的類包定義,使其他的JAVA系統(tǒng)可以與該系統(tǒng)進(jìn)行通迅。
第二種接口是WebService型的。其他系統(tǒng)通過華天動(dòng)力提供的Webservice接口,可實(shí)現(xiàn)調(diào)用OA系統(tǒng)的部分或整體的功能,而無需知曉O(shè)A內(nèi)部系統(tǒng)的細(xì)節(jié)。
例如,華天動(dòng)力的OA小助手本身沒有任何數(shù)據(jù)存儲(chǔ),是一個(gè)瘦客戶端,不能進(jìn)行數(shù)據(jù)庫的讀寫。但通過調(diào)用OA系統(tǒng)的接口,可實(shí)現(xiàn)與OA系統(tǒng)的交互。與JAVA 類包方式的接口不同,WebService接口不僅可以被JAVA程序調(diào)用,也可以被VB/Delphi/PB等幾乎所有的編程語言所調(diào)用。不僅在B/S使用,還可以被C/S程序所調(diào)用,這大大增強(qiáng)了程序的可擴(kuò)展性。整個(gè)軟件基于WebService體系開發(fā),是SOA的核心內(nèi)容,這也是華天動(dòng)力能夠很好的以SOA作為架構(gòu)的基礎(chǔ)。
6、 魔方式架構(gòu)優(yōu)勢
從開發(fā)角度和應(yīng)用角度來看,華天動(dòng)力協(xié)同辦公的魔方式架構(gòu)更具優(yōu)勢。它結(jié)合了MVC架構(gòu)和SOA體系各自的優(yōu)勢,大大提高了系統(tǒng)模塊的復(fù)用性、安全性和可擴(kuò)展性。降低了開發(fā)的難度和開發(fā)周期,并有效的降低維護(hù)費(fèi)用,使程序的調(diào)用變得更加方便和簡單。
從軟件使用者的角度來看,這種基于MVC和SOA的魔方式架構(gòu),可以讓軟件更易擴(kuò)展,持續(xù)能力更強(qiáng),更節(jié)省對未來預(yù)期的軟件投入,并可以與其他系統(tǒng)進(jìn)行有效的數(shù)據(jù)整合,真正實(shí)現(xiàn)了企業(yè)應(yīng)用軟件的“隨需而動(dòng)”。
所以,魔方架構(gòu)讓OA具有了全新的開放性和生命力,使其成為一個(gè)數(shù)據(jù)共享、流程同步的綜合性協(xié)同辦公平臺(tái),幫助OA完成了從士兵到將軍的轉(zhuǎn)變。
關(guān)鍵詞:
華天
魔方
架構(gòu)