案例4圖書管理系統設計

2021-03-04 09:21:07 字數 4856 閱讀 9800

本章利用delphi 7和sql server 2000設計開發乙個簡單的圖書館管理系統。儘管本章的示例與實際的圖書管理系統差距甚大,資料庫及系統功能都不完善,但該示例使大家對資料庫應用系統開發有乙個整體了解,通過學習和靈活運用相關的知識,讀者就可以開發出功能強大的資料庫應用系統。

資料庫應用系統開發的第一步是系統分析。這期間,要對使用者進行反覆的調查、分析和彙總,將結果用資料流程圖和資料字典表示,得出系統對資料和功能的需求。資料庫應用系統開發的第二步是系統設計,其主要任務是確定系統的實現方法和工作環境,確定系統功能及結構,進行資料庫的設計。

通過對現行圖書管的業務進行調查,明確了圖書管工作由對圖書管理、對讀者管理、借書服務和還書服務四部分組成。使用者對現有系統的描述如下。

(1)圖書管理

1)對館內的所有圖書按類別統一編碼;對各類圖書要建圖書登記卡,卡上登記著圖書的主要資訊。

2)新購的書要編碼和建卡,對遺失的書要銷毀其圖書登記卡卡。

(2)讀者管理

1)建立讀者資訊表,對讀者統一編號。

2)對新加盟的讀者,將其資訊加入到讀者資訊表中;對某些特定的讀者,將其資訊從讀者資訊表中刪除。

3)當讀者情況變化時,修改讀者資訊表中相應的記錄。

(3)借書服務

1)未借出的圖書要按類別上架,供讀者檢視。

2)建立借書登記卡,卡上記錄著書號、讀者姓名和編號、借書日期;將借書登記卡按讀者單位、讀者編號集中保管。

3)讀者提出借書請求時,先檢視該讀者的借書卡,統計讀者已借書的數量。如果該讀者無借書超期或超量情況,則辦理借書手續。

4)辦理借書手續的方法是:填寫借書登記卡,管理管核實後可將圖書帶走。

(4)還書服務

1)讀者提出還書要求時,先對照相應的借書卡,確認書號和書名無誤後可辦理還書手續。

2)辦理還書手續方法是:在借書卡上填寫還書時間,管理員簽名;將已還的借書卡集中保管;收回圖書。

3)將收回的圖書上架,供讀者檢視和借閱。

經過詳細的調查,我們弄清了系統現行的業務流程。在此基礎上,構造出系統的邏輯模型,並通過資料流程圖表示。圖5-1是圖書館管理系統的頂層資料流程圖。

在圖書館管理系統頂層資料流程圖中,「內部管理」和「借書管理」兩個處理框所表示的功能都太複雜,對它們進一步細化後得出第二層資料流程圖。如圖5-2是對「內部管理」細化的流程圖。

圖5-2中,將內部管理分為圖書管理和讀者管理兩個子處理框。實際上還可以將它們繼續細分,圖書管理分為新書處理和圖書記錄維護兩個下級處理框,而讀者管理也可以分為新讀者入戶和讀者記錄維護兩個下級處理框。

「借書管理」處理框中包括「借書處理」、「還書處理」和「檢視書目」三個子處理框,其細化流程圖如圖5-3所示。

經過整理後得出細化後的系統資料流程圖,如圖5-4所示。

圖書館管理系統資料流程圖中,資料資訊和處理過程需要通過資料字典才能描述清楚。在我們定義的圖書館管理系統資料字典中,主要對資料流程圖中的資料流、資料儲存和處理過程進行說明。

(1)主要的資料流定義

1)資料流名稱:圖書情況

位置:圖書→p1.1,圖書→p2.3

定義:圖書情況=類別+出版社+作者+書名+定價+完好否

資料流量:平均流量為每月傳輸的1000次數,高峰期流量每天傳輸的100次數。

說明:圖書入庫時,根據圖書情況建立圖書記錄;讀者還書時要核實圖書基本資訊是否與圖書記錄相符,要檢查圖書是否完好。

2)資料流名稱:讀者情況

位置:讀者→p1.2

定義:讀者情況=姓名+單位+性別+**

資料流量:平均流量為每年傳輸的8000次數,高峰期流量每天傳輸的1000次數。

說明:根據讀者情況建立讀者記錄。

3)資料流名稱:管理員情況

位置:管理員→p3

定義:管理員=使用者名稱+口令

資料流量:平均流量為每年傳輸的100次數,高峰期流量每天傳輸的10次數。

說明:通過管理員的使用者名稱和口令鑑別使用者身份。

4)資料流名稱:使用者身份

位置:p3→

定義:使用者身份=[ 非法使用者 | 內部管理員 | 服務管理員 ]

資料流量:平均流量為每天傳輸的2000次數,高峰期流量每時傳輸的100次數。

說明:不同的使用者身份進入的處理過程不同。

5)資料流名稱:借書請求

位置:讀者→p2.1

定義:借書請求=類別|書名

資料流量:平均流量為每天傳輸的1000次數,高峰期流量每時傳輸的300次數。

說明:通過書名和類別查詢庫中的圖書,其中書名為模糊查詢。

6)資料流名稱:還書請求

位置:讀者→p2.3

定義:還書請求=讀者+圖書情況

資料流量:平均流量為每天傳輸的1000次數,高峰期流量每時傳輸的300次數。

說明:確認圖書正確和完好後,刪除借書記錄。

7)資料流名稱:圖書資訊

位置:p2.1→p2.2

定義:圖書資訊=輸入書號+和讀者編號

資料流量:平均流量為每天傳輸的1000次數,高峰期流量每時傳輸的250次數。

說明:借書時需要輸入書號和讀者編號,以確定讀者和圖書。

(2)主要的資料儲存定義

1)資料儲存編號:d1

資料儲存名稱:圖書記錄

輸入:p1.1

輸出:p2.1,p2.2,p2.3

資料結構:圖書記錄=書號+類別+出版社+作者+書名+定價+借出否

資料量和訪問頻度:資料量為250000條;訪問頻度為每天1000次。

訪問方式:聯機處理;檢索和更新;主要是隨機檢索。

說明:書號具有唯一性和非空性。

2)資料儲存編號:d2

資料儲存名稱:讀者記錄

輸入:p1.2

輸出:p2.2,p2.3

資料結構:讀者記錄=編號+姓名+單位+性別+**

資料量和訪問頻度:資料量為15000條;訪問頻度為每天500次。

訪問方式:聯機處理;主要是檢索處理;以隨機檢索為主。

說明:編號具有唯一性和非空性,性別只能是「男」或「女」。

3)資料儲存編號:d3

資料儲存名稱:借書記錄

輸入:p2.2

輸出:p2.2,p2.3

資料結構:借書記錄=書號+讀者編號+借閱日期

資料量和訪問頻度:資料量為50000條;訪問頻度為每天1000次。

訪問方式:聯機處理;以更新操作為主;隨機檢索;

說明:讀者編號是外碼,參照表為「讀者. 編號」;書號是外碼,參照表為「圖書.書號」;借閱日期為新增記錄的當天日期。

4)資料儲存編號:d4

資料儲存名稱:使用者記錄

輸入:p3

輸出:p3

資料量和訪問頻度:資料量為1000條;訪問頻度為每天100次。

訪問方式:聯機處理;以檢索為主;順序檢索。

資料結構:使用者+密碼+級別

說明:級別是「內部管理員」或「服務管理員」。

(3)主要處理過程

1)處理過程編號:p1.1

處理過程名:圖書管理

輸入:圖書情況,使用者身份

輸出:d1

處理說明:對館內所有圖書按類別統一編碼,將圖書資訊資料化,儲存圖書記錄表中。

2)處理過程編號:p1.2

處理過程名:讀者管理

輸入:讀者情況,使用者身份

輸出:d2

處理說明:建立讀者資訊表,對讀者統一編號;實現讀者記錄表的增刪改維護功能。

3)處理過程編號:p2.1

處理過程名:檢視書目

輸入:借書請求,d1,使用者身份

輸出:借書請求,圖書資訊

處理說明:實現根據圖書類別查詢圖書、根據書名模糊查詢圖書的功能。

4)處理過程編號:p2.2

處理過程名:借書處理

輸入:圖書資訊,d1,d2,d3

輸出:借書記錄

處理說明:確認讀者符合借書條件,辦理借書手續。

5)處理過程編號:p2.3

處理過程名:還書處理

輸入:d1,d2,d3,還書請求,圖書情況,使用者身份

輸出:d3

處理說明:對照相應的借書卡,確認書號和書名無誤後可辦理還書手續。

6)處理過程編號:p3

處理過程名:安全管理

輸入:管理員情況,d4

輸出:使用者身份,d4,管理員情況

處理說明:通過使用者名稱和口令,確認使用者身份,保證系統的安全性。

在系統設計中,我們要確定圖書館管理系統的體系結構、工作環境、系統功能及結構。

圖書館管理系統採用點對多點(point-to-multipoint)的client/server(客戶機/伺服器)結構,如圖5-5所示。

圖中的伺服器既是網路伺服器又是資料庫伺服器,主要任務是承擔網路監聽和實現客戶機鏈結,實現資料庫管理、資料訪問和資料傳輸功能。客戶機是系統的終端裝置,它面向使用者,承擔著圖書館管理系統的服務工作。在圖書館管理系統中,資料庫及資料庫管理系統放在伺服器中,系統的應用程式放在各個客戶機上。

圖書館管理系統的體系結構是區域網結構,資料庫放在一台伺服器中便於集中管理,應用程式放在多台客戶機上便於開展服務工作。

(1)伺服器端的工作環境要求及支撐軟體

作業系統:windows 2000高階伺服器版

資料庫管理系統:sql server 2000 企業版

資料庫應用系統開發軟體:delphi 7.0 企業版

(2)客戶機的工作環境要求及支撐軟體

作業系統:windows 98或更高

資料庫應用系統開發軟體:delphi 7.0 企業版

圖書館管理系統的資料庫系統結構採用c/s(客戶/伺服器)兩層資料庫系統結構,選定bde(borland database engine)技術為支援技術,其結構如圖5-6所示。

圖書館管理系統的系統功能結構如圖5-7所示。

圖書館管理系統包括使用者登入模組、圖書館管理和圖書館服務三大模組。其中,使用者登入模組是為保證資料庫應用系統的資料安全性而設計的,圖書館管理模組實現圖書館的內部管理功能,圖書館服務模組實現圖書館的對外服務功能。

圖書管理系統設計

學年 課程 課程設計 題目 圖書管理系統 作者所在學院 專業年級 指導教師 職稱2013 年 07月 03 日 1 問題描述 對圖書館圖書管理流程進行設計乙個能對圖書 讀者及圖書借閱情況進行管理的圖書館管理系統。要求該系統能滿足管理人員對圖書管理以及讀者借閱需要,根據許可權不同,使用者具有不同的功能...

圖書管理系統設計

軟體工程專業 資料庫原理及應用課程設計開發 報告設計題目 圖書管理系統設計 年級 計hr06 6 學號 0620010617 姓名 孫勝男 摘要資料庫原理及應用課程設計是軟體工程專業集中實踐性環節之一,是學習完 資料庫原理及應用 課程後進行的一次全面的綜合練習。其目的在於加深對資料庫基礎理論和基本知...

圖書管理系統設計

軟體工程專業 資料庫原理及應用課程設計開發 報告設計題目 圖書管理系統設計 年級 計hr06 6 學號 0620010617 姓名 孫勝男 摘要資料庫原理及應用課程設計是軟體工程專業集中實踐性環節之一,是學習完 資料庫原理及應用 課程後進行的一次全面的綜合練習。其目的在於加深對資料庫基礎理論和基本知...