時間:2022-04-17 04:07:45
序論:在您撰寫圖書管理系統(tǒng)論文時,參考他人的優(yōu)秀作品可以開闊視野,小編為您整理的1篇范文,希望這些建議能夠激發(fā)您的創(chuàng)作熱情,引導(dǎo)您走向新的創(chuàng)作高度。
摘要:隨著現(xiàn)在的軟件的復(fù)雜性日益提高,傳統(tǒng)的開發(fā)過程和一般的面向?qū)ο笏枷雽τ谲浖拈_發(fā)和維護(hù)方面逐漸暴露出它的不足,主要表現(xiàn)在過于僵硬――很難在軟件系統(tǒng)里加入一個新性能。過于脆弱――在修改完成之前,無法確切預(yù)測到可能會波及到的地方。復(fù)用率低、黏度過高――復(fù)用系統(tǒng)的某個部分時,總是發(fā)現(xiàn)這些已有的代碼依賴于很多其他東西。于是面對這些問題就需要可擴(kuò)展性、靈活性、可插入性的思想,于是設(shè)計模式就應(yīng)運而生。
關(guān)鍵詞:統(tǒng)一建模語言;面向?qū)ο螅辉O(shè)計模式;橋模式;策略模式
1 引言
以前我們大多采用非面向?qū)ο蟮募夹g(shù)進(jìn)行軟件設(shè)計,所以當(dāng)我們轉(zhuǎn)而使用面向?qū)ο蟮姆椒ㄔO(shè)計軟件時感到非常困難,而設(shè)計可復(fù)用的面向?qū)ο筌浖透永щy。因為軟件設(shè)計既要針對現(xiàn)有的問題,同時又要對將來潛在的問題和需求有足夠的通用性,盡可能減少重復(fù)設(shè)計和更改。設(shè)計模式為我們提供了有效的解決思路,使我們可以方便、高效地設(shè)計和復(fù)用成功的設(shè)計和已有的體系結(jié)構(gòu)。
2 設(shè)計模式
2.1設(shè)計模式的基本概念
從程序設(shè)計的角度理解,一個設(shè)計模式提供了一個針對某一特定問題的解決方案。在面向?qū)ο蟮某绦蛟O(shè)計中,一個設(shè)計模式有一個特定的結(jié)構(gòu)。使用這樣的結(jié)構(gòu),程序的體系結(jié)構(gòu)更加靈活、代碼可以更加方便地被復(fù)用,程序具有更好的適應(yīng)性。
2.2設(shè)計模式的基本要素
2.3橋模式
能夠分別實現(xiàn)類的抽象和行為的實現(xiàn),使其相互間沒有影響,降低了程序的耦合度能夠很方便地擴(kuò)展類的功能,能夠在擴(kuò)展功能的同時隱藏內(nèi)部機(jī)制,保證透明度。
參與者和協(xié)作者:
2.4策略模式
策略模式定義一系列的算法,把這些算法一個個封裝起來,使它們可以相互替換,而對用戶提供統(tǒng)一的接口。因而,這些算法可以獨立于使用它的客戶而變化。
參與者和協(xié)作者:
3 設(shè)計模式在圖書管理系統(tǒng)中的應(yīng)用
3.1問題的產(chǎn)生
首先,要對圖書管理系統(tǒng)進(jìn)行分析,即運用基于UML的面向?qū)ο蠓椒?,我們知道,系統(tǒng)核心功能必須滿足面對各種角色,如老師、博士、研究生、本科生、??粕?、其他,提供各種服務(wù),如借書、還書、預(yù)定等等。
區(qū)分各種角色的目的是由于各種角色的接、還、預(yù)定、等功能的不同限制,如借書的期限不同,借書的本數(shù)不同等等。
而且,如果管理要提供新的服務(wù)功能,或者要加入一種新的角色,還有可能,要改變借書期限和借書本數(shù),我們?nèi)绻脗鹘y(tǒng)的方法編寫的代碼那么我們勢必會對代碼的修改產(chǎn)生一些負(fù)面影響。
3.2解決方法
針對以上問題,我們發(fā)現(xiàn)各種角色和各種服務(wù)正好對應(yīng)這樣一個抽象和行為,于是橋模式就自然而然的浮現(xiàn)出來了。
UML圖如下:
如果系統(tǒng)要面向新的借書者,要提供新的服務(wù)功能,只需在上圖的“橋”的左右兩邊分別加上Actor 和 imp的繼承類即可,這樣對與系統(tǒng)的這個影響的波動就會相當(dāng)?shù)男?,十分容易被開發(fā)者掌握范圍和預(yù)測其影響。
同時我們還要清楚的認(rèn)識到,“橋”模式是提供系統(tǒng)的一個最大范圍的一個場景,即是系統(tǒng)領(lǐng)域方面的最大的骨架。
此外,我們還有這樣的一個問題需要解決,即當(dāng)要改變各種借閱者借書期限和借書本數(shù),或者其他的限制條件時我們又該怎么辦?
一個辦法就是,將這些限制作為各個角色的成員變量,這樣就能解決問題。的確可以,但是也許會涉及到可維護(hù)性。如果我們用設(shè)計模式里的策略模式效果就不同了,因為策略模式對用戶提供統(tǒng)一的接口,算法可以獨立于使用它的用戶,所以改變借書天數(shù)和借書本數(shù)就不會對使用用戶產(chǎn)生影響。
如下UML圖:
其中的Strategy1、2、3分別代表不同的借書期限和本數(shù)的計算方式,并且還可以計算過期的各種算法。
由此,對于該圖書管理系統(tǒng)的總的橋模式和策略模式的綜合使用如下UML圖:
通過以上的關(guān)于圖書管理系統(tǒng)整體設(shè)計模式的研究我們的系統(tǒng)具有了如下性質(zhì):
(1)可擴(kuò)展性
很容易向系統(tǒng)加入新性能。例如,我們可以十分輕松的添加新的角色―教授,添加新的服務(wù)等等(在橋兩邊加),根本不影響整體構(gòu)架。
(2)靈活性
允許代碼修改平穩(wěn)地發(fā)生,不會波及很多其他模塊。
(3)可插入性
可以很容易地將一個類抽出去,同時將另一個有同樣接口的類加進(jìn)來。如實現(xiàn)了上述策略。
4 設(shè)計模式對軟件設(shè)計的指導(dǎo)
設(shè)計模式是對學(xué)習(xí)OO設(shè)計原則的具體指導(dǎo)。
優(yōu)越性:
(1)通過擴(kuò)展已有的軟件系統(tǒng),可以提供新的行為,滿足新需求,使系統(tǒng)有一定適應(yīng)性和靈活性。
(2)已有的軟件模塊,特別是最重要的抽象層模塊不能再修改,這就使系統(tǒng)有一定的穩(wěn)定性和延續(xù)性。
(3)抽象化是關(guān)鍵。
可以給出一個或多個抽象類或接口,規(guī)定出所有具體類必須提供的方法的特征,作為系統(tǒng)設(shè)計的抽象層。這個抽象層預(yù)見了所有可能的擴(kuò)展,因此在任何擴(kuò)展情況下都不會改變,使得系統(tǒng)的抽象層不需修改。(對修改關(guān)閉)同時,從抽象層導(dǎo)出一個或多個新的具體類可以改變系統(tǒng)的行為,因此系統(tǒng)的設(shè)計對擴(kuò)展是開放的。
(4)對可變性的封裝原則
找到一個系統(tǒng)的可變因素,將它封裝起來。這意味著,一種可變性不應(yīng)當(dāng)散落在代碼的很多角落里,而應(yīng)當(dāng)被封裝到一個對象里面;一種可變性不應(yīng)當(dāng)與另一種可變性混合在一起(設(shè)計模式中所有類圖的繼承結(jié)構(gòu)一般不會超過兩層,否則意味著將兩種不同的可變性混合在一起了)。
5 結(jié)束語
當(dāng)我們在進(jìn)行軟件設(shè)計的時候,我們要多考慮用一些經(jīng)典的設(shè)計模式來指導(dǎo)自己,這樣對于系統(tǒng)的總體穩(wěn)定性十分有益,只要我們善于觀察,總會發(fā)現(xiàn)模式和提高自己的設(shè)計分析能力,同時我們還要牢記以下三點面向?qū)ο蟮闹匾瓌t:
(1)遵從開―閉原則對擴(kuò)展開放,對修改關(guān)閉。
(2)組合優(yōu)于繼承。
(3)面向接口編程。
通過這樣,我們一定會使面向?qū)ο蟮脑O(shè)計和分析方法上一個新的臺階。
摘要:圖書管理是圖書館或閱覽室的重要工作,具有量大、重復(fù)的特點,其中的信息錄入、讀者管理、書目查詢、書籍借閱是經(jīng)常性的工作。為方便檢索和管理,借助計算機(jī)開發(fā)相應(yīng)的圖書管理系統(tǒng)可以提高工作效率。本文進(jìn)行了圖書管理系統(tǒng)的設(shè)計和開發(fā),包含數(shù)據(jù)庫設(shè)計和功能設(shè)計,測試表明該系統(tǒng)可有效提高中小型企事業(yè)單位的圖書管理效率。
關(guān)鍵詞:圖書管理;查詢;設(shè)計;數(shù)據(jù)庫
1 引言
圖書是人類獲取信息的重要途徑,許多企事業(yè)單位都有圖書館或閱覽室,以滿足干部職工的閱讀需要。圖書管理的目的是適應(yīng)讀者需求;查詢?yōu)g覽的目的是為借閱作準(zhǔn)備;借閱管理是圖書管理的核心工作[1]。以往的手工管理費時費力,隨著計算機(jī)的普及,圖書管理系統(tǒng)逐漸信息化,大大提高了工作效率。而且不少單位都有自己的局域網(wǎng),基于網(wǎng)絡(luò)如何有效實現(xiàn)管理員操作和用戶訪問的圖書管理系統(tǒng),是應(yīng)用程序開發(fā)的主要方面。本系統(tǒng)采用C#作為前端開發(fā)工具,Xml為后臺數(shù)據(jù)庫,利用Windows Xp作為平臺進(jìn)行了圖書管理系統(tǒng)的設(shè)計和開發(fā),通過程序調(diào)試并投入了單位使用。
2 系統(tǒng)分析
2.1 功能模塊
圖書管理系統(tǒng)采用模塊管理。主要模塊包括普通用戶訪問模塊和高級用戶訪問模塊。所謂普通用戶是指在局域網(wǎng)上使用系統(tǒng)的注冊用戶和讀者用戶,這些用戶只能進(jìn)行系統(tǒng)的部分操作例如書籍查詢和登錄留言等,獲取系統(tǒng)或服務(wù)器提供的部分信息,主要包括圖書館的公告例如近期購進(jìn)的新書信息、圖書館某些活動信息等,而高級用戶指系統(tǒng)管理員(或圖書管理員),其訪問區(qū)域較大,可獲取信息較多。
圖書管理主要包括人的管理和書的管理,人的管理主要包括用戶管理和讀者管理;書的管理主要涉及新書入檔、書籍借閱、書籍查詢、催還書籍等(圖1)。
圖1 系統(tǒng)功能模塊示意圖
系統(tǒng)管理的內(nèi)容簡要概括如下:
注冊用戶管理:主要包括注冊用戶的添加、刪除以及留言處理等;
讀者信息管理:主要包括讀者信息的添加、刪除、修改和查詢等;
圖書信息管理:主要包括添加、刪除、修改、查詢和催還等;
圖書借閱管理:主要包括圖書借閱規(guī)則的說明、讀者借閱圖書的信息維護(hù)等。
基于局域網(wǎng)進(jìn)行圖書管理系統(tǒng)的開發(fā),同時還應(yīng)實現(xiàn)某些遠(yuǎn)程操作的可行性。
2.2 數(shù)據(jù)表
數(shù)據(jù)庫是信息系統(tǒng)的核心和基礎(chǔ)。它把大量數(shù)據(jù)按照模型組織,提供存儲、維護(hù)、和檢索功能,可以方便、及時、準(zhǔn)確地獲取信息[3]。根據(jù)圖書管理的常見操作,需要擬定的數(shù)據(jù)庫表如下:
用戶信息表:用戶名(name) 、密碼(password)、電子信箱(Email);
讀者信息表:姓名(person name)、性別(sex)、身份證件(certification)、借閱證號(card number)、聯(lián)系電話(telephone)、通訊地址(address);
圖書信息表:書名(book name)、作者(author)、圖書編號(book code)、出版社(publisher)、類別(期刊(Journal、書籍Book、雜志Magazine)、冊數(shù)(book number)、內(nèi)容簡介(introduction);
催還信息表:借閱證號(card number)、姓名(person name)、書名(book name)、聯(lián)系電話(telephone)、欠費(owing money);
管理員信息表:用戶名(name)、密碼(password)。
3 系統(tǒng)功能具體描述
3.1 用戶注冊
這里與常見的網(wǎng)絡(luò)注冊方式基本相同,考慮到基于局域網(wǎng)訪問圖書管理系統(tǒng)與訪問網(wǎng)站有所區(qū)別,因此要求注冊過程簡單、方便、快捷,只需用戶名、密碼和電子信箱即可。對于申請的用戶名,可以實現(xiàn)在線檢測功能,以避免同名出現(xiàn),這樣以姓名作為關(guān)鍵字,便于查詢、修改或刪除注冊用戶。電子信箱主要是在不便公開某些信息的情況下,用戶和管理員可以直接進(jìn)行交流。另外,已經(jīng)辦理借閱證件的讀者無需注冊。
3.2 用戶登錄
不論是普通用戶還是高級用戶,登錄界面完全相同,但正確登錄后的可訪問區(qū)域不同。為避免出現(xiàn)多次重復(fù)輸入,連續(xù)錯誤輸入三次后將自動退出登錄窗口。正確登錄后即可進(jìn)行相關(guān)訪問。對于已經(jīng)辦理借閱證件的讀者,登錄時直接以姓名作為用戶名,以借閱證號作為密碼即可。
3.3 書籍查詢
這一功能對所有用戶均開放。新書入檔時,圖書管理員需要判斷該書是否已經(jīng)入檔,因此需要進(jìn)行相關(guān)的查詢操作;對于借閱者,同樣需要查詢以了解圖書館有無該書或其庫存情況。查詢時需要考慮兩個方面,其一為查詢關(guān)鍵字,例如書名、作者、圖書編號等,其二是查詢匹配方式,例如精確匹配、模糊匹配,或其它匹配方式如從左匹配、從右匹配等。
3.4 新書入檔
購進(jìn)新書后,若該書曾經(jīng)入檔,只需改變該書的庫存數(shù)量即可,否則需要錄入書目的詳細(xì)信息,包括書名、作者、出版社、圖書編號、分類、內(nèi)容簡介等信息。對于圖書編號,為簡化人工操作,可按照中圖分類號隨機(jī)進(jìn)行[2]。內(nèi)容簡介的輸入大大增加了工作量,可采用先掃描再轉(zhuǎn)化為文本的方式進(jìn)行。整個新書入檔過程較為繁雜,且由于信息輸入量較大,容易出現(xiàn)錯誤,直接影響后續(xù)管理。為避免輸入錯誤,附加了確認(rèn)功能和信息重置功能。
摘要:隨著數(shù)字化進(jìn)程的加快,多種類、多平臺數(shù)據(jù)服務(wù)在大學(xué)校園或社區(qū)交匯。本文針對圖書館的數(shù)據(jù)服務(wù)問題,在研究數(shù)據(jù)融合理論和相關(guān)技術(shù)基礎(chǔ)上,從解決問題的實際出發(fā),通過對歸檔日志的解析,給出了跨平臺、跨網(wǎng)絡(luò)異構(gòu)數(shù)據(jù)庫主從式雙向數(shù)據(jù)同步模型。
關(guān)鍵詞:歸檔日志;數(shù)據(jù)同步;一卡通
在社區(qū)或大學(xué)校園,兩種或多種數(shù)據(jù)服務(wù)交叉的場點非常多。例如:圖書館。這樣的場點,也稱為數(shù)據(jù)服務(wù)問題點。由于沒有解決好多路ISP數(shù)據(jù)流整合和同步,出現(xiàn)應(yīng)用滯后或技術(shù)支持缺乏,或者是花了錢沒有達(dá)到實際效果。硬件兼容和搭配、控制系統(tǒng)高度集成,最終形成多路數(shù)據(jù)融合,是數(shù)據(jù)服務(wù)的重要功能。本文研究校園一卡通在圖書管理系統(tǒng)中的應(yīng)用,討論基于解析歸檔日志模式的數(shù)據(jù)同步機(jī)制,為不同服務(wù)間數(shù)據(jù)融合提供支持。
1 數(shù)據(jù)同步功能
在圖書館,實現(xiàn)IC借閱功能,涉及兩路數(shù)據(jù)服務(wù),因此,數(shù)據(jù)同步也是雙向的,如圖1所示。一是圖書館自動化管理系統(tǒng)數(shù)據(jù)同步,再就是一卡通系統(tǒng)數(shù)據(jù)同步,下面對其功能分別描述。
1.1 一卡通數(shù)據(jù)同步
圖書管理系統(tǒng)對每一位借閱者分配唯一的認(rèn)證編碼,或以條形碼形式生成。一卡通系統(tǒng)需要完成的功能如下:
(1) 身份認(rèn)證
通過聯(lián)機(jī)終端上的射頻卡機(jī),讀取寫在卡內(nèi)存儲芯片上專儲區(qū)域內(nèi)的認(rèn)證編碼,直接在前端完成和圖書管理系統(tǒng)的數(shù)據(jù)交換。由于畢業(yè)、掛失、離校等因素,各自獨立的后臺數(shù)據(jù)庫需要身份認(rèn)證的完整性和一致性約束,這就要做系統(tǒng)間的數(shù)據(jù)同步。
(2) 代扣款項
各個端口的POS機(jī)通過采集系統(tǒng)把數(shù)據(jù)傳送到交易平臺的前置機(jī),該數(shù)據(jù)直接提供給財務(wù)部門作為核算憑證,完成支付。由于圖書管理系統(tǒng)中很多服務(wù)涉及到扣款項目,如賠償、罰款、復(fù)印、在線查閱等,需要和一卡通系統(tǒng)支付平臺建立數(shù)據(jù)同步,保證賬戶數(shù)據(jù)的準(zhǔn)確性。
1.2 圖書館數(shù)據(jù)同步
完善的圖書管理系統(tǒng),一般采用C/S(數(shù)據(jù)庫-中間層-客戶端)、B/S(數(shù)據(jù)庫-Web服務(wù)器-瀏覽器)兩種模式的架構(gòu)。底層數(shù)據(jù)庫采用Oracle、Sql Server等,提供通用的ODBC數(shù)據(jù)接口,可以實現(xiàn)與第三方軟件無縫連接,完成數(shù)據(jù)交換。
(1) 讀卡模式
發(fā)卡、寫卡(寫身份認(rèn)證到卡的專儲區(qū)域)由一卡通服務(wù)授權(quán)方負(fù)責(zé),一卡通開發(fā)商提供讀卡動態(tài)鏈接庫。ILAS(自動圖書館管理系統(tǒng))提供一個讀卡程序,將讀到的證號發(fā)送給ILAS客戶端相關(guān)程序,完成借、還管理,該模式不涉及扣款等消費功能。
(2) 同步模式
實時接收讀者信息、掛失、注銷及扣款等功能的實現(xiàn),需要保持異步數(shù)據(jù)庫表與表項對特征描述的一致性。跨平臺數(shù)據(jù)交換的中心是同步服務(wù)程序,也是一個開放的接口服務(wù)程序,多路數(shù)據(jù)服務(wù)都可以向該接口發(fā)送信息(只要他知道了該接口的地址),只有擁有一定權(quán)限的用戶才能從接口中收取相關(guān)數(shù)據(jù)并處理該數(shù)據(jù)。在沒有第三方提供標(biāo)準(zhǔn)接口時,只能由數(shù)據(jù)服務(wù)雙方或多方開發(fā)同步服務(wù)程序。
1.3 同步功能描述
由于討論的是基于兩種服務(wù)的數(shù)據(jù)同步,因此要建立各自的同步軟件,功能描述如下:
(1) 一卡通中心軟件方實現(xiàn)功能如下:
一卡通服務(wù)程序?qū)崟r將請求(新增讀者、修改讀者記錄、換卡、掛失、注銷等)發(fā)送給ILAS服務(wù)程序,如果操作失敗(或網(wǎng)絡(luò)不通、超時等異常發(fā)生時),一卡通服務(wù)程序需將該次請求(相關(guān)信息)記錄下來(采用文件,或數(shù)據(jù)庫方式);然后定時將這些失敗請求重新發(fā)送給ILAS服務(wù)程序進(jìn)行處理。
(2) ILAS系統(tǒng)實現(xiàn)功能如下:
ILAS系統(tǒng)將接收到的服務(wù)請求進(jìn)行分析,進(jìn)行相應(yīng)的處理(新增讀者、換卡、掛失、注銷等操作),并將操作結(jié)果返回給一卡通服務(wù)程序。
2 基于解析歸檔日志的數(shù)據(jù)同步
由于一個校園或一個社區(qū),存在多種類數(shù)據(jù)服務(wù)交織,不同的開發(fā)技術(shù)和后臺數(shù)據(jù)庫,造成它們之間數(shù)據(jù)分離。另一方面,整體行政管理帶來電子數(shù)據(jù)交換需求,這就要求實施數(shù)據(jù)同步。
解析歸檔日志這種技術(shù)現(xiàn)在應(yīng)用的比較廣泛,Quest公司的shareplex軟件、DSG公司的realsync和Oracle的Stream都是這樣的產(chǎn)品。那么,它能做什么呢?實現(xiàn)數(shù)據(jù)庫容錯和異構(gòu)、異地數(shù)據(jù)庫完整性和一致性。
2.1 歸檔日志的概念
數(shù)據(jù)庫系統(tǒng)提供記錄對庫操作的所有DML語句的日志文件組,該文件組采取循環(huán)重寫,只要數(shù)據(jù)庫運行在歸檔模式并且設(shè)置自動歸檔為“真”,才能產(chǎn)生永久保存的歸檔日志。它的內(nèi)容包括:數(shù)據(jù)庫的更改歷史、更改類型(INSERT、UPDATE、DELETE、DDL等)、更改對應(yīng)的SCN號以及執(zhí)行這些操作的用戶信息等。
2.2 歸檔日志解析
歸檔日志的解析首先要確定數(shù)據(jù)庫間的主從關(guān)系,目的是隨著主數(shù)據(jù)庫邏輯結(jié)構(gòu)的改變而重置從數(shù)據(jù)庫,保持異構(gòu)或異地數(shù)據(jù)庫的同步,這里的邏輯結(jié)構(gòu)包含表、表項及記錄等。解析過程其實就是源操作的分解過程,重構(gòu)等價的SQL語句。具體如圖2所示。
2.3 Oracle的Stream
Oracle Stream利用高級隊列技術(shù),從庫與主庫可以是不同的操作系統(tǒng)平臺,也可以是多對一的建立關(guān)聯(lián)。通過解析歸檔日志,將歸檔日志解析成DDL及DML語句,對從數(shù)據(jù)庫組實施追加操作,實現(xiàn)數(shù)據(jù)庫之間的同步。這種技術(shù)可以將整個主數(shù)據(jù)庫、數(shù)據(jù)庫中的對象備份為一個新庫,對歸檔日志和關(guān)聯(lián)的備份庫進(jìn)行數(shù)據(jù)解析,進(jìn)而在對主庫及相關(guān)一卡通支付平臺沒有任何采集與更新壓力的情況下,實現(xiàn)對主數(shù)據(jù)庫組及表、對象、表項,甚至整個數(shù)據(jù)庫組的同步。
2.4 系統(tǒng)配置示例
(1) 一卡通數(shù)據(jù)平臺和交易平臺
服務(wù)器(IBM小型機(jī)9133-55A)配置:IBM P6 55A(4×2.1GHz CPU、16GB內(nèi)存、2×146G硬盤、2×4GB HBA光纖卡、DVD、磁帶機(jī)、雙口網(wǎng)卡、顯卡、異步卡AIX6.1操作系統(tǒng)、HA軟件)
后臺數(shù)據(jù)庫:Oracle Database 10G FOR IBM AIX 5L
(2) ILAS系統(tǒng)
服務(wù)器:浪潮英信NF5280(Xeon E5520/2GB/146GB)
系統(tǒng):SCO(UNIX)OPEN SERVER RELEASE 5.0.7
3 結(jié)束語
基于異構(gòu)平臺的數(shù)據(jù)同步方法很多,如消息隊列法、觸發(fā)器法。比較各種方法,考慮數(shù)據(jù)傳輸、交換的瞬時性和突發(fā)性,需要加強對數(shù)據(jù)平臺的保護(hù),特別是對由數(shù)據(jù)平臺和支付平臺組成和一卡通系統(tǒng)尤為重要。雙向數(shù)據(jù)同步,源數(shù)據(jù)和目標(biāo)數(shù)據(jù)具有動態(tài)性,歸檔日志解析,通過建立多級備份,實現(xiàn)對聯(lián)動操作的限制和過濾,保證了數(shù)據(jù)安全。本文是我們完成圖書管理系統(tǒng)和一卡通系統(tǒng)數(shù)據(jù)同步工作的總結(jié),被立為三亞市科信局2009年批準(zhǔn)項目。
摘要:本文借閱介紹了UML的組成部分、特點和作用,并詳細(xì)地闡述了在傳統(tǒng)的軟件開發(fā)階段中使用UML對圖書管理系統(tǒng)進(jìn)行建模的主要過程。
關(guān)鍵詞:UML;圖書管理系統(tǒng)
隨著計算機(jī)科學(xué)技術(shù)的飛躍發(fā)展,計算機(jī)技術(shù)在各行各業(yè)的應(yīng)用日益普及。使用計算機(jī)進(jìn)行管理不僅能使我們從繁雜的業(yè)務(wù)中解放出來,還能大大提高安全性。
本文針對圖書管理系統(tǒng)的開發(fā)過程,充分利用面向?qū)ο蠓治雠c設(shè)計的相關(guān)原理和方法,基于UML統(tǒng)一建模語言,主要使用UML的“用例圖”、“順序圖”、“類圖”來描述系統(tǒng),為系統(tǒng)的實現(xiàn)提供參考模型。
一、支持技術(shù)
UML Unified Modeling Language是一種編制系統(tǒng)藍(lán)圖的標(biāo)準(zhǔn)化語言可以可視化說明復(fù)雜系統(tǒng)的各種成分并構(gòu)造系統(tǒng)模型,以及建立各種必要的文檔,UML通過3類圖形建立系統(tǒng)模型:用例圖、靜態(tài)結(jié)構(gòu)圖(類圖、對象圖、組件圖、配置圖)和動態(tài)行為圖(順序圖、協(xié)同圖、狀態(tài)圖、活動圖),這些圖可以從不同的角度使系統(tǒng)可視化[1]。
二、系統(tǒng)的UML分析與設(shè)計
(一)圖書管理系統(tǒng)的需求分析
通過用戶訪談、問卷調(diào)查、對現(xiàn)有系統(tǒng)的采樣得知圖書管理系統(tǒng)應(yīng)具有以下幾個功能:1.編目模塊:對所有的采購來的新書或手工造冊的期刊合訂本進(jìn)行基本信息登記,包括索引號、書名、著者、國際書號、出版社、價格等,同時為每一本圖書生成一個可校驗的條形碼。2.讀者管理模塊:對讀者的基本信息進(jìn)行登記,包括姓名、單位、讀者類型等,系統(tǒng)同時為讀者生成唯一的讀者證號,以方便查詢讀者信息。3.借閱模塊:主要是對圖書的借閱業(yè)務(wù)流程進(jìn)行信息控制和管理,該模塊包括借書和還書兩大子功能。4.圖書檢索模塊:提供按圖書的編號、書名、責(zé)任者、出版社等途徑的檢索。5.系統(tǒng)維護(hù)模塊:提供數(shù)據(jù)庫備份、還原等實用工具,確保系統(tǒng)數(shù)據(jù)庫的一致性和安全性。
使用用例(Use Case)圖可以很好地組織系統(tǒng)的功能需求。系統(tǒng)用例圖是對系統(tǒng)需求的描述,表達(dá)了系統(tǒng)的功能和所提供的服務(wù)[2]在用例圖中,主要包括參與者、用例和通信關(guān)系三個要素。
(1)參與者。參與者代表外界與系統(tǒng)交互的單元,他既可以是使用系統(tǒng)的用戶,也可以是與系統(tǒng)交互的外部實體。
(2)用例。用例是在系統(tǒng)中執(zhí)行一系列動作,這些動作將生成特定參與者可見的價值結(jié)果。
(3)通信關(guān)聯(lián)。通信關(guān)聯(lián)表示的是參與者和用例之間的關(guān)系,或用例與用例之間的關(guān)系。
根據(jù)圖書管理系統(tǒng)功能分析,可以得到細(xì)化后的用例圖,如圖1所示。
圖1中的采編員、讀者、系統(tǒng)維護(hù)員位于系統(tǒng)的邊界之外,是系統(tǒng)的主要參與者。編目、圖書檢索、借閱圖書、讀者管理、系統(tǒng)維護(hù)是系統(tǒng)的頂級用例,與系統(tǒng)的主要功能相對應(yīng)。
(二)圖書管理系統(tǒng)的順序圖
在概要設(shè)計階段,需為系統(tǒng)的關(guān)鍵用例設(shè)計實現(xiàn)場景。用例的實現(xiàn)場景可以使用順序圖來描述。順序圖顯示了對象之間的動態(tài)合作關(guān)系,它強調(diào)對象之間消息發(fā)送的順序,同時顯示對象之間的交互。順序圖描述了系統(tǒng)的動態(tài)特征,它將交互關(guān)系表示為一個二維圖形??v向是時間軸,時間沿豎線向下延伸,按時間遞增序列出各對象類角色所發(fā)出和接收的消息,橫向排列的是參與交互的對象類角色。利用順序圖可以描述系統(tǒng)的動態(tài)行為,以便分析系統(tǒng)的動態(tài)特性和行為。在設(shè)計中我們按時間順序?qū)刂屏鹘?強調(diào)按時間展開消息傳送,重點是完成某個行為的對象類和這些對象之間所傳消息的時間順序[3]。
以借書為例繪制順序圖(見圖2):當(dāng)讀者辦理借書手續(xù)時,首先需要驗證讀者身份,判斷讀者是否合法,如果合法則根據(jù)讀者借閱權(quán)限和借書記錄,判斷是否能續(xù)借。若能續(xù)借,則等級借書記錄,如果不能續(xù)借,可能有兩種情況。第一種情況:借閱超期。如果讀者借閱已超期,需進(jìn)入超期罰款工作流程。第二種情況:借閱圖書量已達(dá)最大值,則需歸還一部分圖書,才能進(jìn)行續(xù)借。圖2中的第10、11、12三個步驟之間是互斥關(guān)系。
圖2.借書用例實現(xiàn)場景
三、建立類圖
類圖是描述系統(tǒng)的靜態(tài)特征,包括系統(tǒng)內(nèi)部對象的特征、對象之間相互的關(guān)系。
經(jīng)過以上階段的分析,我們發(fā)現(xiàn)圖書、讀者、讀者類型、借閱記錄是整個系統(tǒng)的關(guān)鍵類。圖3展示了這些類的職責(zé)以及它們之間的聯(lián)系。其中借閱記錄是關(guān)聯(lián)類,它將圖書與讀者之間多對多的關(guān)系分解成兩個一對多的關(guān)系。
四、結(jié)束語
通過對圖書管理系統(tǒng)的分析與設(shè)計,闡述了使用UML在需求分析和概要設(shè)計兩階段所需要做的工作。將UML應(yīng)用于圖書管理系統(tǒng)的建設(shè),可以加速加快開發(fā)進(jìn)度,提高代碼質(zhì)量,保證軟件后期開發(fā)的穩(wěn)定性和實用性。
摘要:本系統(tǒng)由VISUAL BASIC 6.0程序設(shè)計技術(shù)與Access數(shù)據(jù)庫管理技術(shù)共同完成的。其開發(fā)主要包括后臺數(shù)據(jù)庫的建立與維護(hù)以及前端應(yīng)用程序的開發(fā)兩方面。主要完成對圖書管理系統(tǒng)的需求分析、功能模塊劃分、數(shù)據(jù)庫模式分析,來滿足借閱者、圖書館工作人員和高級管理員三方面的需求。
關(guān)鍵詞:數(shù)據(jù)庫;Access;Visual Basic;ADO;圖書管理
一、引言
隨著信息時代的飛速發(fā)展,信息處理以深入到各行各業(yè)。管理信息系統(tǒng)是一個由人、計算機(jī)及其他外圍設(shè)備等組成的能進(jìn)行信息的收集、傳遞、存儲、加工、維護(hù)和使用的系統(tǒng)。其功能是最大限度地利用現(xiàn)代計算機(jī)及網(wǎng)絡(luò)通訊技術(shù)加強對企業(yè)的信息管理,從而建立正確的數(shù)據(jù),經(jīng)加工處理編制成各種信息資料,并及時提供給管理人員,以便其做出正確的決策,進(jìn)而不斷提高企業(yè)的管理水平和經(jīng)濟(jì)效益。
圖書管理系統(tǒng)的計算機(jī)化是典型的管理信息系統(tǒng),它具有著手工管理所無法比擬的優(yōu)點。一個完善的圖書管理系統(tǒng)需要滿足圖書借閱者、圖書館工作人員和圖書管理人員等三方面的需求,為用戶提供充足的信息和快捷的查詢手段,實現(xiàn)圖書管理的系統(tǒng)化和自動化,同時可幫助圖書管理人員更好更高效地完成圖書管理工作。
二、系統(tǒng)分析
(一)功能模塊
圖書管理主要是人的管理和書的管理。人的管理主要包括用戶注冊管理和讀者信息管理;書的管理主要是書籍的添加、書籍的借閱、書籍的查詢等管理。本系統(tǒng)的實現(xiàn)是以模塊管理的形式來完成的。
本系統(tǒng)主要有以下四個方面的功能
書籍管理部分:實現(xiàn)圖書類別設(shè)置、圖書檔案管理和報表預(yù)覽功能。
讀者管理部分:實現(xiàn)讀者類別設(shè)置、讀者檔案管理和報表預(yù)覽功能。
借閱管理部分:實現(xiàn)借閱信息的添加、查詢管理和報表預(yù)覽功能。
系統(tǒng)管理部分:實現(xiàn)系統(tǒng)用戶密碼的修改和新用戶的增加管理功能。
(二)數(shù)據(jù)庫設(shè)計
數(shù)據(jù)庫是信息系統(tǒng)的核心和基礎(chǔ)。它把大量數(shù)據(jù)按照模型組織,提供存儲、維護(hù)和檢索功能,可以方便、及時、準(zhǔn)確地獲取信息。因此,數(shù)據(jù)庫結(jié)構(gòu)是否合理,將直接影響本系統(tǒng)的開發(fā)。
本系統(tǒng)前臺開發(fā)工具采用Visual Basic程序設(shè)計,后臺連接是采用Access2000數(shù)據(jù)庫。Visual Basic是一種可視化的面向?qū)ο蟮模墒录眚?qū)動的結(jié)構(gòu)化高級程序設(shè)計語言,它提供了最迅速、最簡潔的開發(fā)應(yīng)用程序方法。Access2000具有十分強大數(shù)據(jù)庫具功能,利用它可以方便地實現(xiàn)對信息保存、維護(hù)、查詢、統(tǒng)計、打印、交流和,而且它可以方便地與office其他組件進(jìn)行數(shù)據(jù)交流。通過對圖書信息管理的內(nèi)容和數(shù)據(jù)流程圖的分析,設(shè)計出如下所示的數(shù)據(jù)項數(shù)據(jù)結(jié)構(gòu),在圖書信息管理庫中一共包括以三個表格:
讀者信息管理,里面記錄了讀者所有的基本資料(如姓名、編號、性別、類別、工作、單位、家庭地址、電話號碼、登記日期、已借書數(shù)量等)。
三、圖書管理系統(tǒng)的實現(xiàn)
基于對上述三個表格的分析,利用Visual Basic的可視化特性、Access2000數(shù)據(jù)庫強大連接功能及可提供各種數(shù)據(jù)庫訪問標(biāo)準(zhǔn)接口能力的ADD數(shù)據(jù)控件,建立了九大窗體:主窗體、圖書類別窗體、圖書類別管理窗體、圖書信息窗體、圖書信息管理窗體、查詢圖書信息窗體、借書信息窗體、查詢借書信息窗體和還書信息窗體。
(一)用戶注冊
用戶注冊過程簡單、快捷,只需用戶名和密碼。
(二)用戶登錄
進(jìn)入系統(tǒng),輸入用戶名和密碼驗證后,即可登入主界面。為避免出現(xiàn)多次錯誤輸入,如輸入密碼與用戶名出現(xiàn)三次不符,系統(tǒng)將自動退出登入。
(三)書籍查詢
用戶進(jìn)入本模塊后,按照圖書編號、圖書名、作者等關(guān)鍵字進(jìn)行圖書查詢。同時,圖書管理員也可通過相關(guān)的查詢操作來了解新書入庫情況等。
(四)書籍借閱
完成圖書的借閱、返回、超期破損等處理,查詢功能。借閱時,需改變該書的庫存量記錄,借閱時間為當(dāng)前時間。如果為續(xù)借,應(yīng)需清空該書當(dāng)前記錄并重新借閱。對還圖書超期、書籍缺頁破損或丟失等,應(yīng)由借閱者確認(rèn)并需交納一定的罰金,同時圖書管理人員應(yīng)對該書的使用情況及時做以備注。為方便他人借閱,應(yīng)限制借閱數(shù)量,對歸還的書籍應(yīng)及時變更庫存數(shù)目,刪除讀者對該書的借閱信息。
(五)讀者管理
讀者管理主要包括讀者信息的查詢、添加、刪除和修改等。讀者信息添加主要是讀者最初的信息錄入操作,若讀者退還借閱證件時,需進(jìn)行讀者信息的刪除操作。讀者信息的查詢,可通過姓名、編號的精確匹配來完成,排除同名情況。
(六)書籍的添加
書籍的添加是本系統(tǒng)的一項主要功能。啟動系統(tǒng),以超級管理員身份登陸系統(tǒng),就可以對圖書信息進(jìn)行添加。添加信息有書籍編號、書籍名稱、書籍類別代碼、作者姓名、書籍價格、出版者及登記日期等。
(七)密碼修改
為保證安全訪問,普通用戶和高級用戶可自行修改密碼。
(八)輔助功能
圖書管理的輔助功能,主要包括數(shù)據(jù)導(dǎo)入和備份,用戶留言、系統(tǒng)公告和幫助信息等。
四、結(jié)束語
通過實際的需求分析,本著簡單實用的原則,系統(tǒng)的設(shè)計在功能上盡量滿足用戶的需求,操作上力求簡單,易于用戶掌握和使用。
本圖書管理系統(tǒng)的主要特點是技術(shù)先進(jìn)、結(jié)構(gòu)清晰、具有較強的交互能力,但系統(tǒng)設(shè)計在有些地方還不夠完善,如對界面還需要更進(jìn)一步的人性化設(shè)計,才可更好地滿足不同層次人員的操作需求。
摘要:使用PHP開發(fā)的基于B/S模式的圖書管理系統(tǒng),可以使用戶界面更加人性化,工作效率更加高效,維護(hù)更加便捷。系統(tǒng)采用PHP+MYSQL技術(shù)作為開發(fā)工具,本文分析了系統(tǒng)的功能需求,給出了開發(fā)系統(tǒng)的關(guān)鍵技術(shù),說明了各個模塊的主要功能,最終實現(xiàn)了基于PHP的圖書管理系統(tǒng)。
關(guān)鍵詞:PHP+MYSQL;圖書管理;B/S模式
傳統(tǒng)的圖書管理系統(tǒng)采用C/S模式,由于C/S模式需要專門的客戶端軟件,不能夠?qū)崿F(xiàn)快速部署、安裝和配置,因此采用B/S模式開發(fā)圖書管理系統(tǒng)已成為一種趨勢,便于用戶在聯(lián)網(wǎng)的情況下進(jìn)行一系列查詢。開發(fā)一套能夠為用戶提供充足信息的圖書管理系統(tǒng)是十分必要的,基于PHP的圖書管理系統(tǒng)就是順應(yīng)這種需求而開發(fā)的。
一、系統(tǒng)功能分析
在開發(fā)系統(tǒng)之前,我們需要了解這個系統(tǒng)需要具備哪些功能,并按照功能將系統(tǒng)分解成多個獨立的功能模塊,確定各個子模塊之間的關(guān)系。功能分解是一個由復(fù)雜到簡單,由抽象到具體的一個過程。一些較大的系統(tǒng)開發(fā)前都需要進(jìn)行需求分析,將系統(tǒng)劃分成若干個模塊,方便日后開發(fā),測試與維護(hù)。
圖書管理系統(tǒng)功能圖如圖一所示
圖一 系統(tǒng)功能圖
(一)借還管理:該模塊主要功能是對借閱圖書的用戶的信息進(jìn)行錄入,自動生成歸還時間,判斷用戶是否達(dá)到最大借閱量,為滿足借閱條件的讀者提供已經(jīng)入庫的圖書的借閱服務(wù)。為用戶提供續(xù)借服務(wù),但不能超過續(xù)借次數(shù)。讀者歸還圖書時,消除用戶借閱該圖書的記錄,并顯示該讀者所有未還圖書的信息。
(二)圖書管理:該模塊的功能包括實現(xiàn)錄入和更新圖書信息的功能。圖書管理員可為每本圖書分配唯一的流水號,并按種類單獨或批量完成圖書入庫。更新圖書信息包括對圖書的圖書編號、書名、作者、文獻(xiàn)類型、作者簡介、友情鏈接等進(jìn)行修改。如果該書已經(jīng)過時,比如計算機(jī)方面圖書,可以進(jìn)行刪除相應(yīng)書籍的一系列信息。同時能提供相應(yīng)書籍的館藏地點,借閱情況以及圖書的歸還日期等信息。
(三)用戶管理:提供用戶注冊,用戶登錄功能。用戶進(jìn)入系統(tǒng)必須經(jīng)過身份認(rèn)證,認(rèn)證后賦予相應(yīng)權(quán)限。普通用戶可以查看自己的當(dāng)前借閱圖書,歷史借閱情況以及違章繳款記錄等信息。管理員可以對普通用戶信息進(jìn)行管理,包括用戶添加、刪除、修改,更改用戶最大借閱量,刪除用戶歷史記錄,重置用戶密碼等。登錄密碼經(jīng)過加密存儲于數(shù)據(jù)庫,即使數(shù)據(jù)庫維護(hù)人員獲得數(shù)據(jù)也不易進(jìn)行破解。
二、關(guān)鍵技術(shù)分析
本系統(tǒng)采用PHP作為腳本語言,結(jié)合MYSQL數(shù)據(jù)庫,采用Windows作為開發(fā)平臺,Apache作為網(wǎng)站服務(wù)器構(gòu)造了一個圖書管理系統(tǒng)。系統(tǒng)能夠為用戶提供方便快捷的途徑以實現(xiàn)圖書的入庫、借閱、歸還等信息的錄入、更新以及圖書基本信息、圖書庫存信息、讀者借閱信息的檢索和瀏覽。
三、功能實現(xiàn)
不論普通用戶還是管理員,登錄界面都是一樣的。在用戶信息表中有一個字段是用戶權(quán)限,這一字段只有“0”、“1”、“2”三個值,普通用戶為“0”,圖書管理員為“1”,系統(tǒng)管理員為“2”。在登錄驗證權(quán)限時,如果檢測到此字段為“0”,則跳轉(zhuǎn)到普通用戶頁面,檢測到“1”時,則跳轉(zhuǎn)到圖書管理員界面。
四、結(jié)束語
采用PHP技術(shù)和MySQL數(shù)據(jù)庫開發(fā)的基于Web的圖書管理系統(tǒng),充分考慮了當(dāng)前高校院系圖書資料管理的現(xiàn)狀和需求,簡化了客戶端的操作要求,基本實現(xiàn)了系統(tǒng)設(shè)計要求,在信息化的今天,基于B/S模式的信息管理系統(tǒng)將會更加流行。
摘要:隨著高職院校圖書資源的增多,對其查詢與管理工作變得日益繁重,該文選用.NET平臺為開發(fā)工具,對高職院校圖書管理系統(tǒng)進(jìn)行了設(shè)計與實現(xiàn),重點論述系統(tǒng)需求、體系結(jié)構(gòu)以及所采用的實現(xiàn)方案。
關(guān)鍵詞:.NET;圖書管理;信息系統(tǒng)
1 引言
近年來,由于高職院校學(xué)生快速增長,圖書館書目的數(shù)量與對圖書文獻(xiàn)的借閱需求也相應(yīng)增多,使圖書管理工作變得日益繁重,工作效率變低,不能滿足實際的管理需求。采用基于.Net的平臺架構(gòu),利用.Net 的優(yōu)勢結(jié)合三層體系結(jié)構(gòu)來開發(fā)圖書管理應(yīng)用系統(tǒng),能夠充分發(fā)揮網(wǎng)絡(luò)的作用,縮短開發(fā)周期,提高開發(fā)效率,提高系統(tǒng)的可維護(hù)性,有效滿足讀者圖書信息查詢和圖書館部門信息管理的需求。該系統(tǒng)投入運行之后,具有較強的可擴(kuò)展性和安全性,簡單易用、不需要安裝客戶端、易于升級維護(hù),是傳統(tǒng)圖書信息管理方式的有效補充。
2 系統(tǒng)的開發(fā)方法及相關(guān)技術(shù)
系統(tǒng)將采用基于.NET的三層B/S結(jié)構(gòu)設(shè)計和開發(fā),這是大部分信息管理系統(tǒng)開發(fā)方法的首選。用如此方式開發(fā)出的系統(tǒng)具備界面友好、操作簡便、安全性高等特點,將為圖書管理者和讀者提供高效的管理和查詢方式。
2.1 .NET平臺概述
本系統(tǒng)將采用Microsoft的.NET框架,該框架是一個創(chuàng)建應(yīng)用程序的新平臺,提供了標(biāo)準(zhǔn)而高效的環(huán)境,是編制應(yīng)用程序的靈活的解決方案。.NET 有許多其他開發(fā)平臺無法比擬的優(yōu)勢,是圖書信息管理系統(tǒng)開發(fā)的較好選擇。
.NET可以和很多相關(guān)產(chǎn)品進(jìn)行整和,而不必關(guān)心這些參與整和的產(chǎn)品是否來自微軟公司。.NET 是一種以因特網(wǎng)為中心的技術(shù)平臺,有用的數(shù)據(jù)皆在網(wǎng)絡(luò)中存放,用戶可以通過.NET工具隨時隨地地訪問這些數(shù)據(jù)。即:用戶不需要知道這些信息具體存儲位置以及獲取這些信息的方法的細(xì)節(jié)。.NET 推動了開發(fā)方法和思想的發(fā)展,使應(yīng)用程序的開發(fā)更為簡化明了。
五個主要的模塊共同組成.NET框架體系結(jié)構(gòu),列出如下:
1) 程序設(shè)計語言及公共語言規(guī)范;
2) 應(yīng)用程序平臺;
3) 及類庫;
4) 公共語言運行庫;
5) 程序開發(fā)環(huán)境。
2.2 B/S模式簡介
C/S模式和B/S模式是目前軟件體系結(jié)構(gòu)的主要模式。其中,C/S模式在當(dāng)前網(wǎng)絡(luò)和技術(shù)發(fā)展的背景下已經(jīng)顯現(xiàn)出不少弊端,如缺少通用性,維護(hù)和升級工作量大,難以進(jìn)一步拓展等等,所以這種模式在校園網(wǎng)的應(yīng)用比較受限。而B/S模式逐漸顯示出其優(yōu)越性,和 C/S相比,B/S模式客戶端不必配置繁雜的應(yīng)用軟件,進(jìn)行程序開發(fā)時也主要是在服務(wù)器端進(jìn)行操作。
B/S模式的三個邏輯層次為:用戶層(用戶面對瀏覽器,將其數(shù)據(jù)訪問請求通過以HTTP格式發(fā)出,返回的結(jié)果也到達(dá)客戶瀏覽器)、業(yè)務(wù)層(功能為:Web服務(wù)器以及中間層數(shù)據(jù)庫的存取操作、遠(yuǎn)程數(shù)據(jù)庫的訪問等)與數(shù)據(jù)層(由系統(tǒng)所需的本地及遠(yuǎn)程異構(gòu)數(shù)據(jù)庫組成)??蛻舳送ㄟ^與中間層建立連接來對數(shù)據(jù)庫進(jìn)行訪問和操作。這樣的屬性比較適合圖書管理信息系統(tǒng)的開發(fā)。
3 系統(tǒng)需求分析
高職院校圖書信息管理系統(tǒng)是分布在圖書館部門中的一套獨立的網(wǎng)絡(luò)系統(tǒng),面對所有讀者用戶以及圖書資源的管理者,其主要任務(wù)是實現(xiàn)對圖書資源所有日常的信息管理,提高圖書管理的工作效率,促進(jìn)其管理工作的科學(xué)化、信息化、規(guī)范化及制度化,因此應(yīng)該具備簡單、實用的特點。按照讀者的需求,該系統(tǒng)應(yīng)該具有的最基本的功能有:圖書信息查詢功能、借書/還書/續(xù)借功能、圖書資源管理功能、讀者信息登記功能等等。此外,諸如用戶登錄、數(shù)據(jù)統(tǒng)計、報表打印等輔助功能也應(yīng)該得到良好的支持。
在系統(tǒng)性能上,必須具備以下特征:
1) 符合軟件系統(tǒng)開發(fā)標(biāo)準(zhǔn):采用成熟的組件,為數(shù)據(jù)庫調(diào)用提供標(biāo)準(zhǔn)的接口,符合軟件開發(fā)業(yè)界的規(guī)范。
2) 系統(tǒng)基于先進(jìn)的技術(shù):具體到此系統(tǒng),則應(yīng)該采用真正符合.net 架構(gòu)的應(yīng)用模式。
3) 系統(tǒng)具備良好安全性:能夠及時發(fā)現(xiàn)和抵御外界以及來自系統(tǒng)內(nèi)部的攻擊行為,使用足夠安全的數(shù)據(jù)存儲策略,從三個層次保證系統(tǒng)的安全:用戶驗證層次、數(shù)據(jù)訪問層次和業(yè)務(wù)邏輯層次。
4) 系統(tǒng)具備可升級的空間,可以隨著用戶業(yè)務(wù)的增長無縫地進(jìn)行二次開發(fā),在開發(fā)過程中實現(xiàn)平滑升級,不影響用戶使用。
5) 易用性:系統(tǒng)的操作簡單而人性化 。
4 系統(tǒng)設(shè)計
4.1 系統(tǒng)的功能框架
該圖書管理系統(tǒng)開發(fā)使用以下的開發(fā)工具和開發(fā)環(huán)境:操作系統(tǒng)選擇了Windows XP的SP2版本,程序的開發(fā)則應(yīng)用了Microsoft Visual ,在數(shù)據(jù)庫的選擇上,由于SQL Server與.NET 可以很好地結(jié)合,因此選用 微 軟的SQL Server 2005作為給系統(tǒng)提供支持的數(shù)據(jù)庫。
綜上所述,系統(tǒng)的功能框架為:.NET 技術(shù)與SQL Server 2005的優(yōu)勢相結(jié)合,使網(wǎng)絡(luò)與數(shù)據(jù)庫良好連接,從而實現(xiàn)圖書數(shù)據(jù)的檢索、查詢功能,采用 B/S 模式,完成圖書信息查詢功能、借書/還書/續(xù)借功能、圖書資源管理功能、讀者信息登記功能的構(gòu)建。系統(tǒng)最終分為數(shù)據(jù)層、用戶層和業(yè)務(wù)層三層結(jié)構(gòu)。用戶層即客戶端用戶界面,使用IE瀏覽器;業(yè)務(wù)層主要進(jìn)行應(yīng)用處理,數(shù)據(jù)層則以 為接口來響應(yīng)應(yīng)用層對數(shù)據(jù)的請求。
該系統(tǒng)為用戶提供服務(wù)的流程為:安裝運行在服務(wù)器上的圖書管理信息系統(tǒng)以瀏覽器的形式為在客戶端查詢和管理圖書信息的用戶提供交互界面,在用戶按照提示輸入其用戶名與密碼之后,再將請求提交到服務(wù)器;圖書管理系統(tǒng)對用戶輸入的查詢與管理數(shù)據(jù),按照不同的數(shù)據(jù)庫來確定連接參數(shù),并對相應(yīng)的數(shù)據(jù)庫進(jìn)行基于訪問,從而及時、正確地響應(yīng)用戶的查詢與管理等操作。根據(jù)用戶的指令所返回的查詢結(jié)果將以數(shù)據(jù)視圖的形式顯示,數(shù)據(jù)經(jīng)過整理之后寫入XML文檔并顯示在用戶瀏覽器上。
4.2 系統(tǒng)的功能模塊
系統(tǒng)最基本的功能模塊包括:圖書信息檢索模塊、借書/還書/續(xù)借模塊、圖書資源管理模塊、讀者信息登記模塊等等。對系統(tǒng)維護(hù)與管理的一些必要模塊如用戶登錄模塊、數(shù)據(jù)統(tǒng)計模塊、報表打印模塊等輔助部分也應(yīng)該包含在系統(tǒng)中。以下對部分模塊及其所實現(xiàn)功能進(jìn)行簡要介紹。
圖書信息檢索模塊:實現(xiàn)圖書資源查詢功能。用戶在圖書管理系統(tǒng)界面的相關(guān)文本框里輸入(或者根據(jù)提示選擇)圖書資源查找條件,系統(tǒng)就可以反饋該圖書的明細(xì)信息,比如圖書的名稱、作者、出版社、ISBN以及圖書狀態(tài)。
借書/還書/續(xù)借模塊:主要是對讀者借書、還書、續(xù)借行為進(jìn)行登記并生成相應(yīng)的借書、還書、續(xù)借紀(jì)錄,供管理員和讀者查詢。這些信息應(yīng)該包括:圖書的編號、讀者基本信息、借閱還書/續(xù)借日期等。
圖書資源管理模塊:本模塊的功能是實現(xiàn)圖書資源管理者對圖書資源的信息進(jìn)行登記、改動或者補充的操作。圖書資源管理可以利用該模塊對圖書的各種屬性信息進(jìn)行登記,如書名、出版社、作者、出版日期等詳細(xì)信息進(jìn)行維護(hù)和修改。
讀者信息登記模塊:此模塊是為了實現(xiàn)管理者對讀者的個人基本信息進(jìn)行登記備案而開發(fā)的。讀者的基本信息可以被管理者進(jìn)行登記和填加、修改、刪除。
數(shù)據(jù)統(tǒng)計模塊:該模塊對讀者訪問使用圖書資源信息的歷史數(shù)據(jù)進(jìn)行分析,從而為提高圖書資源的管理效率打下良好基礎(chǔ)。該模塊包含一些必要的功能,如圖書借閱率分析,期刊利用率分析,圖書信息綜合統(tǒng)計等。這些數(shù)據(jù)如果需要存檔,該模塊就應(yīng)具備打印輸出或轉(zhuǎn)儲到其他存儲介質(zhì)的相關(guān)功能。
用戶登錄模塊:對圖書資源管理者、教師用戶、學(xué)生用戶等不同用戶群體進(jìn)行身份的驗證,根據(jù)用戶輸入的用戶名及password,對不同級別的用戶賦予相應(yīng)的操作權(quán)限。
4.3 系統(tǒng)數(shù)據(jù)庫的設(shè)計
圖書管理信息系統(tǒng)主要包括圖書資源信息的瀏覽,圖書的增加、退庫以及屬性設(shè)置等。其主要功能是對圖書進(jìn)行查詢,對借書、還書進(jìn)行登記記錄管理,對圖書資源基本信息的維護(hù)以及對讀者資料進(jìn)行維護(hù)等。因此該系統(tǒng)應(yīng)包括圖書資源、圖書借閱者和圖書管理者等實體以及以上幾個實體之間的關(guān)系。
4.3.1 數(shù)據(jù)邏輯表設(shè)計
系統(tǒng)的后臺數(shù)據(jù)庫中存在數(shù)據(jù)庫操作時所需要的所有實體的表文件,如:圖書資源信息表和用戶個人資料表等,下面列出其中主要兩個表文件的結(jié)構(gòu):
表1 圖書資源信息表 表2 用戶個人資料表
■
各種實體之間根據(jù)具體的現(xiàn)實需求而具備不同的關(guān)系。由此形成數(shù)據(jù)庫的基本結(jié)構(gòu)。該系統(tǒng)將采用微軟公司的SQL Server 2005數(shù)據(jù)庫管理系統(tǒng)。數(shù)據(jù)庫中的主要表文件中,每個表均存在一個整數(shù)型的ID字段,作為該表文件的主鍵。此外還應(yīng)存在表與表之間進(jìn)行聯(lián)結(jié)的外部關(guān)鍵字。
4.3.2 數(shù)據(jù)庫設(shè)計
在.NET中,通過實現(xiàn)對數(shù)據(jù)庫的訪問技術(shù)。Data Set和.NET數(shù)據(jù)提供程序是的兩個核心組件。在.NET中通過訪問數(shù)據(jù)庫的過程如下:第一步: 讀取用戶相關(guān)的查詢信息,從中間層數(shù)據(jù)庫中取得ODBC訪問某個資源數(shù)據(jù)庫所需的有關(guān)參數(shù),從而生成相應(yīng)的字符串并創(chuàng)建Connection對象;第二步:根據(jù)用戶相關(guān)的查詢信息進(jìn)一步生成查詢命令在數(shù)據(jù)庫中對數(shù)據(jù)進(jìn)行檢索。第三步:把數(shù)據(jù)庫中的數(shù)據(jù)提交給查詢者,提交的格式為XML文檔。
5 系統(tǒng)安全策略
圖書信息管理系統(tǒng)的安全問題主要分為兩個方面:
1) 系統(tǒng)運行環(huán)境的安全:指圖書管理系統(tǒng)的服務(wù)器安全,比如需防止計算機(jī)病毒傳染以及黑客入侵;
2) 系統(tǒng)應(yīng)用程序的安全:主要是圖書管理系統(tǒng)中權(quán)限不同的用戶具有不同操作范圍與級別,防止有越權(quán)操作引起數(shù)據(jù)和管理上的混亂。
針對以上的安全風(fēng)險與安全隱患,圖書管理系統(tǒng)服務(wù)器必須安裝及時升級的殺毒軟件,系統(tǒng)數(shù)據(jù)庫也要有相應(yīng)的備份方案 ,備份文件可以定期轉(zhuǎn)儲到異地介質(zhì)上。另外,系統(tǒng)的密碼組合與密碼長度要充分考慮到社會工程學(xué)的原則,以免被盜取或者破解,系統(tǒng)還需要編寫規(guī)范的腳本程序以杜絕黑客入侵。對不同級別的用戶分別設(shè)置分不同的操作權(quán)限組別,每個級別的用戶都擁有自己的權(quán)限范圍。
6 結(jié)束語
基于.NET平臺來設(shè)計和實現(xiàn)高職院校圖書管理系統(tǒng),充分地利用了院校的網(wǎng)絡(luò)硬件平臺與圖書信息資源,可以解決傳統(tǒng)圖書信息管理中難以解決的系列問題。使讀者可以方便地進(jìn)行圖書信息的查詢與操作,實現(xiàn)了對圖書的實時、動態(tài)管理,為高職院校的圖書管理工作提供高效的輔助支持,提高了圖書館部門的工作效率。
摘要:針對目前學(xué)校圖書管理的重要性,該文設(shè)計與實現(xiàn)了圖書管理系統(tǒng),分別從系統(tǒng)目標(biāo)分析、模塊設(shè)計、數(shù)據(jù)庫設(shè)計和系統(tǒng)實現(xiàn)的主要技術(shù)這四部分來闡述。
關(guān)鍵詞:圖書管理;數(shù)據(jù)庫;信息化
圖書館擁有豐富的文獻(xiàn)信息資源,是社會信息系統(tǒng)的重要組成部分,在信息社會化中作用愈來愈重要。本文正是基于這個出發(fā)點,依據(jù)信息管理系統(tǒng)的先進(jìn)思想理論和我校圖書館具體特點開發(fā)出了圖書信息管理系統(tǒng),并將其擴(kuò)展到基于WEB的數(shù)字圖書館。
1 系統(tǒng)設(shè)計
系統(tǒng)設(shè)計是在系統(tǒng)需求分析的基礎(chǔ)上,設(shè)計出滿足用戶要求的高質(zhì)量的系統(tǒng)。
1.1 目標(biāo)分析
通過深入的調(diào)查研究,確定了本系統(tǒng)的開發(fā)目標(biāo)包括以下幾個方面:
1) 開發(fā)出能夠滿足目前學(xué)校需求,又在保證先進(jìn)性、開放性、投資保護(hù)性、可擴(kuò)展性的前提下盡量降低造價的圖書館管理系統(tǒng)。它涵蓋圖書館管理工作的整個過程,使管理完善透明,并留有與學(xué)院其他系統(tǒng)的接口。
2) 開發(fā)出一套使用簡單、易于維護(hù)、對系統(tǒng)使用者和系統(tǒng)管理員技術(shù)水平要求較低,同時在系統(tǒng)生命周期中能夠通過簡單調(diào)整即可適應(yīng)學(xué)校未來管理要求的圖書館管理系統(tǒng)。
3) 以條形碼閱讀機(jī)識別和閱讀條形碼的方式貫穿整個圖書借閱過程,提高工作效率,提升學(xué)院的整體實力。
4) 通過信息管理手段達(dá)到使管理者及時獲取圖書的館藏信息,達(dá)到圖書管理的動態(tài)調(diào)控。
5) 提升圖書館內(nèi)、外部信息的正確性、一致性、共享性,以信息系統(tǒng)作為管理的輔助手段,減輕手工勞動,提高工作效率。
6) 通過引進(jìn)軟件系統(tǒng)和管理思想,全面提升管理層次和人員素質(zhì),為學(xué)校的發(fā)展奠定基礎(chǔ)。
1.2 模塊設(shè)計
針對上述的設(shè)計目標(biāo),本系統(tǒng)決定采用+SQL SERVER2000技術(shù)實現(xiàn),整個系統(tǒng)主要由一組相互關(guān)聯(lián)的動態(tài)頁面組成。設(shè)計的系統(tǒng)主要包括以下的子系統(tǒng):讀者管理子系統(tǒng)、圖書管理子系統(tǒng)、期刊管理子系統(tǒng)、圖書流通管理子系統(tǒng)、期刊流通管理子系統(tǒng)、統(tǒng)計分析管理子系統(tǒng)、系統(tǒng)管理子系統(tǒng)、館際互借子系統(tǒng)和基礎(chǔ)信息維護(hù)子系統(tǒng)。圖書館管理系統(tǒng)主要子系統(tǒng)劃分如圖1所示。
1) 讀者管理
該功能模塊用于管理讀者相關(guān)的信息,包括讀者類型設(shè)置、讀者檔案管理、借書證掛失與恢復(fù)、過期續(xù)證管理和讀者檔案詞庫設(shè)置等。
2) 圖書管理
該功能模塊用于管理圖書相關(guān)的信息,包括圖書類型設(shè)置、出版社管理、圖書檔案管理、圖書注銷、圖書征訂、圖書驗收和圖書盤點等。
3) 期刊管理
該功能模塊用于管理期刊相關(guān)的信息,包含的功能模塊如下:“期刊管理”和“圖書管理”的功能是一致的,只是期刊的檔案內(nèi)容和流通管理方式和圖書有所區(qū)別。
4) 圖書流通管理
該功能模塊用于管理圖書流通環(huán)節(jié)相關(guān)的操作,主要包括:
“圖書借閱”用于登記讀者借閱圖書的記錄并減少圖書在庫的庫存,登記內(nèi)容包括借閱編號、圖書編號、讀者編號、押金、借閱時間、應(yīng)還時間、操作員等。
“圖書歸還”用于登記讀者歸還圖書的記錄并增加圖書在庫的庫存,登記內(nèi)容包括歸還編號、圖書編號、讀者編號、退還押金、歸還時間、操作員等。
“圖書續(xù)借”用于登記讀者到期圖書的續(xù)借記錄。
5) 期刊流通管理
該功能模塊實現(xiàn)的功能和“圖書流通管理”功能模塊是一致的,只是管理的對象是期刊。
6) 統(tǒng)計分析管理
該功能模塊為圖書館管理人員的分析決策提供依據(jù)。
7) 館際互借
該功能模塊提供網(wǎng)上查詢、請求受理、文獻(xiàn)送出、文獻(xiàn)借入、讀者借還、文獻(xiàn)送還、回館登記等功能。
8) 基礎(chǔ)信息維護(hù)子系統(tǒng)
該功能模塊主要用于對圖書館信息、書籍信息、常用詞庫等項目進(jìn)行初始化設(shè)置,這些設(shè)置一般不輕易改動。
2 數(shù)據(jù)庫設(shè)計
本數(shù)據(jù)庫系統(tǒng)采用Browser/Server模式,通過lnternet平臺連接數(shù)據(jù)庫,取得數(shù)據(jù)集,并對其進(jìn)行添加、修改、查詢、刪除等操作。而對數(shù)據(jù)庫進(jìn)行的各種操作,本系統(tǒng)是通過使用SQL語言來實現(xiàn)的,同時以SQL Server 2000作為后臺數(shù)據(jù)庫。通過使用ADO對象模塊所提供的對象及方法能建立各種Web數(shù)據(jù)庫應(yīng)用系統(tǒng),通過ODBC連接數(shù)據(jù)庫的低層界面,能處理任何類型的數(shù)據(jù)。
根據(jù)系統(tǒng)需求,本系統(tǒng)創(chuàng)建了Ebook.mdf數(shù)據(jù)庫,它主要包括48張表,分別存放相應(yīng)子功能的數(shù)據(jù)信息,其中“讀者信息”和“圖書信息”表是關(guān)鍵的表,用于存放圖書館讀者的信息和文獻(xiàn)的信息,圖書館管理系統(tǒng)實際上就是對讀者和文獻(xiàn)的管理。其他涉及讀者信息和文獻(xiàn)信息的表,都只記錄相應(yīng)的編號,并根據(jù)作為外鍵的“編號”字段相對應(yīng)。因此“讀者信息”、“圖書信息”和其他表間的關(guān)系是1:N的關(guān)系。
下面介紹幾個主要的表格的設(shè)計。
1) 讀者信息表:(編號、姓名、性別、條形碼、類型、出生日期、有效證件、證件號碼、聯(lián)系方式、登記日期、有限期至、操作員、圖書借閱次數(shù)、期刊借閱次數(shù)、是否掛失、備注)。
2) 圖書信息表:(編號、條形碼、書名、類型、作者、譯者、ISBN、出版社、價格、頁碼、書架名稱、現(xiàn)存量、庫存總量、入庫時間、操作員、簡介、借出次數(shù)、是否注銷、備注)。
3) 圖書借閱表:(借閱編號、圖書編號、讀者編號、借閱時間、應(yīng)還時間、續(xù)借次數(shù)、操作員、狀態(tài)、備注)。其中,有下劃線的字段為主鍵。
3 系統(tǒng)實現(xiàn)的主要技術(shù)
3.1 訪問數(shù)據(jù)庫技術(shù)
本系統(tǒng)訪問SQL Server數(shù)據(jù)庫,主要是通過使用來完成。提供對Microsoft SQL Server等數(shù)據(jù)源以及通過OLE DB和XML公開的數(shù)據(jù)源的一致訪問。數(shù)據(jù)共享使用者應(yīng)用程序可以使用來連接到這些數(shù)據(jù)源,并檢索、操作和更新數(shù)據(jù)。
有效地從數(shù)據(jù)操作中將數(shù)據(jù)訪問分解為多個可以單獨使用或一前一后使用的不連續(xù)組件。包含用于連接到數(shù)據(jù)庫、執(zhí)行命令和檢索結(jié)果的.NET數(shù)據(jù)提供程序。您可以直接處理檢索到的結(jié)果,或?qū)⑵浞湃?DataSet對象,以便與來自多個源的數(shù)據(jù)或在層之間進(jìn)行遠(yuǎn)程處理的數(shù)據(jù)組合在一起,以特殊方式向用戶公開。 DataSet對象也可以獨立于.NET數(shù)據(jù)提供程序使用,以管理應(yīng)用程序本地的數(shù)據(jù)或源自XML的數(shù)據(jù)。在本系統(tǒng)程序的編寫過程中,主要實現(xiàn)了以下的功能:1) 多條件查詢系統(tǒng)的實現(xiàn)。2) ActiveX組件。3) 生成自適應(yīng)的用戶界面。
3.2 SQL Server數(shù)據(jù)庫技術(shù)
數(shù)據(jù)庫選擇易學(xué)、易用、安全、穩(wěn)定的SQLserver 作為后臺數(shù)據(jù)庫。現(xiàn)介紹在SQL中常用到的SELECT數(shù)據(jù)查詢命令、用于添加記錄的INSERT命令、修改數(shù)據(jù)的UPDATE命令和刪除記錄的DELETE命令。
1) 數(shù)據(jù)查詢命令
用于數(shù)據(jù)庫查詢的SELETE命令是最常用的SQL命令,其基本語法格式為:
SELECT 字段列表 [ INTO 新表名 ] FROM 源表名 [ WHERE 查詢條件 ] [ GROUP BY 分組表達(dá)式 ] [ HAVING 查找條件 ] [ ORDER BY 排序表達(dá)式 [ ASC | DESC ] ]
如在本系統(tǒng)中,要根據(jù)圖書名稱來查詢庫內(nèi)圖書則使用此語句SELECT * FROM BOOK ”&” WHERE BOOK_NAME LIKE “%”, & REQUEST(“NAME”) & “%’ORDER BY BOOKID ASC”
2) 插入記錄命令
用于在數(shù)據(jù)庫中插入記錄的SQL命令為INSERT,其基本語法格式為:
INSERT INTO (,… ) VALUES(,…)
3) 更新數(shù)據(jù)命令
用于修改或更新數(shù)據(jù)庫中數(shù)據(jù)的SQL命令為UPDATE,其語法格式為:
UPDATE SET =,… WHERE
4) 刪除記錄命令
用于刪除記錄的SQL命令為DELETE,其語法格式為:
DELETE FROMWHERE
3.3 創(chuàng)建存儲過程
在頻繁訪問數(shù)據(jù)庫的系統(tǒng)中,使用存儲過程有很多優(yōu)點,本系統(tǒng)使用了“sf- tszd”、“sf-tsjy”、“sf-tsgh”3個存儲過程,實現(xiàn)的功能分別為征訂圖書入庫、借閱圖書出庫和歸還圖書入庫,產(chǎn)生罰款信息等功能,下面以sf- tszd 為例。
create proc sf_tszd
as
begin tran
%驗收入庫,增加圖書庫存量%
Update tbtsxxset kczl=isnull(kczl,0)+b.dgsl,
xcl=isnull(xcl,0)+b.dgsl,rksj=b.ysrq
from tbtsxxas a,tszdas b where a.bh=b.tsbhand b.sfys=0
%設(shè)置tszd記錄的標(biāo)志,標(biāo)志為已驗收%
Update tszd set ysrq =getdate(),sfys=1 where sfys=0
commit
GO
4 結(jié)束語
圖書管理系統(tǒng)是高技術(shù)的工程項目,它規(guī)范了工作流程,實現(xiàn)了全程控制,使圖書的借閱工作更加方便、快捷、準(zhǔn)確;它突出了重點部位,實現(xiàn)了環(huán)節(jié)控制,使圖書館的管理工作更嚴(yán)謹(jǐn)周密;它能夠促進(jìn)整個學(xué)校管理水平的不斷提高,提升了整個學(xué)校辦學(xué)層次。本系統(tǒng)經(jīng)半年多的實際應(yīng)用,已基本上滿足了圖書館管理需要,但也存在一些問題,有待于和進(jìn)一步完善。
摘要:圖書館管理系統(tǒng)是典型的管理信息系統(tǒng)(MIS),其開發(fā)主要包括后臺數(shù)據(jù)庫的建立和維護(hù)以及前端應(yīng)用程序的開發(fā)兩個方面。該文從軟件工程理論出發(fā)對該系統(tǒng)進(jìn)行了分析和設(shè)計,提供了在系統(tǒng)開發(fā)中遇到的主要技術(shù)問題及難點的解決方案。
關(guān)鍵詞:MIS;模塊;測試;數(shù)據(jù)庫
1 概述
管理信息系統(tǒng)(Management Information System)簡稱MIS,可以認(rèn)為是一個由人、計算機(jī)及其他外圍設(shè)備等組成的能進(jìn)行信息的收集、傳遞、存貯、加工、維護(hù)和使用的系統(tǒng)。其功能主要是最大限度的利用現(xiàn)代計算機(jī)及網(wǎng)絡(luò)通訊技術(shù)加強企業(yè)的信息管理,從而建立正確的數(shù)據(jù),然后加工處理并編制成各種信息資料及時提供給管理人員,以便其進(jìn)行正確的決策,不斷提高企業(yè)的管理水平和經(jīng)濟(jì)效益。
圖書管理系統(tǒng)則是典型的管理信息系統(tǒng),對圖書館的決策者和管理者來說都至關(guān)重要,一個完善的圖書管理系統(tǒng)應(yīng)能為用戶提供充足的信息和快捷的查詢手段。本文從軟件工程出發(fā)給出了解決方案。
2 圖書管理系統(tǒng)的分析
要能滿足圖書入庫、借閱登記、借閱查詢、過期提示、辦理借書卡這些日常業(yè)務(wù)的需要。通過系統(tǒng)的使用,改變舊的圖書管理模式,使對圖書的管理、借閱、查詢更加方便有效。
2.1 系統(tǒng)選型方案
本系統(tǒng)采用多層應(yīng)用軟件體系結(jié)構(gòu), 采用IE6.0及以上或同等其它瀏覽器+Win2003 Server/IIS 5.0+SQLServer2000的模式。
服務(wù)器:可選用IBM、HP等公司的64位小型機(jī)或高檔微機(jī)。
客戶機(jī):能安裝支持IE6.0及以上版本瀏覽器并能聯(lián)網(wǎng)的機(jī)器。
開發(fā)工具:MS Visual Studio .NET+、SQLServer2000。
2.2 數(shù)據(jù)需求
1)典型數(shù)據(jù)流條目設(shè)計
登錄用戶=帳號+姓名+密碼+權(quán)限
圖書=圖書編號+類別+書名+作者+出版日期+出版社+定價+總數(shù)量+剩下數(shù)量+備注
2)典型數(shù)據(jù)字典(DD)設(shè)計
圖1為典型數(shù)據(jù)字典。
2.3 功能劃分
圖書管理系統(tǒng)主要實現(xiàn)以下七方面的功能:查詢、圖書借還、圖書入庫、圖書維護(hù)、圖書超期提示、環(huán)境管理、備份還原。
2.4 典型數(shù)據(jù)流圖(DFD)設(shè)計
圖2為新書入庫DFD。
3 總體設(shè)計
3.1 系統(tǒng)結(jié)構(gòu)示意圖
所謂多層應(yīng)用軟件體系結(jié)構(gòu),是將各種應(yīng)用作為被共享的服務(wù)的集合,是一種跨應(yīng)用、可重用的服務(wù)平臺。那么在這個平臺上,各種應(yīng)用作為組件可集成或重組生成新的應(yīng)用。由于其靈活的伸縮性,非常適合Internet/Intarnet應(yīng)用。
多層結(jié)構(gòu)同時也是一種將B/S結(jié)構(gòu)與C/S結(jié)構(gòu)無縫結(jié)合的新型結(jié)構(gòu),以B/S結(jié)構(gòu)滿足地理位置分散、通訊介質(zhì)各異的應(yīng)用;以C/S的結(jié)構(gòu)樣式解決B/S不能解決的復(fù)雜的事務(wù)處理。示意圖如圖3。
3.2 總體結(jié)構(gòu)和模塊外部設(shè)計
本系統(tǒng)含圖書整理、新書入庫、查詢、辦借書卡、圖書借還、環(huán)境管理等子系統(tǒng),管理員可遠(yuǎn)程進(jìn)行數(shù)據(jù)的錄入、刪除、更新、查詢等操作,圖書館可根據(jù)從網(wǎng)上匯總上來的數(shù)據(jù)進(jìn)行各種統(tǒng)計等處理。部分公共圖書信息可在校園網(wǎng)、Internet上。用戶可通過瀏覽器從圖書數(shù)據(jù)庫中獲取相應(yīng)的動態(tài)信息,可在某些限定范圍內(nèi)對數(shù)據(jù)庫進(jìn)行操作。
3.3 E-R圖
E-R圖清楚地描述了系統(tǒng)中各個實體之間的聯(lián)系,以及各個實體所具有的屬性。在建立E-R圖的過程分以下幾個步驟:選擇局部應(yīng)用;逐一設(shè)計分E-R圖;合并分E-R圖,生成初步E-R圖消除不必要的冗余,設(shè)計基本的E-R圖。
3.4 邏輯結(jié)構(gòu)設(shè)計
需建立數(shù)據(jù)庫,在此數(shù)據(jù)庫基礎(chǔ)上建立起信息表、權(quán)限表、用戶表、還書等數(shù)據(jù)表。
3.5 運行設(shè)計
系統(tǒng)運行模塊分成基本的三個模塊,分別為:輸入模塊,輸出模塊,處理模塊。整個系統(tǒng)的維護(hù)容易,簡單;系統(tǒng)的結(jié)構(gòu)層次簡單,易懂。
4 圖書管理系統(tǒng)的詳細(xì)設(shè)計
本系統(tǒng)主要提供五方面功能:瀏覽功能、查詢功能、修改功能、增加功能、刪除功能。
現(xiàn)以職工權(quán)限管理模塊給出程序描述。
功能:管理員登陸,獲得權(quán)限。
輸入項目:UserID, PassWord。
輸出項目:更新后的數(shù)據(jù)庫文件和配置文件。
程序邏輯:
P1:選擇frmmdi窗體的菜單中“登陸”選項,根據(jù)輸入的UserID和PassWord判斷該員工的身份;
P2:連接數(shù)據(jù)庫’books’,并連接“權(quán)限表”;
P3:如果是管理員,將調(diào)用M2中的四個方法,查詢,添加,刪除和修改功能;
P4:如果是操作員,將調(diào)用M1,M3和M4這三個模塊;
系統(tǒng)還應(yīng)該考慮到如圖書基本情況管理模塊、用戶基本情況管理模塊、還書情況管理模塊等。
5 編碼與實現(xiàn)
以圖書基本信息模塊為例說明。
該模塊主要完成圖書基本信息的錄入、查詢、刪除及修改功能。在此模塊中定義了三大類主要窗口:圖書信息窗口和組合條件查詢窗口,后者均需通過前者訪問。
圖書信息窗口中顯示的是圖書必要信息??晒┯脩魹g覽查詢及以其記錄為單位的操作。如果用戶修改(添加,刪除)某一紀(jì)錄中的某一項,可單擊菜單欄進(jìn)入圖書信息基本情況窗口。
該模塊的第三個窗口是多條件查詢窗口,在此窗口中應(yīng)用了數(shù)據(jù)窗口這一智能化對象。所以多條件查詢也就變得簡單起來。用戶只要輸入組合條件,系統(tǒng)就會自動檢索出數(shù)據(jù),開發(fā)人員可以不用再編寫冗長的SQL語句。從此一點就可以看出數(shù)據(jù)窗口的優(yōu)越之處。
6 測試
采用黑盒測試。根據(jù)軟件所需的輸入數(shù)據(jù)的格式以及完成的功能,設(shè)計一些合法或不合法的用例,特別是邊界條件,檢查系統(tǒng)是否能得到希望的輸出。
組裝測試:看程序是否按設(shè)計的流程運行。
確認(rèn)測試:利用各種類型的數(shù)據(jù),測試系統(tǒng)的健壯性。
此外測試用例的選擇非常重要,關(guān)系到系統(tǒng)功能的是否盡量完備。作為一個完整的系統(tǒng),聯(lián)機(jī)文檔是其中不可缺少的部分也是相當(dāng)重要的部分。好的文檔能夠使用戶快速了解并準(zhǔn)確的使用系統(tǒng)的各項功能。減少誤操作,減少錯誤產(chǎn)生的可能,這對用戶和開發(fā)人員都有很多的好處。
7 結(jié)束語
本系統(tǒng)功能基本符合用戶需求,能夠完成圖書基本信息、用戶基本信息、權(quán)限的輸入和查詢。并提供部分系統(tǒng)維護(hù)功能,使用戶方便進(jìn)行數(shù)據(jù)備份和恢復(fù)、數(shù)據(jù)刪除。同時也考慮到了單位編碼以減少數(shù)據(jù)冗余的問題,對于數(shù)據(jù)的一致性的問題也通過程序進(jìn)行了有效的解決。