畢業(yè)設(shè)計(jì)(論文)圖書(shū)管理系統(tǒng)設(shè)計(jì)_第1頁(yè)
畢業(yè)設(shè)計(jì)(論文)圖書(shū)管理系統(tǒng)設(shè)計(jì)_第2頁(yè)
畢業(yè)設(shè)計(jì)(論文)圖書(shū)管理系統(tǒng)設(shè)計(jì)_第3頁(yè)
畢業(yè)設(shè)計(jì)(論文)圖書(shū)管理系統(tǒng)設(shè)計(jì)_第4頁(yè)
畢業(yè)設(shè)計(jì)(論文)圖書(shū)管理系統(tǒng)設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩36頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、第一章 前言隨著電子計(jì)算機(jī)和通信技術(shù)的發(fā)展,人類(lèi)已經(jīng)逐漸地進(jìn)入信息化社會(huì)。信息和材料、能源一樣成為一種社會(huì)的基本生產(chǎn)資料,在人類(lèi)的社會(huì)生產(chǎn)活動(dòng)中發(fā)揮著重要的作用。同時(shí)人們對(duì)信息和數(shù)據(jù)的利用與處理也已進(jìn)入自動(dòng)化、網(wǎng)絡(luò)化和社會(huì)化的階段,因此,開(kāi)發(fā)相關(guān)的管理信息系統(tǒng)已經(jīng)成為各行各業(yè)的必要和必需了,管理信息系統(tǒng)作為一門(mén)邊緣學(xué)科,集管理科學(xué)、信息科學(xué)、系統(tǒng)科學(xué)、現(xiàn)代通信技術(shù)和電子計(jì)算機(jī)技術(shù)于一體,可以解決企業(yè)或組織所面臨的問(wèn)題,對(duì)內(nèi)來(lái)看,可以提高工作效率;對(duì)外來(lái)看,獲得競(jìng)爭(zhēng)優(yōu)勢(shì)。管理信息系統(tǒng)的開(kāi)發(fā)方法有生命周期法、原型法和面向?qū)ο蟮拈_(kāi)發(fā)方法等。生命周期法(life cycle method)是20世紀(jì)6

2、0年代發(fā)展起來(lái)的一種應(yīng)用廣泛且比較成熟的管理系統(tǒng)開(kāi)發(fā)方法,它的基本思想是將系統(tǒng)的開(kāi)發(fā)工作從開(kāi)始到結(jié)束劃分為若干個(gè)階段,每個(gè)階段都有明確的任務(wù),而系統(tǒng)開(kāi)發(fā)出來(lái)后,并不意味著生命周期的結(jié)束,而意味著根據(jù)組織的需要對(duì)系統(tǒng)的修改和重建的開(kāi)始;原型法(prototyping method)是20世紀(jì)80年代發(fā)展起來(lái)的,旨在改變生命周期法的缺點(diǎn)的一種系統(tǒng)開(kāi)發(fā)方法,該法的開(kāi)發(fā)思路是首先根據(jù)用戶(hù)的要求,由用戶(hù)和開(kāi)發(fā)者共同確定系統(tǒng)的基本要求和主要功能,利用系統(tǒng)快速生成工具,建立一個(gè)系統(tǒng)模型,再在此基礎(chǔ)上與用戶(hù)交流,將模型不斷補(bǔ)充、修改、完善,如此反復(fù),最終直至用戶(hù)和開(kāi)發(fā)者都比較滿意為止,從而形成一個(gè)相對(duì)穩(wěn)定、較

3、為理想的管理信息系統(tǒng);面向?qū)ο螅╫bject oriented)的開(kāi)發(fā)方法于20世紀(jì)80年代開(kāi)始興起的,是一種基于問(wèn)題對(duì)象的自底向上的一種系統(tǒng)開(kāi)發(fā)方法,這種方法的特點(diǎn)是以對(duì)象為基礎(chǔ),對(duì)象是分析問(wèn)題和解決問(wèn)題的核心?;谝陨先N方法的特點(diǎn)和各自的優(yōu)缺點(diǎn),本圖書(shū)館管理系統(tǒng)利用軟件工程化思想和方法,總體上是采用結(jié)構(gòu)化生命法進(jìn)行系統(tǒng)分析和設(shè)計(jì)的,而系統(tǒng)實(shí)現(xiàn)等步驟則采用了原型法和面對(duì)對(duì)象的方法。管理信息系統(tǒng)的開(kāi)發(fā)是一個(gè)開(kāi)發(fā)周期長(zhǎng)、技術(shù)要求高、影響因素多的復(fù)雜系統(tǒng)工程,因此制定一個(gè)完善、可行、合理的開(kāi)發(fā)計(jì)劃,不僅是系統(tǒng)開(kāi)發(fā)成功的保證,而且可以提高效率、節(jié)省時(shí)間、降低成本。本圖書(shū)系統(tǒng)計(jì)劃利用三個(gè)月的時(shí)間開(kāi)發(fā)

4、完成:系統(tǒng)調(diào)研和系統(tǒng)分析為10天;系統(tǒng)設(shè)計(jì)為10天;系統(tǒng)程序設(shè)計(jì)為45天;系統(tǒng)調(diào)試為10天;系統(tǒng)試運(yùn)行為15天。第二章 系統(tǒng)需求分析2.1現(xiàn)行業(yè)務(wù)描述:通過(guò)調(diào)查,先畫(huà)出圖書(shū)館的組織結(jié)構(gòu)圖如下:館 長(zhǎng)采編組書(shū)庫(kù)閱覽室工具書(shū)室目錄廳借閱室通過(guò)調(diào)研了解到,該圖書(shū)館各個(gè)部門(mén)負(fù)責(zé)的主要業(yè)務(wù)如下:(1)采編組主要負(fù)責(zé)圖書(shū)采編工作,包括購(gòu)置新書(shū)、打印編目、增加數(shù)量。(2)目錄廳主要負(fù)責(zé)讀者查詢(xún)工作,包括可借圖書(shū)(按圖書(shū)類(lèi)別、圖書(shū)名稱(chēng)或圖書(shū)作者查詢(xún));新書(shū)目錄(按圖書(shū)類(lèi)別、日期查詢(xún));借書(shū)情況(按讀者借書(shū)證號(hào)查詢(xún))(3)借閱組主要負(fù)責(zé)圖書(shū)流通、查詢(xún)統(tǒng)計(jì)、借閱查詢(xún)等工作。(4)閱覽室、工具書(shū)室主要負(fù)責(zé)讀者閱覽工

5、作,包括:閱覽各種雜志、報(bào)紙、閱覽各種工具書(shū)。下面繪制出圖書(shū)館流通業(yè)務(wù)中借書(shū)的流程圖。(1)讀者在目錄廳查閱索引卡;(2)讀者寫(xiě)出所借圖書(shū)的分類(lèi)號(hào)、種次號(hào)、交給圖書(shū)管理員,并出示本人的借書(shū)證;(3)圖書(shū)管理員根據(jù)圖書(shū)的分類(lèi)號(hào)、種次號(hào)到書(shū)庫(kù)找書(shū);(4)將圖書(shū)交給讀者,并由讀者填寫(xiě)所借圖書(shū)的借書(shū)卡。(5)圖書(shū)管理員把借書(shū)卡保存到寫(xiě)有該讀者借書(shū)證號(hào)的口袋里。得出該圖書(shū)館業(yè)務(wù)流程圖如下所示:22現(xiàn)行系統(tǒng)存在問(wèn)題的分析該圖書(shū)館工作大部分還是進(jìn)行著手工管理,工作起來(lái)效率很低,并且不能及時(shí)了解圖書(shū)館各類(lèi)圖書(shū)的存庫(kù),學(xué)生們比較需求的圖書(shū)等等,不便于動(dòng)態(tài)及時(shí)地調(diào)整圖書(shū)結(jié)構(gòu),以便更好地適應(yīng)當(dāng)前學(xué)生的借閱需求。手工

6、管理還存在這許多弊端,由于不可避免的人為因素,經(jīng)常造成數(shù)據(jù)的遺漏、誤報(bào)。計(jì)算機(jī)信息化管理有著儲(chǔ)存信息量大、速度快等許多優(yōu)點(diǎn),提供給我們的處理信息及時(shí)快捷,同時(shí)也提高了我們工作人員的自身素質(zhì)。23解決方案基于以上的對(duì)問(wèn)題的分析,利用計(jì)算機(jī)給我們提供信息,及時(shí)地調(diào)整學(xué)校圖書(shū)館圖書(shū)結(jié)構(gòu),并且對(duì)學(xué)生們的借閱過(guò)程形成一整套動(dòng)態(tài)的管理就十分必要了。圖書(shū)館信息系統(tǒng)的建立,需要進(jìn)行用戶(hù)的需求調(diào)查與分析,以確定系統(tǒng)目標(biāo),提出解決問(wèn)題的詳細(xì)方案,這是系統(tǒng)建設(shè)的重要環(huán)節(jié)。學(xué)校圖書(shū)館規(guī)模相對(duì)于商業(yè)圖書(shū)館小,但要有著完善的圖書(shū)信息,對(duì)每一冊(cè)書(shū)要有詳細(xì)的記錄信息,功能上對(duì)系統(tǒng)的需求是全面的。因此對(duì)用戶(hù)的需求可分為四個(gè)方面

7、:一方面是圖書(shū)館工作人員通過(guò)計(jì)算機(jī)來(lái)管理各類(lèi)圖書(shū),分類(lèi)編號(hào),調(diào)整圖書(shū)結(jié)構(gòu),增加圖書(shū)庫(kù)存,適應(yīng)學(xué)生的需求;二方面是學(xué)生們能通過(guò)計(jì)算機(jī)來(lái)查詢(xún)?yōu)g覽圖書(shū)館中的圖書(shū),來(lái)確定自已需要的書(shū)籍,為借閱做好準(zhǔn)備;三方面是工作人員對(duì)學(xué)生們的借書(shū)證發(fā)放,登記能作好全面的掌握,及時(shí)得到每個(gè)借書(shū)證的當(dāng)前狀態(tài)和歷史借閱記錄;四方面也是圖書(shū)館的核心工作,對(duì)圖書(shū)的借閱管理。這四個(gè)方面形成了學(xué)校圖書(shū)館一個(gè)工作整體,采用計(jì)算機(jī)自動(dòng)化信息處理,可方便快捷地共享信息、交流信息,高效地協(xié)同工作。在軟、硬件方面對(duì)系統(tǒng)的需求,軟件要求易學(xué),界面友好,容易掌握,可以很簡(jiǎn)單方便的管理各種圖書(shū)信息。硬件的配置要求不能太高,這樣可以很好的適應(yīng)當(dāng)前

8、的學(xué)校圖書(shū)館。在開(kāi)發(fā)方式上對(duì)系統(tǒng)的需求,由于學(xué)校圖書(shū)館是一種無(wú)商業(yè)利益的,所以系統(tǒng)設(shè)計(jì)開(kāi)發(fā)的周期要短,在短時(shí)間內(nèi)完成,減少開(kāi)發(fā)成本,提高開(kāi)發(fā)效率,方便、簡(jiǎn)單、實(shí)用作為系統(tǒng)開(kāi)發(fā)的指導(dǎo)思想。24可行性分析通過(guò)對(duì)該圖書(shū)館的各個(gè)方面進(jìn)行了具體的了解之后,現(xiàn)對(duì)該單位開(kāi)發(fā)圖書(shū)管理系統(tǒng)的可行性進(jìn)行分析。技術(shù)上可行:該系統(tǒng)所需硬件設(shè)備,市場(chǎng)上銷(xiāo)售且價(jià)格較低,甚至可以使用原有的設(shè)備,軟件上,操作系統(tǒng)采用windows系列操作系統(tǒng),數(shù)據(jù)庫(kù)管理系統(tǒng)采用visual basic,這些軟件在mis開(kāi)發(fā)中已被大量應(yīng)用,技術(shù)上都比較成熟。因此在技術(shù)上是可行的。經(jīng)濟(jì)上可行:由于學(xué)校急需采用計(jì)算機(jī)來(lái)進(jìn)行圖書(shū)館的管理,因此對(duì)開(kāi)發(fā)

9、圖書(shū)管理系統(tǒng)大力支持,開(kāi)發(fā)經(jīng)費(fèi)沒(méi)有問(wèn)題。管理上可行:該學(xué)校的圖書(shū)館有很多的管理體制,每位借書(shū)人均有借書(shū)證,同時(shí)圖書(shū)館還為每位借書(shū)人建立了檔案。因此管理上可行。另外,圖書(shū)館管理人員對(duì)開(kāi)發(fā)該系統(tǒng)也是大力支持的,同時(shí)制定了培訓(xùn)計(jì)劃,并進(jìn)行了實(shí)施mis的物質(zhì)準(zhǔn)備和工作準(zhǔn)備。綜上所述,開(kāi)發(fā)圖書(shū)管理系統(tǒng)在技術(shù)上、經(jīng)濟(jì)上、管理上都是可行的。第三章 新系統(tǒng)邏輯方案31初步調(diào)研在本系統(tǒng)被批準(zhǔn)立項(xiàng)之后,我實(shí)地去該圖書(shū)館進(jìn)行了參觀和學(xué)習(xí),現(xiàn)對(duì)該單位圖書(shū)館的整體情況進(jìn)行調(diào)研,調(diào)研分兩步進(jìn)行,一是初步調(diào)研,二是詳細(xì)調(diào)研。由于該圖書(shū)館職工人數(shù)較少,因此在調(diào)研時(shí)采用了會(huì)議討論法和個(gè)人訪談法兩種方法,通過(guò)會(huì)議討論法了解圖書(shū)館

10、的整體情況,對(duì)開(kāi)發(fā)新系統(tǒng)的態(tài)度等。通過(guò)個(gè)人訪談法了解各個(gè)部門(mén)的主要職能及具體運(yùn)作方式、過(guò)程等。對(duì)該圖書(shū)館進(jìn)行初步調(diào)研的具體內(nèi)容為:(1)圖書(shū)館的規(guī)模:現(xiàn)藏書(shū)冊(cè)數(shù)、種類(lèi);(2)圖書(shū)館的主要業(yè)務(wù);(3)圖書(shū)館下高幾個(gè)部門(mén);(4)圖書(shū)館職工人數(shù);(5)職工受教育程度;(6)主要購(gòu)書(shū)單位;(7)圖書(shū)編碼方式;(8)現(xiàn)在多少讀者在此借書(shū);(9)讀者借書(shū)憑證;(10)讀者分類(lèi);(11)圖書(shū)館的上級(jí)領(lǐng)導(dǎo);(12)對(duì)開(kāi)發(fā)新系統(tǒng)的態(tài)度;(13)開(kāi)發(fā)新系統(tǒng)所需的時(shí)間(規(guī)定多長(zhǎng)時(shí)間開(kāi)發(fā)完成)。32詳細(xì)調(diào)研321組織結(jié)構(gòu)調(diào)研在對(duì)該圖書(shū)館的手工管理模式和業(yè)務(wù)流程進(jìn)行認(rèn)真分析和研究的基礎(chǔ)上,經(jīng)過(guò)與該圖書(shū)館的相關(guān)人員的反復(fù)

11、協(xié)商、論證,最后確定了該圖書(shū)管理系統(tǒng)的邏輯模型。下面以數(shù)據(jù)流圖和數(shù)據(jù)字典的方式來(lái)描述新系統(tǒng)的邏輯功能。322數(shù)據(jù)流圖323數(shù)據(jù)字典:下面為借書(shū)業(yè)務(wù)流程圖中的每一部分編制數(shù)據(jù)字典。(1)數(shù)據(jù)元素:每本書(shū)都有單價(jià)這個(gè)信息,其描述內(nèi)容如下:數(shù)據(jù)元素名稱(chēng):?jiǎn)蝺r(jià) 類(lèi)型:數(shù)字 長(zhǎng)度:6位,其中整數(shù)部分占3位,小數(shù)部分占2位 數(shù)據(jù)值類(lèi)型:離散 取值范圍:0-999.99相關(guān)的數(shù)據(jù)結(jié)構(gòu):索書(shū)號(hào)+藏書(shū)號(hào)+作者+書(shū)名+出版社+單價(jià)+冊(cè)數(shù)+內(nèi)容摘要(2)數(shù)據(jù)流。數(shù)據(jù)流“借書(shū)信息”條目如下:數(shù)據(jù)流名稱(chēng):借書(shū)信息 說(shuō)明:讀者的借書(shū)內(nèi)容數(shù)據(jù)流來(lái)源:讀者數(shù)據(jù)流去向:圖書(shū)管理員數(shù)據(jù)流組成:分類(lèi)號(hào)種次號(hào)數(shù)據(jù)流的流通量:大約份/

12、天()數(shù)據(jù)存儲(chǔ):數(shù)據(jù)存儲(chǔ)“借書(shū)情況”條目如下:數(shù)據(jù)存儲(chǔ)名稱(chēng):借書(shū)情況簡(jiǎn)述:存放的是每個(gè)讀者的借書(shū)情況輸入數(shù)據(jù):借書(shū)情況數(shù)據(jù)存儲(chǔ)組成:借書(shū)證號(hào)藏書(shū)號(hào)借書(shū)日期存儲(chǔ)方式:按借書(shū)的先后順序排列()數(shù)據(jù)處理。數(shù)據(jù)處理“查詢(xún)圖書(shū)”條目如下:數(shù)據(jù)處理名稱(chēng):查詢(xún)圖書(shū)數(shù)據(jù)處理編號(hào):.簡(jiǎn)要描述:根據(jù)讀者寫(xiě)的圖書(shū)的分類(lèi)號(hào)和種次號(hào)查詢(xún)輸入數(shù)據(jù)流:借書(shū)信息輸出數(shù)據(jù)流:查詢(xún)結(jié)果處理邏輯:根據(jù)讀者寫(xiě)的圖書(shū)的分類(lèi)號(hào)和種次號(hào)檢索相應(yīng)的圖書(shū)信息。()外部實(shí)體。外部實(shí)體“圖書(shū)管理員”的條目如下:外部實(shí)體名稱(chēng):圖書(shū)管理員輸入數(shù)據(jù)流:借書(shū)信息、借書(shū)證號(hào)、已填借書(shū)卡、查詢(xún)結(jié)果輸出數(shù)據(jù)流:待填借書(shū)卡、借書(shū)信息。數(shù)目:人第四章 系統(tǒng)總體結(jié)構(gòu)

13、設(shè)計(jì)41軟件模塊結(jié)構(gòu)設(shè)計(jì)411系統(tǒng)方案確定。通過(guò)對(duì)系統(tǒng)調(diào)研與分析,系統(tǒng)主要應(yīng)完成的功能如下:書(shū)庫(kù)信息管理、讀者檔案管理、借閱管理、還書(shū)管理、圖書(shū)檢索、系統(tǒng)維護(hù)。412軟件結(jié)構(gòu)設(shè)計(jì)。圖書(shū)館管理系統(tǒng)包含圖書(shū)采編、讀者管理、流通、查詢(xún)等功能。該系統(tǒng)執(zhí)行時(shí),先輸入數(shù)據(jù),然后根據(jù)輸入的數(shù)據(jù)選擇執(zhí)行路徑;購(gòu)入圖書(shū)進(jìn)行登記、編目調(diào)用圖書(shū)采編功能,借書(shū)、還書(shū)調(diào)用功能,查詢(xún)調(diào)用查詢(xún)功能。圖書(shū)館管理系統(tǒng)屬于事務(wù)型系統(tǒng),其系統(tǒng)示意圖如下圖所示:接受數(shù)據(jù)事務(wù)中心圖書(shū)采編讀者管理圖書(shū)流通查詢(xún) 圖書(shū)館管理系統(tǒng)示意圖系統(tǒng)結(jié)構(gòu)圖示意如下:圖書(shū)館管理系統(tǒng)圖書(shū)采編讀者管理圖書(shū)流通 查詢(xún)輸入圖書(shū)信息 借書(shū) 還書(shū)圖書(shū)館管理系統(tǒng)結(jié)構(gòu)圖

14、系統(tǒng)功能圖如下:圖書(shū)館管理系統(tǒng)系統(tǒng)登陸系統(tǒng)管理圖書(shū)管理借書(shū)證管理借 書(shū)幫 助登 陸修改密碼注 消退 出新書(shū)入庫(kù)圖書(shū)信息查詢(xún)新開(kāi)借書(shū)證借書(shū)證查詢(xún)借 書(shū)還 書(shū)關(guān) 于42數(shù)據(jù)庫(kù)設(shè)計(jì)數(shù)據(jù)庫(kù)采用了microsoft推出的access數(shù)據(jù)庫(kù),這是微軟集成到office中的一個(gè)桌面數(shù)據(jù)庫(kù),能夠快速方便的和office的其他套件綜合使用。由于access具有顯著的簡(jiǎn)易性和有效性,大量的桌面數(shù)據(jù)庫(kù)系統(tǒng)都采用access作為后臺(tái)數(shù)據(jù)庫(kù)。使用access的好處還在于,如果你的系統(tǒng)擴(kuò)展到client/server模式的時(shí)候,可以使用microsoft的數(shù)據(jù)庫(kù)服務(wù)器軟件sql server,此時(shí),程序只需要簡(jiǎn)單的修改一

15、下鏈接(ado的數(shù)據(jù)源)就可以,這樣,為程序的平滑擴(kuò)展提供了非常有力的條件。本系統(tǒng)使用的系統(tǒng)中包括四個(gè)表,名稱(chēng)及功能說(shuō)明如下:tbloperator操作員表,定義操作員的id和密碼,作為系統(tǒng)登錄檢查的依據(jù),提供唯一的管理員id。tblloan借閱表,通過(guò)借書(shū)證id和圖書(shū)id反映圖書(shū)的借閱關(guān)系。tblcard借書(shū)證表,提供讀者信息等,同時(shí)包括借書(shū)證是否可用,提供唯一的借書(shū)證id。tblbook圖書(shū)表,保存館內(nèi)所有圖書(shū)的信息,提供唯一的圖書(shū)id。本系統(tǒng)涉及到的實(shí)體:(1)本系統(tǒng)中所涉及到的主要實(shí)體及其屬性有:tblbook(圖書(shū)管理)表:圖書(shū)編號(hào),館藏編號(hào),書(shū)名,作者,出版社,出版日期,入庫(kù)日期,

16、價(jià)格,操作員tblcard(借書(shū)證)表:借書(shū)證編號(hào),是否有效,姓名,男女,身份證號(hào),部門(mén),電話,地址,最大供書(shū)量,操作員,創(chuàng)建日間tblloan(借閱)表:借書(shū)證編號(hào),書(shū)號(hào),借書(shū)日期,還書(shū)日期,操作員tbloperator(操作員)表:操作員編號(hào),姓名,密碼,備注(2)本系統(tǒng)的實(shí)體-聯(lián)系(e-r)圖圖書(shū)編號(hào)館藏編號(hào)書(shū)名作者出版社出版日期價(jià)格數(shù)量入庫(kù)時(shí)間操作員備注圖書(shū)管理為了使e-r圖表示得更加清晰,現(xiàn)將e-r圖分成實(shí)體及其屬性圖和實(shí)體及其聯(lián)系圖。分別如下圖所示:借書(shū)證編號(hào)是否有效姓名男女身份證號(hào)部門(mén)地址有效日期電話最大借書(shū)量操作員借書(shū)證管理辦證時(shí)間操作員操作員編號(hào)姓名密碼備注借閱借書(shū)證編號(hào)圖書(shū)

17、編號(hào)借書(shū)日期還書(shū)日期操作員各表的物理結(jié)構(gòu)如下:tblbook(圖書(shū)管理)表:字段代碼字段名稱(chēng)類(lèi)型寬度小數(shù)位數(shù)bookid圖書(shū)編號(hào)長(zhǎng)整型libid館藏編號(hào)文本8bookname書(shū)名文本100author作者文本60publisher出版社文本50publishdate出版日期文本50price價(jià)格貨幣2amount館藏冊(cè)數(shù)數(shù)字整形2createdate入庫(kù)時(shí)間日期/時(shí)間operator操作員數(shù)字memo備注文本255tblcard(借書(shū)證管理)表:字段代碼字段名稱(chēng)類(lèi)型寬度小數(shù)位數(shù)cardid借書(shū)證編號(hào)自動(dòng)編號(hào)長(zhǎng)整型enabled是否有效是/否name姓名文本8gender男女?dāng)?shù)字長(zhǎng)整型idcar

18、d身份證號(hào)文本18vocation部門(mén)文本50phone電話文本50address地址文本50maxbooknum最大借書(shū)量數(shù)字整型availdatenum有效時(shí)間數(shù)字長(zhǎng)整型operator操作員數(shù)字長(zhǎng)整型createdate辦證時(shí)間日期/時(shí)間tblloan(借閱)表:字段代碼字段名稱(chēng)類(lèi)型寬度小數(shù)位數(shù)cardid借書(shū)證編號(hào)數(shù)字長(zhǎng)整型bookid圖書(shū)編號(hào)數(shù)字長(zhǎng)整型loandate借書(shū)日期日期/時(shí)間returndate還書(shū)日期日期/時(shí)間operator操作員文本tbloperato表:字段代碼字段名稱(chēng)類(lèi)型寬度小數(shù)位數(shù)operatorid操作員編號(hào)自動(dòng)編號(hào)name姓名文本50password密碼文本

19、50memo備注文本255e-r圖向關(guān)系模型轉(zhuǎn)換的結(jié)果如下:圖書(shū)管理(圖書(shū)編號(hào),館藏編號(hào),書(shū)名,作者,出版社,出版日期,入庫(kù)日期,價(jià)格,操作員)圖書(shū)編號(hào)為此關(guān)系的碼。借書(shū)證(借書(shū)證編號(hào),是否有效,姓名,男女,身份證號(hào),部門(mén),電話,地址,最大借書(shū)量,操作員,創(chuàng)建日間)借書(shū)證編號(hào)為此關(guān)系的碼。借閱(借書(shū)證編號(hào),書(shū)號(hào),借書(shū)日期,還書(shū)日期,操作員)借書(shū)證編號(hào)為此關(guān)系的碼。操作員(操作員編號(hào),姓名,密碼,備注)操作員編號(hào)為此關(guān)系的碼。4.3計(jì)算機(jī)系統(tǒng)的配置方案硬件環(huán)境:內(nèi)容最低配置建議配置主機(jī)p/200pii/266以上內(nèi)存64mb128mb以上硬盤(pán)10gb20gb以上顯示器vga以上軟件環(huán)境:操作系統(tǒng)

20、:windows 98中文版或windows xp中文版編程軟件和數(shù)據(jù)庫(kù):visual basic6.0中文版+access2000中文版44系統(tǒng)的安全性和可靠性設(shè)計(jì)對(duì)所有登錄本系統(tǒng)的使用用戶(hù)進(jìn)行嚴(yán)格的用戶(hù)名和密碼的管理,如果不屬于系統(tǒng)事先設(shè)定好的合法用戶(hù),則系統(tǒng)無(wú)法登錄,為了防止密碼外泄,本系統(tǒng)具備密碼修改功能。第五章 系統(tǒng)詳細(xì)設(shè)計(jì)程序按照三個(gè)主要管理功能進(jìn)行組織,其中借書(shū)和還書(shū)由于經(jīng)常使用,單獨(dú)列出來(lái)。下面我們按照操作順序?qū)Τ绦虻牟僮?、界面的源程序進(jìn)行詳細(xì)說(shuō)明。5.1啟動(dòng):雙擊圖標(biāo)運(yùn)行程序以后,就可以看到程序的主界面。由于這個(gè)時(shí)候還沒(méi)有登陸系統(tǒng),因此系統(tǒng)提示未登錄。這是,需要通過(guò)通過(guò)系統(tǒng)管

21、理菜單進(jìn)行登錄操作。圖 1 啟動(dòng)后的主界面52登錄系統(tǒng)進(jìn)行登錄時(shí),用戶(hù)單擊了菜單“登錄”,此時(shí)系統(tǒng)開(kāi)始顯示登錄窗口。private sub mnusyslogin_click() frmlogin.show vbmodal if currentuser.loginsuccess then me.caption = app.title & ( & currentuser.name & ) else me.caption = app.title & (未登錄) end ifend sub程序首先顯示frmlogin窗口,由于這個(gè)窗口是模態(tài)(vbmodal)顯示的,因此如果用戶(hù)只能關(guān)閉這個(gè)窗口后才能

22、進(jìn)行其他的操作。vb的窗口分成模塊窗口和非模態(tài)窗口兩種,普通情況下都是非模態(tài)窗口,但是多數(shù)對(duì)話框是模態(tài)窗口。程序的后面使用了一個(gè)結(jié)構(gòu)體,這個(gè)結(jié)構(gòu)體在公共模塊定義,程序的任何地方都可以訪問(wèn)這個(gè)結(jié)構(gòu)體,同時(shí)程序初始化了一個(gè)全局變量currentuser。該變量用來(lái)指示當(dāng)前是否有用戶(hù)登陸,用戶(hù)的id和名稱(chēng)是什么等信息。type users id as integer name as string password as string loginsuccess as booleanend typepublic currentuser as users這里我們首先運(yùn)行了frmlogin窗體,然后根據(jù)fr

23、mlogin窗體對(duì)用戶(hù)信息的判斷,由frmlogin窗體設(shè)置currentuser信息。如果成功,currentuser的loginsuccess屬性將為true,否則為false。如果currentuser的loginsuccess屬性為true,則主窗體顯示當(dāng)前用戶(hù)登錄的用戶(hù)名。下面我們主要看frmlogin窗體的操作。圖 2 登錄窗體這里我們?cè)敿?xì)講解登錄的全部過(guò)程,因?yàn)檫@個(gè)過(guò)程中涉及到dao數(shù)據(jù)庫(kù)訪問(wèn)的全部過(guò)程,因此我們將著重介紹這些過(guò)程。以后程序中使用同樣功能的部分將不再介紹。private sub cmdok_click()dim struserid as stringdim str

24、userpwd as stringdim db as databasedim rs as recordset 獲取用戶(hù)輸入 if txtusername.text = then msgbox 請(qǐng)輸入正確的用戶(hù)名, vbinformation txtusername.setfocus exit sub end if struserid = txtusername.text if txtpassword.text = then msgbox 請(qǐng)輸入用戶(hù)密碼, vbinformation txtpassword.setfocus exit sub end if struserpwd = txtpas

25、sword.text 開(kāi)始校驗(yàn)密碼 set db = opendatabase(db_name) set rs = db.openrecordset(select * from tbloperator where name= _ & chr(34) & struserid & chr(34) & and password= & _(34) & struserpwd & chr(34) if rs.recordcount 0 then rs.movefirst currentuser.name = struserid currentuser.id = rs!operatorid currentu

26、ser.loginsuccess = true else currentuser.name = currentuser.loginsuccess = false currentuser.id = 0 msgbox 無(wú)效的用戶(hù)名或者密碼,請(qǐng)重新登錄, vbcritical end if set db = nothing set rs = nothing unload me end sub程序首先定義了四個(gè)變量,其中struserid、struserpwd是基本變量,用來(lái)臨時(shí)存儲(chǔ)用戶(hù)的登錄信息;db和rs是dao對(duì)象變量,其中db是數(shù)據(jù)庫(kù)對(duì)象,用于連接數(shù)據(jù)庫(kù),也可以用來(lái)直接執(zhí)行部分sql語(yǔ)句(in

27、sert、delete、update等,通過(guò)使用database對(duì)象的execute方法)。rs是記錄集對(duì)象(recordset),它可以對(duì)應(yīng)數(shù)據(jù)庫(kù)的一個(gè)表,或者是一個(gè)查詢(xún)執(zhí)行結(jié)果。recordset是最為常用的數(shù)據(jù)對(duì)象,可以實(shí)現(xiàn)數(shù)據(jù)的漫游,數(shù)據(jù)的添加和刪除。表 1 recordset的常用方法addnew增加一條新記錄delete刪除當(dāng)前的記錄movefirst移動(dòng)到最前面一條記錄movelast移動(dòng)到最后一條記錄moveprevious移動(dòng)到前一條記錄movenext移動(dòng)到后一條記錄edit當(dāng)前記錄進(jìn)入修改狀態(tài)update刷新當(dāng)前記錄集,將addnew或者edit所進(jìn)行的操作提交到數(shù)據(jù)庫(kù)對(duì)

28、象變量在使用前需要進(jìn)行實(shí)例化,這一點(diǎn)和普通變量是不同的。對(duì)象變量的實(shí)例化使用set語(yǔ)句進(jìn)行的。 set db = opendatabase(db_name) set rs = db.openrecordset(select * from tbloperator where name= _ & chr(34) & struserid & chr(34) & and password= & _(34) & struserpwd & chr(34)這里我們使用了dao提供的opendatabase來(lái)進(jìn)行db的實(shí)例化,其中db_name是一個(gè)全局常量,在系統(tǒng)初始化時(shí)定義。 db_name = app.

29、path & library.mdb其中app是一個(gè)vb的對(duì)象,保存了應(yīng)用程序的很多屬性。在整個(gè)程序中我們使用了app對(duì)象的兩個(gè)屬性,即path屬性(表示應(yīng)用程序所在的路徑)和title屬性(表示應(yīng)用程序的標(biāo)題)。db初始化完成以后就可以使用他的方法和屬性。這里我們使用database對(duì)象的openrecordset方法來(lái)進(jìn)行初始化,openrecordset可以直接對(duì)一個(gè)表進(jìn)行操作,例如openrecordset(“tblcard”),也可以通過(guò)執(zhí)行一個(gè)sql語(yǔ)句來(lái)獲得記錄集,如上面的例子。我們查詢(xún)數(shù)據(jù)庫(kù)的管理員表,如果用戶(hù)提交的登錄信息存在,也就是用戶(hù)是合法用戶(hù),則recordset中有記

30、錄,否則recordset將返回一個(gè)空記錄集。這里我們通過(guò)recordset的recordcount屬性來(lái)訪問(wèn)。 if rs.recordcount 0 then rs.movefirst currentuser.name = struserid currentuser.id = rs!operatorid currentuser.loginsuccess = true else currentuser.name = currentuser.loginsuccess = false currentuser.id = 0 msgbox 無(wú)效的用戶(hù)名或者密碼,請(qǐng)重新登錄, vbcritical e

31、nd if如果用戶(hù)存在,則我們將用戶(hù)的信息復(fù)制到currentuser中,同時(shí)設(shè)置登錄成功的標(biāo)志。保存用戶(hù)id是因?yàn)獒槍?duì)管理員的所有操作都是通過(guò)其id來(lái)訪問(wèn)的(而不是名稱(chēng)),這在其他幾個(gè)表中有所反映。由于用戶(hù)的id絕對(duì)是唯一的,而用戶(hù)的名字可能不是唯一的。因?yàn)槿绻粋€(gè)用戶(hù)使用某一個(gè)用戶(hù)名進(jìn)行登記,此時(shí)這個(gè)用戶(hù)名將備這個(gè)用戶(hù)占用,別的用戶(hù)將不能使用同樣的名字。但是如果用戶(hù)銷(xiāo)戶(hù)以后,用戶(hù)名就可以被別的用戶(hù)使用。只有用戶(hù)id是唯一的,即即使以后的用戶(hù)使用同樣的用戶(hù)名進(jìn)行注冊(cè),系統(tǒng)也會(huì)分配給他一個(gè)不同的id,這樣就可以區(qū)別他們是兩個(gè)不同的用戶(hù)。在程序中主要的表都使用了唯一的id,都是基于這樣的原因。對(duì)

32、象使用完成以后必須顯式的進(jìn)行關(guān)閉和注銷(xiāo),這也是使用了set語(yǔ)句。進(jìn)行注銷(xiāo)時(shí),只需要簡(jiǎn)單的將對(duì)象的值設(shè)置為nothing就可以了。 set db = nothing set rs = nothing整個(gè)數(shù)據(jù)庫(kù)訪問(wèn)過(guò)程就結(jié)束了。程序段的最后一句是unload me,me是一個(gè)窗體級(jí)變量,指向窗體變量自身,這句語(yǔ)句相當(dāng)于unload frmlogin,也就是關(guān)閉當(dāng)前的窗口。如果用戶(hù)登錄失敗或者未登錄,用戶(hù)只能使用登錄菜單或者幫助的關(guān)于菜單。該菜單上面有系統(tǒng)的版本信息。圖 3 關(guān)于對(duì)話框在未登錄的情況下,如果用戶(hù)試圖使用系統(tǒng)的其他功能,系統(tǒng)將會(huì)顯示提示登錄窗口。因?yàn)樵诔绦蛟谶\(yùn)行每一項(xiàng)功能的時(shí)候,都會(huì)檢

33、查用戶(hù)的登錄情況(也就是currentuser 的各項(xiàng)屬性,主要是loginsuccess屬性),如果loginsuccess為false,則意味者用戶(hù)沒(méi)有登錄,系統(tǒng)將提示登錄。如果我們不是簡(jiǎn)單的使用boolean的字段,而是使用功能較為完備的機(jī)制,我們將可以實(shí)現(xiàn)復(fù)雜的權(quán)限控制。圖 4 提示登錄鑒權(quán)代碼如下: if currentuser.loginsuccess then frmnewbook.show else msgbox loginprompt, vbcritical end if通用的流程是,根據(jù)權(quán)限設(shè)置判定用戶(hù)是否有權(quán)使用某項(xiàng)功能,如果有,則允許使用;如果沒(méi)有,則給出錯(cuò)誤的提示。用

34、戶(hù)登錄成功以后就可以使用系統(tǒng)的所有功能。同時(shí),主窗體上將會(huì)顯示當(dāng)前登錄用戶(hù)的名稱(chēng)。當(dāng)然,如果用戶(hù)選擇注銷(xiāo),則主窗體會(huì)顯示未登錄。用戶(hù)登錄成功以后就可以使用系統(tǒng)的所有功能。圖書(shū)管理包括新書(shū)入庫(kù)和信息查詢(xún)兩項(xiàng)功能,都包含在圖書(shū)管理的菜單下。5.3新書(shū)入庫(kù)圖 5 新書(shū)入庫(kù)新書(shū)入庫(kù)的程序段采用了更為完備的功能,它首先檢測(cè)用戶(hù)輸入是否合法,然后整理用戶(hù)的輸入信息,通過(guò)database的execute方法將sql語(yǔ)句寫(xiě)入到數(shù)據(jù)庫(kù)中,由于寫(xiě)入過(guò)程有可能出錯(cuò)(數(shù)據(jù)庫(kù)共享沖突、硬件故障等),所以代碼段中使用了差錯(cuò)控制機(jī)制,vb的差錯(cuò)控制通過(guò)兩個(gè)語(yǔ)句來(lái)完成on error goto line_indentity或

35、者on error resume next其中第一句表示如果發(fā)生錯(cuò)誤時(shí)將轉(zhuǎn)到line_indentity開(kāi)始的地方進(jìn)行處理,第二句表示如果發(fā)生錯(cuò)誤時(shí)強(qiáng)制程序繼續(xù)運(yùn)行以后的語(yǔ)句。 str1 = libid str2 = chr(34) & text1.text & chr(34) 5.4圖書(shū)信息查詢(xún)圖書(shū)信息查詢(xún)用于顯示所有的圖書(shū)信息,或者根據(jù)用戶(hù)設(shè)定的條件進(jìn)行查詢(xún),因此你將會(huì)在窗口的左上方看到兩個(gè)radio選項(xiàng),如果選擇“顯示所有記錄”,則查詢(xún)條件將不可用。如果選擇“按條件查詢(xún)”,則系統(tǒng)根據(jù)查詢(xún)條件中設(shè)置的查詢(xún)條件進(jìn)行查詢(xún)。圖 6 圖書(shū)信息查詢(xún)系統(tǒng)允許用戶(hù)使用三種查詢(xún)的方法,即按照書(shū)名查詢(xún)、按照

36、作者查詢(xún)和按照出版社進(jìn)行查詢(xún)。查詢(xún)匹配包括精確匹配(=)和步精確匹配(like),如果使用精確匹配,則系統(tǒng)按照用戶(hù)輸入的去匹配整個(gè)字段,相當(dāng)于使用sql語(yǔ)言的號(hào)功能,如果使用模糊匹配,則系統(tǒng)按照用戶(hù)的輸入,在前后添加%,然后使用sql語(yǔ)言的like功能進(jìn)行查詢(xún)。因此,所有包含有用戶(hù)輸入的字符串的字段所在的記錄都會(huì)被顯示出來(lái)。如果根據(jù)用戶(hù)條件查詢(xún)不到任何記錄,則系統(tǒng)顯示圖 7查詢(xún)不到符合條件的記錄5.5新證登記新證登記和借書(shū)證查詢(xún)都是針對(duì)借書(shū)證信息管理進(jìn)行的,位于主界面的借書(shū)證管理菜單下。新證登記和新書(shū)入庫(kù)基本上相似,因此這里不再詳細(xì)介紹。圖 8 新證登記5.6借書(shū)證信息查詢(xún)借書(shū)證信息查詢(xún)是管理

37、員用來(lái)實(shí)現(xiàn)對(duì)借書(shū)證管理的主要界面,查詢(xún)方法和圖書(shū)查詢(xún)一樣。當(dāng)然,它也提供了例如借書(shū)證有效時(shí)間等指標(biāo),如果借書(shū)證過(guò)期,那么該證將不能借書(shū)。系統(tǒng)同時(shí)提供了管理員將制執(zhí)行借書(shū)證不可用等功能。圖 9 借書(shū)證信息查詢(xún)5.7借書(shū)登記借書(shū)登記和還書(shū)登記就是管理員最為常用的功能了,借書(shū)登記和還書(shū)登記都是根據(jù)用戶(hù)id和圖書(shū)id來(lái)進(jìn)行的,相應(yīng)的信息記錄在tblloan表中。如果用戶(hù)新借了一本書(shū),那么相應(yīng)的用戶(hù)id、圖書(shū)id和借書(shū)日期等信息將會(huì)被添加道tblloan表中。同樣的,如果用戶(hù)還書(shū),則相應(yīng)的記錄將會(huì)被刪除。因此,tblloan是經(jīng)常動(dòng)態(tài)修改,用于反映圖書(shū)的借閱情況。如果他和tblbook相配合,則也可以統(tǒng)

38、計(jì)出目前圖書(shū)館各種書(shū)的剩余數(shù)量。借書(shū)登記要求管理員提供用戶(hù)id,這個(gè)id將在用戶(hù)的借書(shū)證上可以找到。當(dāng)然,比較先進(jìn)的圖書(shū)館管理系統(tǒng)一般都采用條形碼掃描技術(shù),操作快捷而且不易出錯(cuò),但是其基本原理是一樣的。輸入用戶(hù)id以后,系統(tǒng)會(huì)自動(dòng)顯示用戶(hù)的名字,當(dāng)然也可以包括其他更多的信息。此時(shí)管理員可以查詢(xún)用戶(hù)已經(jīng)借閱的書(shū)籍(這部分功能也可以交給系統(tǒng)后臺(tái)處理,因?yàn)樾枰拗朴脩?hù)借書(shū)的數(shù)量)。用戶(hù)需要借用任何一本書(shū),都可以在現(xiàn)有圖書(shū)表中選擇相應(yīng)的圖書(shū),然后單擊借書(shū),就可以看到該書(shū)的信息被添加到已借圖書(shū)表中。這就是說(shuō),借書(shū)已經(jīng)成功。圖 10 借書(shū)借書(shū)部分使用了vb數(shù)據(jù)庫(kù)訪問(wèn)技術(shù)的第二種,也就是ado技術(shù)。從上圖種

39、我們可以看到兩個(gè)adodc控件,他們就是ado data connection。圖 11 adodc屬性頁(yè)adodc通過(guò)ado連接數(shù)據(jù)庫(kù),你可以在程序中配置靜態(tài)的連接,這是我們可以按照屬性頁(yè)中的提示一步一步完成配置。但是靜態(tài)連接的缺陷在于,如果數(shù)據(jù)庫(kù)路徑被修改,則程序連接數(shù)據(jù)庫(kù)將導(dǎo)致失敗。因此,一般情況下我們都會(huì)使用動(dòng)態(tài)配置。程序安裝的時(shí)候,數(shù)據(jù)庫(kù)一般都會(huì)被安裝在和主程序同樣的路徑下,因此我們需要在程序運(yùn)行的時(shí)候,進(jìn)行數(shù)據(jù)庫(kù)的連接。adodc1.connectionstring = provider=microsoft.jet.oledb.4.0;data source= & db_name

40、& ;persist security info=false這就是ado數(shù)據(jù)庫(kù)連接的語(yǔ)句,它通過(guò)設(shè)置ado的connectionstring屬性來(lái)進(jìn)行設(shè)置,provider是ado的一種概念,你可以認(rèn)為就是驅(qū)動(dòng)程序,這里使用的驅(qū)動(dòng)程序?yàn)閙icrosoft.jet.oledb.4.0,這種驅(qū)動(dòng)程序?qū)iT(mén)用來(lái)連接access數(shù)據(jù)庫(kù)。當(dāng)然,provider還包括sql server、oracle或者odbc等。data source就是我們要訪問(wèn)的數(shù)據(jù)庫(kù)。db_name我們前面已經(jīng)介紹過(guò)了,就是數(shù)據(jù)庫(kù)的路徑和文件名。ado提供了dao相同的recordset,在這個(gè)控件中表現(xiàn)為recordsource

41、 屬性,我們通過(guò)指定這個(gè)屬性,就可以實(shí)現(xiàn)和數(shù)據(jù)庫(kù)的連接,這和dao的openrecordset是一樣的功能。完整的語(yǔ)句是這樣的。adodc2.recordsource = select * from qryloanbook where bookid in (select bookid from tblloan where cardid = & txtcardid.text & )adodc2.refresh如果adodc的recordsource屬性被修改,需要強(qiáng)制調(diào)用refresh方法來(lái)刷新數(shù)據(jù)源,這是需要特別注意的。另外,顯示圖書(shū)信息的數(shù)據(jù)表格是vb的一種控件,叫做datagrid。它經(jīng)常

42、和adodc配合使用,顯示數(shù)據(jù)庫(kù)的一個(gè)表。當(dāng)然,它也支持?jǐn)?shù)據(jù)的添加、修改和刪除。5.8還書(shū)還書(shū)的基本操作和借書(shū)相同,通過(guò)檢索用戶(hù)的id和圖書(shū)的id,在tblloan表中刪除相應(yīng)的記錄完成還書(shū)操作。還書(shū)第六章 實(shí)施概況61系統(tǒng)開(kāi)發(fā)環(huán)境:系統(tǒng)開(kāi)發(fā)環(huán)境包括硬件平臺(tái)和軟件平臺(tái)兩種。硬件平臺(tái)是指開(kāi)發(fā)與運(yùn)行所需要的硬件環(huán)境,主要包括計(jì)算機(jī)機(jī)型及硬件配置。由于本系統(tǒng)是一個(gè)小型的mis管理系統(tǒng),因此對(duì)計(jì)算機(jī)硬件的要求不高,比較經(jīng)濟(jì),只要配備有pii處理器(或以上)、64m內(nèi)存(或以上)、10g硬盤(pán)(或以上)的普通微機(jī)即可順利運(yùn)行。軟件平臺(tái)是指系統(tǒng)開(kāi)發(fā)與運(yùn)行的軟件環(huán)境。本系統(tǒng)在開(kāi)發(fā)時(shí)選用了穩(wěn)定性較強(qiáng)的windo

43、ws xp中文專(zhuān)業(yè)版和visual basic6.0作為開(kāi)發(fā)語(yǔ)言,同時(shí)選用了access數(shù)據(jù)庫(kù),由于這些軟件產(chǎn)品都是microsoft公司的產(chǎn)品,因此彼此之間的兼容性較好,開(kāi)發(fā)出的應(yīng)用系統(tǒng)穩(wěn)定性較高。visual basic 6.0具有可視化的開(kāi)發(fā)環(huán)境,可以快速完成系統(tǒng)的開(kāi)發(fā),內(nèi)部集成的數(shù)據(jù)庫(kù)訪問(wèn)通道,使得可以輕松方便的對(duì)數(shù)據(jù)庫(kù)管理。數(shù)據(jù)庫(kù)采用microsoft access,由于我們的系統(tǒng)要求,采用它完全可以適合我們的工作需求,并且它所支持的數(shù)據(jù)類(lèi)型十分豐富,維護(hù)簡(jiǎn)便,費(fèi)用比較低,人員素質(zhì)要求不是很高,容易升級(jí)。 本系統(tǒng)在單機(jī)上運(yùn)行。6.2系統(tǒng)測(cè)試:在開(kāi)發(fā)本系統(tǒng)時(shí),為了使系統(tǒng)能夠穩(wěn)定運(yùn)行,對(duì)

44、本系統(tǒng)進(jìn)行了有針對(duì)性的全面測(cè)試,采取的方式是:1、菜單項(xiàng)測(cè)試:為了保證每一項(xiàng)下拉菜單能夠正確實(shí)現(xiàn)系統(tǒng)設(shè)計(jì)的功能,我把該圖書(shū)館有關(guān)圖書(shū)的所有基礎(chǔ)數(shù)據(jù),基本上全部輸入到本系統(tǒng)中,并對(duì)每一個(gè)菜單項(xiàng)反復(fù)進(jìn)行了增加、刪除、修改等操作,從而保證了菜單級(jí)功能的正確實(shí)現(xiàn)。2、數(shù)據(jù)跟蹤:完成菜單項(xiàng)測(cè)試后,我又對(duì)系統(tǒng)內(nèi)的每一個(gè)數(shù)據(jù)進(jìn)行了跟蹤。例如:例如對(duì)最多可借書(shū)數(shù)的管理,我首先在借書(shū)證管理模塊中對(duì)某個(gè)讀者的可借書(shū)數(shù)進(jìn)行設(shè)定,然后在借書(shū)模塊進(jìn)行數(shù)據(jù)操作,隨時(shí)觀察這兩個(gè)數(shù)值之間是否有沖突產(chǎn)生,經(jīng)過(guò)對(duì)可借書(shū)數(shù)的數(shù)值多次不同大小的設(shè)置并進(jìn)行驗(yàn)證,說(shuō)明該功能完全正常。3、綜合測(cè)試:在以上測(cè)試的基礎(chǔ)上對(duì)系統(tǒng)功能進(jìn)行了整體的

45、測(cè)試,依次來(lái)檢驗(yàn)系統(tǒng)功能是否符合系統(tǒng)設(shè)計(jì)的要求。6.3 系統(tǒng)運(yùn)行與維護(hù):系統(tǒng)的運(yùn)行:1初始數(shù)據(jù)的輸入本系統(tǒng)的的輸入采用鼠標(biāo)和鍵盤(pán)相結(jié)合的輸入方法。2、怎樣進(jìn)入系統(tǒng)a、將本系統(tǒng)所在的文件夾拷貝到硬盤(pán),然后執(zhí)行其中的圖書(shū)管理系統(tǒng)的程序文件即可,應(yīng)注意要將全部文件的屬性變以存檔,消除只讀屬性。b、在隨后出現(xiàn)的登錄界面上輸入正確的用戶(hù)名和密碼即可3、怎樣使用本系統(tǒng):點(diǎn)擊鼠標(biāo)左鍵即可進(jìn)行相應(yīng)功能的選擇。系統(tǒng)的維護(hù):本系統(tǒng)是個(gè)較復(fù)雜的人-機(jī)系統(tǒng),由于系統(tǒng)外部環(huán)境與內(nèi)部因素的變化,不斷影響系統(tǒng)的運(yùn)行,同時(shí)需要系統(tǒng)不斷地適應(yīng)這些變化,不斷地完善系統(tǒng),以提高系統(tǒng)運(yùn)行的效率與服務(wù)水平,這就需要自始至終進(jìn)行系統(tǒng)的維

46、護(hù)工作。系統(tǒng)的維護(hù)主要包括四個(gè)方面:(1)程序的維護(hù):指的是修改部分或全部程序,這種維護(hù)往往是在條件發(fā)生變化或原系統(tǒng)的效率低的情況下進(jìn)行的。(2)數(shù)據(jù)文件的維護(hù):指的是按照用戶(hù)的要求對(duì)數(shù)據(jù)文件進(jìn)行不定期的修改。(3)代碼的維護(hù):隨著系統(tǒng)的發(fā)展和變化,可能會(huì)出現(xiàn)舊代碼不能適應(yīng)新要求的問(wèn)題,因此,有必要變更代碼,予以維護(hù)。(4)硬件的維護(hù):指的是對(duì)系統(tǒng)所使用的設(shè)備進(jìn)行維護(hù)。本系統(tǒng)的日常維護(hù)由圖書(shū)館的專(zhuān)人來(lái)負(fù)責(zé),如果出現(xiàn)一些不能解決的問(wèn)題,則由開(kāi)發(fā)者來(lái)負(fù)責(zé)。64系統(tǒng)的轉(zhuǎn)換方案:本次開(kāi)發(fā)的圖書(shū)管理系統(tǒng)采用了并行轉(zhuǎn)換方式,以保證平衡可靠的過(guò)度。即一方面使用本系統(tǒng)來(lái)進(jìn)行工作,另一方面又繼續(xù)沿用老的方式手工

47、方式,這種狀況持續(xù)了半個(gè)月的時(shí)間,在這期間發(fā)現(xiàn)了一些程序中存在的漏洞和錯(cuò)誤,用戶(hù)也提出一些修改意見(jiàn),經(jīng)過(guò)程序的進(jìn)一步完善后,正式投入了使用,中止了以前老的手工的操作方式。結(jié)束語(yǔ)在本系統(tǒng)的開(kāi)發(fā)過(guò)程中,由于本人是初次開(kāi)發(fā)軟件,在知識(shí)、經(jīng)驗(yàn)方面都存在著不足。另外,在整個(gè)開(kāi)發(fā)的過(guò)程中,時(shí)間也比較倉(cāng)促。因此,該系統(tǒng)必然會(huì)存在一些缺陷和不足。因?yàn)閷?duì)圖書(shū)管理的整個(gè)流程不夠熟悉,在需求分析時(shí)未能做到完全滿足用戶(hù)的需求。雖然網(wǎng)絡(luò)在圖書(shū)管理系統(tǒng)中的應(yīng)用已經(jīng)很普遍,但在開(kāi)發(fā)過(guò)程由于硬件的限制,未能實(shí)現(xiàn)網(wǎng)絡(luò)功能,在大多數(shù)圖書(shū)管理系統(tǒng)單機(jī)版中,數(shù)據(jù)庫(kù)是用普通的單機(jī)版數(shù)據(jù)庫(kù),那么在以后的系統(tǒng)更新過(guò)程中會(huì)造成不必要的損失。

48、盡管該圖書(shū)管理系統(tǒng)存在著很多不足,但其功能全面、易于日后程序更新、數(shù)據(jù)庫(kù)管理容易、界面友好、操作方便、效率高、安全性好等優(yōu)點(diǎn)是圖書(shū)管理系統(tǒng)所必需的。相信該圖書(shū)管理系統(tǒng)將是一套圖書(shū)館管理員必不可少的管理軟件,在本次畢業(yè)設(shè)計(jì)中,我從指導(dǎo)老師身上學(xué)到了很多東西。他認(rèn)真負(fù)責(zé)的工作態(tài)度,嚴(yán)謹(jǐn)?shù)闹螌W(xué)精神和深厚的理論水平都使我收益匪淺。他無(wú)論在理論上還是在實(shí)踐中,都給與我很大的幫助,使我得到很大的提高,這對(duì)于我以后的工作和學(xué)習(xí)都有一種巨大的幫助,在此感謝他耐心的輔導(dǎo)。另外,在系統(tǒng)開(kāi)發(fā)過(guò)程中還有同組的同學(xué)也給了我不少幫助,這里一并表示感謝。 參考文獻(xiàn)1.劉明周. visual basic數(shù)據(jù)庫(kù)開(kāi)發(fā)高級(jí)指導(dǎo).計(jì)

49、算機(jī)軟件.2003:2.田金蘭. visual basic6使用指南.電子工業(yè)出版社.2000:3.潘錦平. 軟件開(kāi)發(fā)技術(shù). 西安電子科技大學(xué)出版社.20014. 王珊. 數(shù)據(jù)庫(kù)系統(tǒng)概論. 高等教育出版社.20005.劉藩.軟件工程導(dǎo)論.清華大學(xué)出版社, 2000:附 錄一、部分程序源代碼:1、登錄界面(frmlogin.frm):option explicitpublic loginsucceeded as booleanprivate sub cmdcancel_click() 設(shè)置全局變量為 false 不提示失敗的登錄 loginsucceeded = false me.hideend

50、 subprivate sub cmdok_click()dim struserid as stringdim struserpwd as stringdim db as databasedim rs as recordset 獲取用戶(hù)輸入 if txtusername.text = then msgbox 請(qǐng)輸入正確的用戶(hù)名, vbinformation txtusername.setfocus exit sub end if struserid = txtusername.text if txtpassword.text = then msgbox 請(qǐng)輸入用戶(hù)密碼, vbinformati

51、on txtpassword.setfocus exit sub end if struserpwd = txtpassword.text 開(kāi)始校驗(yàn)密碼 set db = opendatabase(db_name) set rs = db.openrecordset(select * from tbloperator where name= _ & chr(34) & struserid & chr(34) & and password= & chr(34) & struserpwd & chr(34) if rs.recordcount 0 then rs.movefirst currentuser.name = struserid currentuser.id = rs!operatorid currentuser.loginsuccess = true else curr

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論