崔蕾
摘要:目的:圖書館系統(tǒng)軟件是典型的信息管理系統(tǒng)(MIS),其開發(fā)主要包括后臺(tái)數(shù)據(jù)庫(kù)的建立和維護(hù)以及前端應(yīng)用程序的開發(fā)兩個(gè)方面。對(duì)于前者要求建立起數(shù)據(jù)一致性和完整性強(qiáng).數(shù)據(jù)安全性好的庫(kù)。而對(duì)于后者則要求應(yīng)用程序功能完備,易使用等特點(diǎn)。
關(guān)鍵詞:信息管理系統(tǒng);瀏覽器服務(wù)器架構(gòu);MVC框架
一、系統(tǒng)需求分析
(一)功能需求
1.基礎(chǔ)信息維護(hù)。“基礎(chǔ)信息維護(hù)”用于對(duì)圖書館信息、書籍信息、常用詞庫(kù)等項(xiàng)目進(jìn)行初始化設(shè)置?!皥D書館信息”用于設(shè)置本圖書館的基礎(chǔ)信息,包括圖書館名稱、館長(zhǎng)、負(fù)責(zé)人、電話、說(shuō)明等。“系統(tǒng)參數(shù)設(shè)置”用于設(shè)置系統(tǒng)運(yùn)行所需的參數(shù),包括辦證費(fèi)用、證件有效期、圖書超期罰款金額、期刊超期罰款金額等?!皶茉O(shè)置”用于設(shè)置書架的基礎(chǔ)信息,內(nèi)容包括書架編號(hào)、書架名稱等?!肮芾韱T設(shè)置”用于設(shè)置使用的人員及權(quán)限?!皥D書期刊詞庫(kù)設(shè)置”用于設(shè)置系統(tǒng)常用的詞庫(kù),內(nèi)容包括供應(yīng)商、分級(jí)、附件、尺寸、語(yǔ)系、印刷等信息的預(yù)先設(shè)定數(shù)值。
2.讀者管理?!白x者管理“用于管理讀者相關(guān)的信息?!白x者類型設(shè)置”用于設(shè)置讀者的類型及相關(guān)的信息,內(nèi)容包括類型、圖書冊(cè)數(shù)、期刊冊(cè)數(shù)、續(xù)借次數(shù)、限制圖書、限制期刊等?!白x者檔案管理”用于設(shè)置讀者相關(guān)的信息,內(nèi)容包括編號(hào)、條形碼、姓名、性別、類型、出生日期、有效證件、證件號(hào)碼、聯(lián)系方式、登記日期、有效期至、操作員、備注、圖書借閱次數(shù)、期刊借閱次數(shù)、是否掛失等?!敖钑C掛失與恢復(fù)”用于掛失和恢復(fù)讀者的借書證,掛失后該編號(hào)的讀者不能在借書。“過(guò)期續(xù)證管理”用于延續(xù)已過(guò)期的借書證?!白x者檔案詞庫(kù)設(shè)置”用于設(shè)置讀者檔案常用的詞庫(kù)。
3.圖書管理?!皥D書管理”用于管理圖書相關(guān)的信息,包含的功能模塊入?!皥D書類型設(shè)置”用于設(shè)置圖書的類型及相關(guān)的信息,內(nèi)容包括類型名稱,可借天數(shù)等?!俺霭嫔绻芾怼庇糜谠O(shè)置圖書所屬出版社的基礎(chǔ)信息,內(nèi)容包括出版社編號(hào),ISBN、出版社名稱等。“圖書檔案管理”用于設(shè)置圖書相關(guān)的信息,內(nèi)容包括編號(hào)、條形碼、書名、類型、作者、譯者、ISBN、出版社、價(jià)格、頁(yè)碼、書架名稱、入庫(kù)時(shí)間、操作員、簡(jiǎn)介、借出次數(shù)、是否注銷等。“圖書作者”,“圖書譯者”是添加圖書的作者和譯者信息?!皥D書添加”是用于訂購(gòu)新書,內(nèi)容包括征訂編號(hào)、書名、類型、ISBN、出版社、作者、譯者、訂購(gòu)者、訂購(gòu)者聯(lián)系方式、訂購(gòu)數(shù)量、訂購(gòu)單價(jià)、訂購(gòu)日期、是否驗(yàn)收、實(shí)際數(shù)量、實(shí)際金額、驗(yàn)收日期、操作員等。
4.圖書流通管理。圖書流通管理用于管理圖書流通環(huán)節(jié)相關(guān)的操作。圖書借閱用于登記讀者借閱圖書的記錄并減少圖書在庫(kù)的庫(kù)存,登記內(nèi)容包括借閱編號(hào)、圖書編號(hào)、讀者編號(hào)、押金、借閱時(shí)間、應(yīng)還時(shí)間、操作員等。圖書歸還用于登記讀者到期圖書的續(xù)借記錄。圖書丟失用于報(bào)失圖書,內(nèi)容包括丟失編號(hào)、圖書編號(hào)、讀者編號(hào)、賠償金額、操作時(shí)間、操作員等。圖書罰款用于對(duì)圖書超期、丟失等情況的罰款管理,內(nèi)容包括罰款編號(hào)、圖書編號(hào)、讀者編號(hào)、罰款日期、應(yīng)罰金額、實(shí)收金額、是否交款、備注等。
5.統(tǒng)計(jì)分析管理。統(tǒng)計(jì)分析管理為圖書館管理人員的分析決策提供依據(jù)。
(二)用例圖
用例圖定義:由參與者(Actor)、用例(Use Case)以及它們之間的關(guān)系構(gòu)成的用于描述系統(tǒng)功能的動(dòng)態(tài)視圖稱為用例圖。用例圖(User Case)是被稱為參與者的外部用戶所能觀察到的系統(tǒng)功能的模型圖,呈現(xiàn)了一些參與者和一些用例,以及它們之間的關(guān)系,主要用于對(duì)系統(tǒng)、子系統(tǒng)或類的功能行為進(jìn)行建模[1]。
用例圖展示了用例之間以及同用例參與者之間是怎樣相互聯(lián)系的。用例圖用于對(duì)系統(tǒng)、子系統(tǒng)或類的行為進(jìn)行可視化,使用戶能夠理解如何使用這些元素,并使開發(fā)者能夠?qū)崿F(xiàn)這些元素。將每個(gè)系統(tǒng)中的用戶分出工作狀態(tài)的屬性和工作內(nèi)容,方便建模,防止功能重復(fù)和多余的類用例圖定義了系統(tǒng)的功能需求,它是從系統(tǒng)的外部看系統(tǒng)功能,并不描述系統(tǒng)內(nèi)部對(duì)功能的具體實(shí)現(xiàn)。
用例圖由參與者、用例、系統(tǒng)邊界、箭頭組成,用畫圖的方法來(lái)完成。
(三)性能需求。性能需求有以下三個(gè)方面:安全可靠。系統(tǒng)管理員的權(quán)限機(jī)制完善,對(duì)于不同權(quán)限的管理員可以對(duì)圖書或用戶等進(jìn)行相應(yīng)的管理。系統(tǒng)有一個(gè)超級(jí)用戶能設(shè)置普通管理員的管理權(quán)限。如果用戶長(zhǎng)時(shí)間不對(duì)系統(tǒng)進(jìn)行相應(yīng)的操作,系統(tǒng)會(huì)自動(dòng)斷開與服務(wù)器的鏈接;系統(tǒng)運(yùn)行穩(wěn)定。在用戶使用系統(tǒng)的過(guò)程中不會(huì)出現(xiàn)異常情況,從而導(dǎo)致用戶數(shù)據(jù)丟失,給讀者和管理員帶來(lái)不便;系統(tǒng)可支持多個(gè)用戶同時(shí)訪問。
(四)環(huán)境需求。隨著國(guó)內(nèi)軟件開發(fā)的日益發(fā)展壯大,各種中小企事業(yè)單位已具備獨(dú)立開發(fā)各種類型的軟件的能力,能夠滿足不同行業(yè)的特別的需求?,F(xiàn)在,市場(chǎng)上可以選購(gòu)的應(yīng)用開發(fā)產(chǎn)品很多,流行的也有數(shù)十種。隨著計(jì)算機(jī)技術(shù)的發(fā)展和普及,程序開發(fā)的門檻日益降低,早已不再是少數(shù)專業(yè)人員的專利。擁有較強(qiáng)研發(fā)能力和眾多技術(shù)人才儲(chǔ)備的高等院校足以獨(dú)立完成一個(gè)功能完善的圖書管理系統(tǒng)的開發(fā)任務(wù)。
技術(shù)往往是系統(tǒng)開發(fā)過(guò)程中難度最大的工作,這其中必須進(jìn)行風(fēng)險(xiǎn)分析、資源分析和技術(shù)分析,開發(fā)人員必須在給定的約束條件下,判斷是否能在預(yù)定的計(jì)劃順利完成任務(wù),但這些因素很難把握好,因?yàn)樵陂_發(fā)的過(guò)程中往往會(huì)發(fā)生一些意外因素,綜合各方面的困素,敲定本系統(tǒng)采用MyEclipse+Tomcat+Mysql作為開發(fā)平臺(tái)。綜合自已對(duì)這方面的熟練程度,能方便的進(jìn)行系統(tǒng)開發(fā)、維護(hù)。
對(duì)于整個(gè)系統(tǒng)而言,在系統(tǒng)未運(yùn)行之前,初期投資比較大,花費(fèi)相對(duì)而言比較多。各部門必須配置電腦、服務(wù)器、打印機(jī)、傳真機(jī)及相關(guān)的網(wǎng)絡(luò)設(shè)備,但是在整個(gè)系統(tǒng)投入運(yùn)行之后,將會(huì)給該企業(yè)帶來(lái)前所未有的方便和快捷,減少不必要的中間環(huán)節(jié)以及不必要的開支,而且可以給其帶來(lái)更大的利潤(rùn)[2]??傊?,這個(gè)系統(tǒng)的經(jīng)濟(jì)效益遠(yuǎn)遠(yuǎn)大于開發(fā)成本,而同時(shí)又減少了數(shù)據(jù)的流通環(huán)節(jié),不必要花費(fèi)那么多的時(shí)間,也就是說(shuō)最重要的是就是提高了效率,而又保證了各項(xiàng)數(shù)據(jù)的準(zhǔn)確性,也避免了工作人員的流動(dòng)造成的收據(jù)丟失等問題,適應(yīng)了當(dāng)前的發(fā)展形式。對(duì)于個(gè)人而言,開發(fā)這個(gè)管理系統(tǒng)一方面是鍛煉自己的能力,另一方面是了解當(dāng)今比較流行的管理系統(tǒng)知識(shí)。該系統(tǒng)很具有針對(duì)性,能夠?qū)τ脩舻乃蟹?wù)進(jìn)行管理,經(jīng)濟(jì)有效。
隨著時(shí)代的發(fā)展,人員素質(zhì)己逐步提高,不論是對(duì)于電腦系統(tǒng)的基本操作還是對(duì)于系統(tǒng)的維護(hù)都有了一定的基礎(chǔ)。同時(shí)還可以配置專業(yè)的電腦維護(hù)人員來(lái)維護(hù)電腦,不必?fù)?dān)心電腦故障問題。這樣不僅節(jié)約了人力物力,而且還給圖書的管理帶來(lái)很大的方便,并且能給讀者進(jìn)行圖書信息的查詢以及借閱帶來(lái)很大的方便。
二、總體設(shè)計(jì)
(一)系統(tǒng)功能模塊設(shè)計(jì)。需要強(qiáng)調(diào)的是,由于用戶登錄和權(quán)限管理的功能各個(gè)系統(tǒng)實(shí)現(xiàn)的方法是一致的
(二)數(shù)據(jù)庫(kù)設(shè)計(jì)
1.數(shù)據(jù)庫(kù)系統(tǒng)簡(jiǎn)介。數(shù)據(jù)庫(kù)由DBMS(數(shù)據(jù)庫(kù)管理系統(tǒng))處理,DBMS則由開發(fā)人員和用戶通過(guò)應(yīng)用程序直接或間接地使用。它主要包括四個(gè)要素:用戶數(shù)據(jù)、元數(shù)據(jù)、索引和應(yīng)用元數(shù)據(jù)[3]。
1.1用戶數(shù)據(jù)。目前,大多數(shù)主流數(shù)據(jù)庫(kù)管理系統(tǒng)把用戶數(shù)據(jù)表示為關(guān)系?,F(xiàn)在把關(guān)系看作數(shù)據(jù)表。表的列包含域或?qū)傩?,表的行包含?duì)應(yīng)業(yè)務(wù)環(huán)境中的實(shí)體的記錄。并非所有的關(guān)系都同樣符合要求,有些關(guān)系比其它關(guān)系更結(jié)構(gòu)化一些。第二章描述了一個(gè)用以產(chǎn)生良好結(jié)構(gòu)關(guān)系的過(guò)程,稱作規(guī)范化。
1.2元數(shù)據(jù)。數(shù)據(jù)庫(kù)是自描述的,這就意味著它自身包含了它的結(jié)構(gòu)的描述,這種結(jié)構(gòu)的描述稱作元數(shù)據(jù)。元數(shù)據(jù)可以被稱作描述數(shù)據(jù)及其環(huán)境的數(shù)據(jù)。因?yàn)镈BMS產(chǎn)品是用來(lái)存儲(chǔ)和操縱表的,以大多數(shù)產(chǎn)品把元數(shù)據(jù)以表的形式存儲(chǔ),有時(shí)稱作系統(tǒng)表。
這些系統(tǒng)表存儲(chǔ)了數(shù)據(jù)庫(kù)中表的情況,指出每一個(gè)表中有多少列,那一列是主關(guān)鍵詞,每一列的數(shù)據(jù)類型的描述也存儲(chǔ)索引、關(guān)鍵詞、規(guī)則和數(shù)據(jù)庫(kù)結(jié)構(gòu)的其他部分。在表中存儲(chǔ)元數(shù)據(jù)不僅對(duì)DBMS是有效的,對(duì)用戶也是方便的,因?yàn)樗麄兛梢允褂门c查詢用戶數(shù)據(jù)同樣的查詢工具來(lái)查詢?cè)獢?shù)據(jù)。
1.3索引。第三種類型的數(shù)據(jù)改進(jìn)了數(shù)據(jù)庫(kù)的性能和可訪問性,這種數(shù)據(jù)經(jīng)常稱作開銷數(shù)據(jù),盡管有時(shí)也采用其他類型的數(shù)據(jù)結(jié)構(gòu),如鏈表,但它主要還是索引。索引可以用來(lái)排序和快速訪問數(shù)據(jù)。
1.4應(yīng)用元數(shù)據(jù)。存儲(chǔ)在數(shù)據(jù)庫(kù)中的第四種數(shù)據(jù)是應(yīng)用元數(shù)據(jù),它用來(lái)存儲(chǔ)用戶窗體、報(bào)表、查詢和其他形式的查詢組件。并非所有的DBMS都支持應(yīng)用組件,支持組件的DBMS也不一定把全部組件的結(jié)構(gòu)作為應(yīng)用元數(shù)據(jù)存儲(chǔ)在數(shù)據(jù)庫(kù)中[4]。然而,大多數(shù)現(xiàn)代的DBMS產(chǎn)品存儲(chǔ)這種數(shù)據(jù)作為數(shù)據(jù)庫(kù)的一部分。一般來(lái)說(shuō),數(shù)據(jù)庫(kù)開發(fā)人員和用戶都不直接訪問應(yīng)用元數(shù)據(jù),相反,他們通過(guò)DBMS中的工具來(lái)處理這些數(shù)據(jù)。
2.數(shù)據(jù)庫(kù)需求分析及結(jié)構(gòu)設(shè)計(jì)。圖書館管理系統(tǒng),顧名思義是對(duì)圖書館的管理而設(shè)計(jì)的一個(gè)應(yīng)用程序。所以需要收集大量的數(shù)據(jù)信息。而此信息要從需求分析入手。由對(duì)該設(shè)計(jì)的需求分析可以得出一下數(shù)據(jù)信息:首先,數(shù)據(jù)庫(kù)中要有讀者的相關(guān)信息,此外,在圖書流通過(guò)程中不僅要有讀者借閱圖書的信息,還要有圖書信息。另外除了圖書類型與讀者類型信息,管理員的相關(guān)信息等也是不可缺少的一部分[5]。
表2-1 圖書管理系統(tǒng)數(shù)據(jù)表清單
數(shù)據(jù)表名稱 數(shù)據(jù)表用途
tb_bookcas
圖書書架 保存圖書對(duì)應(yīng)書架基礎(chǔ)信息
tb_bookinf
圖書信息 保存圖書相關(guān)信息
tb_booktyp
圖書類型 保存圖書類型信息
tb_borrow
借閱信息 保存圖書借閱信息
tb_giveback
歸還信息 保存圖書歸還信息
tb_library
圖書館信息 保存圖書館基本信息
tb_manager
管理員信息 保存管理員基本信息
tb_parameter
數(shù)信息 保存相關(guān)參數(shù)
tb_publishing
出版社信息 保存出版社信息
tb_purview 保存權(quán)限信息
3.E-R圖
因?yàn)檎麄€(gè)系統(tǒng)涉及的實(shí)體和屬性較多,限于篇幅不能也沒有必要一一列舉。其他實(shí)體與基本信息表間的對(duì)應(yīng)關(guān)系都是類似的。
(三)系統(tǒng)類圖設(shè)計(jì)。圖書與圖書類型圖書書架之間的類圖以及讀者,類型,管理員之間的類圖關(guān)系等。
三、結(jié)語(yǔ)
本系統(tǒng)是一個(gè)面向小型圖書管理系統(tǒng),具有一定實(shí)用性的數(shù)據(jù)庫(kù)信息管理系統(tǒng)。它主要完成對(duì)圖書館的一系列管理,包括進(jìn)入新書、借閱、信息查詢管理。本系統(tǒng)采用當(dāng)前流行的面向?qū)ο蟮拈_發(fā)語(yǔ)言java來(lái)完成整個(gè)系統(tǒng)的設(shè)計(jì),在數(shù)據(jù)庫(kù)的設(shè)計(jì)上利用了SQL的便利性和實(shí)用性。
這次項(xiàng)目的開發(fā)是利用java程序設(shè)計(jì)語(yǔ)言基于J2EE平臺(tái),Struts框架以及jsp技術(shù)和Mysql數(shù)據(jù)庫(kù)開發(fā)的一個(gè)基于web的小型圖書館管理系統(tǒng),該系統(tǒng)是一個(gè)基于B/S多層結(jié)構(gòu)的系統(tǒng)。
【參考文獻(xiàn)】
[1]薩師煊,王珊.數(shù)據(jù)庫(kù)系統(tǒng)概論[M].北京:高等教育出版社,2003:40-67
[2]李紹原.數(shù)據(jù)庫(kù)原理及應(yīng)用[M].北京:科學(xué)出版社,2003:22-49
[3]王暉.面向?qū)ο筌浖治鲈O(shè)計(jì)與測(cè)試[M].北京:科學(xué)出版社,2004:21-38
[4]余杰.jsp動(dòng)態(tài)網(wǎng)站建設(shè)[M].北京:國(guó)防工業(yè)出版社,2002:77-83
[5]融軟科技.jsp動(dòng)態(tài)網(wǎng)站開發(fā)與實(shí)例[M].北京:清華大學(xué)出版社,2006:128-134