朱 麗 王 真
機載傳感器信息管理系統(tǒng)設(shè)計
朱 麗 王 真
隨著機載測量參數(shù)的不斷增加,需要管理的各種信號調(diào)節(jié)器、機載傳感器的數(shù)量也在急劇增加。由于信息量繁多,檢索、出入庫等工作的瑣碎,迫切需要使機載傳感器庫房管理工作系統(tǒng)化,規(guī)范化,自動化,從而大大提高工作效率。本文以機載傳感器信息管理系統(tǒng)為研究對象,在對需求進行詳細(xì)分析后,進行了系統(tǒng)功能模塊設(shè)計、數(shù)據(jù)庫方案設(shè)計,建立基于C/S結(jié)構(gòu)的機載傳感器信息管理系統(tǒng),滿足了當(dāng)前和今后發(fā)展的需要。
信息技術(shù)的發(fā)展給各行各業(yè)都帶來了前所未有的機遇,尤其是對于機載傳感器庫房管理工作提出了更高的要求。在以往的傳統(tǒng)方式上,機件的入庫、借入、借出信息均手工存檔,這種管理方式不僅效率低,可靠性、安全性和保密性都無法實現(xiàn)。另外時間一長,將產(chǎn)生大量的文件和數(shù)據(jù),在種類繁多的機件庫中更新、維護或統(tǒng)計、檢索某類機件的庫存、去向、技術(shù)狀態(tài)等信息都帶來了不少的困難,這遠(yuǎn)遠(yuǎn)不能滿足實際工作的需要。
為了使機載傳感器庫房管理工作系統(tǒng)化,規(guī)范化,自動化,提高工作效率,開發(fā)了基于C/S的NT網(wǎng)絡(luò)環(huán)境的機載傳感器信息管理系統(tǒng),系統(tǒng)設(shè)置服務(wù)器一臺,作為主域控制器和數(shù)據(jù)庫服務(wù)器,操作系統(tǒng)為微軟的Windows2003 Server,數(shù)據(jù)庫系統(tǒng)采用MS SQL SERVER 2000,用戶界面以C++Builder6.0作為應(yīng)用程序開發(fā)工具。
本文結(jié)合機載傳感器信息管理系統(tǒng)的開發(fā)實例,從系統(tǒng)的功能模型、數(shù)據(jù)庫方案規(guī)劃等方面詳細(xì)論述機載傳感器信息管理系統(tǒng)的設(shè)計過程,文章最后介紹了系統(tǒng)的運行情況。
機載傳感器庫房管理的主要業(yè)務(wù)是:
機件日常出入庫管理,具體包括機件借出、歸還和新件入庫管理;
根據(jù)需求和庫存情況,制訂進貨計劃;
供貨商管理,建立基于各類傳感器性價比的生產(chǎn)商信用等級分類管理,建立長期穩(wěn)定的供貨渠道;
用戶管理,建立用戶機件借入借出的歷史記錄,以備查詢;
打印管理,根據(jù)用戶的業(yè)務(wù)需求,打印單據(jù),下達給倉庫管理員進行交割。
設(shè)計思想
系統(tǒng)的基本設(shè)計思想是建立具有先進型、易用性、安全性、可維護及可擴展性的機載傳感器信息管理系統(tǒng),滿足當(dāng)前和今后發(fā)展的需要。
設(shè)計目標(biāo)
機載傳感器信息管理的設(shè)計目標(biāo)就是通過對機件庫所有出入庫活動的管理、控制及對庫存數(shù)據(jù)的統(tǒng)計和分析,以保證機載傳感器的快速流通,使管理人員及早發(fā)現(xiàn)問題,采取相應(yīng)措施,調(diào)整庫存結(jié)構(gòu),縮短機件儲備周期。同時,通過周期性的庫房盤點,及時補救管理中的漏洞,使庫存管理系統(tǒng)實時地反映各機件庫的現(xiàn)時情況,為各類管理人員和用戶從不同側(cè)面提供所需信息,以便協(xié)調(diào)資源,提高效率。
功能模塊規(guī)劃
根據(jù)機載傳感器庫房管理的業(yè)務(wù)需求,將系統(tǒng)分成“資料管理”、“出入庫管理”、“庫存管理”、“統(tǒng)計管理”、“系統(tǒng)管理”五個模塊。系統(tǒng)總體功能結(jié)構(gòu)如圖1所示。
其中每個功能模塊均由若干個子功能模塊組成,說明如下:
“資料管理”是機載傳感器最基本和最重要的信息,“資料管理”包括“傳感器資料管理”、“生產(chǎn)商資料管理”、“用戶資料管理”、“倉庫資料管理”等子模塊?!皞鞲衅髻Y料管理”用于維護(增加、修改、刪除、查詢)機載傳感器的基本信息;“生產(chǎn)商資料管理”用于維護傳感器生產(chǎn)商的基本信息;“用戶資料管理”用于維護傳感器使用者的基本信息;“倉庫資料管理”用于維護傳感器所在倉庫的基本信息。
圖1 機載傳感器信息管理系統(tǒng)功能結(jié)構(gòu)圖
圖2 傳感器信息管理系統(tǒng)數(shù)據(jù)庫E-R圖
“出入庫管理”是庫房管理最常用的功能。“出入庫管理”包括“新件入庫管理”、“機件借出管理”、“機件歸還管理”等子模塊。
“庫存管理”用于管理傳感器的庫存信息,包含“庫存查詢”、“報廢管理”子模塊?!皫齑娌樵儭备鶕?jù)關(guān)鍵字來查詢總庫存及分庫存的傳感器信息,“報廢管理”按規(guī)定用于報廢機件管理使用。
“統(tǒng)計管理”就是對傳感器機件流通的歷史數(shù)據(jù)進行統(tǒng)計和分析,用圖表的形式表現(xiàn)出來,供決策使用。
“系統(tǒng)管理”部分功能比較通用,包括“權(quán)限設(shè)置”、“數(shù)據(jù)備份”、“數(shù)據(jù)恢復(fù)”子模塊。“權(quán)限設(shè)置”用于設(shè)置各操作員使用系統(tǒng)的權(quán)限,“數(shù)據(jù)備份”和“數(shù)據(jù)恢復(fù)”用于備份和恢復(fù)數(shù)據(jù)庫系統(tǒng)。
系統(tǒng)E-R圖
在對機載傳感器庫房管理的業(yè)務(wù)和需求進行分析的基礎(chǔ)上,建立系統(tǒng)的數(shù)據(jù)庫E-R圖,如圖2所示。
系統(tǒng)實例數(shù)據(jù)表
依據(jù)實際業(yè)務(wù)流程和數(shù)據(jù)庫E-R圖,建立19張實例數(shù)據(jù)表,其用途如表1所示。
表1 數(shù)據(jù)表及其用途
系統(tǒng)安全策略
由于系統(tǒng)采用C/S架構(gòu),整個數(shù)據(jù)都存放在服務(wù)器上,數(shù)據(jù)安全性就顯得非常重要。系統(tǒng)級的安全管理由NT操作系統(tǒng)和數(shù)據(jù)庫管理系統(tǒng)自身提供的安全措施來保障,文章著重應(yīng)用級的安全管理進行設(shè)計。
圖3 系統(tǒng)運行界面圖及內(nèi)部圖
應(yīng)用程序的各種功能總是針對數(shù)據(jù)庫的特定數(shù)據(jù)進行修改、刪除等操作,而應(yīng)用程序的功能是由不同的人來操作的。因此,通過賦予不同人群與其匹配的權(quán)限即可實現(xiàn)應(yīng)用級安全管理問題。在傳感器信息管理系統(tǒng)中,建立基于用戶的權(quán)限分配管理模型,不但確保系統(tǒng)的安全,而且簡化了系統(tǒng)對用戶的授權(quán)管理,在系統(tǒng)中管理員具有最高權(quán)限,而用戶權(quán)限最低,操作員的權(quán)限由管理員分配。根據(jù)登陸的帳號和口令系統(tǒng)自動記錄所有操作,以備核查。
系統(tǒng)架構(gòu)
考慮到用戶的分散性,采用日益成熟并得到廣泛應(yīng)用的C/S模式開發(fā)完成了機載傳感器信息管理系統(tǒng),以期達到管理的高效性和先進型。
C/S模式是以網(wǎng)絡(luò)環(huán)境為基礎(chǔ)的,其中服務(wù)器提供數(shù)據(jù)存儲管理和數(shù)據(jù)庫服務(wù),客戶機提供和用戶的交互界面,服務(wù)器根據(jù)用戶的請求進行數(shù)據(jù)處理并將結(jié)果傳回網(wǎng)上。由于在網(wǎng)上只傳送請求和結(jié)果,數(shù)據(jù)流量小,從而使網(wǎng)絡(luò)性能得到大幅提高。C/S模式不依賴于硬件系統(tǒng)和操作系統(tǒng),具有良好的可移植性、可擴充性;并且由于采用數(shù)據(jù)集中、處理分散的模式,從而保證了數(shù)據(jù)的完整性和一致性。
客戶端程序開發(fā)
C++Builder是Borland公司一個通用的C/S結(jié)構(gòu)的開發(fā)利器,利用C++Builder6.0可視化集成開發(fā)環(huán)境進行客戶端程序的開發(fā),創(chuàng)建人機交互界面并實現(xiàn)預(yù)定功能。C++Builder6.0提供的ADO對象是一種高層次的、獨立于編程語言的、能夠訪問關(guān)系數(shù)據(jù)庫、非關(guān)系數(shù)據(jù)庫及所有的文件系統(tǒng),它基于通用對象模型(COM ),ADO產(chǎn)生的應(yīng)用程序占用內(nèi)存少,使用更為方便,并且訪問數(shù)據(jù)的效率更高。另外,ADO還支持各種C/S模式與基于Web的應(yīng)用程序,具有遠(yuǎn)程數(shù)據(jù)服務(wù)RDS(Remote Data Service)的特性。因此,首選ADO來實現(xiàn)客戶端的遠(yuǎn)程數(shù)據(jù)接口。
服務(wù)器端程序開發(fā)
服務(wù)器端程序開發(fā)的重點是對數(shù)據(jù)庫的索引、觸發(fā)器、存儲過程等進行優(yōu)化設(shè)計,以提高數(shù)據(jù)庫中存儲數(shù)據(jù)的處理效率。用戶對數(shù)據(jù)庫最頻繁的操作是進行數(shù)據(jù)查詢,一般情況下數(shù)據(jù)庫在進行查詢操作時需要對整個表進行數(shù)據(jù)搜索,當(dāng)表中的數(shù)據(jù)很多時搜索數(shù)據(jù)就需要很長的時間,這就造成了服務(wù)器的資源浪費,而且還延長了對客戶端的響應(yīng)時間,影響了整個應(yīng)用系統(tǒng),所以合理的設(shè)計索引是非常必要的。
存儲過程是一組存儲在數(shù)據(jù)庫中的編譯的SQL語句,使用存儲過程具有如下優(yōu)點。
a)允許模塊化程序設(shè)計
存儲過程被創(chuàng)建后存儲在數(shù)據(jù)庫中,以后在程序中能反復(fù)調(diào)用,并可隨時對其修改而對應(yīng)用程序源代碼毫無影響,從而極大地提高了程序的可移植性。
b)執(zhí)行速度快
存儲過程是預(yù)編譯的,在首次運行一個存儲過程時,查詢優(yōu)化器對其進行分析優(yōu)化并給出最終被存在系統(tǒng)表中的執(zhí)行計劃,因此速度相對要快一些。
c)能夠減少網(wǎng)絡(luò)流量
調(diào)用同一個針對數(shù)據(jù)庫對象操作的存儲過程時,網(wǎng)絡(luò)中傳送的只是該調(diào)用語句,而不是多條SQL 語句從而大大增加了網(wǎng)絡(luò)流量,降低了網(wǎng)絡(luò)負(fù)載。
在傳感器信息管理系統(tǒng)中,查詢及數(shù)據(jù)庫的備份與恢復(fù)均通過服務(wù)器端存儲過程來實現(xiàn)的,客戶端應(yīng)用程序只需提供相應(yīng)參數(shù)并調(diào)用存儲過程就可完成相應(yīng)操作,簡化了應(yīng)用程序的開發(fā),提高了系統(tǒng)的性能。
系統(tǒng)組建調(diào)試完成后,登錄界面及內(nèi)部圖如圖3所示。該系統(tǒng)的建立極大減輕了勞動強度,提高了工作效率,而且達到了可靠與實用的目標(biāo),滿足機載傳感器庫房管理工作的需求,創(chuàng)造了一定的經(jīng)濟效益。
朱 麗 王 真
中國飛行試驗研究院
10.3969/j.issn.1001-8972.2016.09.015