




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、面向對象的圖書館管理系統分析與設計畢業設計報告面向對象的圖書館管理系統分析與設計object-oriented analysis and design of the library management system學 院: 數學與計算機學院 51前 言隨著科學技術的發展,計算機技術在圖書館領域得到廣泛應用,逐步實現了自動化管理應用系統,在圖書館中發揮著越來越重要的作用。利用現代計算機技術和網絡通訊技術,對圖書信息進行科學的管理、有效的開發、實現資源共享、實現圖書館的現代化管理,是圖書館的重要內容之一。本系統以面向對象方法為指導思想,依托visual studio.net開發平臺,c#這種全新
2、的面向對象語言,相信開發過程會變得如此有趣、方便。同時,sql server 2000將給我們提供強大的后臺數據支持,而我們不必擔心數據溢出、數據安全性、和前臺程序的兼容性等問題。對于問題的分析過程,uml(統一建模語言)將為我們提供直觀、科學的軟件分析手段。同時我們還將應用一系列輔助工具,例如,動軟.net代碼自動生成器,ibm數據加密工具等。相信此項目的實施會讓我們獲取寶貴的經驗。目 錄前 言i目 錄ii第一章 緒 論11.1 引言11.2面向對象軟件開發21.2.1面向對象編程21.2.2面向對象軟件原理21.2.3面向對象分析(ooa, object-oriented analysis
3、)31.2.4面向對象設計(ood, object-oriented design)31.3 visual studio.net集成開發環境31.4 c#編程語言41.4.1 c#語言概述41.4.2語法和語義41.4.3 c#標識符和保留字41.4.4 c#原始數據類型51.5 uml概述61.6 sql server 2000簡介61.7動軟.net代碼自動生成器7第二章 可行性研究報告82.1編寫目的82.2項目背景82.3定義82.4 可行性研究的前提92.4.1 要求92.4.2 目標102.5 對現有系統的分析112.5.1 處理流程和數據流程112.5.2 工作負荷112.6 對
4、系統的簡要描述12第三章 需求規格說明書133.1 編寫目的133.2 定義133.3 任務概述133.3.1 目標133.3.2 條件限制143.4 數據描述143.4.1靜態數據143.4.2數據庫介紹173.4.3動態數據173.5功能需求183.5.1功能劃分183.5.2功能描述183.6性能需求213.6.1數據精確度213.6.2時間特性213.6.3適應性213.7運行需求213.7.1用戶界面213.7.2硬件接口223.7.3軟件接口223.7.4故障處理223.8其他需求22第四章 概要設計說明書234.1編寫目的234.2定義234.3總體設計234.3.1處理流程23
5、4.3.2總體結構254.4 接口設計264.5 數據結構設計274.5.1邏輯結構設計274.5.2物理結構設計284.5.3數據結構和程序的關系284.6運行設計294.6.1運行模塊的組合294.6.2運行控制29第五章 系統命名規則設計305.1總體規則305.2采用類進行編碼305.3后臺數據結構定義規則305.4對象名稱定義規則315.5編碼設計31第六章 詳細設計說明書336.1編寫目的336.2定義336.3程序描述346.3.1主模塊346.3.2 全局類356.3.3 login類(系統登錄窗體類)376.3.4 bookborrowform類(圖書借閱窗體類)376.3.
6、5 bookreturnform類(圖書歸還窗體類)386.3.6 圖書預定模塊396.3.7 圖書管理模塊426.3.8 讀者管理模塊446.3.9 管理員管理446.3.10 統計查詢446.4 詳細設計說明45小 結46致 謝47參考文獻48第一章 緒 論1.1 引言正如本課題題目面向對象的圖書館管理系統分析與設計所言,面向對象軟件開發方法將是本系統分析、開發貫穿始終的指導思想。圖書管理是一個十分復雜和繁瑣的過程,面對現代圖書館海量的圖書信息,一套行之有效的解決方案將使此過程變得尤為簡單,這就是圖書館管理系統。在以下的分析設計中,我們將以此為模型展開研究。圖書館管理系統能夠高效的完成圖書
7、管理員的基本業務需求和系統管理員的管理需求,并能根據需要,完成讀者所提出的需求。是圖書館日常管理不可或缺的管理系統。用戶類型業務類型具體操作讀者申請服務借閱圖書歸還圖書預定圖書圖書管理員基本業務借閱圖書歸還圖書預定圖書系統管理員圖書管理新書入庫更新圖書信息(修改、刪除)查詢圖書信息讀者管理讀者登記更新讀者信息(修改、注銷)查詢讀者信息系統設置查詢統計、基本設置等表1-1 圖書館管理系統主要功能描述本著以用戶需求為目標的開發原則,以面向對象軟件開發方法為指導思想,以最新的.net為開發平臺,c#為開發語言,uml建模的直觀描述以及sql server 2000的強大后臺數據庫管理等方法、技術為依
8、托。“圖書館管理系統”的開發過程將以模塊化的開發方法,將系統分為圖書管理、讀者管理、圖書借閱、圖書歸還和圖書預定等模塊,在完成基本功能的前提下逐步完善。相信本項目的開發和設計將讓我們獲益匪淺。1.2面向對象軟件開發1.2.1面向對象編程面向對象軟件開發的原理已經出現很多年了,實質上在高級編程語言使用以來就存在了。在20世紀80年代和90年代,面向對象編程開始廣為流行,這在很大程度上是因為c+和java這樣的編程語言的發展。它現在已經成為商業軟件開發的主流方法。面向對象方法最吸引人的特征之一就是對象可以用來非常有效地表示真實世界中的實體。比如,我們可以使用一個軟件對象來表示公司的員工。我們為每個
9、員工創建一個對象,每個都具有我們需要表示的行為和特征。用這種方法,面向對象編程允許我們在程序和程序表示的實際環境之間建立映射。也就是說,面向對象方法使解決問題變得容易,這是編寫程序的第1要點。1.2.2面向對象軟件原理面向對象編程最終需要牢固理解下列術語:l 對象l 屬性l 方法l 類l 封裝l 繼承l 多態1 對象(object)是程序中的基本元素。一個軟件對象通常表示了我們問題域中的一個真實對象。每個對象都有一個狀態(state)和一個行為(behavior)的集合。“狀態”是指當前定義對象的基本特征。一個對象的行為是和對象相關的活動。除對象之外,c#程序也管理原始數據。原始數據(prim
10、itive data)包括了基本的值,比如數字和字符。對象通常表示了更有趣或者更復雜的實體。對象的屬性(attribute)是它內部存儲的值,可以表示為原始數據或者其他對象。方法(method)是給定名稱的一組程序語句。當方法觸發時執行它的語句。一組方法和一個對象相關聯。對象的方法定義了它的潛在的行為。歸納起來就是:每個對象有一個狀態,通過它的屬性定義;還有一組行為,通過它的方法定義。2 通過類(class)來定義。類是一個模型或者藍圖,對象從其中創建。類是對象的藍圖。它建立了數據的類型,這種類型的對象將保持和定義了代表這類對象行為的方法。但是,類不是對象,正如藍圖是設計模型而不是房子一樣。一
11、般來說,類不包括存儲數據的空間。每個對象有它自己的數據的空間,這也是為什么每個對象可以有它自己的狀態。定義了一個類之后,可以從這個類創建多個對象。類是對象的抽象,對象是類的實例。3 對象應該被封裝(encapsulate),這意味著它保護和管理自己的信息。也就是說,對象可以自我管理。一個對象的狀態的唯一改變應該由這個對象的方法來完成。我們應該將對象設計成為其他對象不能“接觸”和改變它的狀態。類可以通過使用繼承(inheritance)從其他類中創建。也就是說,一個類的定義可以基于已經存在的另外一個類。繼承是軟件重用(software reuse)的一種形式,利用了我們想要創建的不同種類的類之間
12、的相似性。一個類可以用來派生多個類。派生的類可以用于派生更多的類。這創建了類的繼承關系表,定義在一個類中的屬性和方法可以由它的孩子們繼承,而相應地它的孩子們又可以將這些傳遞給它們的孩子,以此類推。多態(polymorphism)是指我們可以在不同時間用相同的方式使用相關對象的多個類型。它賦予我們為和多個對象相關的問題設計強大和優美的解決方案的能力。1.2.3面向對象分析(ooa, object-oriented analysis)面向對象分析是軟件開發過程中的問題定義階段,是抽取和整理用戶需求并建立問題域精確模型的過程。ooa強調直接針對問題域中客觀存在的各種事物建立ooa模型中的對象,用對象
13、的屬性和服務分別描述事物的靜態特征和行為。ooa需要完成兩個任務:一是形式地說明所面對的應用問題,最終成為軟件系統基本構成的對象,還有系統所必須遵從的,由應用環境所決定的規則和約束。二是明確地規定構成系統的對象如何協同合作,完成指定的功能。1.2.4面向對象設計(ood, object-oriented design)ood則是針對系統的一個具體的實現運用面向對象的方法。其中包括兩方面的工作:一是把ooa模型直接搬到ood(不經過轉換,僅作某些必要的修改和調整),作為ood的一部分;二是針對具體實現中的人機界面、數據存儲、任務管理等因素補充一些與實現有關的部分。ood有一些準則,它們是:模塊化
14、、抽象化、信息隱蔽和封裝、對象的高類聚和弱耦合、可擴充性、可重用性等。1.3 visual studio.net集成開發環境軟件開發環境是指用于創建、測試和修改程序的工具集。一些環境被稱為集成開發環境(integrated development environment, ide),因為它們將不同的工具集成到一個軟件程序中。它將極大地簡化開發過程,加快生成有用的程序的過程。visual studio.net是一個集成開發環境,是.net平臺下最為強大的開發工具,無論是軟件服務商,還是企業應用程序的部署與發布,visual studio.net都可以提供近乎完美的解決方案。visual stud
15、io.net提供了包括設計、編碼、編譯調試、數據庫聯接操作等基本功能和基于開放架構的服務器組件開發平臺、企業開發工具和應用程序重新發布工具以及性能評測報告等高級功能。(具體請參看msdn或微軟中國visual studio.net開發中心網站)1.4 c#編程語言1.4.1 c#語言概述c#是編程世界中最近出現的,英文讀音為:c sharp,由microsoft開發,既可以開發基于web的程序,也可以開發單獨運行的程序。microsoft從c+語言中提取了最新的面向對象技術,并將其和它的visual basic語言的易用性一起集成到c#中。c#的語法和它的面向對象的本質也類似與sun micr
16、osystems開發的java語言。因為c+和java都是以c為原型,c#語言也保留了很多這些早期語言的結構。這使得熟悉java、c或者c+的程序員可以很快適應c#。c#是一種面向對象編程語言(object-oriented programming language)。對象是組成程序的基本元素。c#語言和.net平臺為開發程序提供了大量類型的功能和工具。這個軟件常稱為命名空間(namespace),提供了創建圖形、網絡通信以及數據庫交互的能力和很多其他功能。1.4.2語法和語義每種編程語言都有自己獨特的語法(syntax)。一種語言的語法規則精確地描述了語言的詞匯元素如何形成句子。創建一個程序
17、必須遵守這些規則。例如在c#中,標識符不能以數字開頭,這個事實就是一條語法規則。花括號用來開始和結束類和方法,這也是一條語法規則。編程語言中語句的語義(semantics)定義了在語句執行時會發生什么。編程語言總體上是無二義性的,這就是說一個程序的語義是定義良好的。也就是說,對每一個句子有且只有一種解釋。另一方面,人類用來交流所使用的自然語言(natural language),比如英語和中文,都是充滿二義性的。計算機語言不允許二義性存在。如果一種編程語言的指令可以有兩種不同的意思,計算機將不能判斷該執行哪一條指令。總之,語法規則指出了程序的形式。語義指出了程序語句的意思。1.4.3 c#標識
18、符和保留字編寫程序時使用的不同的詞稱為標識符(identifier)。標識符是一個字母后面接著0個或者多個字母和數字。一個c#的字母可以是任意26個英文字母表的字符之一,包括大小寫和_(下劃線)字符,以及其他語言的字母表字符。一個c#數字包括數字09。c#中的一個名稱(name)是一系列的標識符,用(.)分隔。標識符名稱應該有描述性并且可讀。另外,c#是大小寫敏感的。字母的大寫版本和小寫版本是不同的。保留字(reserved word)是在編程語言中有特殊含義的標識符,只能按預先定義好的方式使用。保留字不能用于其他目的,比如為類或者方法命名。abstractasbaseboolbreakbyt
19、ecasecatchcharcheckedclasscharconstcontinuedecimaldefaultdodoubleelseenumeventexplicitexternfalsefinallyfixedfloatforforeachgetgoto*ifimplicitimplemtnsinintinterfaceinternalislocklongnamespacenewnullobjectoperatoroutoverrideparamspartialprivateprotectedpublicreadonlyrefreturnsbytesealedsetshortsizeo
20、fstackallocstaticstringstructswitchthisthrowtruetrytypeofunitulonguncheckedushortusingvaluevirtualvoidwhile表1-2 c#保留字1.4.4 c#原始數據類型在c#中有13中簡單數據類型(simple data type):8個整數的子集、2個浮點數的子集、1個字符數據類型、1個布爾數據類型和1個十進制數據類型。其他的所有都是使用對象來表示。string類型經常也看作是一個簡單數據類型,但它極大地展現了對象的特征,所以通常以類來看待它(一個預定義的類)。c#有兩種數值類型:整型和浮點型。有8
21、種整數數據類型和2種浮點數數據類型。保留字別名類型存儲位數最小值最大值sbytebyteshortushortintuintlongulongfloatdoubledecimalsystem.sbytesystem.bytesysten.int16system.uint16system.int32system.uint32system.int64system.uint64system.singlesystem.doublesystem.decimal8位8位16位16位32位32位64位64位32位64位96位-1280-2150-2310-26301.5_10-455.0_10-3241.0
22、_10-28127255215-1216-1231-1232-1263-1264-13.4_10381.7_103087.9_1028表1-3 c#原始數據類型在c#中,數據類型char代表了單個字符。c#中定義的布爾型的值使用保留字bool定義,只有兩種有效取值:true和false。c#支持十進制數據類型decimal,它使用128位存儲,和浮點數類型比較,十進制類型有更高的精度和更小的范圍,這使它適合財務和貨幣計算。1.5 uml概述統一建模語言(unified modeling language, uml)是一種直觀化、明確化、構建和文檔化軟件系統產物的通用可視化建模語言。它捕捉了被構
23、建系統的有關決策和理解,用來理解、設計、瀏覽、配置、維護以及控制系統的信息。uml可以與所有的開發方法、生命階段、應用領域和媒介一同使用。它意圖統一過去建模技術的經驗,將當前軟件最佳實踐合并至標準的方法。uml包括語義概念、標記符號和指南,具有靜態、動態、環境上的和組織性的部分。它可以被具有代碼產生和報表生成的交互式可視建模工具所支持。uml規范沒有定義標準過程,但可用于迭代的開發過程,并支持現有的大多數面向對象的開發過程。uml捕捉系統靜態結構和動態行為的信息。系統建模成獨立對象的集合,它們互相交互以實現功能,從而最終使外部使用者獲益。靜態結構定義了對系統具有重要意義的各種對象和實現,以及它
24、們之間的關系。動態行為定義了對象時間上的歷史和為達成目標對象間的通訊。從不同但是相關的視角來對系統建模,允許了多種角度對系統的理解。1.6 sql server 2000簡介數據庫是事務處理、信息管理等應用系統的核心和基礎,數據庫管理系統通過將大量的數據按一定的數據模型組織起來,提供存儲、維護和檢索數據的功能,使應用系統可以以統一的方式方便、及時、準確地從數據庫中獲取所需信息。microsoft公司推出的sql server 2000數據庫管理系統以其強大的功能在各領域得到廣泛應用。它是基于客戶機/服務器(client/server)模型的關系型數據庫管理系統(dbms),其在電子商務、數據倉
25、庫和數據庫解決方案等應用中起著重要的核心作用,為企業的數據管理提供強大的支持。在創建一個數據庫后,我們需要為其新建一些一系列的數據表,用來存儲記錄。創建表的字段時,必須為其指定數據類型。字段的數據類型決定了數據的取值、范圍和存儲格式。字段的數據類型可以是sql server提供的系統數據類型,也可以是用戶定義數據類型。sql server 2000提供了豐富的系統數據類型。數據類型符號標識整數型精確數值型浮點型貨幣型位型字符型unicode字符型文本型二進制型日期時間型時間戳型圖像型其他bigint8, int4, smallint2, tinyint1decimal, numericfloa
26、t4&8, real4money8, smallmoney4bit1char, varcharnchar, nvarchartext, ntextbinary, varbinarydatetime, smalldatetimetimestampimagecursor, sql_variant, table, uniqueidentifier注:int4,括號里的數字為類型長度(字節數)表1-4 sql server 2000系統數據類型1.7動軟.net代碼自動生成器動軟.net代碼生成器codematic 是一款為c#數據庫程序員設計的自動代碼生成器,codematic 生成的代碼基
27、于面向對象思想和三層架構設計,結合了pet shop中經典的思想和設計模式,融入了工廠模式,反射機制等一些思想。采用model、dal 、bll、web 的設計,主要實現在對應數據庫中表的基類代碼的自動生成,包括生成屬性、添加、修改、刪除、查詢、存在性、model 類構造等基礎代碼片斷,支持不同3種架構代碼生成,使程序員可以節省大量機械錄入的時間和重復勞動,而將精力集中于核心業務邏輯的開發。codematic 同時提供方便的多類型數據庫管理,查詢分析器,sql腳本生成,存儲過程生成,數據庫文檔生成,web項目發布,代碼批量自動輸出等多項開發工作中常用到的功能,可以方便輕松地進行項目開發。第二章
28、 可行性研究報告2.1編寫目的編寫可行性研究報告具體要弄清幾個方面的可行性,分別是:經濟可行性、技術可行性、運行可行性、法律可行性和開發方案可行性等。圖書館管理系統作為各大中小型圖書館的基本服務系統,其高效的性能和良好的信息管理、數據操作功能顯得尤為重要。圖書管理是一個十分復雜和繁瑣的過程,面對現代圖書館海量的圖書信息,一套行之有效的解決方案將使此過程變得尤為簡單,這就是圖書館管理系統。本著從用戶需求出發的開發原則,以面向對象軟件開發方法為指導思想,以最新的.net平臺和c#開發語言,uml建模的直觀描述以及sql server 2000的強大數據庫管理系統等開發先進技術為背景。究竟結果如何,
29、大家拭目以待。2.2項目背景a 所建議開發的軟件系統的名稱:圖書館管理系統;b 本項目的任務提出者、開發者、用戶及實現該軟件的計算中心或計算機網絡:任務提出者:數學與計算機學院系統開發團隊:04級計本(1)、(2)班面向對象的圖書館管理系統分析與設計畢業設計團隊系統用戶群體:圖書館實現該軟件的單位:大理學院2.3定義該圖書館管理系統是基于.net和面向對象開發技術,建力以client/server為結構模式、以數據庫為后臺核心應用、以服務為目的信息平臺,對資源進行科學的加工整序和管理維護,為教學和科學研究提供文獻信息保障和提高管理圖書的效率而設計的系統。主要涉及以下概念:軟件工程:ieee的定
30、義是開發、運行、維護和修復軟件的系統方法。軟件生存周期(software life cycle):是人們在研究軟件開發過程時所發現的一種規律性的事實。主要包括計劃、分析、設計、編程、測試和維護等階段。結構化分析(structured analysis,sa)方法是一種面向數據流的需求分析方法。它的基本思想是自頂向下逐層分解,把一個大問題分解成若干個小問題,每個小問題再分解成若干個更小的問題。結構化設計(structured design,sd)方法是一種面向數據流的設計方法,它是以結構化分析階段所產生的文檔(包括數據流圖、數據字典和軟件需求說明書)為基礎,自頂向下,逐步求精和模塊化的過程。模塊
31、化:模塊是指執行特定某一特定任務的數據和可執行語句等程序元素的集合,通常是指通過名字來訪問的過程、函數、子程序或宏調用等。模塊化就是將一個待開發的軟件劃分成若干個可完成某一功能的子功能的模塊,每個模塊可獨立地開發、測試,最后組裝成完整的程序。內聚:內聚是指一個模塊內各個元素彼此結合的緊密程度,它是信息隱蔽和局部化概念的自然擴展。耦合:耦合是對一個軟件結構內不同模塊之間互連程度的度量。需求分析:軟件需求說明書是需求分析階段的最后成果,該說明把在軟件計劃中確定的軟件范圍加以展開,制定出完整的信息描述、詳細的功能說明、恰當的檢驗標準以及其他與要求相關的數據。概要設計:經過需求分析階段的工作,系統必須
32、“做什么”已經清楚了,概要設計的基本目的就是回答“概括地說,系統應該如何實現”這個問題。概要設計的重要任務就是設計軟件的結構,也就是要確定系統是由哪些模塊組成,以及這些模塊相互間的關系。詳細設計:概要設計已經確定了每個模塊的功能和接口,詳細設計的任務就是為每個模塊設計其實現的細節。詳細設計階段的根本目標是確定應該怎樣具體地實現所需求的系統,得出對目標系統的精確描述。軟件測試:軟件測試就是在軟件投入運行前,對軟件需求、設計規格說明和編碼的最終復審,是軟件質量保證的關鍵步驟。測試的目標是想以最少的時間和人力找出軟件中潛在的各種錯誤和缺陷。2.4 可行性研究的前提2.4.1 要求a 功能:對圖書館的
33、圖書信息和用戶信息進行有效的管理; b 性能:數據庫的錄入、用戶信息查詢、圖書信息查詢、信息安全口令驗證; c 輸出:用戶信息、圖書信息; d 輸入:用戶賬號、用戶密碼、用戶檢索信息、圖書檢索信息; e 安全與保密: 系統登錄需要驗證口令以區分不同權限的使用者; 館中所有未借出的書籍能夠供用戶隨時查閱,借出的書可以查閱到信息以及應歸還日期; 用戶信息只能被系統管理員查閱、修改,對于用戶本人只能對自身信息進行查閱; 運行環境:操作系統: windows 2000/xp及以上;數據庫類型:sql server 2000; f 機器配置: 服務端: 一般采用專業的數據庫服務器。 客戶端: 客戶端一般
34、為普通pc機即可,當然客戶端需要網絡支持。g 完成期限:2007年 12月。2.4.2 目標圖書館管理系統應該包括讀者管理、圖書管理、借閱圖書、歸還圖書、預約圖書和信息查詢等基本內容。a 圖書管理人員需要管理讀者資料 其中資料主要包括:借書證號、姓名、專業或部門、性別、電話、郵箱、是否具備借閱許可等信息。其中借閱許可則由讀者的學籍情況或在職情況決定的,只要是在校學生或在職職工在借閱許可數量范圍內都是可以借閱的。 b 圖書管理人員必須對圖書進行行之有效的管理 圖書的資料則主要有:書號、條形碼、書名、作者、出版社、isbn、圖書狀態等。其中圖書狀況還要包含其狀態為是否被借閱。 c 系統應該為學生借
35、閱、歸還查詢和預約圖書提供方便 我們應該做到盡可能的功能全面,含蓋面廣,并且注重通過人機交互界面設計原則來指導我們的界面人性化設計思想。d 系統管理員需要對系統進行安全的管理當圖書管理員要修改數據報表時或系統操作失敗,必須向系統管理員申請系統管理員口令,系統管理員快速的執行超控操作。其中,系統操作失敗包含其狀態為圖書管理員進行了越權操作; e 數據庫的安全 數據庫的安全管理主要是數據庫的備份恢復以及各種數據表的維護工作,以保證數據庫系統正常運行。 f 特別附加windows 底層安全 在連接數據庫的時候,不同的登錄用戶應該在數據庫中進行詳細的分組,雖然本系統中并沒 有通過代碼實現,但是必須要將
36、此問題單獨列出。因為如果通過軟件密碼單純限制用戶的權 限是遠遠不夠的。通過鉤子編程完全可以截獲數據庫系統的窗口,并且直接通過操作系統底 層發送指令。因此一定要注意保護口令和從數據庫本身的登錄用戶上限制其使用權限。以提 高本系統的操作安全等級。 2.5 對現有系統的分析2.5.1 處理流程和數據流程我們將該系統的業務流程根據系統操作權限劃分為兩個方面,一個是擁有系統管理操作最高權限的系統管理員;另外一個就是擁有基本業務操作權限的圖書管理員。系統管理員對圖書信息對讀者信息添加修改刪除查詢添加修改刪除查詢圖 2-1 系統管理員的操作從上圖我們可以看出,系統管理員擁有對系統不可逆操作的權限,能夠對圖書
37、記錄和讀者記錄進行一系列操作,例如,添加、修改、刪除等,所以系統管理員的操作一定要慎之又慎。最好在操作前進行相關信息的備份,以防對數據產生不可挽回的損失。圖書管理員借閱圖書預定圖書歸還圖書圖 2-2 圖書管理員的操作如上所示為圖書管理員進行的一些日常基本業務,例如,圖書的借閱,歸還,預定等。此過程是一個互動的過程,均需要讀者提示操作請求,而圖書管理員完成此請求,并返回操作結果。2.5.2 工作負荷該圖書館管理系統為標準的客戶端/服務器模式,數據庫采用分布式數據庫系統,即多臺客戶端均可訪問一個數據庫服務器,為了安全起見,對此數據庫服務器可采用鏡像訪問的模式,再配以一定的同步機制,對此數據庫也要時
38、常備份。通過它,我們可以實現幾臺客戶機同時進行借書、還書、檢索等操作,通過對系統和數據庫操作的優化處理,充分提高系統運行的可靠性、高效性。理論上講,圖書館管理系統的記錄數限制為一億條,系統測試均采用主流的服務器和pc工作站,管理40萬冊圖書時,在檢索、借還等操作均可實現毫秒級延遲。2.6 對系統的簡要描述圖書館管理系統以client/server為結構模式、以數據庫為后臺核心應用、以服務為目的應用平臺。(1)具體要求 ·讀者信息管理 ·圖書信息管理·借閱圖書 ·預約圖書 ·歸還圖書 ·系統操作(2)系統限制 館中所有未借出的書籍能夠供
39、讀者隨時借閱。 在同一時刻,一本書不能既被借出,又可供借閱。 一個讀者一次借出的書籍數目不能超過預定值。第三章 需求規格說明書3.1 編寫目的需求分析的任務簡略的說就是弄清用戶的需求,確定系統必須完成哪些工作,也就是對目標系統提出完整、準確、清晰、具體的要求,建立系統的邏輯模型。具體步驟為:1) 驗證可行性研究階段得到的結果2) 分析系統的主要要求3) 得到系統的邏輯模型4) 修正系統的開發計劃5) 驗證軟件需求3.2 定義用例(use case):用例是系統單元提供的外部可感知的功能單元,表達成系統單元和與之間交互的一個或多個活動者的消息序列,用例的目的是定義清晰的行為塊而不解釋系統的內部結
40、構。用例視圖(use case view):用例視圖從外部用戶的角度捕獲系統、子系統或類的行為,它將系統功能劃分為對活動者(系統的理想用戶)具有意義的事務。這些功能塊稱為用例。3.3 任務概述3.3.1 目標圖書館管理系統針對的用戶主要是各院校圖書館,藏書的種類和數量較多,讀者的數量和來源有一定的限制。相應的需求有:1能夠存儲一定數量的圖書信息,并方便有效的進行相應的圖書數據操作和管理,這主要包括:1) 圖書信息的錄入、刪除及修改。2) 圖書信息的多關鍵字檢索查詢。3) 圖書的出借、返還和資料統計。能夠對一定數量的讀者進行相應的信息存儲與管理,這其中包括:1) 讀者信息的登記、刪除及修改。2)
41、 讀者資料的統計與查詢。能夠對需要的統計結果提供打印輸出。能夠提供一定的安全機制,提供數據信息授權訪問,防止隨意刪改,同時提供信息備份的服務。3.3.2 條件限制鑒于對畢業設計的時間安排和相關要求,圖書館管理系統將以多模塊,團隊協作的方式來完成。一個完善的圖書館管理系統應提供更為便捷與強大的信息查詢功能,如相應的網絡操作及服務,讀者將可以直接通過網絡,利用瀏覽器即可訪問我們的系統,足不出戶就可實現信息查詢、圖書預定和自身信息維護等操作,但由于時間和精力有限,本次課題將不考慮b/s(browser/server)模式,所以本系統只是基于c/s(client/server)模式,對于詳細的分析和設
42、計,我們將在以后逐步進行。3.4 數據描述3.4.1靜態數據l 系統中要用到的數據表基本表1:【管理表(admin_table)】字段字段名數據類型字段長度約束備注1用戶名(username)varchar主鍵2密碼(password)varchar3權限(duty)varchar基本表2:【出版社資料(pubdata_table)】字段字段名數據類型字段長度約束備注1isbn(isbn)varchar主鍵2出版社(press)varchar基本表3:【借閱者信息(borinfo_table)】字段字段名數據類型字段長度約束備注1pk_idint自動編號2借書證號(borid)varchar主
43、鍵3姓名(borname)varchar4性別(sex)varchar5院系(department)varchar6電話(tel)varchar7電子郵件(email)varchar8登記日期(recorddate)datetime9有效期至(validity)datetime10備注(borremark)varchar基本表4:【圖書信息(bookinfo_table)】字段字段名數據類型字段長度約束備注1pk_idint自動編號2圖書編號(bid)varchar主鍵3條形碼(barcode)varchar4圖書名稱(bname)varchar5圖書類別(bclass)varchar6作者(
44、author)varchar7isbn(isbn)varchar8出版社(press)varchar9出版日期(pubdate)datetime10入庫日期(wadate)datetimenow()11價格(price)money12數量(num)int13狀態(bstate)varchar14備注(bremark)varchar基本表5:【圖書分類(bookclass_table)】字段字段名數據類型字段長度約束備注1類別編號(classid)varchar主鍵2類別名稱(bclass)varchar基本表6:【借閱信息(bhinfo_table)】字段字段名數據類型字段長度約束備注1pk_
45、idint主鍵自動編號2圖書編號(bid)varchar3借書證號(borid)varchar4借書日期(bodate)datetime5還書日期(redate)datetime6續借次數(renewaltimes)int7備注(bhremark)varchar基本表7:【借閱歷史(brhinfo_table)】字段字段名數據類型字段長度約束備注1pk_idint主鍵自動編號2圖書編號(bid)varchar3借書證號(borid)varchar4借書日期(bodate)datetime5還書日期(redate)datetime6已還日期(srdate)datetime基本表8:【賠償記錄(a
46、mendslog_table)】字段字段名數據類型字段長度約束備注1pk_idint主鍵自動編號2圖書編號(bid)varchar3借書證號(borid)varchar4賠償日期(amdate)datetime5賠償金額(ammoney)money6備注(amremark)varchar基本表9:【預定信息表(res_table)】字段字段名數據類型字段長度約束備注1pk_idint自動編號2預定編號(resid)varchar主鍵2圖書編號(bid)varchar3借書證號(borid)varchar4預定狀態(resstate)varchar5預定時間(resdate)datetime新書
47、isbn(nisbn)varchar6備注(resremark)varchar3.4.2數據庫介紹本數據庫采用sql server 2000數據庫管理系統開發,定義如下:系統名稱:lms(library management system)數據庫名稱:lms基本表及其具體表述:1. 管理表(admin_table):描述圖書管理員的用戶名、密碼及一些操作權限2. 出版社資料(pubdata_table):isbn號對應出版社名稱3. 讀者信息(borinfo_table):描述讀者的基本信息4. 圖書信息(bookinfo_table):描述圖書的基本信息5. 圖書分類(bookclass_t
48、able):描述圖書的種類6. 借閱信息(bhinfo_table):描述借閱信息,包括讀者和圖書的借閱信息 7. 借閱歷史表(brhinfo_table):記錄借閱歷史,方便查詢8. 賠償記錄(amendslog_table):記錄讀者對損壞或遺失書籍的賠償措施及金額等信息9. 預定信息(res_table):記錄圖書預定信息3.4.3動態數據輸入數據:鼠標對按鈕的點擊;查詢方式、查詢關鍵字;新建圖書項、讀者項;圖書項、讀者項相應紀錄更改;備份數據恢復所需的數據備份文件;借閱、返還、丟失注銷時的圖書序號、讀者借閱證號;受限操作所需的密碼;輸出數據:查詢關鍵字確定的數據庫記錄的子集;統計結果及
49、其格式化文件;信息錄入、刪改結果(成功或失敗);圖書借閱、返還、丟失注銷等操作結果;數據備份輸出的數據備份文件;內部數據:查詢操作建立的索引;3.5功能需求3.5.1功能劃分圖書館管理系統可分為如下模塊:1. 圖書管理模塊1) 新書入庫2) 修改圖書信息3) 刪除圖書信息4) 查詢圖書信息2. 讀者管理模塊1) 讀者登記2) 修改讀者信息3) 注銷讀者信息4) 查詢讀者信息3. 基本業務模塊1) 借書模塊2) 還書模塊3) 圖書預定模塊4. 系統模塊1) 信息查詢統計2) 管理員信息維護3) 系統設置3.5.2功能描述l 系統的功能需求主要包括以下幾個方面:借閱者能夠借閱書籍、還書和預定書籍。
50、圖書管理員能夠處理借閱者的借閱和還書請求。系統管理員可以對系統的數據進行維護,如增加、刪除和更新圖書信息,增加、刪除和更新借閱者信息。1. 借閱者的用例圖:圖 3-1 借閱者的用例圖2. 圖書管理員的用例圖:圖 3-2 圖書管理員的用例圖3. 系統管理員的用例圖:圖 3-3 系統管理員的用例圖4. 管理員登錄、信息維護的用例:范圍:圖書館管理系統(library management system, lms)應用級別:用戶級別主要參與者:圖書管理員(librarian),系統管理員(administrator)涉眾及其關注點: 系統管理員:希望能順利登錄系統,系統給出其相關操作權限,實現對信息
51、包括管理員信息維護的操作。圖書管理員:希望能順利登錄系統,實現其相關操作權限。前置條件:圖書管理員、系統管理員事先已有對應登錄帳號、口令。后置條件:正常登錄,實現其對應操作。成功場景:1. 用戶輸入其帳號和口令,系統根據數據表中對應記錄驗證其合法性和對應操作權限。2. 正常登錄后,進入系統主界面,根據權限的不同,主界面對應操作也不同。3. 若是圖書管理員,則可操作基本業務(借閱、歸還),圖書預定,查詢統計等模塊;若是系統管理員,除以上模塊外,還可實現對信息(圖書信息、讀者信息、管理員信息)的相關維護操作。4. 完成對應操作,退出。備用流:1. 登錄失敗,對于不合法用戶,系統會根據輸入的信息,做
52、出對應提示,如,用戶名不存在,密碼錯誤,用戶名、密碼不能為空等。2. 進入系統主界面前發生錯誤或死鎖,這時可檢查數據庫服務器是否打開,數據庫管理器中數據庫是否已導入。用例圖:圖 3-4 管理員登錄的用例圖3.6性能需求3.6.1數據精確度1. 要按照嚴格的數據格式輸入,否則系統將給出錯誤提示信息并不給予響應進行處理。2. 查詢時要保證查全率,所有相應域包含查詢關鍵字的記錄都應能查到。因為通常有文件的記錄會很多,所以系統應該兩種方法進行查詢:直接查詢和模糊查詢。3.6.2時間特性一般操作的響應時間應在12秒內,數據庫檢索超時不超過30秒,對軟磁盤和打印機的操作也應在可接受的時間內完成。3.6.3適應性滿足運行環境在允許操作系統之間的安全轉換和與其它應用軟件的獨立運行要求。其他適應性建立在硬件和系統軟件穩定的基礎上。3.7運行需求3.7.1用戶界面用戶界面應具有一些基
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 貴金屬礦床的生態環境影響評價考核試卷
- 自來水的水質保護與保障考核試卷
- 酒店業客戶體驗優化策略考核試卷
- 口腔科門診主任年終總結
- 急救儀器常見故障及處理
- 文獻閱讀匯報核心要素與實踐方法
- 糖尿病疾病防治與健康管理
- 顱腦損傷疾病康復
- RS-MCPG-Standard-alpha-MCPG-Standard-生命科學試劑-MCE
- “學海拾珠”系列之跟蹤月報
- 魅力臺州優質獲獎課件
- ZZ028 中職法律實務賽項賽題-2023年全國職業院校技能大賽擬設賽項賽題完整版(10套)
- 電動剪刀式升降車作業風險辨識及控制措施清單
- 巨力索具(河南)有限公司年生產10萬噸鋼絲及5萬噸鋼絲繩項目環境影響報告
- 提高患者自備口服藥物正確堅持服用落實率
- 三段式電流保護的整定與接線課件
- GB/T 709-2006熱軋鋼板和鋼帶的尺寸、外形、重量及允許偏差
- GB/T 5463.3-1986非金屬礦產品名詞術語石膏、硬石膏
- GB/T 32301-2015航天器包裝、運輸通用要求
- GB/T 17626.2-1998電磁兼容試驗和測量技術靜電放電抗擾度試驗
- 國開專科《人文英語 1》機考題庫
評論
0/150
提交評論