国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于設(shè)計模式的實驗室管理系統(tǒng)設(shè)計與實現(xiàn)

2017-09-18 08:42徐妍崔良中黃佳維
無線互聯(lián)科技 2017年17期
關(guān)鍵詞:實驗室管理系統(tǒng)設(shè)計

徐妍++崔良中++黃佳維

摘 要:針對目前很多高校對實驗室管理效率低下、實驗室利用率低等問題,文章構(gòu)建了一套管理信息系統(tǒng),解決了實驗課件管理、預(yù)約管理、資源共享等問題。系統(tǒng)在設(shè)計中,充分利用GoF設(shè)計模式,有效增強(qiáng)了系統(tǒng)的可維護(hù)性和可擴(kuò)展性。系統(tǒng)的設(shè)計與開發(fā),有效提升了高校對實驗室的管理能力。

關(guān)鍵詞:實驗室管理;系統(tǒng)設(shè)計;GoF設(shè)計模式

提高學(xué)生的動手能力,是學(xué)校的主要工作任務(wù)之一,高校實驗室是提高學(xué)生動手能力的重要途徑[1]。學(xué)校實驗室的構(gòu)建目的,一是為學(xué)生創(chuàng)造良好的實驗環(huán)境和條件;二是確保實驗教學(xué)任務(wù)的順利完成;三是為科研工作提供實驗環(huán)境。目前高校實驗室存在的主要問題包括以下幾個方面:(1)缺乏制度化管理,實驗設(shè)備與實驗教學(xué)內(nèi)容脫節(jié);(2)實驗室基本資源管理混亂,實驗器材和原料得不到及時補(bǔ)充;(3)實驗室資源沒有得到充分利用,學(xué)生無法利用課余時間上機(jī),各高校之間的實驗室也無法共享資源。

本系統(tǒng)根據(jù)目前高校實驗室存在的問題,構(gòu)建了一套實驗室管理系統(tǒng)。該系統(tǒng)能夠為高校學(xué)生提供實驗室預(yù)約、實驗課程教學(xué)等功能;能夠為高校教師提供實驗課程管理、實驗信息獲取、實驗課件提交等功能;能夠為實驗室管理人員提供實驗器材及原料補(bǔ)充管理、實驗室資源共享管理等功能。本系統(tǒng)最大的特點(diǎn),是充分考慮到了實驗室管理業(yè)務(wù)流程的擴(kuò)展,在系統(tǒng)各主要功能的設(shè)計中,引入了擬合優(yōu)度(Goodness of Fit,GoF)設(shè)計模式,系統(tǒng)的可擴(kuò)展性和可維護(hù)性得到了大幅提高。

系統(tǒng)投入使用后,解決了實驗室管理過程中的效率低下的問題,教師和學(xué)生可以基于系統(tǒng)實現(xiàn)對實驗教學(xué)內(nèi)容的交流;實驗室管理人員能夠及時根據(jù)實驗課程安排,調(diào)整實驗器具和原料;各高校之間的實驗室資源共享,有效地提高了高校實驗室的利用率。

1 關(guān)鍵技術(shù)研究

本系統(tǒng)的設(shè)計與開發(fā),主要是在面向?qū)ο缶幊淘瓌t的指導(dǎo)下,利用GoF設(shè)計模式,完成系統(tǒng)的各個功能模塊。

1.1 面向?qū)ο缶幊碳夹g(shù)

面向?qū)ο缶幊碳夹g(shù),是針對傳統(tǒng)的面向過程編程技術(shù)而言,是目前主流的高級編程語言所采用的編程技術(shù)。面向?qū)ο缶幊碳夹g(shù),主要包括5個原則[2]:(1)單一職責(zé)原則,類中僅包含必要的屬性和方法,且類中的方法要求相互關(guān)聯(lián),避免因類過于龐大而導(dǎo)致的破壞封閉性;(2)開閉原則,簡而言之,就是對擴(kuò)展開發(fā),對修改封閉,在不改變類結(jié)構(gòu)的前提下,應(yīng)能夠方便地擴(kuò)展類的功能,而在不改變類接口的情況下,能夠?qū)︻悆?nèi)部的功能進(jìn)行修改;(3)Liskov替換原則,該原則要求在面向?qū)ο笤O(shè)計時,某個類的子類可以完全替換其基類,這一原則是面向?qū)ο笤O(shè)計中多態(tài)、繼承等應(yīng)用的基礎(chǔ)[3];(4)依賴倒置原則,一般的分層架構(gòu)系統(tǒng),上層構(gòu)件的實現(xiàn)依賴于下層的構(gòu)件,導(dǎo)致系統(tǒng)模塊之間的耦合性增加,而依賴倒置原則要求各層的實現(xiàn)都依賴于接口,只要接口不變,可以對構(gòu)件功能進(jìn)行完善和調(diào)整;(5)接口隔離原則,系統(tǒng)接口的設(shè)計要求簡潔明了,同一接口中的各個方法之間要求相互關(guān)聯(lián)[4]。

1.2 設(shè)計模式技術(shù)

設(shè)計模式是軟件工程中的重要組成部分,是對軟件功能模塊設(shè)計的經(jīng)驗總結(jié)[5]。軟件開發(fā)人員在長期的編程工作中發(fā)現(xiàn),利用面向?qū)ο蟮某绦蜷_發(fā)語言,可以構(gòu)建一些固定模式的類組織架構(gòu),使所開發(fā)的功能具有更好的可擴(kuò)展性和可維護(hù)性,這些模式就被稱為設(shè)計模式[6]。

設(shè)計模式的出現(xiàn)是為了解決在面向?qū)ο缶幊踢^程中存在的問題,很多功能邏輯的設(shè)計實際上是重復(fù)的,如果用一個相對固定的,被證明具有良好的可擴(kuò)展性和可維護(hù)性的模式進(jìn)行固定,則可以有效地提高程序的開發(fā)效率,并提高系統(tǒng)的質(zhì)量[7]。每一個設(shè)計模式都相對詳細(xì)地描述了一個在程序設(shè)計與開發(fā)過程中存在的問題,并提出了解決的方案。一個完整的設(shè)計模式有4個基本要素[8],分別是模式的名稱,用于標(biāo)識和區(qū)別不同的模式;問題描述,用于說明當(dāng)前模式所能夠處理的問題,以及適用的情況;解決方案,描述了設(shè)計的組成成分,具體地說就是各個類的設(shè)計,以及類之間關(guān)系的設(shè)計;效果,用于描述使用了該設(shè)計模式以后所能夠達(dá)到的效果。

2 系統(tǒng)總體功能設(shè)計

高校實驗室管理系統(tǒng)的主要設(shè)計目標(biāo),是提高實驗室的使用和管理效率,能夠為教師和學(xué)生提供實驗課程預(yù)習(xí)、交流等平臺,為管理員提供耗材、設(shè)備管理功能等。針對不同的參與者,系統(tǒng)設(shè)計了相關(guān)的功能模塊,系統(tǒng)的功能架構(gòu)如圖1所示。

系統(tǒng)從功能的角度可以分為4個模塊:(1)教學(xué)管理模塊主要用于處理與實驗課教學(xué)相關(guān)的業(yè)務(wù)內(nèi)容,教師通過該模塊發(fā)布教學(xué)課件,學(xué)生通過該模塊提交實驗報告;(2)實驗室管理模塊主要用于實驗室使用申請,以及相關(guān)信息查詢;(3)設(shè)備器具管理模塊主要為管理人員提供了實驗室易耗品以及相關(guān)設(shè)備器具的管理功能;(4)系統(tǒng)管理功能模塊主要是對數(shù)據(jù)庫、日志等進(jìn)行管理。

3 實驗室易耗品管理功能的實現(xiàn)

高校實驗室管理系統(tǒng)包括多個功能模塊和功能指標(biāo)。為了保證系統(tǒng)的可擴(kuò)展性和可維護(hù)性,在每一個功能的設(shè)計實現(xiàn)中,均充分考慮到了設(shè)計的靈活性。篇幅所限,本節(jié)主要對實驗室易耗品的管理功能進(jìn)行詳細(xì)討論。該功能是對實驗過程中使用到的易耗品,以及各類實驗設(shè)備等進(jìn)行管理。

3.1 易耗品管理功能的設(shè)計

實驗室中的易耗品與具體實驗之間存在著直接的關(guān)聯(lián)關(guān)系,某一個實驗會包含多個實驗的易耗品,而同一類的易耗品也可以被應(yīng)用于多個實驗中,兩者之間是多對多的關(guān)系。按照傳統(tǒng)的面向?qū)ο蟮能浖O(shè)計方案,對于實驗室易耗品類的設(shè)計可以采用兩種方式:一種是從實驗種類設(shè)計類,可以分為物理實驗的易耗品、化學(xué)實驗的易耗品等;另一種是直接對易耗品設(shè)計類,抽象屬于同類的易耗品屬性和方法。上述兩類設(shè)計方式都存在著較大的問題,當(dāng)在易耗品的管理過程中出現(xiàn)新的實驗類別時,需要增加一個新類,同時增加該類相關(guān)聯(lián)的各類易耗品;同時,當(dāng)增加一個易耗品的操作時,需要對所有的類別進(jìn)行修改,違反了面向?qū)ο笤O(shè)計中的開閉原則。endprint

為了解決上述設(shè)計上的問題,利用GoF設(shè)計模式中的橋接模式進(jìn)行類的設(shè)計。橋接設(shè)計模式的類圖如圖2所示。

橋接設(shè)計模式的主要目的是將抽象對象與具體的實現(xiàn)細(xì)節(jié)進(jìn)行分離,使兩者之間既存在關(guān)系,又可以實現(xiàn)各自的靈活變化。在實驗易耗品管理過程中,各種不同類型的實驗都是抽象的對象,而實驗所用到易耗品則是具體的實現(xiàn)。兩者之間可以不建立聯(lián)系,但這樣就無法反映實驗與易耗品之間的關(guān)系,給管理工作造成較大的阻礙。按照橋接設(shè)計模式的設(shè)計要求,本功能的類圖設(shè)計如圖3所示。

如圖3所示,設(shè)計了抽象的實驗類AbstractLab,該類的屬性中包括實驗的名稱,而List類型的DrugList屬性中,記錄著該實驗所使用到的各種易耗品。設(shè)計化學(xué)實驗類ChemistryLab和物理實驗類PhysicalLab,繼承于AbstractDrug類,并實現(xiàn)ShowLabInfo方法。設(shè)計實驗易耗品類Drug,該類除了易耗品的名稱屬性外,還定義了GetAmount方法,用于獲取目前當(dāng)前易耗品的存量。

采用這一設(shè)計模式,當(dāng)需要擴(kuò)展新的實驗類別時,只需要設(shè)計一個新類繼承AbstractLab類,并實現(xiàn)其定義的方法;而新增加一種易耗品類別時,則從Drug類中派生一個新類。

3.2 易耗品管理功能的實現(xiàn)

以上對實驗易耗品管理功能進(jìn)行了設(shè)計,利用橋接模式提高系統(tǒng)功能的靈活性。該功能的實現(xiàn)序列如圖4所示。

AbstractLab類的主要代碼如下:

abstract class AbstractLab

{

protected List DrugList;

public void ShowLabInfo(){

foreach(Drug drug in DrugList)

drug.GetAmount();

//其他處理操作

}

public void AddDrug(Drug drug){

DrugList.Add(drug);

}

Drug類的主要代碼如下:

abstract class Drug

{

public double GetAmount(){

//從數(shù)據(jù)庫中獲取易耗品的存量。

}

繼承類的相關(guān)代碼在此不再贅述。完成了類的定義后,用戶在客戶端可以方便地完成實驗和易耗品之間的操作。代碼如下:

main()

{

AbstructLab lab = new ChemistryLab();

lab.add(new AlcoholDrug);

lab.ShowLabInfo();

}

通過以上客戶端的操作,可以方便地根據(jù)實驗對象,查詢得到該實驗所使用到的易耗品各類,以及各類易耗品目前的存量。

該功能的界面如圖5所示。

4 結(jié)語

高校實驗室管理系統(tǒng)的設(shè)計與開發(fā),解決了實驗室管理不規(guī)范,實驗易耗品和設(shè)備補(bǔ)充不及時,資源利用率低等問題,有效地提高了高校對實驗室的管理效率。設(shè)計模式在實驗室管理系統(tǒng)中的應(yīng)用,能夠使系統(tǒng)功能具有更好的靈活性,便于對功能進(jìn)行擴(kuò)展或修改。

[參考文獻(xiàn)]

[1]CHEN L,CENTER ET. Problems and countermeasures of laboratory safety management in colleges and universities in the new era[J]. Research & Exploration in Laboratory,2017(3):24-29.

[2]IGARASHI,ATSUSHI,NAGIRA,et al. Union types for object-oriented programming[J]. Journal of Object Technology,2016(2):47-68.

[3]PANCERZ K,SCHUMANN A. Some issues on an object-oriented programming language for physarum machines[J]. Studies in Computational Intelligence,2015(6):185-199.

[4]KAILA E,KURVINEN E,LOKKILA E. Redesigning an object-oriented programming course[J]. Acm Transactions on Computing Education,2016(4):18.

[5]LI,DAABOUL J,Tong S. A design pattern for industrial robot[J].Robotics and Computer Integrated Manufacturing,2015(C):30-39.

[6]JAAFAR F,HAMEL S,KHOMH F. Evaluating the impact of design pattern and anti-pattern dependencies on changes and faults[J]. Empirical Software Engineering,2016(3):31-36.

[7]陳烽,陳蓉,王跟成.設(shè)計模式在區(qū)域綜合管網(wǎng)中的應(yīng)用研究[J].計算機(jī)技術(shù)與發(fā)展,2015 (4):193-196.

[8]崔亮.設(shè)計模式在試驗信息系統(tǒng)中的應(yīng)用研究[J].計算機(jī)與數(shù)字工程,2015(4):671-675.

猜你喜歡
實驗室管理系統(tǒng)設(shè)計
關(guān)于實驗室管理的研究