鄒紅霞 王 楨 胡欣杰
1(航天工程大學(xué)航天信息學(xué)院 北京 101416)2(北京空間信息中繼傳輸技術(shù)研究中心 北京 100082)
信息化建設(shè)中各單位依據(jù)各自需要所建設(shè)的信息系統(tǒng)形成了大量的信息孤島,制約了數(shù)據(jù)與信息共享應(yīng)用的發(fā)展。特別是隨著編制體制的調(diào)整改革,以前歸屬于同一部門的業(yè)務(wù)系統(tǒng)現(xiàn)在可能分散在多個不同的部門。隨著軍民融合的不斷發(fā)展,跨部門、跨單位、跨層級的所謂跨域信息共享成為信息化建設(shè)新的增長點。傳統(tǒng)的通過整合或組織系統(tǒng)內(nèi)部的接口和數(shù)據(jù)映射的方式,導(dǎo)致開發(fā)接口多且復(fù)雜、開發(fā)成本高等問題。本文通過分析跨域信息共享需要解決的問題,參考美國國家信息交換模型(NIEM),提出了一種基于標(biāo)準(zhǔn)化方式解決跨領(lǐng)域信息共享的實現(xiàn)思路。依照思路進行模型設(shè)計并規(guī)范了建模方法,設(shè)計了跨域信息共享實現(xiàn)中的共享模型應(yīng)用體系框架,為實現(xiàn)標(biāo)準(zhǔn)化的用戶接入提供參考借鑒。
跨域是跨領(lǐng)域的簡稱,對領(lǐng)域概念的界定,當(dāng)前并沒有一個明確的標(biāo)準(zhǔn),一種普遍的認(rèn)為是:為了實現(xiàn)業(yè)務(wù)協(xié)同及輔助決策等目的,在不同行業(yè)、不同業(yè)務(wù)領(lǐng)域、不同組織機構(gòu)之間的信息共享被稱為跨域信息共享。本文根據(jù)各跨域信息共享展現(xiàn)出的特性歸納總結(jié),認(rèn)為跨域信息共享的主要特性是不同自治系統(tǒng)之間的異構(gòu)性。自治系統(tǒng)指的是參與信息共享的業(yè)務(wù)系統(tǒng)均為可獨立自主運行的系統(tǒng)。實現(xiàn)跨域信息共享首先要解決的就是異構(gòu)性問題,主要涉及到數(shù)據(jù)的異構(gòu)性和平臺的異構(gòu)性兩個方面。數(shù)據(jù)的異構(gòu)性問題,即指各業(yè)務(wù)領(lǐng)域數(shù)據(jù)的語義、格式、編碼方式、數(shù)據(jù)模式的不統(tǒng)一,導(dǎo)致系統(tǒng)之間難以直接進行數(shù)據(jù)共享。而平臺異構(gòu)性問題,則是指各業(yè)務(wù)系統(tǒng)采用軟硬件系統(tǒng)、網(wǎng)絡(luò)環(huán)境等的不同,致使系統(tǒng)之間數(shù)據(jù)共享時要考慮信息交換格式、交換協(xié)議的跨平臺性問題。其次,跨域信息共享要考慮的是分布性問題,即業(yè)務(wù)領(lǐng)域系統(tǒng)往往分散在不同的地理位置,跨領(lǐng)域信息共享易受到網(wǎng)絡(luò)的傳輸性能、傳輸機制等因素的影響[1]。第三,自治性問題,即不能妨礙原系統(tǒng)的運行,信息共享要適應(yīng)原系統(tǒng)的變化。最后,跨域信息共享不能破壞原有信息系統(tǒng)的安全性。
傳統(tǒng)的數(shù)據(jù)整合與系統(tǒng)集成主要采取點對點的信息共享方式,每個系統(tǒng)都需要與其他系統(tǒng)建立離散的點對點連接,每個連接需要在防火墻開放端口。而且隨著參與系統(tǒng)的增加,點對點連接及數(shù)據(jù)轉(zhuǎn)換接口數(shù)量顯著增加,很難滿足安全信息按需共享的要求。而跨域信息共享應(yīng)更強調(diào)采取松耦合的方式進行系統(tǒng)互聯(lián)[2]。因此,可以考慮通過標(biāo)準(zhǔn)化建模的方法,采取面向服務(wù)的軟件架構(gòu),通過建立規(guī)范的數(shù)據(jù)模型來解決跨域信息共享數(shù)據(jù)異構(gòu)性的問題。其基本思想如圖1所示。

圖1 跨域信息共享標(biāo)準(zhǔn)化模型基本思想
(1) 建立標(biāo)準(zhǔn)化數(shù)據(jù)模型 跨領(lǐng)域信息共享的數(shù)據(jù)來源于各個業(yè)務(wù)領(lǐng)域,為了實現(xiàn)信息共享參與各方對數(shù)據(jù)的一致理解,需要對各個業(yè)務(wù)領(lǐng)域的數(shù)據(jù)按照統(tǒng)一的標(biāo)準(zhǔn)進行表示和描述。美國國家信息交換模型(NIEM)數(shù)據(jù)模型提供了統(tǒng)一的數(shù)據(jù)模型標(biāo)準(zhǔn),可作為信息共享模型開發(fā)的依據(jù)和參考。
首先,構(gòu)建核心數(shù)據(jù)模型,通過分析各業(yè)務(wù)領(lǐng)域共享需求,提煉出共性的數(shù)據(jù)類型(如人員編碼等)。其次,構(gòu)建業(yè)務(wù)領(lǐng)域數(shù)據(jù)模型,通過對核心數(shù)據(jù)模型進行擴展,形成反映自身業(yè)務(wù)特點的領(lǐng)域數(shù)據(jù)模型。最后,整合核心數(shù)據(jù)模型、業(yè)務(wù)領(lǐng)域數(shù)據(jù)模型以及各領(lǐng)域已有的數(shù)據(jù)編碼標(biāo)準(zhǔn)(即編碼表),形成應(yīng)用數(shù)據(jù)模型標(biāo)準(zhǔn)文件。
(2) 通過數(shù)據(jù)模型建立信息共享規(guī)范 信息共享規(guī)范[3]是一種信息交換標(biāo)準(zhǔn),由共享雙方共同約定遵循的。在具體的項目或應(yīng)用中,開發(fā)人員在充分完成用戶需求分析的基礎(chǔ)上,引用標(biāo)準(zhǔn)化數(shù)據(jù)模型,形成面向應(yīng)用的信息共享規(guī)范。
首先,信息交換雙方需要根據(jù)共享需求,確定共享數(shù)據(jù)的范圍、內(nèi)容和格式,形成共享業(yè)務(wù)模型。然后,依據(jù)標(biāo)準(zhǔn)化數(shù)據(jù)模型,形成雙方共識的信息共享模型。盡管跨域信息共享的需求千差萬別,但信息共享建模的過程是基本一致的,為了提高信息共享建模的效率和質(zhì)量,建立規(guī)范的信息共享建模過程十分必要。
(3) 由信息共享規(guī)范生成信息交換包 信息交換包[4]是收發(fā)雙方通過網(wǎng)絡(luò)方式傳遞的含有共享數(shù)據(jù)的交換包。接收方在接收到交換包后,依據(jù)信息共享規(guī)范,對信息交換包進行解析,以達到對共享數(shù)據(jù)理解的目的。
信息交換包文檔構(gòu)建完成以后,數(shù)據(jù)源即發(fā)送方需要將待交換的數(shù)據(jù)依據(jù)信息交換包文檔進行消息封裝、發(fā)布,數(shù)據(jù)消費者可通過上網(wǎng)搜索和訂閱,獲取所需要的數(shù)據(jù)。
跨域數(shù)據(jù)描述模型基本的要求是具備簡潔性與完備性。簡潔性是指模型標(biāo)準(zhǔn)需要足夠簡單,不會對所在業(yè)務(wù)系統(tǒng)的正常運行造成明顯影響。完備性是指模型標(biāo)準(zhǔn)需要滿足對本業(yè)務(wù)系統(tǒng)及與其有信息共享業(yè)務(wù)聯(lián)系的其他業(yè)務(wù)系統(tǒng)涉及到的所有概念的描述,使業(yè)務(wù)系統(tǒng)所有信息均有明確的標(biāo)準(zhǔn)。運用XML Schema模式語言對各個業(yè)務(wù)領(lǐng)域共用的實體或領(lǐng)域內(nèi)部實體及其關(guān)系的抽象描述,其邏輯結(jié)構(gòu)如圖2所示。

圖2 信息共享模型邏輯結(jié)構(gòu)
模型由結(jié)構(gòu)模型、基礎(chǔ)模型和領(lǐng)域模型三部分組成。結(jié)構(gòu)模型是信息共享模型的定義基礎(chǔ),通過引用XML Schema的語法和基本數(shù)據(jù)類型可以定義基本屬性(如id、ref、metadata、relationshipMetadata等)和基本數(shù)據(jù)類型(如抽象數(shù)據(jù)類型ObjectType、關(guān)系數(shù)據(jù)類型AssociationType、元數(shù)據(jù)類型MetadataType等)。其他所有模型都必須以結(jié)構(gòu)模型為基礎(chǔ)進行定義,保證接收方按照結(jié)構(gòu)模型可以正確解讀。基礎(chǔ)模型是通用的數(shù)據(jù)類型的集合,這些數(shù)據(jù)類型是信息共享環(huán)境中通用概念的基本定義,如幾乎所有業(yè)務(wù)系統(tǒng)都包含對人員的描述,可將所有人員部分抽象成為人員類型。根據(jù)業(yè)務(wù)領(lǐng)域使用需要,在基礎(chǔ)模型上針對領(lǐng)域常用類型進行擴展的類型集合構(gòu)成領(lǐng)域模型。
共享模型的邏輯結(jié)構(gòu)劃為核心集和領(lǐng)域集兩類[5]。核心集包含定義類型結(jié)構(gòu)的結(jié)構(gòu)模型和基礎(chǔ)模型,通過定義最基本的模型實現(xiàn)信息共享的簡潔性要求。核心集是最權(quán)威的定義,也是強制所有參與信息共享的業(yè)務(wù)系統(tǒng)需要支持的定義。擴展集通過對基礎(chǔ)模型內(nèi)容按照結(jié)構(gòu)模型的規(guī)則擴展形成針對特定領(lǐng)域內(nèi)信息共享具體要求的領(lǐng)域模型的集合,滿足信息共享完備性的要求,針對不同特點定義不同特性的屬性,以適應(yīng)具體信息共享標(biāo)準(zhǔn)需要。
信息共享規(guī)范的開發(fā)步驟:(1) 總體規(guī)劃,根據(jù)項目目標(biāo)、任務(wù)、業(yè)務(wù)需求和業(yè)務(wù)流程等分析共享的信息和信息共享邊界,形成開發(fā)計劃,確定項目組成員等。(2) 需求分析,描述信息共享需求,包括涉及的單位、交換的內(nèi)容等。(3) 模型生成,依據(jù)信息共享需求,參照標(biāo)準(zhǔn)數(shù)據(jù)模型,生成信息交換包,并對交換包的正確性進行驗證。(4) 模型發(fā)布,將前面階段形成的所有文檔進行壓縮,形成一個信息交換規(guī)范文件,并通過注冊進行發(fā)布。
其中重難點是模型生成,涉及到信息共享業(yè)務(wù)模型建立和信息共享業(yè)務(wù)模型映射2個部分。信息共享業(yè)務(wù)模型是業(yè)務(wù)領(lǐng)域?qū)<以谛枨蠓治龌A(chǔ)之上運用建模手段以關(guān)聯(lián)表、圖形或標(biāo)準(zhǔn)化的UML語言(統(tǒng)一建模語言)的方式描述需求。信息共享業(yè)務(wù)模型是軍地間、業(yè)務(wù)系統(tǒng)與業(yè)務(wù)系統(tǒng)之間溝通的工具與橋梁,同時也能為非技術(shù)人員(如企業(yè)管理人員、項目組管理人員)了解信息共享需求的功能。信息共享業(yè)務(wù)模型映射是指構(gòu)建信息共享業(yè)務(wù)模型與標(biāo)準(zhǔn)數(shù)據(jù)模型的映射關(guān)系[6],即將信息共享業(yè)務(wù)模型中的類映射為標(biāo)準(zhǔn)數(shù)據(jù)模型中的類型或?qū)傩浴?biāo)準(zhǔn)數(shù)據(jù)模型能否與信息共享業(yè)務(wù)模型準(zhǔn)確匹配是信息能否被正確描述的關(guān)鍵。匹配結(jié)果可能會出現(xiàn)三種情況:全匹配、部分匹配與不匹配。
(1) 全匹配:若業(yè)務(wù)模型中的類均能在信息共享模型中找到完全相同的表達方式,即屬性的命名、取值范圍等完全相同,則認(rèn)為二者語義結(jié)構(gòu)是完全相同的,可以不加修改直接使用,這是最理想的情況。此外,若類名與類型名稱不同但語義與結(jié)構(gòu)完全相同,也可認(rèn)為是全匹配。
(2) 部分匹配:若業(yè)務(wù)模型中的類僅有部分屬性與信息共享模型中某個類型的屬性相同。業(yè)務(wù)模型的類與信息共享模型的類型主要差異體現(xiàn)在語義或結(jié)構(gòu)上的不一致(包括屬性命名上的不一致及取值范圍、數(shù)據(jù)類型上的不一致等),則可通過對映射的信息共享模型類型進行部分?jǐn)U充或刪減,屏蔽掉不需要的屬性、添加新的屬性或修改不一致的屬性,來實現(xiàn)對業(yè)務(wù)模型中類的匹配。其中批量引用信息共享模型中屬性可以通過繼承來實現(xiàn)。
(3) 不匹配:若業(yè)務(wù)模型中的類在信息共享模型中找不到相同或相似的類型,則需要參照信息共享模型的結(jié)構(gòu)模型定義,定義新的數(shù)據(jù)類型。
確定匹配關(guān)系后,將業(yè)務(wù)模型中建立的類及其屬性與匹配后信息共享模型的類型之間建立關(guān)系。業(yè)務(wù)模型建立的類的屬性按照信息共享模型中的類型屬性添加數(shù)據(jù)類型、數(shù)量關(guān)系及其他相應(yīng)限制關(guān)系。
信息交換包文檔[7]是由建模過程中生成的各種文件組成的一個壓縮文件,其中包括用例圖、序列圖、模式文件、信息交換包文檔的更改日志、交換模型的實例文件和元數(shù)據(jù)等內(nèi)容。
(1) 信息交換包組成 信息交換包文檔由主文檔和輔助文檔組成。主文檔部分主要包含子集模式、擴展模式和交換模式這三種模式所對應(yīng)的模式文件,還有反映子集模式中元素列表的文件。列表文件記錄了子集模式中各元素的狀態(tài),便于對子集模式進行修改與重構(gòu)。另外,主文檔部分還包括總體規(guī)劃階段生成的各種文件(如用例圖、序列圖等)、信息交換包文檔的更改日志、交換模型的實例文件等。輔助文檔由描述信息交換包文檔構(gòu)成的目錄文件和用來對信息交換包注冊、搜索和管理的元數(shù)據(jù)文件組成。如圖3所示。

圖3 信息交換包文檔
將信息交換包文檔進行解壓,打開目錄文件,就可以清楚地了解文檔中的文件分類,并可以通過目錄文件中的鏈接瀏覽所有的文件。目錄文件說明了包中每個文件的格式與內(nèi)容。
信息交換包經(jīng)過注冊后會生成信息交換包文檔元數(shù)據(jù)。信息交換包文檔元數(shù)據(jù)包含了所有注冊的信息,元數(shù)據(jù)文件是按照XML規(guī)范編寫的,因此能夠?qū)ζ溥M行解析,實現(xiàn)注冊、搜索和發(fā)現(xiàn)功能。
(2) 信息交換包元數(shù)據(jù) 元數(shù)據(jù)是關(guān)于信息資源的描述[8]。在信息交換包經(jīng)過注冊發(fā)布后,其他用戶能夠通過元數(shù)據(jù)搜索到所需要的信息交換包。信息交換包元數(shù)據(jù)包括信息交換包的基本信息描述、變更日志、狀態(tài)、信息交換包業(yè)務(wù)內(nèi)容描述和授權(quán)單位等信息。
信息交換包元數(shù)據(jù)內(nèi)容見表1(在標(biāo)識列,R表示必選項,O表示可選項)。

表1 信息交換包元數(shù)據(jù)

續(xù)表1
為實現(xiàn)跨域信息共享的數(shù)據(jù)交換,需要開發(fā)設(shè)計邏輯實體交換框架LEXS(Logical Entity Exchange Specifications)[9]。通過定義數(shù)據(jù)交換方式、框架接入方式與框架運行方式,形成了一個能夠滿足不同信息共享需求的抽象消息交換框架。運用LEXS進行信息共享,數(shù)據(jù)的發(fā)布者將數(shù)據(jù)提交給框架,由框架實現(xiàn)數(shù)據(jù)的推送等操作。如圖4所示。

圖4 信息共享服務(wù)框架
共享服務(wù)信息交換框架主要由接口、交換消息、服務(wù)和管理控制策略組成。接口負責(zé)與用戶間的數(shù)據(jù)交互。用戶通過接口的不同實現(xiàn)方式接入框架,由接口調(diào)用服務(wù)來完成用戶的數(shù)據(jù)交換操作。在與用戶交互的過程中,接口將用戶所提交的數(shù)據(jù)包及相關(guān)信息封裝為交換消息用于框架內(nèi)的傳遞,或?qū)⑾⒅械臄?shù)據(jù)包及信息取出傳遞給用戶。交換消息是信息共享服務(wù)框架中進行交換的實體,由數(shù)據(jù)包摘要、信息交換數(shù)據(jù)包與用戶參數(shù)組成,由用戶提交的數(shù)據(jù)包與方法參數(shù)封裝而成。信息共享服務(wù)主要包括發(fā)布、檢索、訂閱、獲取、校驗、分發(fā)等服務(wù)。在框架中,信息共享服務(wù)起到了信息代理的作用,即由信息共享服務(wù)實現(xiàn)對用戶信息的接收與發(fā)送。控制管理策略是對框架中用戶與信息的管理。解決跨域信息共享缺乏管理層的問題,對信息共享過程中出現(xiàn)的問題進行協(xié)調(diào)與仲裁,對用戶任務(wù)進行分配,對信息進行權(quán)威性界定等。
通過設(shè)計框架接口的方式,將業(yè)務(wù)系統(tǒng)的請求轉(zhuǎn)化成為由接口調(diào)用的服務(wù),把不同業(yè)務(wù)系統(tǒng)的異構(gòu)連接方式轉(zhuǎn)化為標(biāo)準(zhǔn)接口調(diào)用的統(tǒng)一服務(wù),由接口實現(xiàn)松耦合的目標(biāo)。
本文使用標(biāo)準(zhǔn)化建模的方式解決跨域信息共享的數(shù)據(jù)交換問題。重點描述了信息共享標(biāo)準(zhǔn)化數(shù)據(jù)模型、信息共享規(guī)范和信息交換數(shù)據(jù)包的構(gòu)建方式及標(biāo)準(zhǔn)的建模方法。通過接口服務(wù)的方式,設(shè)計了跨域信息共享服務(wù)架構(gòu),該架構(gòu)提供了一種良好的松耦合方式,易于搭建,便于擴展和使用。