1.1實(shí)現(xiàn)目標(biāo)
數(shù)據(jù)總線技術(shù)是為了東莞地鐵日后業(yè)務(wù)發(fā)展所建設(shè)的內(nèi)容,由于現(xiàn)有系統(tǒng)和本階段所新上系統(tǒng),以及后繼由于業(yè)務(wù)擴(kuò)展所新建的多個(gè)業(yè)務(wù)系統(tǒng),在實(shí)現(xiàn)業(yè)務(wù)系統(tǒng)與業(yè)務(wù)系統(tǒng)數(shù)據(jù)共享與交換服務(wù)時(shí),將會(huì)以網(wǎng)狀的形勢(shì)來(lái)進(jìn)行。利用數(shù)據(jù)總線,制定信息傳遞的標(biāo)準(zhǔn)要求,集成企業(yè)內(nèi)部門戶、統(tǒng)一通信 和郵件等基礎(chǔ)技術(shù)平臺(tái),使業(yè)務(wù)系統(tǒng)之間的數(shù)據(jù)共享與交換服務(wù)由網(wǎng)狀變?yōu)榫€形,是工程項(xiàng)目管理系統(tǒng)與其它業(yè)務(wù)系統(tǒng)之間信息傳遞的統(tǒng)一管理模塊。數(shù)據(jù)總線平臺(tái)是一個(gè)面向服務(wù)(SOA)軟件架構(gòu)之上的企業(yè)服務(wù)總線平臺(tái),它將應(yīng)用程序的不同功能單元----服務(wù)(service),通過(guò)服務(wù)間定義良好的接口和契約(contract)聯(lián)系起來(lái)。接口采用中立的方式定義,獨(dú)立于具體實(shí)現(xiàn)服務(wù)的硬件平臺(tái)、操作系統(tǒng)和編程語(yǔ)言,使得構(gòu)建在這樣的系統(tǒng)中的服務(wù)可以使用統(tǒng)一和標(biāo)準(zhǔn)的方式進(jìn)行通信。主要實(shí)現(xiàn)目標(biāo):
- 數(shù)據(jù)交互:能夠?qū)⒁粋€(gè)數(shù)據(jù)庫(kù)的某一表中數(shù)據(jù),根據(jù)一定的要求導(dǎo)入到另一數(shù)據(jù)庫(kù)相應(yīng)表中;
- 資源共享與訂閱:能夠?qū)崿F(xiàn)數(shù)據(jù)資源的共享設(shè)置、共享級(jí)別設(shè)置,訂閱數(shù)據(jù)資源等操作,并能按照訂閱內(nèi)容交換數(shù)據(jù);
- 信息級(jí)別權(quán)限控制:一定級(jí)別的工作站只能訪問(wèn)該級(jí)別或級(jí)別要求更低的共享資源;
- 數(shù)據(jù)操作源和目的數(shù)據(jù)庫(kù)可以為多種數(shù)據(jù)庫(kù):如:SQL Server,Oracle等;
- 數(shù)據(jù)交換要支持多種數(shù)據(jù)類型:如:數(shù)值、字符、日期、文件等;
- 信息交換平臺(tái)運(yùn)行模塊要以服務(wù)程序模式運(yùn)行;
- 信息交換平臺(tái)支持?jǐn)?shù)據(jù)配置擴(kuò)展,可以通過(guò)配置文件來(lái)更改運(yùn)行環(huán)境、共享資源數(shù)據(jù)內(nèi)容以及共享級(jí)別;
- 日志記錄:創(chuàng)建日志,方便調(diào)試和日后查看;
- 系統(tǒng)具有長(zhǎng)時(shí)間穩(wěn)定運(yùn)行的能力;
- 有一定的網(wǎng)絡(luò)故障處理能力,當(dāng)網(wǎng)絡(luò)出現(xiàn)問(wèn)題時(shí),系統(tǒng)可以在一定程度上采取自救措施,如支持?jǐn)帱c(diǎn)續(xù)傳和發(fā)送短信息給等待用戶。
1.2平臺(tái)功能架構(gòu)
圖片 1平臺(tái)功能架構(gòu)
應(yīng)用層:在數(shù)據(jù)總線平臺(tái)中,系統(tǒng)管理模塊作為平臺(tái)應(yīng)用層的一部分,也是平臺(tái)運(yùn)行的基礎(chǔ)模塊,完成平臺(tái)運(yùn)行環(huán)境、平臺(tái)運(yùn)行過(guò)程中相關(guān)進(jìn)程的運(yùn)行方式、時(shí)間特性、服務(wù)對(duì)象與區(qū)享等級(jí)、資源信息等的設(shè)置操作,為實(shí)現(xiàn)數(shù)據(jù)交換提供基礎(chǔ)支撐服務(wù);數(shù)據(jù)交換服務(wù)模塊同樣是應(yīng)用層的組成部分,完成具體的數(shù)據(jù)交換功能,根據(jù)系統(tǒng)管理部分的設(shè)置信息有效有序的管理消息、進(jìn)行數(shù)據(jù)的接收、發(fā)送、解析、整編及保存等相關(guān)操作。
認(rèn)證層:身份認(rèn)證屬認(rèn)證層,是指在系統(tǒng)運(yùn)行過(guò)程中,根據(jù)系統(tǒng)管理相關(guān)部分的設(shè)置信息判斷發(fā)出訂閱申請(qǐng)的用戶在本平臺(tái)中具有的共享級(jí)別信息,從而作到權(quán)限的有效控制,防止信息泄露。
表現(xiàn)層:人機(jī)交互界面是表現(xiàn)層內(nèi)容,是計(jì)算機(jī)軟件操作者與軟件系統(tǒng)進(jìn)行交互的途徑,本平臺(tái)除在后臺(tái)自動(dòng)運(yùn)行的數(shù)據(jù)傳輸及進(jìn)程管理方面的功能外,所有系統(tǒng)參數(shù)設(shè)置、資源定制管理方面的操作均通過(guò)表現(xiàn)層的人機(jī)交互界面完成。
1.3功能模塊
1.3.1功能劃分
信息交換平臺(tái)除一部分設(shè)置功能需要用戶通過(guò)界面控制完成外,數(shù)據(jù)交換功能需要長(zhǎng)期穩(wěn)定的在后臺(tái)運(yùn)行,為水務(wù)信息各應(yīng)用提供數(shù)據(jù)共享與交換服務(wù),因此本平臺(tái)功能可分為系統(tǒng)管理(或叫數(shù)據(jù)交換管理)和數(shù)據(jù)交換服務(wù)兩部分。其功能結(jié)構(gòu)圖如下:圖片 2信息交換平臺(tái)功能結(jié)構(gòu)圖
1.3.1.1系統(tǒng)管理模塊
分為運(yùn)行環(huán)境配置、注冊(cè)管理、目錄服務(wù)管理、權(quán)限管理、訂閱定制、日志定制、安全管理、其它參數(shù)設(shè)置七個(gè)子模塊,功能概述如下:- 運(yùn)行環(huán)境配置:完成平臺(tái)運(yùn)行的系統(tǒng)環(huán)境、可以連接的數(shù)據(jù)庫(kù)類型、連接方式及參數(shù)、可以接受轉(zhuǎn)換的數(shù)據(jù)類型等支持系統(tǒng)運(yùn)行環(huán)境的基礎(chǔ)信息配置。
- 注冊(cè)管理:完成通過(guò)本平臺(tái)進(jìn)行數(shù)據(jù)交換與共享的所有應(yīng)用系統(tǒng)在局中心平臺(tái)的注冊(cè),獲取相應(yīng)訪問(wèn)信息范圍及其它輔助信息,只有在本平臺(tái)注冊(cè)過(guò)的系統(tǒng)才可以通過(guò)本平臺(tái)與局中心及其它分中心之間實(shí)現(xiàn)數(shù)據(jù)的交換與共享。
- 目錄服務(wù)管理:系統(tǒng)以目錄的形式管理所有信息元素,對(duì)各類信息元素進(jìn)行分類管理,分類從多角度進(jìn)行,如按基礎(chǔ)信息、業(yè)務(wù)信息;服務(wù)對(duì)象(這里指局中心各系統(tǒng)及分中心相關(guān)系統(tǒng))等,每種分類及具體信息均按一定規(guī)則被編制成目錄形式,且在整個(gè)目錄中均有唯一的ID標(biāo)識(shí),同時(shí)基礎(chǔ)信息和業(yè)務(wù)信息元素按可以訪問(wèn)的秘密程度分組,與系統(tǒng)用戶組對(duì)應(yīng),這樣便于對(duì)有請(qǐng)求的系統(tǒng)用戶(這里指發(fā)出請(qǐng)求的相關(guān)應(yīng)用系統(tǒng))進(jìn)行訪問(wèn)內(nèi)容控制,即根據(jù)目錄索引快速定位到當(dāng)前用戶有權(quán)訪問(wèn)的數(shù)據(jù)范圍,并迅速定位用戶指定信息。目錄信息的類別、內(nèi)容可根據(jù)實(shí)際需要由人工或系統(tǒng)設(shè)定自動(dòng)增加整理,并定時(shí)給出總目錄詳細(xì)信息及目錄變化記錄等。
- 權(quán)限管理:在本平臺(tái)中,權(quán)限管理分為兩部分完成,一是對(duì)操作者的管理與權(quán)限分配,實(shí)現(xiàn)操作者使用本平臺(tái)具體功能的權(quán)限對(duì)應(yīng)管理;二是對(duì)系統(tǒng)用戶的可訪問(wèn)信息的權(quán)限設(shè)置,所有欲使用本平臺(tái)進(jìn)行數(shù)據(jù)交換的應(yīng)用系統(tǒng)需首先在本平臺(tái)上注冊(cè)身份,注冊(cè)方式可以由系統(tǒng)自動(dòng)判別注冊(cè)也可以由管理員通過(guò)相關(guān)界面輸入系統(tǒng)內(nèi),并對(duì)各用戶可以訪問(wèn)的信息內(nèi)容進(jìn)行權(quán)限等級(jí)劃分——不同級(jí)別的用戶可以訪問(wèn)的資源范圍不同。在此后的運(yùn)行中,平臺(tái)會(huì)自動(dòng)判斷提出請(qǐng)求的用戶身份并與其權(quán)限對(duì)應(yīng),從而保證用戶的正當(dāng)權(quán)力和數(shù)據(jù)信息的保密性。
- 訂閱定制:各用戶均可訂閱其它用戶作好訂閱分配的數(shù)據(jù)信息集,可以根據(jù)各自權(quán)限及所需信息訂閱其它用戶的可訂閱信息數(shù)據(jù),從而大限度的包容了由業(yè)務(wù)變動(dòng)帶來(lái)的需求信息變化,也靈活的實(shí)現(xiàn)了不同時(shí)期、不同級(jí)別用戶對(duì)數(shù)據(jù)的不同需求。
- 日志定制:本平臺(tái)將日志按重要程度分級(jí)管理,并由用戶進(jìn)行設(shè)置(當(dāng)然系統(tǒng)會(huì)提供默認(rèn)設(shè)置)應(yīng)記錄的日志范圍,系統(tǒng)會(huì)根據(jù)設(shè)置信息記錄相關(guān)日志。
- 安全管理:包括信息數(shù)據(jù)安全及網(wǎng)絡(luò)安全兩部分,信息安全又為分訪問(wèn)安全與傳輸安全兩種,訪問(wèn)安全是指本平臺(tái)通過(guò)對(duì)用戶進(jìn)行身份認(rèn)證、權(quán)限判斷的方式保護(hù)正當(dāng)用戶的應(yīng)得權(quán)力,同時(shí)避免信息的非法訪問(wèn);傳輸安全指本系統(tǒng)對(duì)傳輸數(shù)據(jù)按一定規(guī)則進(jìn)行加密封裝之后再行傳送,接收時(shí)同樣首先進(jìn)行解密和有效性驗(yàn)證后才對(duì)數(shù)據(jù)進(jìn)行解析、整編、保存相關(guān)處理;網(wǎng)絡(luò)安全是考慮到本平臺(tái)的數(shù)據(jù)交換服務(wù)進(jìn)程要長(zhǎng)期依托網(wǎng)絡(luò)運(yùn)行,因此應(yīng)具有一定的自動(dòng)監(jiān)測(cè)網(wǎng)絡(luò)狀態(tài)及故障應(yīng)對(duì)措施,確保信息的完整和安全。
- 其它參數(shù)設(shè)置:支撐系統(tǒng)運(yùn)行及方便用戶的其它參數(shù)設(shè)置功能。
1.3.1.2數(shù)據(jù)交換服務(wù)模塊
包括消息管理、隊(duì)列管理、發(fā)送管理、接收管理、封裝與解析、數(shù)據(jù)整編、數(shù)據(jù)保存和其它相關(guān)服務(wù)八個(gè)子模塊,功能概述如下:- 消息管理:平臺(tái)提供消息管理機(jī)制,統(tǒng)一管理經(jīng)過(guò)平臺(tái)的收發(fā)信息。各用戶發(fā)送過(guò)來(lái)的請(qǐng)求中均有各自的特征信息,平臺(tái)接收與準(zhǔn)備發(fā)送的消息也同樣以一定規(guī)則驗(yàn)證特征信息,然后根據(jù)指定原則對(duì)各種消息進(jìn)行驗(yàn)證、歸類、排序等一系列管理操作,便于通過(guò)平臺(tái)的各類消息有序的傳遞。
- 隊(duì)列管理:當(dāng)通過(guò)本平臺(tái)的請(qǐng)求較多時(shí),如果不對(duì)各類消息加以控制會(huì)產(chǎn)生資源爭(zhēng)用或并發(fā)沖突的現(xiàn)象,并且可能會(huì)出現(xiàn)優(yōu)先級(jí)較高的請(qǐng)求反而等待時(shí)間過(guò)長(zhǎng)現(xiàn)象,因此需要平臺(tái)對(duì)隊(duì)列進(jìn)行有序管理,隊(duì)列管理根據(jù)消息分類的結(jié)果及發(fā)出請(qǐng)求的用戶優(yōu)先級(jí)及消息本身的優(yōu)先級(jí)進(jìn)行綜合判斷給出合理排序。
- 發(fā)送管理:本交換平臺(tái)在處理各類數(shù)據(jù)交換與共享請(qǐng)求時(shí),會(huì)向請(qǐng)求方發(fā)送處理結(jié)果或其它中間信息,本平臺(tái)依據(jù)發(fā)送數(shù)據(jù)包的特征標(biāo)識(shí)找到接收方,并首先探測(cè)網(wǎng)絡(luò)狀況,許可時(shí)即進(jìn)行發(fā)送操作,并自動(dòng)記錄發(fā)送日志。
- 接收管理:與發(fā)送管理相對(duì)應(yīng),本平臺(tái)在接收各用戶傳送過(guò)來(lái)的信息時(shí),首先驗(yàn)證數(shù)據(jù)包的有效性、接收目標(biāo)等內(nèi)容,將數(shù)據(jù)解析后接收并歸入相應(yīng)的目標(biāo)信息集隊(duì)列等待下一步處理。
- 封裝解析:封裝與解析是與發(fā)送和接收相對(duì)應(yīng)的兩個(gè)過(guò)程,封裝指在數(shù)據(jù)發(fā)送前,要按指定規(guī)則對(duì)數(shù)據(jù)進(jìn)行加密、壓縮、封裝,當(dāng)數(shù)據(jù)量較大,一個(gè)數(shù)據(jù)包裝不下時(shí),系統(tǒng)自動(dòng)將信息分成多個(gè)數(shù)據(jù)包,并在每個(gè)包內(nèi)加上相應(yīng)標(biāo)識(shí)后準(zhǔn)備發(fā)送;解析即是接收方在接收到對(duì)方傳來(lái)的數(shù)據(jù)包后,對(duì)數(shù)據(jù)包進(jìn)行規(guī)則解密、驗(yàn)證數(shù)據(jù)的有效性,通過(guò)后即可整編保存數(shù)據(jù)。
- 數(shù)據(jù)整編:數(shù)據(jù)接收后,要根據(jù)數(shù)據(jù)特性標(biāo)識(shí)進(jìn)行整編、分析、歸類及相關(guān)轉(zhuǎn)換處理,然后準(zhǔn)備保存。
- 數(shù)據(jù)保存:整編無(wú)誤的數(shù)據(jù)即可以保存到目的數(shù)據(jù)庫(kù)的相關(guān)表內(nèi),以完成數(shù)據(jù)交換的全部操作。并記錄相關(guān)日志。
- 相關(guān)服務(wù):提供數(shù)據(jù)交換過(guò)程中其它相關(guān)服務(wù)功能如流量分析、關(guān)聯(lián)計(jì)算等。
項(xiàng)目管理系統(tǒng)數(shù)據(jù)總線平臺(tái)應(yīng)用
地鐵工程項(xiàng)目管理系統(tǒng)基于協(xié)同工作流平臺(tái),采用分層的系統(tǒng)架構(gòu),在與外部系統(tǒng)集成的上,基于SOA整合模式,采用協(xié)同數(shù)據(jù)總線集成平臺(tái),充分使系統(tǒng)達(dá)到組件化、松耦合、易擴(kuò)展的目標(biāo)。圖片 3工程管理系統(tǒng)體系架構(gòu)
工程項(xiàng)目管理系統(tǒng)與OA系統(tǒng)、ERP系統(tǒng)、物流系統(tǒng)、檔案系統(tǒng)、預(yù)算系統(tǒng)、報(bào)賬平臺(tái)等外部系統(tǒng)存在信息交換。在項(xiàng)目建議書之前,OA系統(tǒng)通過(guò)調(diào)用工程管理系統(tǒng)下達(dá)開發(fā)任務(wù)書;工程管理系統(tǒng)和ERP系統(tǒng)之間存在組織結(jié)構(gòu)數(shù)據(jù)的實(shí)時(shí)同步;項(xiàng)目到立項(xiàng)的時(shí)候,需要根據(jù)項(xiàng)目號(hào)從預(yù)算系統(tǒng)中實(shí)時(shí)同步部分立項(xiàng)信息;當(dāng)項(xiàng)目進(jìn)行到合同錄入階段以后,物流系統(tǒng)從工程管理系統(tǒng)中取得合同、項(xiàng)目、供應(yīng)商數(shù)據(jù);工程管理系統(tǒng)中的付款功能需要調(diào)用報(bào)賬系統(tǒng)中的數(shù)據(jù),方能完成付款;工程管理系統(tǒng)中的項(xiàng)目數(shù)據(jù)需要按季度定時(shí)歸檔,存放到檔案系統(tǒng)中。通過(guò)數(shù)據(jù)總線平臺(tái)將工程管理系統(tǒng)與其他系統(tǒng)有機(jī)的整合如圖所示:
圖4 ESB集成