

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p> 課程名稱:軟件工程課程設計</p><p> 試題題目:圖書館管理系統</p><p><b> 目錄</b></p><p> 一.開發(fā)背景與目標......................................-1-</p><p> 1.1開發(fā)背景……………………………………
2、……………………1-</p><p> 1.2開發(fā)目標…………………………………………………………-2-</p><p> 二.需求分析說明書....................................-2-</p><p> 2.1圖書館管理系統介紹...............................-3-</p><
3、;p> 2.2圖書館管理系統面向的對象群體.....................-3-</p><p> 2.3圖書館管理系統的功能性需求.......................-3-</p><p> 2.4圖書館管理系統的非功能性需求.....................-4-</p><p> 2.5用戶界面需求..........
4、..........................-4-</p><p> 2.6軟硬件環(huán)境需求..................................-4-</p><p> 三.可行分析報告......................................-5-</p><p> 3.1技術方面可行性分析..............
5、.................-5-</p><p> 3.2經濟方面可行性分析...............................-5-</p><p> 3.3社會因素方面可行性分析...........................-6-</p><p> 3.4運行可行性分析...............................
6、....-6-</p><p> 3.5開發(fā)方案可行性分析.................................-6-</p><p> 3.6可行性結論........................................-7-</p><p> 四.開發(fā)環(huán)境與項目規(guī)劃..................................
7、-7-</p><p> 4.1開發(fā)環(huán)境...........................................-7-</p><p> 4.2項目規(guī)劃與管理.....................................-7-</p><p> 4.2.1開發(fā)人員安排..................................
8、.-7-</p><p> 4.2.2開發(fā)進度安排...................................-8-</p><p> 五.結構化分析與設計...................................-10-</p><p> 5.1數據流條目與數據字典................................-10-
9、</p><p> 5.2模塊結構............................................-12-</p><p> 5.3數據流程圖..........................................-13-</p><p> 六.面向對象分析設計................................
10、...-18-</p><p> 6.1系統的UML建模設計.................................-18-</p><p> 6.1.1UML簡介........................................-18-</p><p> 6.2該圖書館管理系統的用例分析........................
11、.-19-</p><p> 6.3、系統的順序圖.....................................-20-</p><p> 6.4、系統的狀態(tài)圖....................................................................-23-</p><p> 6.5、系統的活動圖...
12、.................................................................-24-</p><p> 6.6、圖書館管理系統的類圖...................................................-26-</p><p> 七.數據庫分析與設計..........................
13、........-29-</p><p> 7.1數據庫環(huán)境說明...................................-29-</p><p> 7.2數據庫概念結構設計...............................-29-</p><p> 7.2.1 任務與目標................................
14、..-29-</p><p> 7.2.2 各階段的結果................................-29-</p><p> 7.2.3各E-R圖中實體的屬性和聯系的屬性...........-31-</p><p> 7.3數據庫邏輯設計...................................-32-</p>
15、<p> 7.3.1邏輯設計的任務和目標.........................-32-</p><p> 7.3.2邏輯設計步驟與設計原則......................-33-</p><p> 7.4數據庫物理設計....................................-35-</p><p> 7.4
16、.1物理設計階段的目標與任務....................-35-</p><p> 7.4.2數據庫物理設計步驟.........................-35-</p><p> 八。人機界面設計....................................-37-</p><p> 8.1界面設計意義及任務..........
17、....................-37-</p><p> 8.2主界面設計......................................-37-</p><p> 九、項目系統實現....................................-39-</p><p> 9.1 實現環(huán)境與技術..................
18、...............-39-</p><p> 9.2 核心模塊實現技術代碼...........................-39-</p><p> 十。軟件測試分析報告.................................-54-</p><p> 10.1測試目的和原則............................
19、............................................54-</p><p> 10.2測試方法..................................................................................-54-</p><p> 10.2.1白盒測試.....................
20、..........................................................-54-</p><p> 10.2.2黑盒測試................................................................................-55-</p><p> 10.3測試步驟..........
21、...............................-55-</p><p> 10.4該軟件系統優(yōu)缺點及相關建議.......................-55-</p><p> 10.5該軟件測試的評價結果............................................................-56-</p><p
22、> 十一.軟件使用說明書...................................56-</p><p> 11.1軟件概述.........................................-56-</p><p> 11.2使用說明.........................................-57-</p>&l
23、t;p> 11.2.1系統登陸....................................-57-</p><p> . 11.2.2注冊.......................................-57-</p><p> 11.2.3 系統簡介....................................-57-</p>
24、;<p> 十二、課程系統開發(fā)評價................................-58-</p><p> 12.1.功能方面........................................-58-</p><p> 12.2.性能方面........................................-58-</p&
25、gt;<p> 12.3.課程知識運用方面................................-59-</p><p> 參考文獻..............................................-59-</p><p><b> 一·開發(fā)背景與目標</b></p><p>&
26、lt;b> 1.1 項目背景</b></p><p> 由于學校的不斷發(fā)展,學生不斷增多,學校圖書館的圖書品種、數量也在不斷的增多。以前的人工管理方式暴露出了很多問題。例如,學生想要借一本書,圖書管理人員還要花大量時間在茫茫書海中苦苦尋覓。浪費了大量寶貴的時間。學校為了提高工作效率,圖書管理包括的圖書和用戶借閱資料繁多,包含很多的信息數據的管理,現今,有很多的圖書管理系統都是初步開始使用,
27、甚至尚未使用計算機進行信息管理。以前對信息管理的主要方式是基于文本、表格等紙介質的手工處理,對于圖書借閱情況(如借書天數、超過限定借書時間的天數)的統計和核實等往往采用對借書卡的人工檢查進行,對借閱者的借閱權限、以及借閱天數等用人工計算、手抄進行。數據信息處理工作量大,容易出錯;由于數據繁多,容易丟失,且不易查找。總的來說,缺乏系統,規(guī)范的信息管理手段。</p><p> 盡管有的圖書館有計算機,但是尚未用于信
28、息管理,沒有發(fā)揮它的效力,資源閑置比較突出,這就是圖書管理系統開發(fā)所要解決的問題。基于這此問題,有必要建立一個圖書管理系統,使圖書管理工作規(guī)范化,系統化,程序化,避免圖書管理的隨意性,提高信息處理的速度和準確性,能夠及時、準確、有效的進行查詢和修改圖書情況等圖書管理操作。</p><p> 同時擺脫圖書管理人員在工作中出現的很多問題,現學校需要開發(fā)一個高校圖書館管理系統。</p><p>
29、; 1.2 項目目標及范圍</p><p> 學校圖書借閱管理系統主要的目的是實現圖書館的信息化管理。圖書館的主要業(yè)務就是圖書的借閱和歸還,因此系統最核心的功能便是實現圖書的借閱和歸還。此外,還需要提供圖書的信息查詢、讀者圖書借閱情況的查詢功能。項目實施后,能夠提高圖書館的圖書借閱、歸還流程,提高工作效率。整個項目需要在兩個月的時間內交付用戶使用。</p><p> 時間就是金錢,
30、效率就是生命。項目實施后,圖書館的每個業(yè)務流程所用時間縮短了2/3,所用人員減少了1/2,原來兩個人3分鐘可以完成的工作,現在只需1個人1分鐘就可以完成。極大的提高了效率,間接為學校節(jié)約了大量成本。所以要求系統具有良好的可操作性,數據穩(wěn)定性以及安全性,可以長期使用。</p><p><b> 二、需求規(guī)格說明書</b></p><p> 2.1、該圖書館管理系統的
31、介紹</p><p> 該圖書館管理系統本旨在為學校的圖書館管理人員提供一個可以方便管理庫存圖書的系統。可以對庫存圖書進行錄入、借還、查詢、修改功能。減少操作時間,提高工作效率。 該圖書館管理系統適用于一般規(guī)模的圖書館管理操作。</p><p> 2.2該圖書館管理系統面向的用戶群體</p><p> 用戶特點: 本系統的操作對象為高校的各位同學和教師還有圖
32、書管理人員。對用戶人員的計算機水平不需要很高的要求。該系統具有簡單易用的特點,用戶只需按照菜單功能行操作。</p><p> 2.3圖書館管理系統的功能性需求</p><p> 該系統有以下描述的功能</p><p> 錄入功能: 輸入相關數據</p><p> 瀏覽功能: 以列表方式列出所有記錄信息<
33、/p><p> 信息查詢功能: 根據書名匹配查詢,并將查詢結果列出</p><p> 借出歸還功能: 根據借出與歸還的書籍信息修改相應數據</p><p> 插入與刪除功能: 插入一條新的圖書信息,刪除某圖書的信息</p><p> 信息的備份與讀入功能:將輸入文件進行備份和從指定文件讀入數據</p><p&g
34、t; 設置訪問權限功能:只有輸入正確密碼才可以進行操作</p><p> 2.4圖書館管理系統的性能需求錯誤!未定義書簽。</p><p><b> 系統性能需求分析</b></p><p> *界面設計友好,美觀。</p><p> *數據存儲安全,可靠。</p><p> *信息
35、分類清晰,準確。</p><p> *強大的查詢功能,保證數據查詢的靈活性。</p><p> *實現對圖書借閱、續(xù)借和歸還過程的全程數據信息跟蹤。</p><p> *提供圖書借閱排行榜,為圖書館管理員提供了真實的數據信息。</p><p> *提供借閱到期提醒功能,使圖書管理員可以及時了解到已經到達歸還日期的圖書借閱信息。<
36、/p><p> *提供靈活、方便的權限設置功能,使整個系統的管理分工明確。</p><p> *具有易維護性和易操作性。</p><p> 2.5用戶界面需求</p><p> 界面設計友好,美觀。但是最重要的是要能夠讓用戶非常方便操作(如讀者可以方便的查閱,借閱書籍。圖書館管理員可以方便精準地記錄各圖書和讀者信息)。</p>
37、;<p> 2.6軟硬件環(huán)境需求</p><p> 1.用戶界面:在Windows XP界面運行</p><p> 2.硬件接口:普通PC機</p><p> 3.軟件接口:運行于裝有Windows XP的操作系統</p><p> 4.所需軟件:微軟的visio2010和word,VC++6.0</p>
38、<p><b> 三、可行性分析報告</b></p><p> 3.1技術方面的可行性 開發(fā)一個學校圖書借閱管理系統,涉及到的技術問題不會太多,主要用到的用軟件visio做出該系統的框架。visio是專門用于軟件的開發(fā) 的,可以用于制作流程圖,時序圖 ,用例圖,協作圖,狀態(tài)圖,活動圖等,還可以用于設計人機界面。而且還用軟件V-F編寫代碼設計該圖書館管理系統的數據庫。&l
39、t;/p><p> 系統現階段的發(fā)展過程中,利用現有人力和物力是完全具備的能力開發(fā)出來的,作為階段性產品,日后的發(fā)展空間大,實現方法逐步簡單容易,所以圖書館管理系統的技術上是完全可行的。</p><p> a. 在當前的限制條件下,該系統的功能目標能達到;</p><p> b. 利用現有的技術,該系統的功能能實現;</p><p> c
40、. 對開發(fā)人員的數量和質量的要求并說明這些要求因該能滿足;</p><p> d. 在規(guī)定的期限內,本系統的開發(fā)能完成</p><p> 3.2 經濟可行性分析</p><p> 本系統開發(fā)成本低,不需要特殊要求。經濟可行性即進行成本效益分析,評估項目的開發(fā)成本,估算開發(fā)成本是否會超過項目預期的全部利潤。開發(fā)學校圖書借閱管理系統提高了圖書管理人員的工作效率,節(jié)
41、約了學校的開支。因此,在經濟上是可行的。</p><p> 3.3社會因素方的可行性</p><p> 法律方面: 軟件服務條款要與中華人民共和國的法律解釋相一致,一致同意服從高等法院所有管轄。如發(fā)生軟件服務條款與中華人民共和國法律相抵觸時,則這些條款將完全按法律規(guī)定重新解釋,而其它條款則依舊保持對用戶產生法律效力和影響。本系統的開發(fā)不會侵犯他人、集體或國家的利益,不違背當地法律法規(guī)
42、。本軟件系統不對非管理人員公開用戶的具體信息,要想查詢必須要有用戶名和密碼。</p><p> 3.4運行可行性分析</p><p> 本系統可以滿足圖書館管理的要求,而且對使用本軟件人員的計算機水平要求不高,只需了解軟件操作流程就可以使用本軟件,無需培訓。</p><p> 3.5開發(fā)方案可行性分析</p><p> 該系統投資成本
43、小,使用方法簡單易懂。該系統有效地提高圖書館工作人員的工作效率,節(jié)約人力物力。同時可以根據用戶的特殊需要,增添功能。具有成本低,功能強大,使用靈活的特點。</p><p> 軟件的開發(fā)環(huán)境如下:</p><p> 用戶界面:在Windows XP界面運行。</p><p> 硬件接口:普通PC機。</p><p> 軟件接口:運行于裝
44、有Windows XP的操作系統</p><p> 所需軟件:微軟的visio2010和word,VC++6.0,v-f</p><p><b> 3.6可行性結論</b></p><p> 綜上所述,本工程的技術相當成熟、完備也比較完善,測試手段可靠,具有良好的市場拓展,技術上可行,經濟上可行,操作上可行,因此本工程可立即開始</
45、p><p> 四、開發(fā)環(huán)境與項目規(guī)劃</p><p><b> 4.1開發(fā)環(huán)境</b></p><p> 軟件的開發(fā)環(huán)境如下:</p><p> 用戶界面:在Windows XP界面運行。</p><p> 硬件接口:普通PC機。</p><p> 軟件接口:運
46、行于裝有Windows XP的操作系統</p><p> 所需軟件:微軟的visio2010和word,VC++6.0</p><p> 4.2項目規(guī)劃與管理</p><p> 4.2.1開發(fā)人員安排</p><p> 該軟件項目是由本組兩個成員設計開發(fā)的,劉靜著重設計了關于需求分析和面向對象那部分,楊寒培著重設計了可行性和關于數據
47、庫那部分。至于其他部分則基本上是由兩人協力完成的,期間我們不僅用了這學期新學的軟件工程中學到的知識還運用了數據庫和C語言C++中知識 ,查找了很多資料,也上互聯網了解了一些。雖然只有兩個人做這個軟件項目,但是我們兩個人都積極籌備合作過程非常愉快。</p><p> 4.2.2開發(fā)進度安排</p><p> 五、結構化分析與設計</p><p> 5.1數據
48、流條目與數據字典</p><p><b> 1) 數據流條目:</b></p><p> 登錄用戶=用戶名+密碼 </p><p> 讀者=編號+姓名+性別+學院+證件號碼 </p><p> 圖書信息=圖書編號+書名+作者+出版日期+出版社+單價價+所屬類型</p><p
49、> 借書信息=讀者編號+圖書編號+借書日期+到期日期+圖書名+作者</p><p> 還書信息=圖書編號+圖書編號+還書日期+圖書名+作者</p><p> 2) 數據字典(DD):</p><p><b> 5.2模塊結構圖</b></p><p> 圖1.圖書館管理系統模塊結構圖</p>
50、<p><b> 5.3數據流程圖</b></p><p> 圖2.圖書館借閱子系統流程圖</p><p> 圖5.第二層數據流圖</p><p> 圖6.第三層數據流圖(讀者借閱)</p><p> 圖7.第三層數據流圖(讀者還書)</p><p> 圖8.第三層數據流圖
51、(管理員讀者)</p><p> 圖9.第三層數據流圖(圖書的維護)</p><p> 圖10.第三層數據流圖(更改讀者信息)</p><p> 圖11.第三層數據流圖(更改管理員信息)</p><p> 六、面向對象分析與設計</p><p> 6.1系統的UML建模設計</p><p
52、> 6.1.1UML簡介</p><p> UML是一種功能強大的、面向對象的可視化系統分析的建模語言,它采用一整套成熟的建模技術,廣泛地適用于各個應用領域。它的各個模型可以幫助開發(fā)人員更好地理解業(yè)務流程,建立更可靠、更完善的系統模型。從而使用戶和開發(fā)人員對問題的描述達到相同的理解,以減少語義差異,保障分析的正確性.</p><p> 6.2該圖書館管理系統的用例分析</
53、p><p> 該圖書館管理系統的用例圖如下</p><p> 圖12:圖書館管理系統的用例圖</p><p> 從用例圖中我們可以看出管理員和讀者之間對本系統所具有的用例。</p><p> 管理員所包含的用例有:</p><p> 登錄系統:管理員可以通過登錄該系統進行各項功能的操作</p>&l
54、t;p> 書籍管理:包括對書籍的增刪改等。</p><p> 書籍借閱管理:包括借書、還書、預訂、書籍逾期處理和書籍丟失處理等等。</p><p> 讀者管理:包含對讀者的增刪改等操作。</p><p><b> 自動借書機的管理。</b></p><p> 讀者所包含的用例有:</p>&
55、lt;p><b> 登錄系統</b></p><p> 借書:進行借書業(yè)務。</p><p> 還書:讀者具有的還書業(yè)務。</p><p> 查詢:包含對個人信息和書籍信息的查詢業(yè)務</p><p> 預訂:讀者對書籍的預訂業(yè)務。</p><p> 逾期處理:就是書籍過期后的繳納
56、罰金等。</p><p> 書籍丟失處理:對書籍丟失后的不同措施進行處理。</p><p> 自動借書機的使用等。</p><p> 6.3、系統的順序圖</p><p> 順序圖是顯示對象之間交互的圖,這些對象是按時間順序排列的。該圖書館管理系統主要含有以下幾個重要的順序圖,其他對象的順序圖和這些也類似。</p>&l
57、t;p><b> 借書順序圖</b></p><p><b> 還書順序圖</b></p><p><b> 罰款順序圖</b></p><p><b> 借書順序圖</b></p><p> 圖13:圖書館管理系統借書順序圖</p&
58、gt;<p><b> 順序圖說明】</b></p><p> login():登錄系統。</p><p> checkstu_card():對讀者信息進行驗證,檢查是否符合本圖書館借書條件。</p><p> showinformation():顯示該讀者的基本信息函數。</p><p> bo
59、rrow():讀者借書函數。</p><p> getreaders():取得讀者信息函數??丛撟x者是否符合借書條件,若符合,則返回可借信息。</p><p> gettitle():取得書目信息。</p><p> getreservation():檢驗書籍是否被預訂函數。</p><p> getnoreservation():書
60、籍沒被預訂或取消預訂函數。</p><p> create(borrower,item):創(chuàng)建書籍外借函數。</p><p> 借書時,讀者先將書拿予管理員,管理員對書籍和讀者進行檢驗,若書籍和讀者都符合借書條件,則借書成功。</p><p><b> 還書順序圖</b></p><p> 圖14:圖書館管理系統
61、還書順序圖</p><p><b> 【順序圖說明】</b></p><p> login():登錄系統。</p><p> getitem():取得書籍條目信息。</p><p> update():對圖書館書籍條目和借閱者信息進行更新條目。</p><p> 還書時,讀者先將書交給管
62、理員,由管理員掃描書籍,若書籍沒有過期等違規(guī)現象,則對書目和讀者借閱信息進行更新,同時還書成功。</p><p><b> 罰款順序圖</b></p><p> 圖15:圖書館管理系統的罰款順序圖</p><p><b> 【順序圖說明】</b></p><p> 管理員對書籍進行掃描,若發(fā)
63、現書籍已經超過了圖書館規(guī)定的還書期限,則按每天一定金額進行罰款,過期天數和罰款金額由系統自動計算。用戶交完罰金后,則對讀者借閱信息進行更新。</p><p> 6.4、系統的狀態(tài)圖</p><p> 圖書館的書籍狀態(tài)圖如圖7所示。</p><p><b> 【狀態(tài)圖說明】</b></p><p> 書籍在未變成圖
64、書館在庫書籍時,為新加書籍狀態(tài)。書籍處于在庫狀態(tài)時既可以預訂也可以外借,外借后變?yōu)榻璩鰻顟B(tài)。處于預訂狀態(tài)時也可以外借,超出預訂時間期限則從預訂狀態(tài)直接轉為可用狀態(tài)。借閱者在規(guī)定的預訂時間內也可以考慮取消預訂,取消預訂后書籍的狀態(tài)轉為可用。外借書籍歸還后變?yōu)榭捎脿顟B(tài)。</p><p> 圖16:圖書館的書籍狀態(tài)圖</p><p> 6.5、系統的活動圖</p><p&
65、gt; 活動圖描述的是某流程中的任務的執(zhí)行,活動圖描述活動是如何協同工作的,當一個操作必須完成一系列事情,而又無法確定以什么樣的順序來完成這些事情時,活動圖可以更清晰地描述這些事情。。在本圖書館管理系統中,我們主要描述了圖書館系統的借書、還書和預訂的活動圖。</p><p><b> 1.借書活動圖</b></p><p><b> 【借書活動圖說明】
66、</b></p><p> 管理員首先要掃描讀者的借書證,檢驗證件是否符合圖書館借書條件,若該讀者的借書數量還未達到最大規(guī)定數量,并且其所借書籍均未屬于過期范圍,則符合借書條件。則再掃描書籍條形碼,檢查書籍是否是不可借書籍或者已經被預訂,若被預訂,則取消預訂,方可借書。在這些條件都符合時則更新書籍信息和讀者的借閱信息,記錄好借書的時間。</p><p> 圖17:圖書館管理
67、系統的借書活動圖</p><p><b> 2、還書活動圖</b></p><p><b> 【還書活動圖說明】</b></p><p> 圖書管理員對書籍進行掃描,若書籍已經過期,則要求讀者還請欠款才能還書,讀者繳應交罰款后,更新書目信息和讀者信息。</p><p> 圖18:圖書館管理系
68、統的還書活動圖</p><p> 6.6、圖書館管理系統的類圖</p><p><b> 【類圖說明】</b></p><p> reader類是借閱者的類,它的屬性很多,包括借閱者的賬戶ID(reader_id)、姓名(reader_Name)、地址(Address)、班級(class)、所借書籍的書目(borrowed)等。其中主要操
69、作有借書(addborrowed)和還書(deleteborrowed)和預訂(reservation)等。</p><p> admin類是管理員類,他有編號和姓名屬性,操作主要是書籍的增刪改和讀者的增刪改等等。</p><p> ?。?) Title 類是記錄書目信息的類,包括書籍的名字(name)、作者(author)、book_id等屬性。</p><p&g
70、t; (4) Item 類是具體某本書的類,屬性包括書籍號(id)。操作包括預訂(reserve)、按書目查找(find_on_title)等。</p><p> ?。?) borrow類是某本書的借閱信息類,包括所借閱書籍的ISBN、借閱的時間(date)等。</p><p> ?。?) Reservation類是預訂信息類,每個預訂信息包括預訂日期(date)、所預訂書籍的IS
71、BN、預訂書籍的用戶ID(UserID)等屬性。</p><p> (7) persistent store類是書籍永久的存儲類,在數據庫中的存儲數據,其他對與書籍有關的活動都要經過其存儲類。</p><p> 圖19:圖書館管理系統的類圖及關系</p><p> 七、數據庫分析與設計</p><p> 7.1數據庫環(huán)境說明&
72、lt;/p><p><b> 1)運行環(huán)境: </b></p><p> Windows 2000/XP/2003操作系統下,安裝并配置軟件Microsoft SQL Server 2000數據庫管理系統。</p><p> 2)所需硬件接口環(huán)境:普通PC機。</p><p> 3)所需軟件接口環(huán)境:運行于裝有Win
73、dows XP的操作系統</p><p> 7.2數據庫概念結構設計</p><p> 7.2.1 任務與目標</p><p> ?。?)選擇中層數據流為切入點,通常選擇實際系統中的子系統;</p><p> ?。?)設計分E-R圖,即各子模塊的E-R圖;</p><p> ?。?)生成初步E-R圖,通過合并方法,
74、做到各子系統實體、屬性、聯系統一;</p><p> ?。?)生成全局E-R圖,通過消除沖突等方面。</p><p> 在本圖書管理系統中,從第3層數據流程圖下手。分析各3層數據流圖和數據字典,知道整個系統功能圍繞“讀者”、“管理員”和“圖書”的處理。根據實體與屬性間的兩條準則:作為“屬性”,不能再具有需要描述的性質?!皩傩浴辈荒芘c其他實體具有聯系。數據流程圖2.4 、圖2.5、圖2.6
75、可綜合成借閱子系統的分E-R圖3.1,數據流程圖2.7可抽象為分E-R圖3.2,數據流程圖2.8可抽象為分E-R圖3.3,數據流程圖2.9可抽象為分E-R圖3.4。然后采用逐步集成的方式將各分E-R圖合并,消除不必要的冗余和沖突后就生成了基本E-R圖如圖3.5。</p><p> 7.2.2 各階段的結果</p><p> ?。?)根據不同的對象,從第3層數據流程圖入手,分別畫出各分E-
76、R圖:</p><p> (a)從數據流程圖圖(三) 與圖(四)抽象出的分E-R圖如下:</p><p> ?。╟)從數據流程圖圖(六)抽象出的分E-R圖:</p><p> (d)從數據流程圖圖(七)抽象出的分E-R圖:</p><p> ?。╡)從數據流程圖圖(八)抽象出的分E-R圖:</p><p> ?。?
77、)合并各分E-R圖,消除屬性沖突、命名沖突、結構沖突等三類沖突,得到初步E-R圖,再消除不必要冗余,得到的基本E-R圖如下所示:</p><p> 圖20.全局U-R圖</p><p> 7.2.3各E-R圖中實體的屬性和聯系的屬性</p><p> 各E-R圖各實體的屬性如下所示:</p><p><b> 圖書:<
78、/b></p><p> Book(BookID, BookNo, BookName, BookWriter, BookPublish, BookPrice, BookDate, BookClass, BookMain, BookPrim, BookCopy, BookState,BookRN)</p><p><b> 讀者:</b></p&
79、gt;<p> Reader(ReaID, ReaName, ReaSex, ReaNo, ReaLBID, ReaType, ReaDep, ReaGrade, ReaPref, ReaDate)</p><p><b> 管理員:</b></p><p> Maneger(MID, MName, MSex, Mpwd, MAuth,
80、 MTeleph, MAddre)</p><p><b> 館室:</b></p><p> Room(RoomNo,RoomMID,RoomNum,RoomAddre)</p><p><b> 讀者類別:</b></p><p> ReaderTpye(LBID, LBName,
81、 LBnum, LBbqx, LBqx)</p><p> 各E-R圖中聯系的屬性如下所示:</p><p> 借閱信息:Borrow (BookID,ReaderID,BookName,BookWriter, Outdate,YHdate)</p><p> 借閱歷史:History(BookID,ReaderID,BookName, BookWrite
82、r, Outdate,Indate)</p><p> 罰款信息:Fine(BookID,ReaderID,BookName, Outdate,Indate, Fine, CLState, MID)</p><p> 7.3數據庫邏輯設計</p><p> 7.3.1邏輯設計的任務和目標</p><p> 以上的概念設計階段是獨立于
83、任何一種數據模型的,但是邏輯設計階段就與選用的DBMS產品發(fā)生關系了,系統邏輯設計的任務就是將概念設計階段設計好的基本E-R圖轉換為選用DBMS產品所支持的數據模型相符合的邏輯結構。具體內容包括數據組織(將E-R圖轉換成關系模型、模型優(yōu)化、數據庫模式定義、用戶子模式設計)、數據處理(畫出系統功能模塊圖)兩大任務。</p><p> 7.3.2邏輯設計步驟與設計原則</p><p>
84、1)將E-R圖轉換為關系模型</p><p> 實體型轉換為關系模式。實體的屬性就是關系的屬性,實體的碼就是關系的碼。對于實體間的聯系則有以下不同的情況:一個m:n聯系轉換為一個關系模式。與該聯系相連的各實體的碼以及聯系本身的屬性均轉換為關系的屬性,而關系的碼為各實體碼的組合。</p><p> 一個1:n聯系可以轉換為一個獨立的關系模式,也可以與n端對應的關系模式合并。如果轉換為
85、一個獨立的關系模式,則與該聯系相連的各實體的碼以及聯系本身的屬性均轉換為關系的屬性,而關系的碼為n端實體的碼。 一個1:1聯系可以轉換為一個獨立的關系模式,也可以與任意一端對應的關系模式合并。三個或三個以上實體間的一個多元聯系可以轉換為一個關系模式。與該多元聯系相連的各實體的碼以及聯系本身的屬性均轉換為關系的屬性,而關系的碼為各實體碼的組合具有相同碼的關系模式可合并。</p><p> 由于讀者類別與讀
86、者、館室與圖書的聯系方式是1:n(一對多),可以將其之間的聯系與n端實體讀者、圖書合并,管理員與圖書之間的維護聯系也是1:n(一對多),同樣也將其之間的聯系與n端實體合并,而讀者與圖書之間的借閱和歸還聯系方式則是n:m(多對多),這樣要把它們之間的聯系轉化為獨立的關系模式,讀者與管理員之間的罰款聯系是m:n(多對多),將其聯系也轉化成獨立的關系模式,</p><p> 2)具體的基本E-R圖向關系模型轉化<
87、;/p><p> 具體的基本E-R圖向關系模型的轉化如下:</p><p><b> 圖書:</b></p><p> Book(BookID,BookNo,BookName,BookWriter,BookPublish,BookPrice,BookDate,BookClass,BookMain,BookPrim,BookCopy,BookS
88、tate,BookRNo)</p><p><b> 讀者:</b></p><p> Reader(ReaID,ReaName,ReaSex,ReaNo,ReaLBID,ReaType,ReaDep,ReaGrade,ReaPref, ReaDate)</p><p><b> 管理員: </b></p&g
89、t;<p> Maneger(MID,MName,MSex,Mpwd,MAuth,MTeleph,MAddre)</p><p><b> 讀者類別:</b></p><p> ReaderTpye(LBID, LBName, LBnum, LBbqx, LBqx)</p><p><b> 館室:</b&
90、gt;</p><p> Room(RoomNo,RoomMID,RoomNum,RoomAddre)</p><p><b> 借閱信息:</b></p><p> Borrow(BookID,ReaderID,BookName,BookWriter, Outdate,YHdate)</p><p><b&
91、gt; 借閱歷史:</b></p><p> History(BookID,ReaderID,BookName,BookWriter, Outdate,Indate,YHdate)</p><p><b> 罰款信息:</b></p><p> Fine(BookID,ReaderID,BookName,Outdate,In
92、date,Fine,CLState,MID) </p><p> ?。ㄗⅲ簶擞兄本€下劃線的為主屬性,標有波浪線下劃線的是外鍵屬性,主屬性與外鍵屬性一起構成主碼)</p><p> 7.4數據庫物理設計</p><p> 7.4.1物理設計階段的目標與任務</p><p> 數據庫的物理設計就是為邏輯數據模型選取一個最合適應用要求的物理
93、結構的過程,在這個階段中要完成兩大任務:</p><p> ?。?)確定數據庫的物理結構,在關系數據庫中主要是存取方法和存儲結構;</p><p> ?。?)對物理結構和功能進行評價,評價的重點是時間和空間效率。</p><p> 7.4.2數據庫物理設計步驟</p><p><b> 1)數據存儲方面</b>&l
94、t;/p><p> 為數據庫中各基本表建立的索引如下:</p><p> 由于基本表Reader,Book的主碼ReaID,BookID經常在查詢條件和連接操作的連接條件中出現,且它們的值唯一,在兩個屬性上建立唯一性索引;</p><p> 由于基本表Reader的屬性ReaDep,Book的屬性BookPublish經常在查詢條件中出現在兩個屬性上建立聚簇索引;
95、</p><p> 借閱信息基本表Borrow的一屬性ReaID,BookID,經常在查詢條件中出現,考慮在其之上建立聚簇索引;</p><p> 罰款信息基本表Fine的一屬性ReaID,BookID,經常在查詢條件中出現,考慮在其之上建立聚簇索引;</p><p><b> 2)系統功能模塊</b></p><p&
96、gt; (1)讀者基本信息的查詢和更新模塊</p><p> 將實現對讀者基本信息的查詢和更新(修改、添加、刪除)操作,用于新生入學,畢業(yè)生離校,以及讀者補辦借閱證或更改信息的情況,具體的功能模塊圖如下:</p><p> 圖21.查詢和更新模塊</p><p> 八、 人機界面設計</p><p> 8.1界面設計意義及任務&l
97、t;/p><p> 意義:人機界面是用戶與計算機交流的中間媒介,是用戶運行程序時的第一感覺,用戶只能通過顯示在屏幕上的人機界面了解并掌握運行整個系統,因此人機界面設計非常重要</p><p><b> 主要任務:</b></p><p> 必須對用戶的特性進行分析,對界面的功能進行任務分析(即建立任務模型),還要確定用戶界面的類型,并根據其特
98、點借助工具進行分析與設計〉</p><p><b> 8.2主界面設計</b></p><p> 圖書館管理系統的界面主要是面向用戶和管理員,如果是管理人員則可使用系統中所有的界面,如果是普通用戶(學生)則只能使用有限的幾個界面。根據系統結構的不同,下面對該系統中所需的主界面進行簡單的分析。</p><p> 1.登錄界面:該界面主要是
99、為了維護數據的安全,用于區(qū)分管理員和普通用戶(學生)。因此界面中必須有一個用于區(qū)分管理員和普通用戶的元素,復選框;還需要一個輸入密碼的文本框等。如下圖所示:</p><p> 2.管理界面:該界面主要用于管理員設置該圖書館的名稱。在打開該界面時要顯示已經添加的書的名稱,并能進行修改和刪除。因此該界面中可包含書列表框、以及館內書的增加、修改、刪除等的按鈕等。如下圖所示:</p><p>
100、 學生借書信息錄入界面:該界面主要用于錄入相應借書的學生信息。因此該界面應包含學號、姓名、借書的具體時間數量以及還書時間有無超期。如下圖所示:</p><p> 圖書的信息查詢界面:該界面主要用于查詢圖書的基本信息。因此該界面中必須包含 “檢索”功能,另外還可具體分一般檢索與高級檢索,并顯示檢索出來的圖書德具體情況。如下圖所示: </p><p><b> 九、項目系統實現&
101、lt;/b></p><p><b> 9.1 實現環(huán)境</b></p><p> 軟件項目實現的環(huán)境如下:</p><p> 用戶界面:在Windows XP界面運行。</p><p> 硬件接口:普通PC機。</p><p> 軟件接口:運行于裝有Windows XP的操作系統
102、</p><p> 所需軟件:微軟的visio2010和word,VC++6.0,v-f</p><p> 9.2 核心模塊實現技術代碼</p><p> 核心模塊實現技術代碼描述如下</p><p><b> 身份驗證</b></p><p><b> ·功能:驗
103、證身份</b></p><p><b> ·性能:</b></p><p><b> ·輸入項:預設密碼</b></p><p><b> ·輸出項:歡迎語句</b></p><p> ·算法: int keywor
104、d=111,a;</p><p> printf("Please input keyword:");</p><p> scanf("%d",&a);</p><p> if(a!=keyword) exit(0);</p><p> else printf("Welcome!
105、");</p><p> ·測試要求:運行正常。</p><p><b> 主菜單模塊</b></p><p><b> ·功能:選擇功能</b></p><p><b> ·性能:</b></p><p>
106、; ·輸入項:數字0-9</p><p> ·輸出項:對應功能項</p><p> ·算法: int Display_MainMenu() /*顯示菜單的函數*/</p><p><b> {char x;</b></p><p><b> do{</b>
107、</p><p> system("cls");</p><p> printf("************************\n");</p><p> printf("1.Create BookList\n");</p><p> printf("2.Di
108、splay All Books\n");</p><p> printf("3.Insert a BookInformation\n");</p><p> printf("4.Delete a Book\n");</p><p> printf("5.Borrow a Book\n");&
109、lt;/p><p> printf("6.Return a Book\n");</p><p> printf("7.Query\n");</p><p> printf("8.Add Records From a File\n");</p><p> printf("
110、;9.Write to a File\n");</p><p> printf("0.Goodbye\n");</p><p> printf("************************\n");</p><p> printf("Please choose from 0-9:")
111、;</p><p> printf("\n");</p><p> x=getchar();</p><p> }while(x<'0'||x>'9');</p><p> return(x-'0');</p><p><b&
112、gt; }</b></p><p> ·測試要求:運行正常。</p><p><b> 插入模塊</b></p><p><b> ·功能:插入新信息</b></p><p><b> ·性能:</b></p>
113、<p> ·輸入項:書名 數量</p><p><b> ·輸出項:成功提示</b></p><p> ·算法: Book *Insert(Book *head,Book *s) /*插入結點的函數*/</p><p> { Book *p0,*p1,*p2;</p>&l
114、t;p> p1=head;p0=s; </p><p> /*使p1指向第一個結點,p0指向要插入的結點*/</p><p> if(head==NULL) /*原來的鏈表是空表*/</p><p> {head=p0;p0->next=NULL;}
115、 /*使p0作為首結點*/</p><p> while(strcmp(p0->Name,p1->Name)>0&&(p1->next!=NULL))</p><p> {p2=p1; p1=p1->next;</p><p><b> }</b></p>
116、<p> if(strcmp(p0->Name,p1->Name)<=0)</p><p> {p0->next=p1;</p><p> if(head==p1) head=p0;</p><p> else p2->next=p0;</p><p><b> }</b>
117、;</p><p><b> else</b></p><p> {p1->next=p0;</p><p> p0->next=NULL;</p><p><b> }</b></p><p> return(head);</p><
118、;p><b> }</b></p><p> Book *Insert_a_record(Book *head)</p><p> { Book *newrecord;</p><p> newrecord=(Book *)malloc(LEN); /*動態(tài)分配存儲空間*/</p><p>
119、; scanf("%s%d",newrecord->Name,&newrecord->all);</p><p> newrecord->borrow=0;</p><p> newrecord->left=newrecord->all;</p><p> head=Insert(head,newre
120、cord);</p><p> printf("Insert successfully\n"); /*輸出插入成功的信息*/</p><p> return(head);</p><p><b> }</b></p><p> ·測試要求:運行正常。</p&g
121、t;<p><b> 刪除模塊</b></p><p><b> ·功能:刪除信息</b></p><p><b> ·性能:</b></p><p><b> ·輸入項:所刪書名</b></p><p>
122、;<b> ·輸出項:成功提示</b></p><p> ·算法: Book *Delete(Book *head,char *name)</p><p> { Book *p1,*p2;</p><p> if(head==NULL)</p><p> printf("Sor
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 軟件工程課程設計---圖書館管理系統
- 軟件工程課程設計--圖書館管理系統
- 軟件工程課程設計之圖書館管理系統
- 軟件工程課程設計實驗報告--圖書館管理系統
- 《軟件工程》課程設計--基于uml的圖書館管理系統設計
- 軟件課程設計--圖書館管理系統
- 軟件工程綜合課程設計報告--基于uml的圖書館管理系統
- 軟件工程圖書館管理系統
- 軟件工程課程設計--圖書管理系統
- 軟件工程課程設計---圖書管理系統
- 軟件工程課程設計--圖書借閱管理系統
- 軟件工程課程設計--圖書借閱管理系統
- 圖書館管理系統課程設計
- 課程設計--圖書館管理系統
- 圖書館管理系統課程設計
- c語言圖書館管理系統課程設計---高校圖書館管理系統
- 軟件工程課程設計-- 圖書分銷系統
- 圖書管理系統軟件工程課程設計
- 圖書管理系統軟件工程課程設計
- 圖書館管理系統課程設計報告
評論
0/150
提交評論