齊心
(湖北汽車工業(yè)學(xué)院電氣與信息工程學(xué)院,湖北十堰442002)
實(shí)驗(yàn)教學(xué)是把科學(xué)實(shí)驗(yàn)引進(jìn)教學(xué)領(lǐng)域內(nèi)的一個(gè)教學(xué)過(guò)程,它能使學(xué)生更好地鞏固和加深對(duì)理論知識(shí)的理解,增強(qiáng)學(xué)生理論聯(lián)系實(shí)際的能力,提高學(xué)生的科學(xué)素養(yǎng)和發(fā)現(xiàn)、觀察、分析、研究、解決相關(guān)實(shí)際問(wèn)題的能力。實(shí)驗(yàn)教學(xué)在高等教育中占有極其重要的地位,是教育教學(xué)改革的重要組成部分。
隨著計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的發(fā)展,網(wǎng)絡(luò)已經(jīng)成為人們發(fā)布、獲取信息的重要方式,在人們的工作和生活中發(fā)揮著越來(lái)越重要的作用,在網(wǎng)絡(luò)上為用戶提供方便快速的服務(wù)、實(shí)現(xiàn)學(xué)生和教師的溝通和交流,并為用戶提供方便的軟件系統(tǒng)是一種必然趨勢(shì)。
湖北汽車工業(yè)學(xué)院計(jì)算機(jī)工程與軟件實(shí)驗(yàn)中心主要承擔(dān)全校公共計(jì)算機(jī)基礎(chǔ)課的實(shí)踐教學(xué)以及計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)、軟件工程專業(yè)、電氣自動(dòng)化專業(yè)、信息管理與信息系統(tǒng)專業(yè)和電子信息工程專業(yè)共計(jì)28 門課程的172個(gè)實(shí)驗(yàn)項(xiàng)目的實(shí)驗(yàn)教學(xué)任務(wù),并承擔(dān)課程設(shè)計(jì)、畢業(yè)設(shè)計(jì)和教學(xué)科研等實(shí)驗(yàn)內(nèi)容。目前,計(jì)算機(jī)工程與軟件實(shí)驗(yàn)中心下設(shè)嵌入式系統(tǒng)實(shí)驗(yàn)室、微機(jī)硬件基礎(chǔ)實(shí)驗(yàn)室、計(jì)算機(jī)網(wǎng)絡(luò)實(shí)驗(yàn)室、軟件基礎(chǔ)實(shí)驗(yàn)室和軟件設(shè)計(jì)實(shí)驗(yàn)室,如何合理規(guī)劃、管理實(shí)驗(yàn)室教學(xué)資源和實(shí)驗(yàn)教學(xué)內(nèi)容,對(duì)推動(dòng)實(shí)驗(yàn)室的建設(shè)和發(fā)展具有深遠(yuǎn)的意義。因此,建立實(shí)驗(yàn)室教學(xué)管理系統(tǒng),有利于實(shí)現(xiàn)教學(xué)管理的規(guī)范化、流程化和信息化,提高教學(xué)質(zhì)量、管理水平和服務(wù)水平,為實(shí)驗(yàn)室的全面開(kāi)放和資源利用提供有力保障[1-5]。
實(shí)驗(yàn)室教學(xué)管理系統(tǒng),包括前臺(tái)頁(yè)面信息顯示和后臺(tái)頁(yè)面信息維護(hù)兩大部分。根據(jù)系統(tǒng)的功能需求,對(duì)系統(tǒng)功能進(jìn)行歸類劃分,設(shè)計(jì)出系統(tǒng)的功能模塊圖,如圖1所示。
圖1 實(shí)驗(yàn)室教學(xué)管理系統(tǒng)功能模塊
前臺(tái)應(yīng)用主要實(shí)現(xiàn)了實(shí)驗(yàn)室教學(xué)管理系統(tǒng)中各種信息的查看和搜索功能。前臺(tái)用戶操作流程如圖2所示。
圖2 前臺(tái)用戶操作流程圖
后臺(tái)應(yīng)用主要實(shí)現(xiàn)了實(shí)驗(yàn)室教學(xué)管理系統(tǒng)中各項(xiàng)功能設(shè)置,包括網(wǎng)站系統(tǒng)管理、欄目?jī)?nèi)容管理、用戶管理和系統(tǒng)安全管理四大模塊。后臺(tái)管理員操作流程圖如圖3所示。
圖3 后臺(tái)管理員操作流程圖
數(shù)據(jù)庫(kù)是系統(tǒng)運(yùn)行的基礎(chǔ),為了便于以后系統(tǒng)開(kāi)發(fā)、維護(hù)和擴(kuò)展,在數(shù)據(jù)庫(kù)的設(shè)計(jì)開(kāi)發(fā)過(guò)程中嚴(yán)格按照數(shù)據(jù)庫(kù)規(guī)范設(shè)計(jì)的要求:
1)規(guī)范數(shù)據(jù)庫(kù)應(yīng)用結(jié)構(gòu)
將數(shù)據(jù)庫(kù)和程序系統(tǒng)統(tǒng)一進(jìn)行整體描述,展示數(shù)據(jù)庫(kù)與應(yīng)用程序模塊間的關(guān)系;根據(jù)處理特點(diǎn),將數(shù)據(jù)表和程序模塊進(jìn)行分類如下:業(yè)務(wù)數(shù)據(jù)表,記錄數(shù)據(jù)發(fā)生、處理的過(guò)程和結(jié)果;基本編碼表,描述業(yè)務(wù)實(shí)體的基本信息和編碼;輔助編碼表,描述屬性的列表值;系統(tǒng)信息表,統(tǒng)計(jì)信息數(shù)據(jù)。
2)規(guī)范數(shù)據(jù)庫(kù)命名
在數(shù)據(jù)庫(kù)設(shè)計(jì)中,應(yīng)對(duì)數(shù)據(jù)庫(kù)對(duì)象的命名做到見(jiàn)名知意,包括表、視圖、存儲(chǔ)過(guò)程等。
為了提高系統(tǒng)程序的可重用性、可維護(hù)性、可擴(kuò)展性,優(yōu)化整個(gè)系統(tǒng)的設(shè)計(jì)模式,提高軟件的運(yùn)行效率,管理系統(tǒng)采用B/S 架構(gòu),利用PHP+MySQL+Jquery+AJAX技術(shù)整合開(kāi)發(fā),利用各種技術(shù)強(qiáng)大的功能性和可擴(kuò)展性更好地解決了實(shí)驗(yàn)室管理中存在的各種問(wèn)題。本系統(tǒng)前后臺(tái)頁(yè)面采用PHP 服務(wù)器端腳本語(yǔ)言進(jìn)行開(kāi)發(fā),后臺(tái)采用MySQL 數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)管理,前、后臺(tái)頁(yè)面中運(yùn)用了Jquery+AJAX技術(shù),增強(qiáng)了用戶使用體驗(yàn)。B/S結(jié)構(gòu)(Browser/Server,瀏覽器/服務(wù)器模式),是WEB興起后的一種網(wǎng)絡(luò)結(jié)構(gòu)模式,WEB 瀏覽器是客戶端最主要的應(yīng)用軟件。這種模式統(tǒng)一了客戶端,將系統(tǒng)功能實(shí)現(xiàn)的核心部分集中到服務(wù)器上,簡(jiǎn)化了系統(tǒng)的開(kāi)發(fā)、維護(hù)和使用。Jquery是一個(gè)優(yōu)秀的Javascript 框架,它是輕量級(jí)的js 庫(kù)可以方便地為網(wǎng)站提供AJAX 交互。AJAX是異步JavaScript及XML(Asynchronous JavaScript And XML),AJAX在瀏覽器與Web 服務(wù)器之間使用異步數(shù)據(jù)傳輸(HTTP 請(qǐng)求),使用Javascript向服務(wù)器提出請(qǐng)求并處理響應(yīng)而不阻塞用戶,它的核心對(duì)象是XMLHTTPRequest,通過(guò)AJAX技術(shù)的引入,JavaScript可在不重載頁(yè)面的情況下與Web 服務(wù)器交換數(shù)據(jù),這樣就可使網(wǎng)頁(yè)從服務(wù)器請(qǐng)求少量的信息,而不是整個(gè)頁(yè)面,節(jié)約了服務(wù)器資源[6-12]。
根據(jù)系統(tǒng)總體功能需求分析,將整個(gè)管理系統(tǒng)劃分為不同的功能模塊。整個(gè)頁(yè)面設(shè)計(jì)采用HTML+CSS 現(xiàn)代網(wǎng)頁(yè)設(shè)計(jì)和布局方式,頁(yè)面腳本語(yǔ)言采用PHP+Jquery+AJAX技術(shù)整合開(kāi)發(fā),系統(tǒng)按照不同功能在MySQL 數(shù)據(jù)庫(kù)中將實(shí)體劃分為表進(jìn)行設(shè)計(jì),系統(tǒng)首頁(yè)面顯示效果如圖4所示。由于篇幅限制,下面對(duì)系統(tǒng)主要功能模塊的實(shí)現(xiàn)進(jìn)行詳細(xì)說(shuō)明。
該功能模塊實(shí)現(xiàn)管理系統(tǒng)用戶信息的管理。包括學(xué)生注冊(cè)用戶、教師和管理員3種角色。注冊(cè)用戶通過(guò)實(shí)名注冊(cè)后,可以在前臺(tái)頁(yè)面中進(jìn)行信息的查看,同時(shí)對(duì)所關(guān)注的內(nèi)容進(jìn)行評(píng)論和留言;如果是以游客身份進(jìn)入前臺(tái)頁(yè)面,則只能進(jìn)行信息的查看,沒(méi)有評(píng)論和瀏覽的權(quán)限。教師角色由系統(tǒng)管理員進(jìn)行添加,添加后可以在后臺(tái)管理頁(yè)面中進(jìn)行新聞、文章、課表、實(shí)驗(yàn)課程信息和實(shí)驗(yàn)項(xiàng)目信息內(nèi)容進(jìn)行管理,同時(shí)在前臺(tái)頁(yè)面中對(duì)學(xué)生評(píng)論和留言進(jìn)行回復(fù)。管理員角色可以進(jìn)行站點(diǎn)信息的設(shè)置、用戶管理以及教師所擁有的所有權(quán)限。
實(shí)驗(yàn)室新聞和教學(xué)課程文章的查看和管理功能,是本系統(tǒng)核心功能之一,教師和管理員可以通過(guò)后臺(tái)管理界面按照類別添加各種信息內(nèi)容,對(duì)于MySQL 數(shù)據(jù)庫(kù)中大文本數(shù)據(jù)類型(text類型),管理系統(tǒng)提供了類似word的文本編輯器(kindeditor),可以對(duì)文章內(nèi)容進(jìn)行排版編輯,同時(shí),管理系統(tǒng)配有文件上傳組件和圖片批量上傳功能,方便圖片新聞和文章的管理,增強(qiáng)了用戶體驗(yàn),美化了大文本內(nèi)容的顯示效果。新聞模塊主要實(shí)現(xiàn)代碼如下:
實(shí)驗(yàn)課程信息的查看和管理功能,也是本系統(tǒng)核心功能之一。學(xué)生和教師可以通過(guò)系統(tǒng)首頁(yè)面查看實(shí)驗(yàn)室所開(kāi)設(shè)的所有實(shí)驗(yàn)課程基本信息,同時(shí)通過(guò)展開(kāi)課程信息標(biāo)題,可以查看該課程下所開(kāi)設(shè)的所有實(shí)驗(yàn)項(xiàng)目基本信息,通過(guò)點(diǎn)擊實(shí)驗(yàn)課程和實(shí)驗(yàn)項(xiàng)目標(biāo)題則可以進(jìn)入相關(guān)內(nèi)容的詳細(xì)信息查看,實(shí)驗(yàn)課程信息顯示如圖4所示。
圖4 實(shí)驗(yàn)課程信息顯示模塊
在該模塊中利用了Jquery技術(shù)實(shí)現(xiàn)了實(shí)驗(yàn)課程信息和實(shí)驗(yàn)項(xiàng)目信息的級(jí)聯(lián)顯示效果,同時(shí)利用AJAX技術(shù)實(shí)現(xiàn)了課程信息內(nèi)容分頁(yè)顯示效果,按照用戶需求顯示信息內(nèi)容。首頁(yè)面中課程信息模塊默認(rèn)顯示10條課程信息記錄,當(dāng)課程信息較多時(shí),可以分頁(yè)進(jìn)行顯示,按照以往頁(yè)面訪問(wèn)方式,當(dāng)用戶請(qǐng)求指定頁(yè)數(shù)的課程信息內(nèi)容時(shí),勢(shì)必要向服務(wù)器發(fā)送一次請(qǐng)求,服務(wù)器返回包含指定頁(yè)數(shù)課程信息的整個(gè)首頁(yè)面,然后客戶端更新整個(gè)首頁(yè)面,用戶必須在此次請(qǐng)求中處于等待狀態(tài),如果網(wǎng)速較快可能感覺(jué)不出等待延時(shí),而當(dāng)網(wǎng)速較慢時(shí),用戶則需花費(fèi)幾秒的等待時(shí)間,使用戶感覺(jué)到厭煩。而采用了AJAX技術(shù)后,用戶發(fā)送一次請(qǐng)求,服務(wù)器只需返回指定頁(yè)數(shù)的課程信息內(nèi)容,然后客戶端只用更新課程信息模塊中的部分信息內(nèi)容,而首頁(yè)面整體無(wú)需更新,用戶在等待過(guò)程中還可以瀏覽首頁(yè)面其他信息內(nèi)容,增強(qiáng)了用戶體驗(yàn)。
圖5 后臺(tái)實(shí)驗(yàn)課程信息顯示模塊
在后臺(tái)實(shí)驗(yàn)課程信息管理模塊中,同樣采用Jquery+AJAX技術(shù)實(shí)現(xiàn)實(shí)驗(yàn)課程信息和實(shí)驗(yàn)項(xiàng)目信息的維護(hù),實(shí)驗(yàn)項(xiàng)目管理采用級(jí)聯(lián)結(jié)構(gòu)可以方便管理實(shí)驗(yàn)課程和實(shí)驗(yàn)項(xiàng)目之間的隸屬關(guān)系。實(shí)驗(yàn)課程大綱和實(shí)驗(yàn)項(xiàng)目?jī)?nèi)容的維護(hù),系統(tǒng)同樣提供了類似word的文本編輯器,可以對(duì)大文本內(nèi)容進(jìn)行排版編輯,同時(shí)提供實(shí)驗(yàn)大綱和實(shí)驗(yàn)指導(dǎo)書的上傳管理功能。該模塊頁(yè)面后臺(tái)顯示效果如圖5所示。
數(shù)據(jù)庫(kù)管理員通過(guò)后臺(tái)頁(yè)面登錄管理系統(tǒng)進(jìn)行數(shù)據(jù)庫(kù)的管理操作,管理員密碼通過(guò)2次加密以密文的方式保存在數(shù)據(jù)庫(kù)中,即使密碼泄露,其他人看到的也是加密后的數(shù)據(jù)庫(kù),無(wú)法直接破譯密碼,確保數(shù)據(jù)庫(kù)管理系統(tǒng)的后臺(tái)安全性。
數(shù)據(jù)庫(kù)管理模塊是系統(tǒng)的安全中心,數(shù)據(jù)庫(kù)在使用過(guò)程中難免會(huì)出現(xiàn)各種各樣的問(wèn)題導(dǎo)致數(shù)據(jù)的丟失,這對(duì)數(shù)據(jù)庫(kù)管理系統(tǒng)來(lái)說(shuō)是致命的。如何有效的保護(hù)數(shù)據(jù)庫(kù)中的數(shù)據(jù)是數(shù)據(jù)庫(kù)管理系統(tǒng)所面臨的關(guān)鍵問(wèn)題。本系統(tǒng)提供了數(shù)據(jù)庫(kù)的備份和還原操作,能夠?qū)?shù)據(jù)庫(kù)結(jié)構(gòu)和數(shù)據(jù)備份至本地硬盤,在數(shù)據(jù)庫(kù)出現(xiàn)問(wèn)題時(shí),能夠恢復(fù)到最近備份的時(shí)間點(diǎn),確保數(shù)據(jù)的正確性。同時(shí),系統(tǒng)還提供了數(shù)據(jù)庫(kù)操作的一些實(shí)用工具,能夠查看在后臺(tái)頁(yè)面中查看數(shù)據(jù)庫(kù)中表的結(jié)構(gòu)、修復(fù)和優(yōu)化數(shù)據(jù)庫(kù)表結(jié)構(gòu)、執(zhí)行數(shù)據(jù)庫(kù)操作的SQL 語(yǔ)句等,大大增強(qiáng)了管理系統(tǒng)的實(shí)用性和高效性。
文件和圖片上傳是本系統(tǒng)經(jīng)常用到的功能之一,在系統(tǒng)長(zhǎng)期使用過(guò)程中,難免會(huì)出現(xiàn)上傳文件和圖片資源已經(jīng)失效,無(wú)需再保留的情況。如果通過(guò)純手工刪除無(wú)效的資源,勢(shì)必會(huì)增加管理員的工作量,而且極易出現(xiàn)資源刪除錯(cuò)誤的情況。針對(duì)這個(gè)問(wèn)題,系統(tǒng)開(kāi)發(fā)了上傳文件管理功能,提供了清理未使用文件的功能,所有上傳文件和圖片都會(huì)在數(shù)據(jù)庫(kù)中記錄,當(dāng)某個(gè)資源不再使用時(shí),可以通過(guò)該功能刪除無(wú)效的資源,確保系統(tǒng)中上傳數(shù)據(jù)的正確性。
基于B/S模式的實(shí)驗(yàn)教學(xué)管理系統(tǒng),采用PHP+MySQL+JQuery+AJAX技術(shù)相結(jié)合的模塊化設(shè)計(jì)方法,有效實(shí)現(xiàn)了實(shí)踐教學(xué)資源的實(shí)時(shí)性和開(kāi)放性,該系統(tǒng)已投入正常教學(xué)管理中使用,推動(dòng)了實(shí)驗(yàn)室管理的可持續(xù)性發(fā)展,極大提高了工作效率和管理水平,促進(jìn)了實(shí)踐教學(xué)的規(guī)范化和網(wǎng)絡(luò)化建設(shè)。
[1]吳志鋒,柯崇榕,吳敏霞,等.基于Web的實(shí)驗(yàn)教學(xué)中心管理系統(tǒng)設(shè)計(jì)[J].實(shí)驗(yàn)室研究與探索,2010,29(11):365-368.
[2]詹福建,許可,張東方,等.整合資源,優(yōu)化資源共享,促進(jìn)實(shí)驗(yàn)室全面開(kāi)放[J].實(shí)驗(yàn)技術(shù)與管理,2011,28(11):343-345。
[3]魏偉.加強(qiáng)實(shí)驗(yàn)教學(xué)示范中心網(wǎng)絡(luò)化管理[J].實(shí)驗(yàn)室研究與探索,2009,28(11):84-87.
[4]陳雪梅,陳曉輝,關(guān)樹柱.網(wǎng)絡(luò)支持下的實(shí)驗(yàn)中心建設(shè)新思路[J].實(shí)驗(yàn)技術(shù)與管理,2008,25(3):96-99.
[5]任光輝,趙揚(yáng),彭志廣.基于網(wǎng)絡(luò)平臺(tái)的實(shí)驗(yàn)室管理系統(tǒng)研究與實(shí)踐[J].實(shí)驗(yàn)室科學(xué),2009(5):110-112.
[6]張艷伶,黃聲烈,金京姬.實(shí)驗(yàn)教學(xué)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].實(shí)驗(yàn)技術(shù)與管理,2009,26(6):87-90.
[7]韋久玲,何蘇勤,蔣文春.實(shí)驗(yàn)教學(xué)網(wǎng)絡(luò)管理系統(tǒng)的設(shè)計(jì)與應(yīng)用[J].實(shí)驗(yàn)技術(shù)與管理,2009,26(6):87-90.
[8]高立民,楊繼清,羅鳴,等.實(shí)驗(yàn)教學(xué)中心管理平臺(tái)的構(gòu)建[J].實(shí)驗(yàn)室研究與探索,2013,32(6):116-218.
[9]黃聲烈,孫文廣,石景海.實(shí)驗(yàn)教學(xué)管理信息系統(tǒng)設(shè)計(jì)及應(yīng)用[J].實(shí)驗(yàn)室研究與探索,2009,28(11):197-200.
[10]許又泉,李仁發(fā),蘇立珍.基于WEB的開(kāi)放式實(shí)驗(yàn)室管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].實(shí)驗(yàn)室研究與探索,2007,26(3):64-66.
[11]陳必峰.基于AJAX的富客戶端技術(shù)及應(yīng)用[J].計(jì)算機(jī)科學(xué),2011,38(10):419-420.
[12]惠玥,張玉春.基于AJAX的實(shí)驗(yàn)教學(xué)平臺(tái)設(shè)計(jì)與開(kāi)發(fā)[J].實(shí)驗(yàn)技術(shù)與管理,2011,28(1):55-58.