高校教材信息管理系統(tǒng)案例
[課堂案例分析]案例51 基于Web 的高校教材查詢系統(tǒng)的分析與設(shè)計(jì)1. 開發(fā)背景**高校是一所綜合性高校,其涉及的專業(yè)課程多,教材用書種類多,數(shù)量大,傳統(tǒng)的管理方法存在著效率低,易出錯(cuò)等諸多弊端,特
[課堂案例分析]
案例51 基于Web 的高校教材查詢系統(tǒng)的分析與設(shè)計(jì)
1. 開發(fā)背景
**高校是一所綜合性高校,其涉及的專業(yè)課程多,教材用書種類多,數(shù)量大,傳統(tǒng)的管理方法存在著效率低,易出錯(cuò)等諸多弊端,特別是學(xué)生、教師對教材使用情況了解相對較少,信息的透明度較低,與當(dāng)前高校管理中倡導(dǎo)的“以人為本”的管理思想存在著很大的差距。為此該校教材科開發(fā)了一套基于C/S的教材管理信息系統(tǒng)。該系統(tǒng)主要包括以下六項(xiàng)處理功能:系統(tǒng)維護(hù)、教材訂購計(jì)劃管理、教材庫存管理、教材銷售處理、學(xué)生預(yù)收款管理、數(shù)據(jù)統(tǒng)計(jì)、查詢與分析等功能。但是由于基于C/S的管理信息系統(tǒng)自身存在的使用范圍小、地點(diǎn)固定等缺點(diǎn),依然不能滿足管理上的需要。如學(xué)生想知道教材科是否有某本書、想了解自己教材款的使用情況,一方面浪費(fèi)了學(xué)生和教師的時(shí)間和精力,另一方面也加大了教材科的工作量,為此教材科希望在原有的基于C/S的教材管理信息系統(tǒng)的基礎(chǔ)上,利用高校校園網(wǎng)的強(qiáng)大存儲(chǔ)能力和方便的網(wǎng)絡(luò)查詢能力,采用流行的Browser/Server結(jié)構(gòu)體系,將最終用戶界面統(tǒng)一為瀏覽器,開發(fā)基于Web 的教材信息查詢系統(tǒng),更好地滿足各類人員對教材信息管理的需求。 2. 系統(tǒng)調(diào)查
通過對該高校教材科的業(yè)務(wù)工作進(jìn)行的調(diào)查,我們發(fā)現(xiàn)該教材科的業(yè)務(wù)對象主要有三類:學(xué)生、教師和教材科,其相應(yīng)的日常業(yè)務(wù)也可以分為三類,分別是:
(1)有關(guān)學(xué)生的業(yè)務(wù)
教材科對于學(xué)生的業(yè)務(wù)主要是為學(xué)生提供入學(xué)以來在教材科的購書詳細(xì)資料的查詢,存款詳細(xì)資料的查詢,剩余款項(xiàng)數(shù)額查詢及學(xué)生對所需教材的查詢等等。以往的方式是學(xué)生到教材科,提供自己的姓名、系別、年級(jí),然后教材科在原始記錄中查詢。
(2)有關(guān)教師的業(yè)務(wù)
教師的業(yè)務(wù)主要是登記查詢教師領(lǐng)書的信息,每學(xué)期開學(xué),各系教師根據(jù)上學(xué)期預(yù)定的教材記錄到教材科領(lǐng)取教材,并登記;每學(xué)期教師可以預(yù)定下學(xué)期所用教材,方式是教師在學(xué)期末到教材科,提供所需教材名稱、教師個(gè)人信息等,然后教材科記錄相應(yīng)信息并制定相應(yīng)采購計(jì)劃。
(3)有關(guān)教材科的業(yè)務(wù) 教材科的業(yè)務(wù)主要是采購圖書,發(fā)放教材,對庫存圖書、學(xué)生購書信息、教師(院系)領(lǐng)書的信息進(jìn)行管理、統(tǒng)計(jì)。這其中涉及到所有有關(guān)教材的各種信息、數(shù)據(jù),這部分也是教材科最主要、核心的業(yè)務(wù)。
通過對上述業(yè)務(wù)的歸納,可以畫出該系統(tǒng)的功能體系圖,如圖1所示。
3. 業(yè)務(wù)流程分析
3.1 業(yè)務(wù)分類
通過對上述業(yè)務(wù)的了解及分析,新系統(tǒng)的業(yè)務(wù)可以分為通用查詢業(yè)務(wù)、專用查詢業(yè)務(wù)和網(wǎng)上預(yù)定業(yè)務(wù)三部分。
(1)通用查詢業(yè)務(wù)
通用查詢業(yè)務(wù)包括教材基本信息查詢業(yè)務(wù)、學(xué)生購書查詢業(yè)務(wù)、學(xué)生存款查詢業(yè)務(wù)、教師領(lǐng)書查詢業(yè)務(wù)、教材零售查詢業(yè)務(wù)等。任何人在學(xué)?;蛐M舛伎梢允褂米约旱挠脩裘兔艽a在任何一臺(tái)能夠上網(wǎng)的電腦上查詢他想要查詢的內(nèi)容(其中教材基本信息查詢不需要用戶名和密碼)。
(2)教材科專用查詢業(yè)務(wù)
專用查詢業(yè)務(wù)是針對教材科的業(yè)務(wù),這部分業(yè)務(wù)不對外開放,因?yàn)樗鼪]有對外開放的必要,這部分業(yè)務(wù)主要是輔助教材科對庫存中教材的數(shù)量,更新速度等進(jìn)行統(tǒng)計(jì)、預(yù)測、分析。具體業(yè)務(wù)應(yīng)包括:教材庫存統(tǒng)計(jì)業(yè)務(wù)、教材零售統(tǒng)計(jì)業(yè)務(wù)、學(xué)生購書統(tǒng)計(jì)業(yè)務(wù)和學(xué)生退書統(tǒng)計(jì)業(yè)務(wù)及教師(院系)領(lǐng)書情況的統(tǒng)計(jì)業(yè)務(wù)。
(3)教材預(yù)訂業(yè)務(wù)
網(wǎng)上教材預(yù)訂業(yè)務(wù)是辦公自動(dòng)化優(yōu)越性的體現(xiàn)。在新業(yè)務(wù)系統(tǒng)中,各系要預(yù)訂教材不用像以前跑到教材科進(jìn)行登記了。只要在預(yù)定系統(tǒng)中輸入所要預(yù)定的教材的信息,就可以完成對教材的預(yù)定,這樣大大提高了工作效率。為完成網(wǎng)上預(yù)定的過程,相應(yīng)的應(yīng)該完成一系列的業(yè)務(wù),包括:預(yù)定教材信息錄入、預(yù)定教材信息的修改、預(yù)定教材信息查詢和預(yù)定教材信息統(tǒng)計(jì)等內(nèi)容。
3.2 業(yè)務(wù)流程圖
由于業(yè)務(wù)較多,在此僅對通用查詢業(yè)務(wù)和網(wǎng)上教材預(yù)定業(yè)務(wù)分別舉例加以說明。
(1)通用查詢業(yè)務(wù)
以學(xué)生查詢業(yè)務(wù)為例,該業(yè)務(wù)是學(xué)生向系統(tǒng)輸入用戶名和密碼進(jìn)行身份認(rèn)證,認(rèn)證成功的學(xué)生就可以查詢其在教材中心的某一筆或全部購書、退書及存取款記錄。其業(yè)務(wù)流程圖如圖2所示。
(2)教材預(yù)訂業(yè)務(wù)
教師進(jìn)行教材預(yù)訂的業(yè)務(wù)流程是教師首先輸入自己的用戶名和密碼進(jìn)行身份認(rèn)證,然后在教材預(yù)訂系統(tǒng)中輸入自己下學(xué)期所上課程要使用的教材基本信息,在規(guī)定的時(shí)間內(nèi),教師也可以對已輸入的教材信息進(jìn)行查詢和修改,超過了預(yù)定的時(shí)間,該信息將被轉(zhuǎn)移到教材計(jì)劃表中。該業(yè)務(wù)的業(yè)務(wù)流程圖如圖3所示。
4、數(shù)據(jù)流程分析
數(shù)據(jù)流程分析是在對上述業(yè)務(wù)流程圖進(jìn)行分析的基礎(chǔ)上,從系統(tǒng)的科學(xué)性、管理的合理性和實(shí)際運(yùn)行的可行性角度出發(fā),將信息處理的功能和彼此之間的聯(lián)系自頂向下、逐層分解,在邏輯上精確地描述新系統(tǒng)應(yīng)具有的功能、數(shù)據(jù)輸入、
圖3 教材預(yù)訂業(yè)務(wù)流程圖
4.1 數(shù)據(jù)流程圖
由于該系統(tǒng)的數(shù)據(jù)流程圖較多,我們依然只對學(xué)生查詢業(yè)務(wù)和教材預(yù)訂業(yè)務(wù)的數(shù)據(jù)流程圖做詳細(xì)介紹。
(1)學(xué)生查詢子系統(tǒng)
由于學(xué)生要對自己的信息進(jìn)行查詢,涉及個(gè)人機(jī)密,所以學(xué)生應(yīng)該首先進(jìn)行身份確認(rèn),即登錄系統(tǒng),在身份得到確認(rèn)后才可以查詢自己的購書記錄,退書記錄、自己的存款賬戶以及教材科現(xiàn)有教材的情況,其數(shù)據(jù)流程圖如圖4所示。
,(2)教材預(yù)訂子系統(tǒng)
根據(jù)業(yè)務(wù)流程圖對教材預(yù)訂系統(tǒng)的描述,該系統(tǒng)的數(shù)據(jù)流程圖如圖5所示。
4.2 數(shù)據(jù)字典
數(shù)據(jù)流程圖只是從數(shù)據(jù)流向的角度描述了系統(tǒng)的組成和各部分之間的聯(lián)系,但卻沒有具體說明各個(gè)組成部分和數(shù)據(jù)流的具體含義,而數(shù)據(jù)字典正好彌補(bǔ)了這一不足,數(shù)據(jù)字典是對數(shù)據(jù)流程的最底層圖中的數(shù)據(jù)項(xiàng)、數(shù)據(jù)流、數(shù)據(jù)存儲(chǔ)、處理邏輯和外部實(shí)體進(jìn)行了詳細(xì)的說明。由于系統(tǒng)分析中數(shù)據(jù)字典的內(nèi)容非常多,在此僅對各個(gè)部分分別舉例進(jìn)行說明。
(1) 數(shù)據(jù)項(xiàng)的定義
數(shù)據(jù)項(xiàng)編號(hào):A01-01
數(shù)據(jù)項(xiàng)名稱:學(xué)號(hào)
別 名:無
簡 述:學(xué)生信息表中某個(gè)學(xué)生的學(xué)號(hào)
類 型:字符型
長 度:10個(gè)字節(jié)
取 值 范圍:0000000000-9999999999
圖5 教材預(yù)訂子系統(tǒng)數(shù)據(jù)流程圖
,數(shù)據(jù)項(xiàng)編號(hào):A02-01
數(shù)據(jù)項(xiàng)名稱:教材編號(hào)
別 名:編號(hào)
簡 述:教材信息表中某種教材的編號(hào)
類 型:字符型
長 度:6個(gè)字節(jié)
取 值 范圍:字母+數(shù)字
(2)數(shù)據(jù)結(jié)構(gòu)的定義
數(shù)據(jù)結(jié)構(gòu)編號(hào):D2
數(shù)據(jù)結(jié)構(gòu)名稱:教材信息表
簡 述:教材科庫存教材的信息情況表
數(shù)據(jù)結(jié)構(gòu)組成:教材編碼+教材名稱+作者+出版社+版別序號(hào)+印刷批次
+出版日期+價(jià)格+理論庫存量+實(shí)際庫存量+庫存位置
數(shù)據(jù)結(jié)構(gòu)編號(hào):D1
數(shù)據(jù)結(jié)構(gòu)名稱:學(xué)生信息表
簡 述:學(xué)生的相關(guān)信息
數(shù)據(jù)結(jié)構(gòu)組成:學(xué)號(hào)+學(xué)生姓名+用戶名+密碼+當(dāng)前余額
(3)數(shù)據(jù)流的定義
數(shù)據(jù)流編號(hào):F02-01
數(shù)據(jù)流名稱:登錄信息
簡 述:用戶登錄系統(tǒng)時(shí)需要輸入的用戶信息
數(shù)據(jù)流組成:用戶名 密碼
數(shù)據(jù)流來源:學(xué)生、教師、教材管理人員
流 通 量:1000份/天
高峰流通量:700份/每天15:00-21:00
(4)處理邏輯的定義
處理邏輯編號(hào):P1
處理邏輯名稱:驗(yàn)證登錄信息
簡 述:驗(yàn)證用戶身份
輸入的數(shù)據(jù)流:登錄信息,來源:外部實(shí)體“學(xué)生”、“教師”等
處 理:查詢“學(xué)生信息表”或“教師信息表”,判斷其是否為合法用戶
輸出的數(shù)據(jù)流:合法用戶,去向是處理邏輯“輸入查詢條件”、“輸入教材預(yù)
,訂信息”等
非法用戶,去向是外部實(shí)體“學(xué)生”、“教師”等
處 理 頻 率:200次/天
(5)數(shù)據(jù)存儲(chǔ)的定義
數(shù)據(jù)存儲(chǔ)編號(hào):D3
數(shù)據(jù)存儲(chǔ)名稱:學(xué)生領(lǐng)書表
簡 述:存放學(xué)生在校期間所有的領(lǐng)書記錄
數(shù)據(jù)存儲(chǔ)組成:流水號(hào)+學(xué)號(hào)+教材編碼+領(lǐng)書日期+數(shù)量+單價(jià)+業(yè)務(wù)員 關(guān) 鍵 字:學(xué)號(hào)+教材編碼+領(lǐng)書日期
相關(guān)聯(lián)的處理:P4(“查詢”) 等
(6)外部實(shí)體的定義
外部實(shí)體編號(hào):S2
外部實(shí)體名稱:教師
簡 述:本校所有任課教師
輸入的數(shù)據(jù)流:F1(“非法用戶信息”)等
輸出的數(shù)據(jù)流:D02-01(“用戶登錄信息”)等
5、系統(tǒng)設(shè)計(jì)
5.1 系統(tǒng)總體設(shè)計(jì)
5.1.1 系統(tǒng)硬件設(shè)計(jì)
在開發(fā)一個(gè)網(wǎng)上瀏覽系統(tǒng)時(shí),特別是基于具有大量數(shù)據(jù)的數(shù)據(jù)庫系統(tǒng)的網(wǎng)站時(shí),需要多服務(wù)器的共同支持。雖然這些服務(wù)可以在一個(gè)服務(wù)器上集成,但這樣做可能會(huì)有安全問題。所以針對最典型的網(wǎng)絡(luò)應(yīng)用,至少需要兩臺(tái)服務(wù)器,他們分別是:Web 服務(wù)器和數(shù)據(jù)庫服務(wù)器。瀏覽器、Web 服務(wù)器與數(shù)據(jù)庫服務(wù)器之間的三層體系結(jié)構(gòu)關(guān)系如圖6所示。
校園網(wǎng)Web 服務(wù)器為Sun Ultra Enterprise 450的UNIX 服務(wù)器,不兼容微軟的IIS/ASP平臺(tái),所以瀏覽系統(tǒng)的Web 服務(wù)器選用HP LH3服務(wù)器,通過在校園網(wǎng)主DNS 服務(wù)器設(shè)定域名進(jìn)行解析。數(shù)據(jù)庫服務(wù)器同樣采用HP LH3服務(wù)器并安裝微軟的SQL Server 7.0數(shù)據(jù)庫平臺(tái)。
5.1.2 系統(tǒng)軟件設(shè)計(jì)
本系統(tǒng)全面采用微軟的產(chǎn)品解決方案。Web 服務(wù)器操作系統(tǒng)采用微軟的Windows NT Server 4,Web 服務(wù)器為微軟的Internet Information System 4,數(shù)據(jù)庫管理系統(tǒng)采用微軟的 SQL Server 7, 開發(fā)工具采用微軟的Visual InterDev ,采用微軟的Active Server Pages(ASP )技術(shù)開發(fā)網(wǎng)站。
Active Server Pages程序是在服務(wù)器端工作,并且通過服務(wù)器端的編譯動(dòng)態(tài)的送出HTML 文件給客戶端,而不像一般Script 是在客戶端通過瀏覽器執(zhí)行,因而產(chǎn)生各廠商瀏覽器并不完全支持某種腳本語言而造成執(zhí)行錯(cuò)誤的現(xiàn)象;當(dāng)客
,戶端瀏覽器向服務(wù)器端要求一個(gè).ASP 文件(Active Server Pages文件后綴名為.asp )時(shí),Server 會(huì)將把這個(gè)ASP 文件從頭到尾讀一遍,并加以編譯執(zhí)行(利用核心程序ASP.DLL 的編譯),最后送出標(biāo)準(zhǔn)HTML 格式文件給客戶端,由于送給客戶端的是標(biāo)準(zhǔn)的HTML 格式文件,所以可以克服瀏覽器互不兼容的問題。
圖6 三層體系結(jié)構(gòu)示意圖
5.2 代碼設(shè)計(jì)
代碼設(shè)計(jì)是系統(tǒng)設(shè)計(jì)中非常重要的一部分。本系統(tǒng)中設(shè)計(jì)多個(gè)代碼的設(shè)計(jì),如“學(xué)號(hào)”,為了和學(xué)校中的其他系統(tǒng)保持一致,所以使用學(xué)校目前“學(xué)號(hào)”代碼的設(shè)計(jì),其設(shè)計(jì)規(guī)則如下:
順序號(hào)
年級(jí)
專業(yè)
院系編碼
“教材編碼”的設(shè)計(jì)考慮到教材一般都是各個(gè)院系有自己專用的教材,所以其代碼設(shè)計(jì)如下:
順序號(hào)
院系編碼
由于該高校的院系不超過30個(gè),所以“院系編碼”的設(shè)計(jì)采用了3位的順序碼。其他代碼設(shè)計(jì)不再一一列舉。
5.3數(shù)據(jù)庫設(shè)計(jì)
數(shù)據(jù)庫設(shè)計(jì)是在選定的數(shù)據(jù)庫管理系統(tǒng)基礎(chǔ)上建立數(shù)據(jù)庫的過程。數(shù)據(jù)庫設(shè)計(jì)時(shí)需要綜合各個(gè)子系統(tǒng)的數(shù)據(jù)需求,分析各個(gè)數(shù)據(jù)之間的關(guān)系,按照DBMS 提供的功能和描述工具,設(shè)計(jì)出規(guī)模適當(dāng)、正確反映數(shù)據(jù)關(guān)系、數(shù)據(jù)冗余少、存取效率高、能滿足各種查詢要求的數(shù)據(jù)模型。該設(shè)計(jì)過程包括概念結(jié)構(gòu)設(shè)計(jì)、邏輯
,結(jié)構(gòu)設(shè)計(jì)和物理結(jié)構(gòu)設(shè)計(jì)。
5.3.1 概念結(jié)構(gòu)設(shè)計(jì)
在系統(tǒng)的數(shù)據(jù)庫設(shè)計(jì)中,首先要對系統(tǒng)分析得到的數(shù)據(jù)字典中的數(shù)據(jù)存儲(chǔ)進(jìn)行分析,分析各數(shù)據(jù)存儲(chǔ)之間的關(guān)系,可采用E -R 圖的方法進(jìn)行數(shù)據(jù)結(jié)構(gòu)分析。本系統(tǒng)中涉及的實(shí)體主要有“學(xué)生”、“教師”、“教材”、“院系”和“學(xué)生預(yù)存款”等,各實(shí)體及其屬性如圖7所示。
a )(“學(xué)生”實(shí)體及其屬性圖
(b ) “教材”實(shí)體及其屬性
(c )“教師”實(shí)體及其屬性圖 (d )“院系”實(shí)體及其屬性圖 (e )“預(yù)存款”實(shí)體及其屬性圖
圖7 實(shí)體及其屬性圖
,各實(shí)體之間具有一定的聯(lián)系,用E -R 圖表示出來,如圖8所示。
n m
m 圖8 E -R 圖
5.3.2 邏輯結(jié)構(gòu)設(shè)計(jì)
邏輯設(shè)計(jì)的任務(wù)就是根據(jù)DBMS 的特征,將上述獨(dú)立于DBMS 的E -R 圖描述的概念結(jié)構(gòu)轉(zhuǎn)換為關(guān)系模型的邏輯結(jié)構(gòu)。上述兩個(gè)E -R 圖轉(zhuǎn)換成的規(guī)范的關(guān)系模式為:
,(1)學(xué)生信息表XS (學(xué)號(hào),姓名)
(2)教材信息表JC (教材編碼,教材名稱,作者,出版社,版別序號(hào),印刷批次,出版日期,價(jià)格,庫存量,庫存位置)
(3)學(xué)生購書表XSGS (學(xué)號(hào),教材編碼,購書日期,數(shù)量,單價(jià),業(yè)務(wù)員)
(4)學(xué)生退書表XSTS (學(xué)號(hào),教材編碼,購書日期,退書日期,數(shù)量,單價(jià),業(yè)務(wù)員)
(5)教師信息表JS (教師編號(hào),姓名,院系編號(hào))
(6)教師領(lǐng)書表JSLS (教師編碼,教材編碼,領(lǐng)書日期,數(shù)量,業(yè)務(wù)員)
(7)教材預(yù)訂表JCYD (課程號(hào),計(jì)劃日期,院系編碼,教師編碼,教材名稱,作者,出版社,出版日期,價(jià)格,需求數(shù)量)
(8)預(yù)存款信息表XSCK (學(xué)號(hào),存取日期,存取,金額,業(yè)務(wù)員) (9)院系信息表YXXX (院系編碼,院系名稱)
5.3.3 物理結(jié)構(gòu)設(shè)計(jì)
物理結(jié)構(gòu)設(shè)計(jì)的任務(wù)主要包括兩個(gè)方面,其一是確定所有數(shù)據(jù)庫文件的名稱及其結(jié)構(gòu),其二是確定各個(gè)數(shù)據(jù)庫文件是否需要建立索引,以及在什么字段上建立索引。本系統(tǒng)中部分表的結(jié)構(gòu)如表1-表11所示。
表1
表2
表3 學(xué)生購書信息表(XSGS )