張春平,郁大照,王 超
(1.海軍航空工程學院 訓練部,山東 煙臺 264001; 2.海軍航空工程學院 飛行器工程系,山東 煙臺 264001; 3.海軍航空工程學院 控制工程系,山東 煙臺 264001)
隨著計算機以及高校辦公自動化技術的發展,實驗室科研與教學管理工作更需要規范化、科學化,因此建設一個實驗室綜合管理系統顯得非常重要[1-6]。MySQL是一個真正多用戶、多線程的關系型數據庫系統,采用最普遍的SQL語法,擁有多種操作環境下的服務器端程序與多種客戶端支持。C#編程語言語法簡單,代碼健壯,調試容易,界面風格比C++等有很大改進[7]。因此本文以面向對象為思想,采用C#,開發出基于MySQL數據庫的高校實驗室綜合管理系統。
實驗室綜合管理系統可以用于支持實驗室完成各項日常管理工作,設計目標如下:
(1) 支持實驗室實現規范化管理,即管理的電子化、自動化。
(2) 支持實驗室高效率完成對教師、學生、課程及設備的日常管理。
(3) 支持實驗室進行課程安排、設備更新等相關方面的科學決策。
(1) 盡量采用實驗室現有的軟硬件環境及先進的管理系統開發方案,從而達到充分利用實驗室現有資源,提高系統開發水平和應用效果的目的[8]。
(2) 符合實驗室各項管理的規定,滿足實驗室日常管理的工作需要,并達到操作過程中的直觀、方便、實用、安全等要求。
(3) 采用模塊化程序設計方法,既便于系統功能的各種組合和修改,又便于未參與開發的技術維護人員的補充維護。
(4) 具備數據庫維護功能,及時根據需求進行數據的添加、刪除、修改等操作。
系統前端以VS2008為平臺,采用C#語言和MySQL關系型數據庫,在Windows 95、Windows 98、Windows XP以及Windows 7下均可安裝使用。
整個實驗室綜合管理系統所涉及的方面比較多,信息處理量比較大,因此對于本系統的設計,需要采取以下原則[9]:
(1) 刪除不必要的管理冗余,實現管理的規范化、科學化。
(2) 程序代碼標準化,軟件統一化,確保軟件的可維護性和實用性。
(3) 能夠實現多窗口的數據統計功能,保證相關項目之間具有相同的屬性。
在系統開發的總體任務和設計原則的基礎上完成功能設計,主要功能模塊如圖1所示。

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