張春平,郁大照,王 超
(1.海軍航空工程學院 訓練部,山東 煙臺 264001; 2.海軍航空工程學院 飛行器工程系,山東 煙臺 264001; 3.海軍航空工程學院 控制工程系,山東 煙臺 264001)
隨著計算機以及高校辦公自動化技術的發(fā)展,實驗室科研與教學管理工作更需要規(guī)范化、科學化,因此建設一個實驗室綜合管理系統(tǒng)顯得非常重要[1-6]。MySQL是一個真正多用戶、多線程的關系型數(shù)據(jù)庫系統(tǒng),采用最普遍的SQL語法,擁有多種操作環(huán)境下的服務器端程序與多種客戶端支持。C#編程語言語法簡單,代碼健壯,調試容易,界面風格比C++等有很大改進[7]。因此本文以面向對象為思想,采用C#,開發(fā)出基于MySQL數(shù)據(jù)庫的高校實驗室綜合管理系統(tǒng)。
實驗室綜合管理系統(tǒng)可以用于支持實驗室完成各項日常管理工作,設計目標如下:
(1) 支持實驗室實現(xiàn)規(guī)范化管理,即管理的電子化、自動化。
(2) 支持實驗室高效率完成對教師、學生、課程及設備的日常管理。
(3) 支持實驗室進行課程安排、設備更新等相關方面的科學決策。
(1) 盡量采用實驗室現(xiàn)有的軟硬件環(huán)境及先進的管理系統(tǒng)開發(fā)方案,從而達到充分利用實驗室現(xiàn)有資源,提高系統(tǒng)開發(fā)水平和應用效果的目的[8]。
(2) 符合實驗室各項管理的規(guī)定,滿足實驗室日常管理的工作需要,并達到操作過程中的直觀、方便、實用、安全等要求。
(3) 采用模塊化程序設計方法,既便于系統(tǒng)功能的各種組合和修改,又便于未參與開發(fā)的技術維護人員的補充維護。
(4) 具備數(shù)據(jù)庫維護功能,及時根據(jù)需求進行數(shù)據(jù)的添加、刪除、修改等操作。
系統(tǒng)前端以VS2008為平臺,采用C#語言和MySQL關系型數(shù)據(jù)庫,在Windows 95、Windows 98、Windows XP以及Windows 7下均可安裝使用。
整個實驗室綜合管理系統(tǒng)所涉及的方面比較多,信息處理量比較大,因此對于本系統(tǒng)的設計,需要采取以下原則[9]:
(1) 刪除不必要的管理冗余,實現(xiàn)管理的規(guī)范化、科學化。
(2) 程序代碼標準化,軟件統(tǒng)一化,確保軟件的可維護性和實用性。
(3) 能夠實現(xiàn)多窗口的數(shù)據(jù)統(tǒng)計功能,保證相關項目之間具有相同的屬性。
在系統(tǒng)開發(fā)的總體任務和設計原則的基礎上完成功能設計,主要功能模塊如圖1所示。
圖1 系統(tǒng)功能模塊圖
實現(xiàn)功能如下:
(1) 教師各種信息的輸入。包括教師的基本資料、學歷、職務等。
(2) 教師各種信息的修改。
(3) 對于轉出、辭職、退休的教師信息的刪除。
(4) 按照某種條件統(tǒng)計符合條件的教師信息。
(5) 對于查詢統(tǒng)計結果進行打印輸出。
(6) 教師考勤信息處理。完成教師缺勤情況的輸入、修改、查詢等操作。如果實驗室有考勤機可以將它的輸出處理后,形成考勤管理模塊的輸入。
(7) 實驗課程信息的輸入。包括課時、課程性質和授課教師等信息。
(8) 可根據(jù)日期,查詢當天的所有課程安排信息。
(9) 學生各種信息的輸入。包括學生的基本資料、職務、聯(lián)系方式等。
(10) 學生各種信息的修改和刪除。
(11) 按照某種條件統(tǒng)計符合條件的學生信息。
(12) 對于查詢統(tǒng)計結果進行打印輸出。
(13) 學生考勤信息處理。完成學生缺勤情況的輸入、修改、查詢等操作。
(14) 學生成績管理。完成學生課程成績的輸入、修改、查詢等操作。
(15) 固定資產(chǎn)信息的輸入。包括設備號、購入時間、價格、供應商信息等。
(16) 各種資產(chǎn)信息的修改和刪除。
(17) 按照某種條件統(tǒng)計符合條件的設備信息。
(18) 對于查詢統(tǒng)計結果進行打印輸出。
(19) 設備的維護管理。完成設備維護情況的輸入、修改、查詢等操作。
(20) 進行所有教師的工作量統(tǒng)計。即統(tǒng)計教師上課、維護機器、缺勤所折合的工作量,繼而統(tǒng)計出教師的總工作量??砂垂ぷ髁康纳?、降序進行排列,并可對統(tǒng)計結果進行打印。
數(shù)據(jù)庫是按照數(shù)據(jù)結構來組織、存儲和管理數(shù)據(jù)的倉庫。在MySQL中,創(chuàng)建數(shù)據(jù)庫的句法為:CREATE DATABASE db_name。
本系統(tǒng)數(shù)據(jù)庫命名為db_MyMIS ,創(chuàng)建該數(shù)據(jù)庫的句法為:CREATE DATABASE db_MyMIS。
表是關系數(shù)據(jù)庫組織信息的方式,在許多系統(tǒng)中,數(shù)據(jù)庫是由專人維護的,所以不容許一般人員在數(shù)據(jù)庫里創(chuàng)建表。在本系統(tǒng)中,對應用程序的開發(fā)者,可以創(chuàng)建自己的數(shù)據(jù)庫和表。值得一提的是,將數(shù)據(jù)劃分為表是一項重要的工作。由于該管理系統(tǒng)中涉及的數(shù)據(jù)較多,因此,一個好的劃分不但可減少冗余,而且還可以簡化操作。
創(chuàng)建一個應用程序首先是創(chuàng)建一個應用對象,這是在某個應用對象的范圍內進行開發(fā)。在應用程序對象的連接及打開事件中輸入如下的程序代碼:
MySQLConnection myCon = null;
myCon = newMySQLConnection(newMySQLConnectionString(″localhost″,″db_MyMIS″,″root″,″890″).AsString);
myCon.Open()
登錄窗口是用戶和應用程序之間主要的交互界面。窗口可用來顯示信息、請求用戶輸入以及響應鼠標或鍵盤操作。設計中添加了確認用戶的功能,只有輸入正確的用戶名和密碼,才可以登錄到操作主窗口,以確保系統(tǒng)資料的安全性和保密性[10]。為了美觀,程序設計時使登錄窗口顯示在屏幕中央。
系統(tǒng)應用程序的各個不同功能是通過主窗口上的選單(菜單)來完成的。每個功能模塊由一個或多個窗口來完成。為了使開發(fā)的系統(tǒng)軟件更加規(guī)范化,故將其主窗口選為Windows Form類型。
為了方便快捷地幫助用戶進入所要操作的窗口界面,故創(chuàng)建選單,并將它加到所需窗口里。選單是相對獨立的對象,設計時使用選單畫板來創(chuàng)建它,創(chuàng)建之后可以將它連接到任意多的窗口上。
本設計的祖先窗口選為實驗室基本情況窗口,在窗口里設置一個文本控件,用于滾動更新實驗室教學公告。每條教學公告可作為按鈕,用于打開相應的對話框,顯示公告詳細信息。設計時在窗口中還設置了選單欄,具備預定的功能(如:添加、刪除、查詢和打印等),以便用戶直觀快捷地進行操作。
利用繼承來建造需要的后裔窗口。后裔窗口繼承祖先窗口里的事件、屬性和腳本,并在此基礎上進行修改,加上新的特點,具備新的功能。
為了給用戶提供更加全面、完整的功能,此窗口必不可少。為了保證系統(tǒng)的安全性,故將此窗口設計在用戶成功登錄后,而且只可以修改本次登錄成功的用戶密碼,方便之處在于,不用再次輸入用戶名。
為了保證整個系統(tǒng)良好可靠的運行,必不可少的一個重要環(huán)節(jié)就是調試。設計過程中采用了兩種調試方法:
(1) 設置斷點法。設置好斷點(快捷鍵為F9)后,單擊“調試”選項中的“DEBUG”按鈕(快捷鍵為F5),如果觸發(fā)了剛剛設置的斷點事件,程序就中止運行,停在斷點處,這時就可以進行調試工作了。
(2) 單步運行代碼法。利用工具欄上面的“STEP”按鈕(快捷鍵為F11)即可。在調試過程中,一邊單步運行程序,一邊觀察WATCH窗口中變量值的變化,就可以很好地掌握程序的運行情況。
通過調試程序,使設計達到了預期的目的,完成了預定的功能。
調試好的程序經(jīng)過編譯后,在項目上單擊右鍵,根據(jù)需要生成可安裝的軟件,將應用程序生成可執(zhí)行文件不僅可以使其脫離VS2008 開發(fā)環(huán)境運行,而且其運行效率也大大提高;然后對生成的可執(zhí)行性文件進行測試,通過測試可執(zhí)行性文件,就可以進行發(fā)布了。應用程序的最終發(fā)布安裝包括2個方面的內容[11]:一是客戶端軟件的安裝,主要是生成可執(zhí)行性文件、各種資源、數(shù)據(jù)庫客戶端軟件等;二是服務器端軟件的安裝,主要是數(shù)據(jù)庫服務器軟件的安裝。這2個方面任何一方面處理不好,均可能導致應用程序不能正常運行。
本文介紹的高校實驗室綜合管理系統(tǒng)具有良好的通用性,主要適用于高校實驗室科研、教學的辦公自動化管理[12]。通過對系統(tǒng)的使用證明:該系統(tǒng)功能齊全、界面美觀、操作方便、性能穩(wěn)定可靠,是一種實用性很強的管理軟件。
[1] 李平,張莉.試論高校實驗室建設[J].太原科技,2005(2):52-53.
[2] 謝東海,楊禹華,黃向紅.結合評估推進實驗室體制改革[J].實驗室研究與探索,1999(4):146-147,150.
[3] 李勝強,沈陵.物理實驗室建設與管理芻議[J].銅陵學院學報,2006(1):118-120.
[4] 劉月輝.實驗室建設與新型人才培養(yǎng)探析[J].實驗技術與管理,2005,22(4):6-8.
[5] 劉成寶.以教學為中心抓好實驗室建設和管理[J].實驗室研究與探索,1988(1):56-57.
[6] 張軍,蔣康.更新觀念促進實驗室建設與發(fā)展[J].實驗室研究與探索,2002(5):124-140.
[7] 蘇玉良,郭福文.實驗室信息管理系統(tǒng)的開發(fā)與應用[J].自動化與儀表,2012(11):44-47.
[8] 王海洋.軍隊院校實驗室建設的對策性思考[J].實驗室研究與探索,2004(9):104-107.
[9] 許芬,田興旺,鄭勇.開放式遠程實驗室教學系統(tǒng)的設計與實現(xiàn)[J].北方工業(yè)大學學報,2008(1):27-31.
[10] 付兵.獨立學院實驗室建設規(guī)劃的探討[J].實驗室科學,2011(4):150-152.
[11] 蔣景華.提高實驗室投資效益的探討[J].實驗室研究與探索,2004(5):1-5.
[12] 何曉陽,朱利泉,朱亞萍,等.創(chuàng)新實驗室管理模式和運行機制[J].實驗室研究與探索,2006(1):113-115.