胡傳志,李躍華
(南通大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,江蘇 南通 226000)
高校計(jì)算機(jī)實(shí)驗(yàn)室管理系統(tǒng)的設(shè)計(jì)思路及方法
胡傳志,李躍華
(南通大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,江蘇 南通 226000)
利用現(xiàn)有的軟件和技術(shù),結(jié)合自己的實(shí)際工作經(jīng)驗(yàn),在參考和學(xué)習(xí)大量文獻(xiàn)資料的基礎(chǔ)上,對基于校園網(wǎng)環(huán)境下的計(jì)算機(jī)機(jī)房管理系統(tǒng)進(jìn)行深入研究,分析高校計(jì)算機(jī)機(jī)房管理體系的結(jié)構(gòu),提出高校計(jì)算機(jī)機(jī)房管理系統(tǒng)的設(shè)計(jì)方案及實(shí)現(xiàn)過程。該系統(tǒng)具有廣泛的推廣與實(shí)用價值。
機(jī)房;管理系統(tǒng);客戶/服務(wù)器模式;Winsock
高校計(jì)算機(jī)機(jī)房管理系統(tǒng)對于進(jìn)一步提高高校計(jì)算機(jī)機(jī)房的現(xiàn)代化管理水平,充分利用教學(xué)儀器和設(shè)備資源,提高管理的效率和質(zhì)量,降低管理人員的人工管理強(qiáng)度,節(jié)約人力資源等具有重要的現(xiàn)實(shí)意義。
軟件體系結(jié)構(gòu)為軟件系統(tǒng)提供了一個結(jié)構(gòu)、行為和屬性的高級抽象,由構(gòu)成系統(tǒng)的元素的描述、這些元素的相互作用、指導(dǎo)元素集成的模式和這些模式的約束組成。軟件體系結(jié)構(gòu)不但指定了系統(tǒng)的組織結(jié)構(gòu)和拓?fù)浣Y(jié)構(gòu),而且顯示了系統(tǒng)需求和構(gòu)成系統(tǒng)的各元素之間的對應(yīng)關(guān)系,提供了一些設(shè)計(jì)決策的基本原理。
(一)C/S模式
C/S模式屬于一個“邏輯”概念,在邏輯上將整個系統(tǒng)劃分成前端客戶進(jìn)程和后臺服務(wù)器進(jìn)程兩部分。前端的客戶應(yīng)用程序主要用于與用戶進(jìn)行交互及顯示界面等;而負(fù)責(zé)進(jìn)行數(shù)據(jù)處理,將處理后的結(jié)果返回給用戶的任務(wù)則由后臺的服務(wù)器進(jìn)程來完成。整個過程中,服務(wù)器所進(jìn)行的工作對客戶應(yīng)用程序來說是完全不可見的、透明的。
隨著應(yīng)用的大型化,傳統(tǒng)二層C/S結(jié)構(gòu)存在的局限性越來越不能滿足分布式應(yīng)用的要求,因此逐漸向三層C/S結(jié)構(gòu)靠攏并過渡。三層C/S結(jié)構(gòu)將應(yīng)用功能分成表示層、中間層和數(shù)據(jù)層三個部分,如圖1所示。
圖1 三層C/S結(jié)構(gòu)圖
(二)B/S模式
B/S(Browser/Server,瀏覽器/服務(wù)器)模式是一種新型的系統(tǒng)平臺模式,以Web技術(shù)為基礎(chǔ),將原來C/S模式中的服務(wù)器部分分為數(shù)據(jù)庫服務(wù)器和Web服務(wù)器,從而變成三層結(jié)構(gòu)。在此結(jié)構(gòu)下,用戶操作完全通過瀏覽器實(shí)現(xiàn),主要事務(wù)邏輯在服務(wù)器端。三層B/S結(jié)構(gòu)如圖2所示。
圖2 三層B/S結(jié)構(gòu)圖
B/S模式的優(yōu)點(diǎn)主要體現(xiàn)在以下方面:一是操作簡單。B/S模式的客戶端只要安裝一個如IE之類的、可以提供友好界面的、通用的瀏覽器,即可實(shí)現(xiàn)操作。二是可伸縮性強(qiáng)。在允許的條件下可以不受原有網(wǎng)絡(luò)資源的影響而盡可能多地增加服務(wù)器和瀏覽器的特性。三是易開發(fā)、安裝和維護(hù)。 B/S結(jié)構(gòu)只需對服務(wù)器端的應(yīng)用平臺進(jìn)行開發(fā)和集成,減少了開發(fā)、安裝和維護(hù)費(fèi)用。
Socket中的函數(shù)調(diào)用Socket(),是一個類似于打開文件的函數(shù),它可以進(jìn)行建立連接、傳輸數(shù)據(jù)等操作,最終返回一個整型的Socket描述符。也就是說,Socket也是一種文件描述符,其數(shù)據(jù)傳輸是一種特殊的I/O。其接口示意圖如圖3所示。
創(chuàng)建TCP通信的過程如下:
服務(wù)器端:
(1)創(chuàng)建服務(wù)器套接字(socket);
(2)服務(wù)器套接字進(jìn)行信息綁定(bind),并開始監(jiān)聽連接(listen);
(3)接受來自用戶端的連接請求(accept);
(4)開始數(shù)據(jù)傳輸(send/receive);
(5)關(guān)閉套接字(closesocket)。
客戶端:
(1)創(chuàng)建用戶套接字(socket);
(2)與遠(yuǎn)程服務(wù)器進(jìn)行連接(connect),如被接受,則創(chuàng)建接收進(jìn)程;
(3)開始數(shù)據(jù)傳輸(send/receive);
(4)關(guān)閉套接字(closesocket)。
面向連接的Winsock編程模型如圖4所示。
在Windows操作系統(tǒng)中,Winsock開發(fā)使用的編程語言有Visaul C++、Visual Basic、Delphi、Java等。其中,以VC++使用最為普遍,它與Winsock的結(jié)合也最為緊密,并且VC++對原來的Winsock庫函數(shù)進(jìn)行了一系列的封裝,繼而產(chǎn)生了CAsynSocket、Csocket、CsocketFile等類,它們封裝了有關(guān)Socket的各種功能,使整個編程變得更加簡單可行。
(一)SQL Server 2000數(shù)據(jù)庫
SQL Server 2000采用客戶/服務(wù)器計(jì)算機(jī)模型,即中央服務(wù)器用來存儲數(shù)據(jù)庫,該臺服務(wù)器可以被多臺客戶機(jī)訪問,數(shù)據(jù)庫應(yīng)用的處理過程分布在客戶機(jī)和服務(wù)器上。SQL Server 2000的新特性主要體現(xiàn)在以下方面。
1.關(guān)系數(shù)據(jù)庫方面的特性
XML語言的支持;新數(shù)據(jù)類型BIGINT、SQL_VARIANT、TABLER的支持;用戶自定義函數(shù)的創(chuàng)建;分布式查詢器功能的提高;聯(lián)合數(shù)據(jù)庫服務(wù)器,多個SQL Server 2000支持在同一臺計(jì)算機(jī)上同時運(yùn)行多個關(guān)系數(shù)據(jù)庫實(shí)例。
2.其他新特性
日志裝載:允許事務(wù)日志從源數(shù)據(jù)庫中持續(xù)備份,并同時裝載到位于另一個服務(wù)器的目標(biāo)數(shù)據(jù)庫;查詢分析器的功能增強(qiáng)。
(二)現(xiàn)實(shí)環(huán)境分析
高校計(jì)算機(jī)機(jī)房管理系統(tǒng)是建立在目前學(xué)校的硬件、軟件、網(wǎng)絡(luò)及管理機(jī)制之上的,為此,其設(shè)計(jì)要考慮這些環(huán)境的變化情況,以提高系統(tǒng)的適應(yīng)性。校園網(wǎng)大多實(shí)現(xiàn)了網(wǎng)通、教育網(wǎng)雙出口,企業(yè)級核心路由器通過萬兆鏈路連接核心交換層,交換層通過千兆光纖鏈路連接匯聚層(樓層交換機(jī)),達(dá)到了“萬兆核心,千兆交換,百兆桌面”的目標(biāo),具體如圖5所示。
機(jī)房機(jī)器使用頻繁,出于安全考慮,幾乎所有學(xué)校計(jì)算機(jī)機(jī)房內(nèi)的計(jì)算機(jī)都設(shè)置了硬盤保護(hù):有的機(jī)房用硬件(如同方還原卡、小哨兵還原卡等)實(shí)現(xiàn)硬盤保護(hù),有的機(jī)房用軟件(如還原精靈、冰點(diǎn)還原等)實(shí)現(xiàn)硬盤保護(hù)。保護(hù)時,可以根據(jù)需要設(shè)置計(jì)算機(jī)系統(tǒng)的C盤、D盤等盤中的數(shù)據(jù)恢復(fù)方式。為了避免ARP病毒,采用MAC地址綁定,有效保證系統(tǒng)程序不被破壞。機(jī)房管理系統(tǒng)的客戶端程序不僅需要在硬盤保護(hù)模式下能正常運(yùn)行,還需要安裝方便,兼容多種操作系統(tǒng),且不能影響其他軟件的正常使用。
(三)系統(tǒng)建模
在系統(tǒng)分析的過程中,廣泛采用的技術(shù)是用一系列系統(tǒng)模型來描述。這些模型是用圖形、公式或文字來表述問題和整個系統(tǒng)的,較自然語言的描述更易于理解。對模型的描述還是系統(tǒng)分析與設(shè)計(jì)之間的重要橋梁。系統(tǒng)必須被建模成一系列組件和組件間的關(guān)系。這些以圖形、公式或文字形式進(jìn)行的描述在系統(tǒng)體系結(jié)構(gòu)模型中可以給讀者一個系統(tǒng)組織的總體概念。系統(tǒng)分析過程是指認(rèn)識、理解當(dāng)前的現(xiàn)實(shí)環(huán)境,獲得當(dāng)前系統(tǒng)的物理模型;從物理模型抽象出邏輯模型;對邏輯模型進(jìn)行分析和優(yōu)化,建立目標(biāo)系統(tǒng)的邏輯模型;將目標(biāo)系統(tǒng)的邏輯模型具體化,建立目標(biāo)系統(tǒng)的物理模型。
系統(tǒng)在進(jìn)行操作時,不能給操作人員造成很卡或死機(jī)的感覺,要能及時響應(yīng)用戶的各種操作。系統(tǒng)的數(shù)據(jù)庫要能處理100萬條以上的記錄,且業(yè)務(wù)處理時間平均限制在3秒以內(nèi)。系統(tǒng)必須高效、穩(wěn)定、可靠地運(yùn)行,能保證在一周內(nèi)不間斷地運(yùn)行,且不易出現(xiàn)故障,如出現(xiàn)故障則可及時修復(fù)。
系統(tǒng)可支持注冊用戶萬人以上,同時在線用戶最高可達(dá)1800人以上,并發(fā)用戶500人以上。對于收費(fèi)部分?jǐn)?shù)據(jù)的計(jì)算,必須保證其準(zhǔn)確性,不能出現(xiàn)誤差,避免不必要的矛盾和沖突。系統(tǒng)中的所有數(shù)據(jù),要有一個科學(xué)規(guī)范的統(tǒng)計(jì)報表來進(jìn)行核對檢查。系統(tǒng)中數(shù)據(jù)的保存要有效、完善、安全,確保系統(tǒng)性能穩(wěn)定、高效。
系統(tǒng)結(jié)構(gòu)的設(shè)計(jì)決定系統(tǒng)的實(shí)現(xiàn)策略。下面從軟件體系結(jié)構(gòu)及數(shù)據(jù)庫兩個角度出發(fā)來對系統(tǒng)結(jié)構(gòu)進(jìn)行描述。
整體上,我們將系統(tǒng)設(shè)計(jì)為五個模塊:服務(wù)器端系統(tǒng)模塊、網(wǎng)上預(yù)約系統(tǒng)模塊、財務(wù)端系統(tǒng)模塊、管理員端系統(tǒng)模塊和學(xué)生客戶端系統(tǒng)模塊,其中后三個模塊都屬于客戶端系統(tǒng)模塊。機(jī)房管理系統(tǒng)模塊功能結(jié)構(gòu)如圖6所示。
服務(wù)器端主要實(shí)現(xiàn)所有的監(jiān)控和管理功能,又可分為多個功能模塊。操作人員和客戶端發(fā)請求到數(shù)據(jù)庫,數(shù)據(jù)庫調(diào)用SQL語言來完成各種操作,一般都是由服務(wù)器端代理實(shí)現(xiàn),系統(tǒng)運(yùn)行效率較高。
(一)白盒測試
白盒測試是檢查程序的內(nèi)部設(shè)計(jì),測試產(chǎn)品的內(nèi)部結(jié)構(gòu)和處理過程。這種方法把測試對象看成是一個透明的盒子,測試員了解程序的內(nèi)容結(jié)構(gòu)和處理過程,以檢查處理過程為目的,對程序中盡可能多的邏輯路徑進(jìn)行測試,在所有的點(diǎn)檢驗(yàn)內(nèi)部控制結(jié)構(gòu)和數(shù)據(jù)結(jié)構(gòu)是否與預(yù)期相同,又被稱為結(jié)構(gòu)測試或邏輯測試。白盒測試一般以程序的內(nèi)部邏輯結(jié)構(gòu)為基礎(chǔ)來設(shè)計(jì)測試用例,檢查程序中的邏輯通路是否都按預(yù)定的要求正確工作,其具體方法主要是邏輯覆蓋。由于覆蓋的詳盡程度不同,邏輯覆蓋由弱到強(qiáng)又分為語句、判定、條件、判定/條件、條件組合和路徑覆蓋等。
(二)黑盒測試
黑盒測試主要是檢查軟件的功能需求。這種測試把測試對象看成是一個不透明的黑色盒子,依據(jù)程序的需求規(guī)格說明書進(jìn)行,無須考慮程序的內(nèi)部邏輯結(jié)構(gòu)和內(nèi)部特性,又被稱為功能測試或數(shù)據(jù)驅(qū)動測試。黑盒測試一般是在測試的后期使用,測試用例設(shè)計(jì)方法主要包括等價類劃分、邊界值分析、錯誤推測法、因果圖等。
因?yàn)闆]有哪一種測試方法是最好的,發(fā)現(xiàn)錯誤的能力最強(qiáng),且每種方法一般都適合于發(fā)現(xiàn)某種特定類的錯誤,所以在實(shí)際測試中,一般聯(lián)合使用各種測試方法,形成綜合策略,先用黑盒法設(shè)計(jì)基本的測試用例,再用白盒法補(bǔ)充必要的測試用例。
本文以實(shí)現(xiàn)機(jī)房的規(guī)范化、自動化、科學(xué)化管理,減輕管理人員的勞動強(qiáng)度,提高工作效率為目標(biāo),在分析計(jì)算機(jī)機(jī)房管理系統(tǒng)需求的基礎(chǔ)上,以網(wǎng)絡(luò)通信技術(shù)和數(shù)據(jù)庫訪問技術(shù)為手段,提出了采用分布式網(wǎng)絡(luò)結(jié)構(gòu)三層C/S模式設(shè)計(jì),實(shí)現(xiàn)網(wǎng)絡(luò)機(jī)房管理及計(jì)算機(jī)設(shè)備的管理和控制,通過B/S模式,設(shè)計(jì)機(jī)房網(wǎng)上預(yù)約上機(jī)的遠(yuǎn)程調(diào)度和信息查詢,架構(gòu)機(jī)房管理系統(tǒng)的模型。系統(tǒng)使用基于TCP/IP協(xié)議及網(wǎng)絡(luò)底層控制技術(shù)、Winsock編程技術(shù)、數(shù)據(jù)庫系統(tǒng)SQL Server 2000和ODBC等來實(shí)現(xiàn)系統(tǒng)功能,確保系統(tǒng)的穩(wěn)定性、安全性,實(shí)現(xiàn)了從高校實(shí)驗(yàn)實(shí)訓(xùn)教學(xué)管理角度出發(fā),進(jìn)行實(shí)驗(yàn)實(shí)訓(xùn)教學(xué)提前預(yù)約、計(jì)算機(jī)設(shè)備管理、機(jī)房管理的整體化管理,提高了設(shè)備的利用率,有效節(jié)約了人力、物力資源。
[1]王亮.基于ThinkPHP的RSS閱讀系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].武漢:華中科技大學(xué),2012.
[2]蔣明.基于WEB的機(jī)械設(shè)備遠(yuǎn)程狀態(tài)監(jiān)測系統(tǒng)研究[D].昆明:昆明理工大學(xué), 2009.
[3]任雪蓮.軟件體系結(jié)構(gòu)在軟件開發(fā)過程中的實(shí)踐研究[J].才智, 2009,(1).
[4]林浩亮.軟件體系結(jié)構(gòu)在高校教務(wù)管理系統(tǒng)開發(fā)中的應(yīng)用[J].科技信息(學(xué)術(shù)研究), 2008,(15).
[責(zé)任編輯:羅 香]
DesignIdeasandMethodsofUniversityComputerLabManagementSystem
HU Chuan-zhi, LI Yue-hua
(SchoolofComputerScienceandTechnology,NantongUniversity,Nantong226000,Jiangsu,China)
By means of using the existing software and technology, combining with actual work experience and referring a lot of literatures, the author discusses the computer labs management system based on campus network, analyses the structure of college computer labs management system and proposes the design and implementation of the system, which has the widely promoted and practical value.
labs; management system; client/server mode; Winsock
2014-05-04
南通市應(yīng)用研究項(xiàng)目“基于物聯(lián)網(wǎng)技術(shù)的危重癥臨床輔助智慧監(jiān)護(hù)系統(tǒng)研究”(BK2012068)
胡傳志(1977—),男,南通大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院實(shí)驗(yàn)師; 李躍華(1977—),男,南通大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院副教授。
G647
:A
:1672-2604(2014)05-0057-04
江蘇經(jīng)貿(mào)職業(yè)技術(shù)學(xué)院學(xué)報2014年5期