白 燚,魚 瑛
(金航數(shù)碼科技有限責(zé)任公司(航空工業(yè)信息技術(shù)中心),北京 100028)
關(guān)鍵字:OSLC;跨領(lǐng)域模型關(guān)聯(lián);數(shù)據(jù)集成;元數(shù)據(jù);元數(shù)據(jù)架構(gòu)
隨著近年來航空產(chǎn)品復(fù)雜程度的不斷增加,伴隨而來航空產(chǎn)品及系統(tǒng)的復(fù)雜性都在不斷增高,目前行業(yè)多采用MBSE模式支撐高復(fù)雜系統(tǒng),在產(chǎn)品各生命周期階段會(huì)跨多個(gè)工程領(lǐng)域,各階段利益相關(guān)人使用不同的領(lǐng)域工具來解決領(lǐng)域遇到的問題,進(jìn)而出現(xiàn)了各階段軟件之間的異構(gòu)問題,導(dǎo)致前設(shè)計(jì)端和后物理端之間數(shù)據(jù)的割裂。另外,由于異構(gòu)數(shù)據(jù)不能完全整合,導(dǎo)致企業(yè)內(nèi)部信息孤島的產(chǎn)生,成為進(jìn)一步提升企業(yè)研發(fā)能力的障礙。對(duì)航空復(fù)雜裝備各階段模型數(shù)據(jù)進(jìn)行整合,可以打破產(chǎn)品研發(fā)過程中遇到的不同領(lǐng)域間的數(shù)據(jù)和工作流的壁壘,可以極大地幫助企業(yè)進(jìn)行信息化改革,降低研發(fā)過程中的交流、管理成本,從而加快產(chǎn)品研發(fā)效率。
為了解決各平臺(tái)之間的異構(gòu)問題,像達(dá)索、IBM和西門子等大型公司,多是通過收購(gòu)、整合多個(gè)平臺(tái)/工具到自己的大平臺(tái)中,實(shí)現(xiàn)統(tǒng)一大平臺(tái)的全生命周期數(shù)據(jù)、模型處理。另一種做法是一些小型的工具/軟件使用OSLC(Open Services of Lifecycle Collaboration,開放式生命周期協(xié)作服務(wù))標(biāo)準(zhǔn)接口,采用鏈接數(shù)據(jù)核心思想,實(shí)現(xiàn)異構(gòu)系統(tǒng)的互聯(lián)互通。對(duì)比以上兩種做法,第二種異構(gòu)系統(tǒng)集成的方式,能更好地保護(hù)現(xiàn)有企業(yè)的資產(chǎn),未來應(yīng)用拓展具有更好的靈活性。
OSLC是由IBM提出的一套技術(shù)規(guī)范,主要用于解決產(chǎn)品生命周期內(nèi)各種工具的集成問題,消除不同工具之間數(shù)據(jù)交互的障礙[1]。Kennedy Sean[2]等詳細(xì)介紹了OSLC的域規(guī)范的基礎(chǔ)就是OSLC核心規(guī)范,此規(guī)范以實(shí)現(xiàn)鏈接數(shù)據(jù)的應(yīng)用集成來提供一種普遍適用機(jī)制。徐萬磊[3]提出了基于JAZZ 框架采用OSLC的集成方法,通過設(shè)計(jì)與實(shí)現(xiàn)統(tǒng)一的服務(wù)接口,可以在各個(gè)模塊之間直接查詢和使用數(shù)據(jù)。Biehl Matthias[4]等討論了OSLC作為工業(yè)工具集成計(jì)劃的標(biāo)準(zhǔn),在構(gòu)建一個(gè)工具集成解決方案中,解決工具之間的必要數(shù)據(jù)交換。綜上所述,本研究將基于OSLC標(biāo)準(zhǔn)進(jìn)行集成環(huán)境構(gòu)建,以支持多域模型關(guān)系的管理及追溯。
為了實(shí)現(xiàn)異構(gòu)平臺(tái)、多領(lǐng)域模型之間的集成,本研究選取航空復(fù)雜裝備需求模型、功能架構(gòu)模型和聯(lián)合仿真模型的協(xié)同作為典型業(yè)務(wù)場(chǎng)景,經(jīng)過OSLC數(shù)據(jù)接口設(shè)計(jì),通過對(duì)各領(lǐng)域模型的元數(shù)據(jù)架構(gòu)的表達(dá),構(gòu)建基礎(chǔ)模型庫(kù)平臺(tái),開展集成環(huán)境構(gòu)建研究。
為支持復(fù)雜裝備的研制,在各階段會(huì)使用到不同的軟件/工具,會(huì)涉及到不同的標(biāo)準(zhǔn)。OSLC的規(guī)范中也對(duì)通用數(shù)據(jù)接口進(jìn)行了明確的定義和要求,目前已經(jīng)被大多數(shù)工具所支持,因此本文也針對(duì)OSLC的通用數(shù)據(jù)接口規(guī)范進(jìn)行了設(shè)計(jì),對(duì)不同的工具進(jìn)行了集成,以滿足不同領(lǐng)域模型、不同場(chǎng)景下對(duì)于集成環(huán)境的需求。
(1)OSLC數(shù)據(jù)接口模型 OSLC規(guī)范中,對(duì)于數(shù)據(jù)接口的模型如圖1所示。
圖1 OSLC數(shù)據(jù)接口模型
OSLC的數(shù)據(jù)接口模型分為三個(gè)層次:
1)基礎(chǔ)服務(wù)(Service)是模型最基礎(chǔ)的功能集合,例如增、刪、改和查等細(xì)粒度的操作。
2)資源容器(資源提供者)(Service Provider)代表了具體的資源對(duì)象,例如一個(gè)Web服務(wù)、一個(gè)數(shù)據(jù)庫(kù)對(duì)象等,它通過URI進(jìn)行標(biāo)識(shí),使用URI://ServiceProvider/Service的方式就可以對(duì)一個(gè)具體的資源對(duì)象進(jìn)行不同的操作。
3)資源容器目錄(Service Provider Catalog),它是資源容器的集合,例如一個(gè)大型系統(tǒng)的所有服務(wù)、一個(gè)數(shù)據(jù)庫(kù)的所有對(duì)象表等,它不僅可以涵蓋Service Provider,也可以涵蓋別的Service Provider Catalog。
以上三個(gè)層次的所有組件之間,均可通過RESTful風(fēng)格進(jìn)行數(shù)據(jù)交互,用戶端無需關(guān)注底層實(shí)現(xiàn)邏輯,只要構(gòu)造請(qǐng)求-發(fā)送請(qǐng)求-接收返回,即可以完成基于Web的異構(gòu)訪問,無論是開發(fā)還是使用,效率均進(jìn)行了大規(guī)模的提高。
(2)異構(gòu)數(shù)據(jù)集成接口模型 根據(jù)OSLC提供的核心規(guī)范定義,基礎(chǔ)服務(wù)、資源容器和資源容器目錄是軟件協(xié)同開發(fā)的三大要素,URI是最底層的標(biāo)識(shí),通過URL對(duì)系統(tǒng)中的資源進(jìn)行具體操作。針對(duì)不同的要素,本文設(shè)計(jì)了如下接口:
1)資源內(nèi)部接口。Service Provider與Service的通信接口。該接口為原子性接口,由于在系統(tǒng)內(nèi)部,Service Provider可以對(duì)所有Service提供的服務(wù)進(jìn)行調(diào)用,使用URI進(jìn)行直接通信,例如URI://inert,URI://delete等。
2)資源間接口。Service Provider與Service Provider的通信接口。系統(tǒng)與系統(tǒng)之間會(huì)發(fā)生頻繁的交互,但又由于資源間的相互不透明性、安全性等原因,無法相互暴露具體實(shí)現(xiàn)細(xì)節(jié),因此本文設(shè)計(jì)了事物性的資源間接口。Service Provider通過一系列的事務(wù)性定義,在各個(gè)系統(tǒng)內(nèi)部維護(hù)一個(gè)事務(wù)性的動(dòng)作列表,通過統(tǒng)一的通信接口進(jìn)行交互,以完成一系列的復(fù)雜性任務(wù)。
事務(wù)的定義,例如找出需求模型的某個(gè)屬性,在URI上可以表示為,URI://demand_model_service_provider/some_attributes。這種事務(wù)性的接口抽象了具體的業(yè)務(wù)流程,即簡(jiǎn)化了相互之間的交互規(guī)則,又保護(hù)好各個(gè)系統(tǒng)內(nèi)部的獨(dú)立性、可靠性。
3)資源容器目錄接口。Service Provider Catalog與Service Provider的通信接口。資源容器目錄對(duì)資源容器發(fā)起訪問請(qǐng)求,這種交互多為項(xiàng)目級(jí)別的,例如獲取需求模型和功能架構(gòu)模型某參數(shù),進(jìn)行關(guān)聯(lián),若需求模型參數(shù)發(fā)生變更,則同步功能模架構(gòu)模型參數(shù)。這種請(qǐng)求涉及多個(gè)Service Provider和一系列的交互操作,根據(jù)資源容器接口的設(shè)置,只需維護(hù)一個(gè)項(xiàng)目級(jí)業(yè)務(wù)流程、結(jié)合資源間接口的事物流程,就可以完成這種復(fù)雜的操作。所以該例子的接口可以設(shè)計(jì)為,URI://demand_model_service_provider && function_architecture_provider/ association_if_change_sync_functional_framework_parameters,即本文設(shè)計(jì)的項(xiàng)目級(jí)的資源容器目錄接口。
4)用戶交互接口。OSLC Service通過HTTP對(duì)資源進(jìn)行操作。用戶在通過HTTP請(qǐng)求即可以對(duì)整個(gè)系統(tǒng)進(jìn)行項(xiàng)目級(jí)別的操作,接口如圖2所示。
圖2 OSLC用戶交互接口模型
ISO/IEC 11179規(guī)范定義元數(shù)據(jù)是定義和描述其他數(shù)據(jù)的數(shù)據(jù)[5]。為了支撐在同一平臺(tái)中多域模型的協(xié)同,采用“對(duì)象+屬性”的方式定義三類模型的元數(shù)據(jù)架構(gòu)。元數(shù)據(jù)架構(gòu)是以數(shù)據(jù)對(duì)象為核心,將與之相關(guān)的其他信息如屬性、生命周期、操作和權(quán)限等數(shù)據(jù)靈活的組織在一起,這種建模能夠通過添加特定領(lǐng)域的擴(kuò)展來發(fā)展全局元數(shù)據(jù)模型,而不會(huì)受到已有模型的現(xiàn)狀。
需求元數(shù)據(jù)架構(gòu)主要圍繞需要條目,功能架構(gòu)元數(shù)據(jù)架構(gòu)主要圍繞功能模塊,聯(lián)合仿真元數(shù)據(jù)架構(gòu)主要圍繞FMU及仿真結(jié)果進(jìn)行設(shè)計(jì)和定義。
為了實(shí)現(xiàn)多域模型基于同平臺(tái)各領(lǐng)域工具間的協(xié)同,本文基于構(gòu)建的基礎(chǔ)模型庫(kù)平臺(tái),選取某需求管理平臺(tái)、某功能架構(gòu)平臺(tái)和某聯(lián)合仿真平臺(tái),通過OSLC標(biāo)準(zhǔn)的數(shù)據(jù)接口獲取各平臺(tái)的模型數(shù)據(jù),在基礎(chǔ)模型庫(kù)平臺(tái)同一界面中,可以對(duì)從三個(gè)平臺(tái)中直接獲取的需求模型、功能架構(gòu)模型和仿真模型信息進(jìn)行樹形結(jié)構(gòu)的表達(dá)和展示,支持在模型間建立關(guān)聯(lián)關(guān)系及基于關(guān)系進(jìn)行追溯。多域模型協(xié)同及集成環(huán)境構(gòu)建如圖3所示。
圖3 多域模型協(xié)同及集成環(huán)境構(gòu)建
與某需求管理平臺(tái)、某功能架構(gòu)平臺(tái)和某聯(lián)合仿真平臺(tái)的集成,主要是通過OSLC接口模型的方式拉取需求管理平臺(tái)、功能架構(gòu)平臺(tái)和聯(lián)合仿真平臺(tái)的數(shù)據(jù)和相關(guān)的頁(yè)面,實(shí)現(xiàn)與三個(gè)平臺(tái)的集成。在基礎(chǔ)模型的需求庫(kù)內(nèi)可以查看具體的每一個(gè)需求條目的具體信息,在功能架構(gòu)庫(kù)內(nèi)可以查看功能架構(gòu)樹結(jié)構(gòu),在仿真模型庫(kù)中可以查看到仿真結(jié)果數(shù)據(jù)。結(jié)構(gòu)樹中每個(gè)節(jié)點(diǎn)包含了它的OSLC鏈接,通過該鏈接,可以追溯到具體的模型信息詳情頁(yè)。
基于三類模型元數(shù)據(jù)架構(gòu)的表達(dá),通過與三個(gè)平臺(tái)的集成,基礎(chǔ)模型庫(kù)獲取到對(duì)應(yīng)的三類模型的樹形結(jié)構(gòu)展示,基于三個(gè)樹形結(jié)構(gòu),對(duì)各階段模型之間建立關(guān)聯(lián)關(guān)系,可進(jìn)行關(guān)系鏈接的詳細(xì)分析,進(jìn)而形成一個(gè)關(guān)系網(wǎng)絡(luò),依據(jù)關(guān)系網(wǎng)絡(luò)能夠進(jìn)行變更時(shí)關(guān)聯(lián)關(guān)系的追蹤和反饋,實(shí)現(xiàn)多域模型的協(xié)同。需求、功能架構(gòu)和仿真模型之間的關(guān)聯(lián)關(guān)系如圖4所示。
本研究圍繞異域模型之間的協(xié)同問題,基于OSLC數(shù)據(jù)接口及各模型元數(shù)據(jù)架構(gòu)進(jìn)行集成研究的構(gòu)建,支撐各階段模型(需求模型、功能架構(gòu)模型和仿真模型)信息的共享與關(guān)聯(lián),基于模型關(guān)聯(lián)關(guān)系驅(qū)動(dòng)更改影響分析互通和協(xié)同工作。該研究是全生命周期模型數(shù)據(jù)貫通使用的第一步,未來對(duì)這些數(shù)據(jù)如何高效的使用,如何讓這些數(shù)據(jù)產(chǎn)生意義和價(jià)值,才是貫通、應(yīng)用的最終目的。