中國(guó)的世界級(jí)管理軟件——用友U9,給廣大中國(guó)企業(yè)(尤其是中高端的制造型企業(yè))帶來(lái)了許多期許。面對(duì)即將發(fā)布的用友U9 v2.0產(chǎn)品,用友副總裁、U9產(chǎn)品研發(fā)中心總經(jīng)理黃濤鮮明地談出了數(shù)年研發(fā)過(guò)程中,用友對(duì)軟件SOA發(fā)展趨勢(shì)的理解。 中國(guó)的世界級(jí)管理軟件——用友U9,給廣大中國(guó)企業(yè)(尤其是中高端的制造型企業(yè))帶來(lái)了許多期許。面對(duì)即將發(fā)布的用友U9 v2.0產(chǎn)品,用友副總裁、U9產(chǎn)品研發(fā)中心總經(jīng)理黃濤鮮明地談出了數(shù)年研發(fā)過(guò)程中,用友對(duì)軟件SOA發(fā)展趨勢(shì)的理解。
同時(shí)就用友如何在U9產(chǎn)品中貫徹SOA架構(gòu),并展示這款“中國(guó)的世界級(jí)”產(chǎn)品的創(chuàng)新性,道出了用友U9全體研發(fā)人員的心得。
SOA是基礎(chǔ)架構(gòu),而不是一種協(xié)議,U9如何貫徹SOA
“有些廠商對(duì)SOA的理解,是認(rèn)為通過(guò)WEB的方式從服務(wù)器調(diào)用系統(tǒng)的功能,以及將系統(tǒng)的API定義成一個(gè)可調(diào)用的功能,這就是SOA。如果站在這樣的角度上來(lái)看,SOA就不是一個(gè)架構(gòu),而只是一個(gè)跨平臺(tái)的調(diào)用協(xié)議而已。”黃濤認(rèn)為:如果如此誤解SOA,那么任何一個(gè)軟件,只要對(duì)它的API接口做一個(gè)封裝或者改造,就能號(hào)稱是SOA架構(gòu)的軟件了。
用友認(rèn)為:SOA架構(gòu)是一個(gè)基礎(chǔ)性的東西,那些事后能通過(guò)包裝或簡(jiǎn)單調(diào)整做出來(lái)的軟件,一定不是架構(gòu),最多只是一項(xiàng)技術(shù)而已。
黃濤講述:在U9里,用友U9是從企業(yè)的服務(wù)化運(yùn)作去考慮和審視軟件的SOA架構(gòu),把企業(yè)運(yùn)作經(jīng)驗(yàn)總結(jié)并積累變成一個(gè)個(gè)“服務(wù)”,把“組織能力”服務(wù)化,通過(guò)對(duì)“服務(wù)”的編排來(lái)實(shí)現(xiàn)彈性的業(yè)務(wù)流程,U9將這種方法定義為SOA架構(gòu),其核心是對(duì)企業(yè)業(yè)務(wù)的抽象和組件化。
也就是說(shuō),軟件從一開始,就不是“像傳統(tǒng)軟件那樣按照工作流的方式”去設(shè)計(jì)的,而是從企業(yè)的戰(zhàn)略,到業(yè)務(wù)流程,以及流程所需要的服務(wù)去考慮。這樣的思路所設(shè)計(jì)出來(lái)的軟件,自然而然地就變成了一個(gè)個(gè)服務(wù)的組合,服務(wù)成為了軟件設(shè)計(jì)的頭等工具。
當(dāng)用友U9設(shè)計(jì)軟件通過(guò)服務(wù)的編排來(lái)實(shí)現(xiàn)業(yè)務(wù)流程時(shí),那么這個(gè)軟件天生就是以服務(wù)為基礎(chǔ)架構(gòu)的。
黃濤指出:“在U9里面不是需要買另外一個(gè)包或工具,它才能變成平臺(tái),U9在設(shè)計(jì)時(shí)就有服務(wù)和服務(wù)組的概念。”服務(wù)組的服務(wù)之間有著較大的相關(guān)性,比如說(shuō),用PDM做接口的時(shí)候,肯定與BOM有很大的相關(guān)性,BOM的驅(qū)動(dòng)和維護(hù)能牽引企業(yè)實(shí)際業(yè)務(wù)工作中很多調(diào)整。又例如企業(yè)經(jīng)營(yíng)中現(xiàn)場(chǎng)做任何一個(gè)流程變更,都會(huì)對(duì)物料流程有所影響。
U9的設(shè)計(jì)基礎(chǔ)建立在服務(wù)和服務(wù)組概念上,而幾年來(lái),研發(fā)人員就服務(wù)組間相關(guān)性管理,分辨服務(wù)組數(shù)據(jù)的內(nèi)外部關(guān)系等等很多復(fù)雜問題,花費(fèi)了大量心血。“在如此大的研發(fā)投入下,最終保障每一個(gè)購(gòu)買U9的客戶,不光買到的是一款成型的平臺(tái)產(chǎn)品,更重要的是買到了一個(gè)龐大的服務(wù)庫(kù)。”
依靠這個(gè)服務(wù)庫(kù),用戶可以彈性地組合應(yīng)用,例如一些客戶將U9和PDM整合,和第三方整合,都是用了U9服務(wù)庫(kù)內(nèi)置的服務(wù)引擎來(lái)構(gòu)建。
U9內(nèi)部,目前有大約近1萬(wàn)個(gè)的服務(wù)。意味著客戶購(gòu)買了U9以后,就可以調(diào)用服務(wù)庫(kù)里任何一個(gè)服務(wù),而不需要自己再去開發(fā)新應(yīng)用。
基于服務(wù)組件研發(fā),確保了U9的SOA真身,同時(shí)做到了高效研發(fā)
U9有一個(gè)平臺(tái),叫UAP 。
通過(guò)平臺(tái),可以分兩個(gè)層面精細(xì)化考慮軟件產(chǎn)品客戶化問題。第一個(gè)層面是“個(gè)性”,第二個(gè)層面是“擴(kuò)展”。
在個(gè)性層,U9平臺(tái)提供了大量標(biāo)準(zhǔn)功能,ERP項(xiàng)目實(shí)施人員和維護(hù)人員可以通過(guò)進(jìn)行大量服務(wù)組件的配置來(lái)實(shí)現(xiàn)不同企業(yè)客戶的個(gè)性化需求,而不再需要進(jìn)行重新編碼。
而擴(kuò)展層,U9在WEB層、數(shù)據(jù)層等都提供了很多框架和引擎,而這些框架和引擎里面,又提供了很多標(biāo)準(zhǔn)的擴(kuò)展機(jī)制。例如:銷售訂單發(fā)貨前兩天,要通過(guò)短信或郵件通知客戶,這需要一個(gè)新應(yīng)用,而U9中有很多標(biāo)準(zhǔn)的開發(fā)工具,可以供后期為客戶實(shí)施中,開發(fā)針對(duì)性的新服務(wù)。
此外,U9除了上述兩個(gè)“客戶化”方式外,也保留了傳統(tǒng)的二次開發(fā)途徑。如果說(shuō)在某個(gè)行業(yè),服務(wù)不合適,要重新開發(fā)新的服務(wù),U9的接口支持國(guó)際標(biāo)準(zhǔn),可以用.NET,也可以用J2EE去調(diào)用U 9的其他服務(wù),在技術(shù)選擇上是開放的。
靈活地?cái)U(kuò)展、客戶化機(jī)制,得益于SOA架構(gòu)。
此外,這種架構(gòu)給U9帶來(lái)的更大發(fā)展優(yōu)勢(shì),就是大大方便了系統(tǒng)升級(jí)的便利。黃濤指出:選擇U9后,ERP升級(jí)過(guò)程中,首先客戶風(fēng)險(xiǎn)降低了,此外對(duì)于U9的研發(fā)過(guò)程其實(shí)收益更大。
傳統(tǒng)ERP任何一個(gè)大規(guī)模系統(tǒng)升級(jí),都會(huì)給用戶帶來(lái)巨大的風(fēng)險(xiǎn),主要是架構(gòu)上的調(diào)整,以及兼容性的問題。而SOA架構(gòu)的U9,軟件的顆粒是服務(wù),只要服務(wù)接口的API標(biāo)準(zhǔn)不改變,對(duì)服務(wù)模塊就沒有任何影響,用戶均可以做到平緩升級(jí)。
兼容性上,基于SOA架構(gòu)的U9,完全不用考慮原有系統(tǒng)開發(fā)的服務(wù)組件能否應(yīng)用到新的系統(tǒng)之上,由于SOA架構(gòu)系統(tǒng)平臺(tái)與組件間通過(guò)API接口連接,同樣只要API不改變,系統(tǒng)平臺(tái)升級(jí)就不會(huì)影響到已成熟的組件兼容性問題。
“在以前的系統(tǒng)中,是沒有元數(shù)據(jù)去描述和定義API的。”針對(duì)這類問題,以前的客戶和開發(fā)商都是不了解的,無(wú)法解決的。在U9里面,通過(guò)元數(shù)據(jù)去描述了其對(duì)外所有的接口。有了這樣一個(gè)描述后,我們很容易在開發(fā)過(guò)程中,看到API的兼容問題。
這種模式,除了讓客戶放心于系統(tǒng)升級(jí)外,更重要的是,大大提高U9自身的研發(fā)效率。基于SOA架構(gòu)建立服務(wù)庫(kù)后,U9系統(tǒng)大升級(jí),不會(huì)對(duì)服務(wù)的復(fù)用造成影響。傳統(tǒng)ERP升級(jí),周邊開發(fā)的新應(yīng)用都會(huì)面臨調(diào)整,而SOA架構(gòu)對(duì)服務(wù)幾乎沒有任何影響,可以直接鏈接到新平臺(tái)上“重用”。
“有了大量可以重用的服務(wù),就能保證U9開發(fā)的‘高效率、高質(zhì)量、低成本’”黃濤表示。
記者注意到,用友U9兩年來(lái)已經(jīng)發(fā)版了4次,升級(jí)發(fā)展速度大大超過(guò)傳統(tǒng)ERP。從2008年初正式發(fā)布U9 V1.0版開始,繼2008年發(fā)布了1.1和1.5版本,而2009年11月將發(fā)布2.0版本,這充分說(shuō)明基于SOA架構(gòu)的U9在開發(fā)效率上的明顯優(yōu)勢(shì)。