軟件工程圖書館管理系統課程設計報告.doc_第1頁
軟件工程圖書館管理系統課程設計報告.doc_第2頁
軟件工程圖書館管理系統課程設計報告.doc_第3頁
軟件工程圖書館管理系統課程設計報告.doc_第4頁
軟件工程圖書館管理系統課程設計報告.doc_第5頁
已閱讀5頁,還剩28頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1西安科技大學軟件工程課程設計報告題目:圖書館管理系統班級:軟件工程學號:姓名:2009年1月2目錄1緒論12可行性研究報告13需求規格說明書44總體設計說明書75數據庫設計說明書86詳細設計說明書97系統實現118測試分析報告23參考文獻31.緒論1.1選題目的及意義隨著計算機技術的快速發展,人們對用計算機代替手工管理信息的需求越來越強烈,越來越多的計算機軟件如雨后春筍般的應用于人們生產生活的各個領域,為人們提供各種各樣的便利。本圖書館管理系統應用軟件可以有效地解決高等院校、中小學圖書館由于藏書量增大而帶來的管理問題,圖書館管理員可以更好地管理學校圖書館藏書信息,學生可以更方便地享受借書還書的服務,為更有效地學習知識提供有利的保證。對于我來說,選擇這個題目作為課程設計的題目有以下兩個原因:一是因為自從上大學以來,每當在圖書館借書的時候,我都會留心觀察一下圖書館管理員的那臺計算機上顯示的內容,久而久之,就對本系統的基本流程越來越了解,做好一個軟件的前提是必須對這個軟件的功能和原理非常熟悉,相比別的題目,我對這個題目更加了解;二是本學期通過學習Java程序設計和Oracle數據庫課程,我覺得這個題目雖然沒有那么難(涉及算法的內容很少),但也不是輕而易舉就能完成的,所以我想挑戰一下自己,看看自己的實現能力到底怎么樣,因此決定用面向對象方法學的思想,前臺用Java程序設計語言編寫界面,訪問Oracle數據庫中的數據,完成本系統。1.2系統概述本系統通過JDBC-ODBC橋實現前后臺數據的聯系,基本上實現了一個圖書館管理系統所具備的基本功能,本系統把使用者分為三類:超級管理員、普通管理員、讀者,對三種用戶分別設計了各自的主界面,以便更好的實現信息的隱藏性,超級管理員可以進行這個系統所有操作;管理員只能執行超級管理員的基本功能,查看自己的信息;讀者只能查看自己的信息,對自己當前借書進行掛失和續借兩種操作,查詢圖書館的藏書。2.可行性研究報告2.1編寫目的本報告編寫目的在于研究圖書館管理系統應用軟件是否可行,指出本軟件開發所使用的方法和手段,并對該軟件前景進行分析。本報告的預期讀者是:高等院校、中小學圖書館管理人員、程序設計人員、以及對圖書館管理系統感興趣的愛好者。2.2相關背景工程名稱:圖書館管理應用軟件工程產品名稱:高校圖書館管理系統應用軟件工程的組織者:西安科技大學計算機學院軟件工程系產品用戶:高校圖書館、中小學圖書館;產品的生產者:西安科技大學計算機學院軟件工程062班袁震;產品設計者:西安科技大學計算機學院軟件工程062班袁震;2.3可行性研究的前提本圖書管理系統在功能上要求完成以下基本功能:a).讀者、管理員登陸;b).借書;c).還書;d).續借;e).圖書掛失;f).歷史記錄查詢;g).新書入庫;h).讀者登記及修改個人信息;本系統在性能上力爭達到響應時間短,具有一定的容錯能力,力爭減少由用戶直接輸入數據,絕大多數據的輸入都用可以選擇的形式讓用戶進行選擇。本系統預計有如下輸出:4a).登陸成功顯示:成功則進入主界面;失敗則重新輸入;都要給出相應的提示;b).借書成功顯示:顯示借書是否成功,如成功,記錄插入數據庫,失敗說明錯誤原因,返回借書界面;c).還書成功顯示:顯示還書是否成功,如成功,修改數據庫多項記錄,失敗說明錯誤原因,返回主界面;d).續借成功顯示:顯示續借是否成功,如成功,修改數據庫記錄,失敗則說明錯誤原因,返回主界面;e).圖書掛失成功顯示:成功則提示用戶需要賠償的價錢,并禁止該用戶再借書,直到交了罰款為止;f).歷史記錄查詢:管理員可以查詢所有記錄,用戶只能查詢自己的借還書記錄;顯示這些記錄;g).新書入庫成功顯示:顯示新書入庫是否成功,成功則向數庫插入數據,失敗給出錯誤提示,返回主界面;h).讀者登記成功顯示:顯示讀者是否成功注冊,成功則向數據庫插入數據,失敗給出提示,返回主界面;i).修改個人信息成功顯示:顯示個人信息是否成功修改,成功則修改數據庫中的數據,失敗則給出錯誤提示,返回主界面;本系統預計有如下數據輸入:a).登陸系統時需要輸入用戶名和密碼,選擇用戶類型;用戶名、密碼、和用戶類型均為字符型;b).借書時需要選擇用戶編號和書的編號,均為字符型;c).還書時需要選擇用戶名和書的名字,均為字符型;d).續借時,需要選擇書的編號,為字符型;e).掛失時,需要選擇書的編號,為字符型;f).新書入庫時,需要輸入書的編號、名字、類別、價格、當前剩余藏書量、入庫日期;其中入庫時期為系統當前時間,價格為雙精度浮點型,當前剩余藏書量為整型,其余均為字符型;g).讀者登記時,需要輸入讀者的編號、名字、密碼、當前最大可借書量,當前狀態(0或1),0為未激活,1為激活;其中當前最大可借書量為整型,其余為字符型;h).修改個人密碼時,需要提供一次原密碼和兩次新密碼;均為字符型;本系統基本系統模型如圖2-1所示:圖書館管理員讀者圖書管理系統讀者事務事務處理結果圖1-1圖書管理系統基本系統模型通過圖1-1.,我們可以發現該系統的數據源是讀者和圖書館管理員;讀者處理的事務只有修改個人密碼、續借、圖書掛失,其余事務均由圖書館管理員來處理;數據終點是讀者,意味著所有處理最后都要由讀者確認,這種確認可以是某種操作,也可以是管理員的一句提示。本系統的完成期限為16天(即2008年12月22日到2009年1月7日)。2.4目標本圖書管理系統的主要開發目標為:a).實現圖書管理的便捷程度;b).在完成數據庫連接的基礎上,適當提高查詢速度和訪問效率;c).在完成基本功能的基礎上,減少代碼量,提高工作效率;2.5進行可行性研究的方法本系統可行性研究是通過走訪大學圖書館的方式進行的,通過走訪西安科技大學圖書館和陜西航天職5工大學圖書館,對兩校現有圖書管理系統進行調查、了解,分析得出本系統應實現的基本功能,本系統根據兩校圖書館管理系統進行相應的模仿的基礎上,添加了一些自己的功能。2.6評價尺度本系統在評價時應從以下幾個方面進行分析:開發時間要盡量短;各個功能實現代碼要盡量少;訪問數據庫的效率要盡量高;用戶使用過程中容錯能力要很強;2.7對現有系統的分析通過對西安科技大學圖書館管理系統的分析,由于該系統是專業軟件公司所為,基本上沒有什么太大的問題,就是有時候會出現響應時間過長的問題,原因可能是訪問數據庫效率過低,所以本系統著重提高訪問數據庫效率的問題,在功能上盡量模仿上述系統。因此有必要對現有系統進行修改。現有系統的主要工作為處理借還書,新書入庫,讀者登記,讀者信息修改,讀者掛失等業務。現有系統最大局限性就是響應時間過慢,數據存儲能力不足,由于使用時間很長,源代碼無法找到,所以需要對該系統進行重新設計,以適應社會的需要。2.8所建議使用的系統本圖書管理系統采用面向對象的分析方法進行分析,然后用面向對象的設計方法進行設計,最后用面向對象語言Java進行實現,后臺數據庫使用Oracle,連接方式為JDBC-ODBC。Java中GUI程序設計本身就是界面程序設計,用它設計出來的界面不但美觀,而且使用方便,使用者只需點幾次鼠標,就能根據提示進行正確的操作,實現了圖書管理的便捷程度;由于Java代碼重用性非常好,加上本系統部分代碼我可以用別的程序代碼稍微做一些修改就可以實現功能,因此可以實現降低代碼量的目的;Oracle數據庫是目前市場上通用數據庫之一,查詢速度本身就非常多,再加上我會在代碼中盡量避免多表連接查詢和處理語句的使用,所以可以真正起到提高查詢效率的目的。本系統局限性可能來自以下幾個方面:a).界面不美觀;b).部分功能無法實現;c).訪問效率很低;d).容錯性不夠;對于a),我覺得我們應該注意力放在功能及代碼的效率上,而不是去追求一個優秀的界面,對于界面,只要能看得過去就行;對于b),我盡量避免這個的發生,因為它是一個程序員水平的標尺,盡可能的用自己最大努力做出盡可能多的功能是我的目標;對于c),盡量減少多表連接操作的次數,應該就可以盡可能的提高訪問效率了。對于d),這個是需要大量測試才能發現的,由于時間關系,不可能把所有的情況考慮完全,只能盡可能多地去考慮周全點,盡可能的把所有問題都考慮到。2.9技術條件方面的可行性按照目前的技術水平,本系統的功能目標是可以達到的,該系統的功能是可以實現的,在規定的期限內,本系統可以開發完成。2.10法律方面的可行性由于這個系統只供學習研究使用,不涉及任何商業行為,因此,該系統從法律方面是可行的。2.11使用方面的可行性本圖書管理系統是為學校圖書館開發的,從學校圖書館日常流程的角度來看,是可以使用該軟件系統的;經過我們的調查,我們發現學校圖書館管理人員是有一定的計算機操作水平的,經過短期的培訓,是可以熟練掌握本系統的使用細則的。2.12結論由上面的內容我們可以得到如下研究結論:6本圖書館管理系統可以立即開始進行。3.需求規格說明書對軟件需求完全理解對于軟件開發工作的成功是至關重要的,需求說明的任務是發現、規范的過程,有益于提高軟件開發過程中的能見度,便于對軟件開發過程中的控制與管理,便于采用工程方法開發軟件,提高軟件的質量,便于開發人員、維護人員、管理人員之間的交流、協作,并作為工作成果的原始依據,并且在向潛在用戶傳遞軟件功能、性能需求,使其能夠判斷該軟件是否與自己的需求相關。3.1編寫目的為開發人員,維護人員,客戶之間提供共同的協議而創立基礎,對圖書館管理系統軟件功能的實現做一全面的描述;本說明書預期讀者為客戶、業務或需求分析人員、測試人員、文檔編寫者、項目管理人員;3.2任務概述本圖書管理系統僅供學習、研究之用,應用目標是讓使用該軟件的用戶感覺輕松、愉快的完成本系統的各個功能模塊,給以客觀公正的評價。本軟件的靈感來源于本人長期使用本校的圖書館管理系統,對其結構和功能有了一定的了解,所以就產生了自己模仿一個的想法。由于本軟件是模仿其他類似軟件開發的,所以只能供學習、研究之用。|本軟件終端用戶應該是圖書館管理人員,各個年齡層次的讀者。對于圖書館管理人員來說,應該對這個軟件的流程很熟悉,所以本軟件在設計時盡量追求可操作性和簡潔大方的人機界面的設計,力求盡量減少用戶直接輸入性東西,大量使用可選框。對于讀者,本軟件將為其設計更加方便的界面,盡量不使用直接輸入性信息,追求操作的最簡單化。由于本軟件只供學習和研究之用,所以不存在預期使用周期。3.3需求規定通過對學校圖書館管理系統的使用和跟有關人員的訪談,我初步認為該系統應該有以下功能約定:1).每個讀者最多在借數目為5;2).每種書只剩一本時,禁止外借;3).讀者編號是10位數字,初始密碼和編號相同,提示讀者修改密碼;4).管理員編號是5位數字,初始密碼和編號相同,提示管理員修改密碼;5).當讀者掛失圖書且未繳納罰款時,禁止該讀者借閱續借和掛失其他圖書,直到罰款交齊為止;6).盡可能多的用可選項代替文本框,減少人為輸入錯誤發生的概率;7).當可選項為編號時,為了方便查閱詳細信息,設置按鈕顯示其詳細信息;8).讀者界面應該顯示讀者當前在借圖書的詳細信息;9).為了方便讀者查詢,應該提供多種查詢圖書的方式;10).圖書掛失后,讀者應該繳納三倍書價的罰款作為賠償;11).修改密碼時,應提供原密碼作為驗證,兩次輸入新密碼;12).用戶登陸時,需根據用戶身份,進入各自的主界面;通過對以上功能約定的分析,我將這個系統分為以下11個模塊,它們分別是登陸模塊、添加管理員、讀者、書籍信息模塊、借書模塊、還書模塊、續借模塊、圖書掛失模塊、掛失處理模塊、修改個人密碼模塊、刪除操作記錄、讀者信息模塊,查詢圖書模塊等等。下面用IPO表分別寫出對上述模塊的功能要求進行定性和定量的敘述:1、登陸模塊:模塊名稱登陸模塊輸入數據用戶編號,密碼,級別處理過程調用數據庫數據進行驗證輸出數據無表3-1登陸模塊IPO表2、添加管理員與讀者模塊模塊名稱添加管理員和讀者模塊輸入數據新管理員編號和姓名處理過程編號唯一性驗證,向數據庫添加數據7輸出數據無表3-2添加管理員和讀者模塊IPO表3、添加書籍信息模塊模塊名稱添加書籍信息模塊輸入數據書條形碼號,書名,作者,分類,價格,數目處理過程編號唯一性驗證,向數據庫添加數據輸出數據無表3-3添加書籍信息模塊IPO表4、借書模塊模塊名稱借書模塊輸入數據讀者編號、書條形碼號處理過程驗證編號,向數據庫添加數據輸出數據無表3-4借書模塊IPO表5、還書模塊模塊名稱借書模塊輸入數據讀者編號、書條形碼號處理過程驗證編號,修改數據庫數據輸出數據無表3-5還書模塊IPO表6、續借模塊模塊名稱續借模塊輸入數據讀者編號、書條形碼號處理過程

溫馨提示

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

評論

0/150

提交評論