[摘 要] 企業管理信息化為企業帶來了越來越明顯的管理效益和經濟效益,但伴隨著這一進程,由信息技術進步所帶來的企業信息化問題也與日俱增。這些典型的問題包括企業信息孤島問題、軟件標準化研發與企業個性化應用問題、企業需求頻繁變化與通用軟件適應性問題等。本文較詳盡地對這些典型問題進行剖析,進而探討基于SOA理念架構的企業管理信息系統整體解決方案。
[關鍵詞] 企業管理信息化;問題;SOA解決方案
doi : 10 . 3969 / j . issn . 1673 - 0194 . 2010 . 03 . 033
[中圖分類號]F270.7 [文獻標識碼]A [文章編號]1673 - 0194(2010)03 - 0080 - 04
社會經濟發展進入信息化時代,企業管理信息化為企業帶來了越來越明顯的管理效益和經濟效益。但是我們看到,隨著企業管理信息化進程的發展,由技術進步所帶來的企業信息化煩惱也與日俱增。如在傳統信息化發展歷程中所形成的企業信息孤島問題、通用軟件的標準化研發與企業個性化應用問題、企業需求的頻繁變化與通用軟件適應性問題等,已成為企業管理信息化繼續向更高層次發展的主要絆腳石。解決這些問題需要一個集成的、具有廣泛適應性的、能夠長期滿足企業業務應用擴展需求的企業管理信息系統解決方案。這需要一場創新性的企業管理軟件架構技術革命。
一、當前企業管理信息化發展進程中面臨的主要問題
1. 企業信息孤島(Information Silo)問題
企業信息化,是一個隨著技術發展漸進提高的過程,如果企業存在,或許永遠也不會有終結的那一天。早期使用計算機進行信息化管理的企業,往往是面向業務部門操作層面開始計算機應用的。這些應用主要從部門內部的業務出發,開發或購置僅用于滿足部門業務功能的管理系統。如面向辦公自動化的OA系統、面向客戶關系管理的CRM系統、面向會計管理的AIS系統等。這些軟件系統之間的數據格式、數據庫類別、操作系統、應用系統等都不盡相同,且位置分散、相互獨立,甚至在同一系統下的各子系統之間也獨立應用。這些多年來由企業分散開發或引進的異構信息系統,由于互相之間缺少數據通訊標準和共享的數據平臺,使企業一項完整的經濟業務總是被機械地肢解為一段一段,難以被順暢地執行和實施有效控制,長期積淀便形成了企業中的一個個“信息孤島”[1]。這些信息孤島不僅割裂了有機聯系的數據鏈條,使管理層無法全面掌控用于決策的信息內涵,而且數據之間重復錄入,缺少相互驗證,常常導致信息失真并由此引發決策失誤。因此,信息孤島使企業信息化功能大打折扣,提高了企業的營運成本,大大減弱了企業市場的快速響應力和綜合競爭力。 所以,無論是從經濟發展角度還是從技術進步角度看,都必須要解決企業信息孤島問題。要在先進的信息技術和管理技術支持下重構企業的業務流程,整合企業中已有的各個信息功能體,實現系統由單一功能部門應用向企業級綜合管理應用的過渡。這是一個異構應用系統如何實現有機集成的問題,其目的是從企業整體上建立科學完善的信息系統架構,為信息共享提供可靠的基礎設施,使完整的業務流程能夠在這一平臺上順暢地流轉,提高企業的現代化管理能力和核心競爭力。
異構信息系統的集成,一般來說可以通過以下幾種方式來完成:
(1) 系統替換。即基于對企業信息化的重新規劃,將系統的運行環境和數據庫系統等因素統一起來進行設計考慮,在數據整合的基礎上實現系統的整合和業務的集成,用新系統將現有系統全面替換,并將舊系統中的數據導入到新系統中去,從而消除“信息孤島”問題。系統替換方式要求企業要有充裕的現金流,并忽略掉替換過程中的時間成本和機會成本,同時要承擔系統替換可能造成的數據丟失風險。因此這種方式對生存在市場環境下的企業來說,顯然是不太愿意選擇的方案。
(2) 建立數據交換協議和數據接口。即采用建立數據交換協議和數據接口的方式,來實現復雜異構系統之間的信息交換和共享。接口協議建立后,由第三方甚至第四方、第五方負責自己系統的修改,遵循接口協議在指定的數據存放地點存、取所需要的數據。建立數據交換協議和數據接口的方式,能在短期內滿足企業對數據交換和共享的需要,但是從長期看,可能會增加后期實現數據整合和數據挖掘分析的技術難度,甚至會導致數據整合工作無法進行。因此這種方式通常適用于小范圍的單向數據交換,而無法滿足大型企業組織實時海量數據雙向交互的要求。它不是一種徹底解決企業“信息孤島”問題的方法。
(3) 通過創新性的應用平臺整合技術實現企業異構系統之間的集成應用。即通過專門的應用平臺整合技術將企業的業務流程、公共數據、應用軟件、硬件和各種標準等整合起來,使它們像一個整體一樣進行實時業務處理和信息共享,真正實現異構系統之間的無縫連接。應用平臺整合技術能適應于各種不同的操作系統、不同的應用系統、不同的數據庫類型和不同的網絡結構之間信息通訊和共享。
因此,從以上幾種方式的比較分析看,應用平臺整合技術應該能較徹底地解決企業內部(甚至跨企業、行業)長期形成的“信息孤島”問題,并能最大限度地保護企業已有的投資。
2. 軟件標準化研發與企業個性化應用問題
在我國企業管理信息化的發展進程中,通用商品化軟件始終都扮演著主力軍的角色。企業管理信息化系統基本都是通過架構在通用商品化軟件基礎上來完成的。通用商品化軟件最大的優勢在于,軟件由供應商標準化研發,然后迅速在大范圍進行復制應用,從而使昂貴的軟件產品研制成本平均攤薄,軟件價格得以降低。用戶可以用較低的成本享受到耗資數千萬元甚至上億元投資開發出來的復雜軟件。而且這些軟件由于經過了市場上諸多用戶的使用檢驗和質量信息反饋,并進行了長期的升級完善,軟件的質量已顯得十分穩定和可靠。
但是通用軟件也存在著致命的缺陷。就供應商而言,軟件的研發如同制造其他產品一樣,需要進行標準化的研發和大批量的發售,才能體現出產品制造的規模效益。通用軟件必須要面對足夠大的市場空間,以廣大用戶普遍存在的共性需求作為軟件功能設計的出發點,才能得以生存和發展。但就用戶而言,企業的需求卻呈現紛繁復雜的多元化、多維化和多變的背景特征。不同行業用戶對信息系統的要求不一樣,即使同一行業的不同用戶對信息系統的要求也不盡相同。管理的差異化是企業生存、發展差異化的基礎,也往往是企業個體核心競爭力的體現,因此通用軟件必須要充分尊重企業原生的行業管理個性和企業自身管理個性,才能具備長期生存的價值。
所以,通用軟件供應商必須在軟件的標準化研發與企業的個性化應用之間尋找最佳的平衡點。謹慎辨識哪些是客戶的個性化需求和行業特性需求,哪些是客戶的共性需求,以使其相輔相成,辯證并存。如果在二者之間甄別時出現較大的不慎,就有可能招致兩種極端的研發惡果:要么因過分追求“通用化”,而使開發出來的軟件產品“幾乎處處不能用”;要么因過分追求“個性化”,而使開發出來的軟件產品被極大地限制了應用的客戶群和推廣范圍,致使后續技術維護困難且成本奇高,并由此可能導致“賠本賺吆喝”的尷尬局面。
長期以來,上述問題始終困擾著通用軟件的供需雙方。在實踐層面,這一問題往往通過以下的客戶交付方式和步驟來得到勉強的平衡:一是在軟件初次使用時,供應商采用套裝軟件加上系統二次開發的方式來向客戶交付系統。在系統主體上固化那些通用的功能結構,并留出較為靈便的參數配置接口來滿足未來客戶的個性化需求。二是密切跟蹤軟件的應用反饋,并對反饋來的意見和建議進行積累,以不斷升級版本應付市場需求。
這種交付方式顯然存在問題:一是有限與無限之間的矛盾。通用軟件所預留的有限個參數接口要應付市場上近乎無限個個性化的企業應用背景,顯然勉為其難。因此在用戶初次使用軟件時,往往要做大量的初始化工作和二次開發工作,甚至要“削足適履”來滿足軟件規定的“套路”。即便這樣,最終得到的系統也仍然時常不能“貼近”企業的需求背景。并且當軟件的初始化工作和二次開發工作量過大時,由于持續不斷的人力、財力和時間投入,而使得軟件供需雙方均怨聲載道。二是市場反饋來的意見常常要求供應商對軟件主體進行“傷筋動骨”式的改動,這就如同對已經完工的建筑需要不斷地更動地基,致使開發者總是疲于應付而精疲力竭。
那么,在通用軟件標準化研發與企業個性化應用矛盾之間,是否存在著一種更好的、較為徹底的解決辦法呢?這同樣需要一場創新性的軟件架構思維革命。
3. 企業需求的頻繁變化與通用軟件適應性問題
需求是軟件項目研發的動力,對軟件生命具有決定性的影響。但是如果需求頻繁變動,那么也會對軟件項目產生巨大的、甚至是致命性的困擾。令人感到可悲的是,在企業管理信息化的發展進程中,這種企業的需求變化幾乎是永恒的。它可能來自于以下幾個主要方面:
(1) 外在環境的影響。企業是社會經濟體系的細胞,企業的生存和發展需要不斷與外部經濟環境之間保持信息、物質和能量的交換。因此企業的業務經營有著其自身不能左右的外部環境規則。外部規則的多樣性和多變性決定了企業工作流的多樣性和多變性。
(2) 內部發展的變化。在市場經濟環境下,企業發展也存在著很大的變數。如經營范圍的擴大,產品結構的調整,組織結構的變革,以及外部供應鏈、價值鏈的結盟等,都將在不同程度上觸及和影響企業管理系統的調整。
(3) 技術進步的推動。在知識經濟時代,技術進步可謂一日千里,各種新技術、新標準、新系統層出不窮。對于處在技術發展風口浪尖之上的企業管理系統而言,需要不斷地對新技術進行吐故納新才能應對變化。
但是與上述變化相比,通用軟件的每一個研發生命周期結束,都需要有一個相對的穩定期。因為通用軟件如果時刻妥協于企業的個性化需求,那么很容易會陷入系統程序反復修改的泥潭之中不可自拔,以致使開發成本和開發時間持續攀升,最終導致軟件研發項目崩潰。
因此,企業需求的動態變化與通用軟件的適應性之間,在傳統的軟件研發背景下,就構成了一組似乎難以調和的矛盾,要徹底解決,同樣需要一場軟件架構思維的創新。
從以上分析來看,當前企業管理信息化發展中存在的諸多問題與矛盾,已經對我國企業信息化進程形成了較大的阻礙。人們也曾想了許多辦法,但仍然無法徹底消除,這需要一場徹底性的軟件開發思維和系統架構革命。
二、基于SOA理念的企業管理信息系統架構解決方案
1. SOA架構理念
SOA(Service Oriented Architecture,面向服務架構)的創新性來自于其系統模型與系統實現的分開考慮。
回顧互聯網的發展過程我們看到,一個重要里程碑就是國際標準化組織(ISO)對OSI(Open System Interconnect,開放系統互連)七層網絡模型的定義。它不僅為以前和后續的各種網絡技術評判、分析提供了依據,同時也成為網絡協議設計和統一的參考模型。建立七層模型的主要目的就是為了解決異種網絡互聯所遇到的兼容問題,如Novell網與NT網之間的互聯問題等。如果沒有標準,要實現這種互聯是不可想象的。ISO將服務、接口和協議這3個概念明確地區分開來:服務說明某一層為上一層提供一些什么功能,接口說明上一層如何使用下層的服務,而協議則涉及如何實現本層的服務。這樣就使得各層之間具有很強的獨立性,互聯網絡中各實體采用什么樣的協議是沒有限制的,只要向上提供相同的服務并且不改變相鄰層的接口就可以了。而SOA在企業管理軟件中的應用價值,基本就等同于互聯網中的七層網絡模型。
一般認為:SOA是一個組件模型,它將應用程序的不同功能單元封裝成服務(service),不同服務之間通過定義良好的接口和契約進行通信聯系。接口是采用中立的方式進行定義的,它獨立于具體實現服務的硬件平臺、操作系統和編程語言。這種具有統一而標準的接口定義(沒有強制綁定到特定的實現上)的特征稱為服務之間的松耦合[2]。
SOA的接口定義使得構建在各種各樣的應用系統中的服務,可以用一種統一和通用的方式進行交互,使系統可以按照模塊化的方式來添加新服務或更新現有服務,從而解決系統中不斷出現的新業務需要問題。SOA通過把系統現有的應用作為服務進行封裝,在已有的應用程序和應用基礎結構(application infrastructure)投資基礎上解決了新的業務需求問題,因此極大地保護了企業已有的IT投資,并能使系統隨時對以后的新業務變化繼續迅速作出反應。
SOA架構的基本元素是服務(service),它是整個SOA實現的核心。SOA 指定一組實體(服務提供者、服務消費者、服務注冊表、服務條款、服務代理和服務契約),這些實體詳細說明了如何提供和消費服務。遵循SOA觀點的系統必須要有服務,這些服務是可相互操作的、獨立的、模塊化的、位置明確的、松耦合的,并且可以通過網絡(UDDI)查找其地址[3]。
從以上對SOA技術架構理念的論述可以看出,SOA不是一種語言,也不是一種具體的技術,更不是一種產品,它給出在特定環境下推薦采用的一種軟件系統理念架構,是一種面向應用服務的解決方案框架。
2. SOA架構體系的實現要求
要實現基于SOA理念的架構體系,體系架構師不僅要理解SOA,還要理解SOA在具體應用中的表現。在架構實踐和最后得到的架構結果之間的區別有可能非常微妙,但卻非常關鍵。所以SOA的實現需要借助企業動態建模在企業管理過程中逐步求精,以達到軟件與企業管理的最佳融合。
企業動態建模涉及一系列的專門方法、工具和步驟,是對實際企業對象的發展和變化模式進行分析和簡化,并進行去粗取精、去偽存真、逐步抽象的動態過程。由于企業組織的復雜性,采用單一的模型無法完整地表達出一個企業多方面的特點,所以企業動態建模需要從多個側面以不同的視角建立模型,常用的模型包括:信息模型、功能模型、組織模型和流程模型等。其中信息模型是從信息的角度對企業進行描述,企業信息系統是信息模型的一個體現,用于存儲、維護、處理與企業相關的所有信息,這些信息是聯系各個功能元素的紐帶;功能模型以功能活動為視角對整個企業進行描述,表現的是企業各功能模塊之間的關系;組織模型描述組織結構樹、團隊、能力、角色和權限等;而流程模型則是通過定義組成活動及其活動之間的邏輯關系來描述工作流程的模型。
三、結語
SOA憑借對軟件應用模型、公共或特殊領域業務對象的積累和抽象,將企業的IT架構抽象出來,將其功能以粗粒度的服務形式表示出來,每種服務都清晰地表示其業務價值,使得使用這些服務的顧客(可能在公司內部,也可能是公司的某個業務伙伴)可以選用這些服務,而不必考慮其后臺實現的具體技術。SOA為企業搭建起了具有靈活柔性的業務基礎軟件平臺,這一平臺具有獨立的可擴展的技術架構,體現開放、靈活、深度實施、滿足個性化應用的思想,采用面向框架、業務對象重用、與技術無關、與數據無關等技術,包括高效的基礎組件、完整的業務框架和應用框架,提供快速定制工具、服務,具有快速適應業務變化、深度滿足客戶需求的能力,使企業的管理更具彈性。另外,被獨立封裝的功能模塊還可以實現在不同系統中進行“組裝”和“復用”,大大提高了軟件的生產力。
總之,SOA使企業管理信息系統具有很大的靈活性,能有效地整合企業各種各樣復雜的、異構的信息孤島,可以最大程度地使標準化軟件“貼近”企業的個性化需求背景,同時還能應對各種各樣的企業業務需求發展變化。有理由相信,基于SOA理念的企業管理信息系統架構,應當能為當前企業管理信息化進程中所面臨的諸多典型問題提供整體性的解決方案。
主要參考文獻
[1] 萬勇.解決企業信息孤島問題的策略和方法研究[J].技術經濟與管理研究,2006(4).
[2] 范玉順.企業信息化戰略規劃方法與實踐[M].北京:電子工業出版社,2007.
[3] [美]托馬斯·伊爾(Thomas Erl). SOA概念、技術與設計[M].王滿紅,陳榮華,譯. 北京:機械工業出版社,2007.