近年來計算機在各個行業的成功應用極大地提高了相應行業的工作效率,但是隨著軟件數量的日益增加,如何使相關軟件系統協調工作以更有效地完成任務成了人們關注的一個焦點,特別是有些工作本身就需要多種軟件系統的相互協作。例如在軍事上,為了跟蹤外來入侵,需要海陸空三方面的軟件系統充分進行信息共享,美國國防部提出的聯戰遠景2010把這種軟件協作發揮到了極致,旨在使各軍種的軟件系統充分合作,取得對敵作戰的信息優勢。而在商業方面,新開發的軟件系統和已有的軟件系統之間也需要很好的協作來提高效率,系統互通性就是研究這方面的問題。
1 系統互通性及其困難
1.1定義
研究系統互通性的組織數量眾多導致了對系統互通性的定義不統一,有必要介紹一下目前已有的一些比較權威的定義,而后根據本人對系統互通性的理解提出自己的定義。
IEEE和美國國防部(DoD)都給出了多種互通性的定義,代表性的有以下幾種:
·兩個或兩個以上的系統交換信息和使用這些所交換信息的能力;
·兩個或兩個以上的系統或者組件能夠在異構的網絡環境下交換信息并且使用這些交換信息的能力;
·系統、單元或者軍隊提供服務或者從其它的系統、單元或者軍隊獲取服務并且利用這種服務來使他們的運作更加有效。
根據已有定義,我們可以給出系統互通性的另一種定義:
系統互通性是指多個系統之問通過交換信息來提高教率的能力。
在這個定義中沒有對系統和信息加以限制,系統可以是同構或者異構的系統,可以是復雜的系統也可以是某一個簡單的功能模塊,而信息可以是簡單的數據也可以是遵循某種語義格式的信息,另外也沒有限制系統運行的環境,顯然這樣的定義能夠較好的概括系統互通性研究的領域。
1.2困難
系統互通性的研究起步很早,但是直到現在仍然不能取得令人滿意的效果,原因大致有以下幾種:
(1)新舊系統的兼容性:有時為了保持新舊系統之間的兼容性,不得不考慮降低新系統之間的互通性;
(2)標準不一致:為了安全或者其他方面的需要,不同組織制定的標準不統一,降低了系統之間的互通性;
(3)即使暫時取得了良好的互通性,但是當需要開發新版本的系統時,維護這種互通性也很匿難。
下面結合該領域目前的研究成果探討如何提高系統的互通性。
2 系統互通性模型
目前提高系統互通性的研究在兩個方面,一個是開發實踐方案,另一個則是建立相應的模型。迄今已提出了很多描述系統互通性的模型,這些模型一般都是將系統互通性按照某種標準分為幾個層次,每個層次都有若干特征。有些模型同時給出了要達到某個層次需要實施的活動,這樣就為構建新系統時考慮互通性相關問題時提供了參照。下面按照模型之間的邏輯關系來介紹一些典型的系統互通性模型。
2.1 NMI模型
北大西洋公約組織(NATO)提出了名為NC3TA的技術體系框架為北約使用的軟件系統提供一個公共的技術基礎,制定了若干標準、體系結構以及參考模型。NMI是NC3TA五個參考模型中為提高系統互通性而提出來的一種模型,它分為以下五個層次,每一個層次又包括若干子層次:
(1)無數據交換系統之間無物理連接,也沒有數據交換。
(2)非結構化的數據交換本層包括人類可理解、非結構化數據的交換,子層次包括:
·網絡連通性
·基本文本交換
·基本非格式化消息交換
(3)結構化的數據交換本層包括人類可理解、結構化數據的交換,這些數據可以被人工或者自動處理,但是需要人工參與,子層次包括:
·增強的非格式化信息交換
·增強的文本交換
·網絡管理
·目錄服務
·數據對象交換
(4)無縫數據共享本層包括自動化的數據共享,這一共享是在某個公共交換模型上實現的,子層次包括:
·格式化信息交換
·公共數據交換
·系統管理
·安全管理
·實時數據交換
(5)無縫信息共享本層通過協同數據處理建立了統一的信息解釋,子層次包括:
·公共信息交換
·分布式應用
NMI模型關注的焦點集中在數據的互通性上面,整個模型致力于如何通過把數據的交換和解釋結構化和自動化來增強系統的互通性。
2.2 LISI橫型
LISI(Levels of Information Systems Interoperability)是由美國國防部下屬一個研究C4ISR的工作組提出的一種系統互通性模型,與NMI一樣,LISJ也根據系統互通性的成熟度不同分為五個層次:
(1)基于孤立系統的互通性系統之間設有物理連接,數據交換需要手工進行,譬如使用存儲介質進行拷貝。
(2)基于可連接系統的互通性在這個層次上,系統之間存在物理連接,簡單同構的數據類型可以進行交換,但是沒有能力進行數據的集成。
(3)基于功能的互通性分布式環境中基于功能的互通性.在這個層次上能夠進行更復雜的多媒體數據交換,這些數據往往是異構的,且可以從多種格式的數據集成得到。
(4)基于領域的互通性集成環境中基于領域的互通性,使用共享且基于特定領域數據模型的應用之間可以進行數據交換,這個層次還支持基于集成信息的群組協同。
(5)基于企業級的互通性在通用環境中基于企業級的互通性,在本層上的系統擁有一個橫跨多個領域的統一信息域,數據和應用充分分布和共享,各種數據有統一的解釋。這也是系統互通性最高的級別。
LISI模型擴展了系統互通性要衡量的屬性,從單純的考慮數據擴展到同時考慮程序、應用、基礎設施和數據(Procedure、Applications、Infrastrure ture and Data:PAID)四個要素,這些特點可以從上面層次的具體內容中看到。同時它提供了為達到某個層次而需要對這四個要素進行定制的方法以及相應的過程,為開發過程中對系統互通性的提高提供了具體的方案。
2.3 OIM模型
NMI模型集中考慮數據的互通性,LISI模型雖然同時衡量PAID四個屬性,但是它仍然局限于只是考慮技術上的互通性,從軟件系統開發實施的過程來看,除了技術層面的互通性以外,組織操作上的互通性以及外部環境對于整個系統互通性的影響同樣需要考慮。基于這一考慮,CCRP的Clark等人提出了組織互通性成熟度模型OIM(Organizational IntemperabilJty Maturity),考慮到與LISI的兼容性等因素,OIM模型也分為五個級別:
(1)組織之間相互獨立在這個等級上,組織之間沒有任何溝通和互動,這種情況常出現在多個組織沒有共同目標但是有時需要交互。
(2)組織之間有隨機的互動這個等級上只有有限的組織框架用來支持組織之間隨機的互動,有一些規則來指出互通性的要求,但組織問的溝通仍然沒有計劃性。
(3)組織之間協同工作有相應的框架來支持互通性.為每個組織制定了目標和責任,但是組織之間的界限仍然比較清晰。
(4)集成化組織有共同的目標和評價系統,對整個系統的互通性有共同的理解,同時組織之間仍然有一些界限。
(5)統一的組織組織有共同的目標、評價系統、知識庫等,是充分提高系統互通性的理想等級。
OIM模型和LlSI模型側重于互通性的不同層面,兩者之間存在對應級別的一一映射關系,在系統開發實施過程中充分結合兩個模型的側重點可以很好地提高產品系統的互通性。
2.4 LCI模型
Kndreas Tolk考察了上述幾種模型后,認為提高系統的互通性應該從多維度著手,提出了LCI(Layers of Coalitiorl Interopembihty)模型。LCI模型將技術可操作性和組織可操作性結合在一個模型中,參見圖。從圖中可以看出下面四個層次是技術互通性相關的內容,上面四個層次是組織互通性相關的內容,知識,發現層是技術互通性到組織互通性的平滑過度。通過提高每個層次的互通性,可以使得整個系統的互通性得到最大化的提高,在提出上述結構的同時,LCI模型在對應的每個層次上都提出了一些需要解決的問題,從而細化互通性的要求。
2.5 SOSI模型
SOSI(System of Systems Intemperability)模型是由SEl的軟件密集型系統集成促進小組提出來的一種互通性模型。除了技術和組織上的互通性外,SOSI模型還關注對系統互通性提高有影響的其他活動,圖2概括了與系統互通性有關的活動。
圖2中每一個層次對應了一種互通性,其中項目規劃互通性關注項目管理中的問題,通過多個項目組互相同步日程和預算、共享風險管理等來提高系統互通性;系統構建互通性則關注構建和維護系統互通性的相關技術,包括共享體系結構元素、遵循共同的標準等;系統操作層次上的互通性是指在多個系統交互環境下對系統的操作,包括定義用戶對系統中交互信息的解釋、建立與項目管理者的溝通渠道等。
雖然系統互通性模型還有很多種,但是上面介紹的幾種模型具有典型特征,從中可以看出這些系統互通性模型有一定的邏輯關系,即從前到后考慮影響系統互通性的因素越來越多,上述互通性模型的邏輯關系可以用圖3表示。雖然系統互通性模型存在圖中所示的關系,但是并不表示后面的模型可以完全替代前面的模型。正如參考文獻所指出的,SOSI模型并不像前面的模型一樣根據互通性把系統分成幾個等級,所以SOSI不應看作是其他模型的競爭者,同時SOSl模型并沒有提供其他模型的細節,還需要進一步加強該模型的功能,但是毫無疑問,SOSI模型代表了提高互通性的一種方向,即提高系統的互通性要考慮系統相關的諸多方面。譬如對SOSI模型的增強包括增加對系統外部環境等因素的考慮,相關政策、措施和工業界標準都是應該考慮的因素。
3 系統互通性的測量
互通性是一個與軟件系統多個方面相關的系統特性,對其進行精確的測量非常困難,但是對互通性的測量評價不僅對于提高系統互通性非常重要,而且可以在權衡系統性能和互通性時提供必要的定量依據。對系統互通性的測量需要從多個維度來考慮,系統互通性模型已經給出了很好的框架,許多對互通性的測量方案就是在利用已有模型的基礎上進行的。一般可以從下面幾個測度標準集合入手來測量互通性:
·技術一致性測度標準
·系統構建測度標準
·系統操作測度標準
·組織和文化測度標準
前三種測度標準在LISI模型中可以找到對應層次,在使用LISI模型進行系統互通性測量時,一般采用記分卡的形式進行,事先按照互通性的不同等級為每個屬性賦予一定的分值從而形成一張記分卡,測量系統互通性時對照記分卡的分支為系統打分,最后得出總分即為系統互通性的測量值。這些屬性包括系統組件的數量、系統的連通性、接口數量、提供服務數量等等。
組織和文化測度標準關注組織效能以及為提高系統互通性而提供的相應組織手段,一般來說有以下測度要素:
·為相應系統操作培訓的人員數量
·具有特定互通性等級的子系統數量
·為完成某個開發任務所需的人時數量
這類測度標準對于提高大規模軟件系統之間的互通性有著重要的作用。
根據系統互通性發展的需要,系統互通性的測量下一步的努力方向應是將測量尺度標準化,這樣不同系統在進行互通性比較時可以有一個統一的標準,這可以通過建立一個統一的測度模型來完成,需要工業界和學術界的共同努力。另外在構建軟件系統時除了考慮系統的互通性外,還需要考慮安全性、性能等其它要素,這些要素之間有時是有矛盾的,需要尋找一個最佳結合點,這也是在提高系統互通性時需要考慮的一個問題。
由于互通性的復雜性,提高系統互通性是一項非常困難的工作。互通性模型的提出給出了一條有益的途徑.而根據模型進行的系統互通性測量可以為軟件系統構建提供量化尺度,這些都對提高系統互通性有重要意義。本文結合作者的研究介紹了幾個典型的互通性模型以及對互通性的測量,并提出了自己的看法。目前互通性還沒有一個統一的衡量標準,從而難以在多個系統之間進行比較。如何建立一個標準將是以后研究系統互通性的方向。
責任編輯:gt
-
數據
+關注
關注
8文章
6892瀏覽量
88828 -
計算機
+關注
關注
19文章
7421瀏覽量
87718
發布評論請先 登錄
相關推薦
評論