版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、 軟件工程課程圖書館管理系統(tǒng)圖書管理系統(tǒng)組長:楊曉華組員:巴雅爾圖、那日蘇、張?zhí)?、牛莉、楊宇婷作業(yè)提交日期:二一五年十月3三十日15作者簡介組長:楊曉華 學號:120714241 學院:經(jīng)濟管理學院組員:巴雅爾圖 學號:110412185 學院:生態(tài)環(huán)境學院 那日蘇 學號:111710874 學院:獸醫(yī)學院 張?zhí)?學號:120714242 學院:經(jīng)濟管理學院 牛莉 學號:120714767 學院:經(jīng)濟管理學院 楊宇婷 學號:120715553 學院:經(jīng)濟管理學院圖書管理系統(tǒng)摘要簡單介紹了圖書管理系統(tǒng)數(shù)據(jù)庫的設(shè)計和系統(tǒng)功能的實現(xiàn)過程。該系統(tǒng)是運行在學校網(wǎng)絡(luò)上的網(wǎng)絡(luò)圖書管理系統(tǒng),由圖書編目,圖書管
2、理,讀者管理,資料管理, Web查詢等幾個子系統(tǒng)組成,實現(xiàn)了圖書資料的計算機網(wǎng)絡(luò)管理和Web查詢功能。計算機技術(shù)的迅猛發(fā)展,特別是隨著網(wǎng)絡(luò)技術(shù)的出現(xiàn)標志著信息時代已經(jīng)來臨。信息化浪潮、網(wǎng)絡(luò)革命在給社會帶來沖擊的同時,也使圖書館業(yè)務(wù)受到了強烈的沖擊,圖書館傳統(tǒng)的管理和服務(wù)方式已不能適應讀者對日益增長的文獻信息的需求,建設(shè)圖書館信息網(wǎng)絡(luò)系統(tǒng),是圖書館現(xiàn)代化建設(shè)的客觀要求。建設(shè)以計算機為核心的圖書館信息網(wǎng)絡(luò),實現(xiàn)圖書館管理和服務(wù)的自動化,更好地為科技工作服務(wù),是圖書館發(fā)展的必由之路。目前,國內(nèi)大部分高校圖書館都實現(xiàn)了網(wǎng)絡(luò)管理,目前圖書館都在在朝著這個方向發(fā)展。關(guān)鍵詞:圖書, 網(wǎng)絡(luò), 數(shù)據(jù)庫,管理系統(tǒng)
3、, VC一、 系統(tǒng)可行性分析1.總體功能設(shè)計根據(jù)高校圖書館的實際情況和校園網(wǎng)網(wǎng)的現(xiàn)狀,我們確定了網(wǎng)絡(luò)圖書系統(tǒng)應該具備8個方面的功能,它們是圖書編目,圖書采購,圖書管理,讀者管理,標準管理,資料管理,系統(tǒng)維護,Web查詢。其中Web查詢是該系統(tǒng)突出的特點,它的實現(xiàn)是因為有學校校園網(wǎng)的支持。系統(tǒng)組成和功能框圖見圖1。 圖書出版社位置書名書號ISBN數(shù)量作者價格出版社圖2 業(yè)務(wù)流程圖 讀者編號地址姓名性別圖3 讀者出版社電話名字地址聯(lián)系人圖4 出版社管理員生日名字地址性別編號圖5 管理員讀者號借書日期書號管理員號還書日期借閱圖6 借閱圖書圖7 借閱關(guān)系表1 讀者信息說明讀者信息系統(tǒng)名高校圖書系統(tǒng)別名
4、無描述每一位讀者具體信息定義讀者信息=讀者學號+姓名+學院+專業(yè)+年級位置讀者目錄文件簡要說明:學號是學生唯一識別碼修改記錄: 編寫: 日期:表2 圖書信息說明圖書信息系統(tǒng)名高校圖書系統(tǒng)別名無描述每一本圖書的詳細信息定義圖書信息=分類目錄號+流水號+書名+作者+內(nèi)容摘要+價格+購書日期位置圖書目錄文件簡要說明圖書條形碼是圖書唯一識別信息修改記錄: 編寫: 日期:表3 借書信息說明借書信息系統(tǒng)名高校圖書系統(tǒng)別名無描述每一本所借圖書的具體信息定義借書信息=讀者學號+流水號+圖書分類號+借閱日期+歸還日期位置借書文件簡要說明所借圖書條形碼是圖書唯一識別信息修改記錄: 編寫: 日期:Web查詢功能應該
5、能夠查詢圖書,期刊和讀者等信息,因此我們在查詢系統(tǒng)中設(shè)計了以下主要功能:圖書查詢、期刊查詢、讀者信息查詢,圖書推薦。“圖書查詢”主要查詢在圖書庫中現(xiàn)有的資料,讓用戶了解是否有其需要的圖書、有哪些圖書,它包括按書名查詢圖書、按索書號查詢和按作者查詢圖書等?!捌诳樵儭敝饕樵兤诳那闆r,包括按刊名查詢出版物信息、按索書號查詢連續(xù)出版物信息和按編輯部查詢連續(xù)出版物信息等?!白x者信息查詢”主要查詢讀者的圖書借閱情況,包括讀者借閱記錄查詢和讀者超期借閱記錄查詢等?!皥D書推薦”是讓讀者推薦圖書,作為工作人員采購新書的參考。二、 需求分析1.運行環(huán)境規(guī)定聯(lián)網(wǎng)的微型計算機立足于校園實際,建成符合標準化協(xié)議、
6、通用性較強、實用的系統(tǒng),以提高圖書信息的現(xiàn)代化管理水平,實現(xiàn)信息資源的共享。圖書管理系統(tǒng)是一 種基于集中統(tǒng)一規(guī)劃的數(shù)據(jù)庫數(shù)據(jù)管理新模式。在對圖書、讀者、出版社信息的管理,其實是對圖書、讀者數(shù)據(jù)出版社信息的管理。本系統(tǒng)的建成無疑會為管理者對圖書管理系統(tǒng)提供極大的幫助。使用該系統(tǒng)之后,圖書館管理人員可以管理讀者的登記、圖書的購入、借出、歸還以及注銷、圖書歸還中的問題;還可以查詢某位讀者、某本圖書的借閱情況,對當前借閱情況給出一些統(tǒng)計,給出統(tǒng)計表格,以全面掌握圖書的流通情況,還可以根據(jù)圖書類別查詢圖書,可以查詢出版社的信息,以及某出版社的圖書在本校的借閱情況和平均價錢等信息。 圖書管理系統(tǒng),最主要處
7、理兩個過程,借書與還書。借書之前先看看是不是有借書的資格。還書時,檢查一下書是否過期等如有進行相關(guān)的處理。其他的一些功能主要是圍繞這兩個功能展開。圖書模塊的功能應包括:圖書信息的添加、刪除、修改、編輯、并可以根據(jù)圖書類別查詢圖書。管理員,出版社等信息查詢與圖書相類似。用vc作為前臺的開發(fā)工具,定義Cdatabase、CRecordset建立與數(shù)據(jù)庫的連接。要求應前臺用程序和后臺數(shù)據(jù)庫在數(shù)據(jù)類型方面要統(tǒng)一,否則會出現(xiàn)插入和更新異常等,導致系統(tǒng)異常,不利于使用。本系統(tǒng)的宗旨是提高圖書管理工作的效率,減少相關(guān)人員的工作量,使學校的圖書管理工作真正做到科學、合理的規(guī)劃,系統(tǒng)、高效的實施三、系統(tǒng)設(shè)計1.
8、總體設(shè)計運行系統(tǒng):Linux,Unix,Windows2000、WindowsXP及其以上操作系統(tǒng)。2.功能(1)圖書編目子系統(tǒng):實現(xiàn)編目處理、查重、館藏管理等功能。其中編目處理包括原始編目、書目記錄、數(shù)據(jù)維護、各類輸出等項;館藏管理包括館藏數(shù)據(jù)維護、丟剔處理、館藏統(tǒng)計、報表輸出等項。(2)圖書采購子系統(tǒng):實現(xiàn)預訂查詢、新書訂購、驗收記到、資金管理、統(tǒng)計報表處理等功能。(3)圖書流通子系統(tǒng):實現(xiàn)出納管理、讀者管理、查詢及統(tǒng)計打印功能模塊。其中出納管理包括借書、還書、續(xù)借、預約、罰款等項;讀者管理包括讀者登記、借書證掛失、讀者數(shù)據(jù)維護等項;查詢包括是查書去向、查讀者借書情況、查總體借還情況等;統(tǒng)
9、計打印則是打印圖書借閱和讀者情況的統(tǒng)計報表以及打印催還單等。(4)期刊管理子系統(tǒng):實現(xiàn)期刊查缺、采購、編目、記到、典藏、流通、統(tǒng)計等功能。(5)標準管理子系統(tǒng):實現(xiàn)期刊查缺、采購、編目、記到、典藏、流通、統(tǒng)計等功能。(6)資料管理子系統(tǒng):實現(xiàn)資料查缺、采購、編目、記到、典藏、流通、統(tǒng)計等功能。(7)系統(tǒng)維護子系統(tǒng):實現(xiàn)操作員庫、讀者庫、單位庫維護,權(quán)限設(shè)置等功能。(8)Web查詢子系統(tǒng):實現(xiàn)網(wǎng)上查詢(圖書、期刊查詢和讀者查詢)、讀者薦書、意見反饋等功能。圖8 系統(tǒng)結(jié)構(gòu)圖四、詳細設(shè)計1.算法設(shè)計圖9 工作人員流程圖圖10 普通學生流程圖圖11 借閱者流程圖2.數(shù)據(jù)庫設(shè)計在圖書管理系統(tǒng)中,數(shù)據(jù)庫設(shè)
10、計占有重要位置,數(shù)據(jù)庫設(shè)計質(zhì)量的優(yōu)劣,可直接影響到數(shù)據(jù)庫數(shù)據(jù)的冗余度、數(shù)據(jù)的一致性、數(shù)據(jù)丟失等問題。圖書管理系統(tǒng)數(shù)據(jù)庫常常要設(shè)計含有如下數(shù)據(jù)項:借書證號、姓名、單位、館藏號(館藏號為每本書上的條形碼號)、書名、分類號、作者、價格等。下面以圖書流通模塊所涉及的數(shù)據(jù)庫為例來說明模式的設(shè)計。先設(shè)計圖書流通的實體關(guān)系圖(E-R圖)。E-R圖由3個相關(guān)聯(lián)的部分構(gòu)成,即實體、實體與實體之間的關(guān)系以及實體和關(guān)系的屬性。圖書流通過程中實體“圖書”與“讀者”之間的關(guān)系是借閱和被借閱的關(guān)系,實體“讀者”與“單位”之間的關(guān)系是屬于和被屬于的關(guān)系,“圖書”的屬性有“館藏號” ,“書名” ,“分類號” 、“作者” 、“
11、價格” ,“讀者”的屬性有“借書證號” 、“姓名” 、“性別” ,“單位”的屬性有“單位編號”和“單位名稱” ,“借閱”屬性“借書日期” ,由此得出E-R圖如圖4。3.概念設(shè)計圖 書讀 者借閱借閱時間館藏號書名分類號作者價格學號姓名性別 圖書流通的E-R圖屬于單 位單位名稱單位編號圖12 圖書流通的E-R圖4.邏輯設(shè)計(1)導出初始關(guān)系模式book(圖書編號#,入庫時間,圖書名稱,作者,出版社,出版日期,價格,數(shù)量,圖書狀態(tài))bookuser(借閱者的圖書證號#,學號,姓名,性別,出生年月,民族,系別)worker(用戶名,密碼)borrow(圖書編號#,圖書名稱,借閱者姓名,借閱數(shù)量,借閱時
12、間,歸還時間,過期天數(shù),歸還標志位)(2)產(chǎn)生子模式子模式是用戶所用到的那部分數(shù)據(jù)的描述。除了指出用戶用到的數(shù)據(jù)外,還應指出數(shù)據(jù)與概念模式中相應數(shù)據(jù)的聯(lián)系,即指出概念模式與子模式之間的對應性。借書子模式(借閱者的圖書證號群,姓名,圖書編號#,圖書名稱,借閱時間)五、實現(xiàn)與測試1.控制臺應用程序a.日期結(jié)構(gòu),包含有年、月、日,以及減法與小于號的重載struct Dateint m_year;int m_moth;int m_day;int operator (const Date&d)int days=365*(m_year-a. m_year);days+=30*(m_moth-d.m
13、_moth)+m_day-d.m_day;return days;BOOL operator <(const Date& d)if(*this-d<0)return TRUE;return FALSE;b.讀者結(jié)構(gòu),包含有姓名、借書證號、性別與類別,小于號的重載struct ReaderCString m_name;CString m_certificateNo;BOOL m_sex;/1-male,0-femaleint m_type;/0-student,1-graduate,2-teacherBOOL operator <(Reader &r)if(m_
14、type<r.m_type)return TRUE;if(m_certificateNo<r.m_certificateNo)return TRUE;if(m_name<r.m_name)return TRUE;if(m_sex<r.m_sex)return TRUE;return FALSE;c. CBooks類class CBooks : public CObject DECLARE_SERIAL(CBooks)public:CString m_serialNumber;/編號CString m_category;/類別CString m_title;/書名CStr
15、ing m_auther;/作者CString m_press;/出版社Date m_publicDate;/出版日期double m_price;Date m_purchaseDate;/購書時間Reader m_lender;/借閱者Date m_lendDate;/借書日期Date m_returnDate;/還書日期CBooks();virtual CBooks();void Serialize(CArchive&ar);CBooks類具有所需要的數(shù)據(jù)成員外,需要注意到首先,它是由CObject派生的,CObject是絕大部分MFC類的基類;其次,類中有一個宏DECLARE_S
16、ERIAL(CBooks),其作用就是為了實現(xiàn)文件的序列化與類的動態(tài)創(chuàng)建。相應的,在此類的實現(xiàn)文件中必定要有宏IMPLEMENT_SERIAL(CBooks,CObject,1)。最后,CBooks應重載CObject虛擬函數(shù)Serialize(CArchive&ar)。CBooks類的實現(xiàn)文件類似于:IMPLEMENT_SERIAL(CBooks,CObject,1)CBooks:CBooks()m_price=0.0;m_lender.m_sex=TRUE;m_lender.m_type=2;m_publicDate.m_year=0;m_publicDate.m_moth=0;m
17、_publicDate.m_day=0;m_lendDate.m_year=0;m_lendDate.m_moth=0;m_lendDate.m_day=0;m_returnDate.m_year=0;m_returnDate.m_moth=0;m_returnDate.m_day=0;m_purchaseDate.m_year=0;m_purchaseDate.m_moth=0;m_purchaseDate.m_day=0;CBooks:CBooks()void CBooks:Serialize(CArchive&ar)if(ar.IsStoring()ar<<m_ser
18、ialNumber<<m_category<<m_title<<m_auther<<m_press<<m_price;ar<<m_lender.m_name<<m_lender.m_certificateNo<<m_lender.m_sex<<m_lender.m_type;ar<<m_publicDate.m_year<<m_publicDate.m_moth<<m_publicDate.m_day;ar<<m_lendDate.m_ye
19、ar<<m_lendDate.m_moth<<m_lendDate.m_day;ar<<m_returnDate.m_year<<m_returnDate.m_moth<<m_returnDate.m_day;ar<<m_purchaseDate.m_year<<m_purchaseDate.m_moth<<m_purchaseDate.m_day;elsear>>m_serialNumber>>m_category>>m_title>>m_authe
20、r>>m_press>>m_price;ar>>m_lender.m_name>>m_lender.m_certificateNo>>m_lender.m_sex>>m_lender.m_type;ar>>m_publicDate.m_year>>m_publicDate.m_moth>>m_publicDate.m_day;ar>>m_lendDate.m_year>>m_lendDate.m_moth>>m_lendDate.m_day;ar>
21、;>m_returnDate.m_year>>m_returnDate.m_moth>>m_returnDate.m_day;ar>>m_purchaseDate.m_year>>m_purchaseDate.m_moth>>m_purchaseDate.m_day;2.建立管理圖書的類首先建一個基類class CManagerCObArray m_list;public:void AddTail(CBooks*pBook);/在鏈表尾部放書籍void AddHead(CBooks*pBook); /在鏈表頭部放書籍void A
22、dd(CBooks*pBook,int index);/將書籍放到index處void Delete(int index);/刪除index處的書籍void Fit(int index);/修改index處的書籍CBooks* GetBook(int index);/獲取index出的書籍CManager();virtual CManager();virtual int Find(void*para,CobArray&list);virtual void Delete (void*para);viraul void Sort();void Serialize(CArchive&
23、ar);friend ostream & operator <<(ostream& os,CManager &mg);其實現(xiàn)文件類似于CManager:CManager()CManager:CManager()int num=m_list.GetSize();for(int i=0;i<num;i+)CBooks*p=(CBooks*)m_listi;delete p;m_list.RemoveAll();void CManager:Serialize(CArchive&ar)m_list.Serialize(ar);void CManager
24、:Delete (void*para)void CManager:Sort()int CManager:Find(void*para,CobArray&list)return 1;CManagerTitle:public CManagerpublic:CManager* m_pParent;CManagerTitle();int Find(void*para,CobArray&list);void Delete (void*para);void Sort();:CManagerTitle:CManagerTitle():m_pParent(0)int CManagerTitle
25、:Find(void*para,CobArray&list)if(!m_pParent)return;CString*pStr= (char*)para;int i,value=-1,num=m_pParent->m_list.GetSize();for(i=0;i<num;i+)CBooks*p=(CBooks*) m_pParent->m_listi;if(p->m_title=pStr)list.Add(p);if(value<0)value=i;return value;void CManagerTitle:Delete (void*para)if(!m_pParent)return;CString pStr= (char*)para;int i=0;while(i< m_pParent->m_list.GetSize()CBooks*p=(CBooks*) m_pParent->m_listi;if(p->m_title=pStr)delete p;m_pParent->m_list.RemoveAt(i);elsei+;void CManagerTitle:Sort() if(!m_pParent)return;int i,jfor(i=0;i<num
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年蓄水池施工勞務(wù)合同范本
- 廢紙采購合同2024年
- 工業(yè)商品交易合同范例
- 房屋買賣合同協(xié)議書撰寫指南
- 2024年門衛(wèi)值班人員聘用合同協(xié)議
- 個人借款延期還款協(xié)議書范例
- 工廠土地轉(zhuǎn)讓合同樣本
- 產(chǎn)品加工項目合作協(xié)議書范本
- 2024年勞務(wù)合同與勞務(wù)協(xié)議書
- 合同范本編寫指南
- 私立醫(yī)院藥房述職報告
- 高血壓與生活方式的干預
- JJG 633-2024氣體容積式流量計
- 美國總統(tǒng)大選與民主課件
- 40篇短文搞定高中英語3500單詞
- 牙周病科普講座課件
- 經(jīng)皮椎體成形術(shù)護理-查房
- 人教版六年級上冊數(shù)學數(shù)學期末應用題訓練(含簡單答案)
- 動物園服務(wù)方案
- nutric評分方法及意義
- 供水巡查管理制度
評論
0/150
提交評論