【軟體工程】資料庫設計說明書
資料庫設計說明書(GB8567——88)
1引言
1.1編寫目的
本文件描述了機房收費系統資料庫的設計,提供了資料酷庫設計的可視性以及軟體支援所需的資訊,應用於機房收費系統開發前期,為後期的資料庫設計指引方向,也可以為系統程式設計提供借鑑與參照。
預期讀者為資料庫設計師,資料庫管理員
1.2背景
a.待開發軟體名稱:機房收費系統
b.專案提出者:米新江教授
開發者:曹祥銘
使用者:廊坊師範學院全體教職工和學生
實現該軟體的計算中心或計算機網路中心:廊坊師範學院區域網
C.該軟體系統同其他機構的基本相互來往關係:由廊坊師範學院資訊科技提高班做技術支援。
1.3定義
註冊 消費金額 充值 值班 退卡
Login Consume Recharge On work Cancel
結賬 基本資料 購卡 上機 下機
Statement Basic_date Buycard Login logout
1.4參考資料
[1]《軟體工程事務》劉學俊 李繼芳 劉漢中 編著 浙江大學出版社
[2]資料庫設計說明書(GB8657——88)
2外部設計
2.1識別符號和狀態
聯絡用途,詳細說明用於唯一地標識該資料庫的程式碼、名稱或識別符號,附加的描述性資訊亦要給出。如果該資料庫屬於尚在實驗中、尚在測試中或是暫時使用的,則要說明這一特點及其有效時間範圍。
表名 名稱 描述資訊 狀態
基本資料設定 BasicData_Info 基本資料資訊 暫時使用
退卡 CancelCard_Info 退卡資訊 實驗中
日結賬單 CheckDay_Info 日結賬資訊 實驗中
周結賬單 CheckWeek_Info 周結賬資訊 實驗中
上機 Online_Info 上機資訊 實驗中
充值 Recharge_Info 充值資訊 實驗中
學生資訊 Student_Info 學生資訊 暫時使用
使用者資訊 User_Info 使用者資訊 暫時使用
值班 WorkLog_Info 值班資訊 實驗中
2.2使用它的程式
列出將要使用或訪問此資料庫的所有應用程式,對於這些應用程式的每一個,給出它的名稱和版本號。
應用程式 名稱 版本號
學生資訊查詢 一般使用者模組 1.0
學生資訊管理 操作員模組 1.0
系統管理 管理員模組 1.0
2.3約定
陳述一個程式設計師或一個系統分析員為了能使用此資料庫而需要了解的建立標號、標識的約定,例如用於標識資料庫的不同版本的約定和用於標識庫內各個文卷、、記錄、資料項的命名約定等。
1)基本資料設定(BasicData_Info)
字首 說明
HalfCharge 半小時費用
IncreaseTime 遞增時間
LeastTime 最少上機時間
ReadyTime 上機準備時間
LeastCash 卡內最少餘額
2)退卡資訊(CancelCard_Info)
字首 說明
StudentNo 學號
CardNo 卡號
CancelCash 退卡金額
Date 日期
Time 時間
UserID 使用者名稱
Status 狀態
3)日結賬單(CheckDay_Info)
字首 說明
RemainCash 餘額
RechargeCash 充值金額
ConsumeCash 消費金額
CancelCash 退卡金額
AllCash 所有金額
Date 日期
Time 時間
4)周結賬單(CheckWeek_Info)
字首 說明
RemainCash 餘額
RechargeCash 充值金額
ConsumeCash 消費金額
CancelCash 退卡金額
AllCash 所有金額
Date 日期
Time 時間
5)上機資訊(Online_Info)
字首 說明
CardNo 卡號
CardType 卡的型別
StudentNo 學號
StudentName 學生姓名
Department 系別
Sex 性別
OnDate 上機日期
OnTime 上機時間
Computer 電腦
6)充值記錄(Recharge_Info)
字首 說明
StudentNo 學號
CardNo 卡號
AddMoney 充值金額
Date 日期
Time 時間
UserID 使用者名稱
Status 狀態
7)學生資訊(Student_Info)
字首 說明
StudentNo 學號
CardNo 卡號
StudentName 學生姓名
Department 系別
Sex 性別
Grade 年級
Class 班級
Cash 金額
Explain 備註
UserID 使用者名稱
Status 狀態
IsCheck 是否結賬
8)使用者資訊(User_Info)
字首 說明
UserID 賬號
PWD 密碼
Level 級別
UserName 使用者名稱
9)值班資訊(WorkLog_Info)
字首 說明
UserID 使用者名稱
Level 級別
LoginDate 登入日期
LogoutTime 登入時間
LogoutDate 登出日期
2.4專門指導
向準備從事此資料庫的生成、從事此資料庫的測試、維護人員提供專門的指導,例如將被送入資料庫的資料的格式和標準、送入資料庫的操作規程和步驟,用於產生、修改、更新或使用這些資料文卷的操作指導。如果這些指導的內容篇幅很長,列出可參閱的檔案資料的名稱和章條。
可參考的資料:軟體工程哈工大耿建玲視訊
資料庫設計規範
2.5支援軟體
簡單介紹同此資料庫直接有關的支援軟體,如資料庫管理系統、儲存定位程式和用於裝入、生成、修 改、更新資料庫的程式等。說明這些軟體的名稱、版本號和主要功能特性,如所用資料模型的型別、允許 的資料容量等。列出這些支援軟體的技術檔案的標題、編號及來源。
版本號 主要功能
6.0企業版 視覺化高階開發語言
2014 資料庫的建立和管理
3結構設計
3.1概念結構設計
說明本資料庫將反映的現實世界中的實體、屬性和它們之間的關係等的原始資料形式,包括各資料項、記錄、系、文卷的識別符號、定義、型別、度量單位和值域,建立本資料庫的每一幅使用者檢視。
3.1.1資料實體——關係圖
3.1.2資料實體描述
資料實體名稱 資料表名 資料實體描述
使用者 User_Info 使用者資訊
學生 Student_Info 學生資訊
基本資料 BasicData_Info 基本資料設定
上機 Online_Info 上機資訊
充值 Recharge_Info 充值記錄
退卡 CancelCard_Info 退卡資訊
值班 Onwork 值班資訊
日結賬 CheckDay 日結賬資訊
周結賬 CheckWeek 周結賬資訊
3.1.3實體關係描述
1. 一般使用者:學生資訊(1:N)
關係描述:一般使用者負責對學生及上機情況的查詢
2. 操作員:學生資訊(1:N)
關係描述:一個操作員可以對個學生進行註冊、充值、退卡活動
3. 管理員:操作員(1:N)
管理員:一般使用者(1:N)
關係描述:一個管理員可以增刪多個操作員和一般使用者
4. 操作員:工作記錄(1:1)
關係描述:一個操作員對應一條自己的工作記錄
5. 管理員:基本資料(1:1)
關係描述:管理員負責設定系統的基本資料
6. 管理員:賬單(1:N)
關係描述:管理員每天結賬並且查詢任意時間段的賬單情況
3.2邏輯結構設計
說明把上述原始資料進行分解、合併後重新組織起來的資料庫全域性邏輯結構,包括所確定的關鍵字和屬性、重新確定的記錄結構和文卷結構、所建立的各個文卷之間的相互關係,形成本資料庫的資料庫管理員檢視。
機房收費系統共建立了10個表,具體如下:
1)基本資料設定(BasicData_Info)
描述 欄位名 資料型別 長度
半小時費用 HalfCharge Char 10
遞增時間 IncreaseTime Char 10
最少上機時間 LeastTime Char 10
上機準備時間 ReadyTime Char 10
卡內最少餘額 LeastCash Char 10
日期 Date Char 10
時間 Time Char 10
2)退卡資訊(CancelCard_Info)
描述 欄位名 資料型別 長度
學號 StudentNo Char 10
卡號 CardNo Char 10
退卡金額 CancelCash numeric (18,1)
日期 Date Char 10
時間 Time Char 10
使用者名稱 UserID Char 10
狀態 Status Char 10
3)日結賬單(CheckDay_Info)
描述 欄位名 資料型別 長度
餘額 RemainCash numeric (18,0)
充值金額 RechargeCash numeric (18,0)
消費金額 ConsumeCash numeric (18,0)
退卡金額 CancelCash numeric (18,0)
所有金額 AllCash numeric (18,0)
日期 Date Char 10
時間 Time Char 10
4)周結賬單(CheckWeek_Info)
描述 欄位名 資料型別 長度
餘額 RemainCash numeric (18,0)
充值金額 RechargeCash numeric (18,0)
消費金額 ConsumeCash numeric (18,0)
退卡金額 CancelCash numeric (18,0)
所有金額 AllCash numeric (18,0)
日期 Date Char 10
時間 Time Char 10
5)上機資訊(Online_Info)
描述 欄位名 資料型別 長度
卡號 CardNo Char 10
卡的型別 CardType Char 10
學號 StudentNo Char 10
學生姓名 StudentName Char 10
系別 Department Char 10
性別 Sex Char 10
上機日期 OnDate Char 10
上機時間 OnTime Char 10
電腦 Computer Char 10
6)充值記錄(Recharge_Info)
描述 欄位名 資料型別 長度
學號 StudentNo Char 10
卡號 CardNo Char 10
充值金額 AddMoney Numeric 10
日期 Date Char (19,4)
時間 Time Char 10
使用者名稱 UserID Char 10
狀態 Status Char 10
7)學生資訊(Student_Info)
描述 欄位名 資料型別 長度
學號 StudentNo Char 10
卡號 CardNo Char 10
學生姓名 StudentName Char 10
系別 Department Char 10
性別 Sex Char 10
年級 Grade Char 10
班級 Class Char 10
金額 Cash Numeric (10,3)
備註 Explain Varchar 50
使用者名稱 UserID Char 10
狀態 Status Char 10
是否結賬 IsCheck Char 10
日期 Date Char 10
時間 Time Char 10
8)使用者資訊(User_Info)
描述 欄位名 資料型別 長度
賬號 UserID Char 10
密碼 PWD Char 10
級別 Level Char 8
使用者名稱 UserName Char 10
9)值班資訊(WorkLog_Info)
描述 欄位名 資料型別 長度
使用者名稱 UserID Char 10
級別 Level Char 10
登入日期 LoginDate Char 10
登入時間 LogoutTime Char 10
登出日期 LogoutDate Char 10
登出時間 LogoutTime Char 10
電腦名 Computer Char 10
狀態 Status Char 10
3.3物理結構設計
建立系統程式設計師檢視,包括:
a.資料在記憶體中的安排,包括對索引區、緩衝區的設計;
b.所使用的外存裝置及外存空間的組織,包括索引區、資料塊的組織與劃分;
c.訪問資料的方式方法。
4運用設計
4.1資料字典設計
對資料庫設計中涉及到的各種專案,如資料項、記錄、系、文卷、模式、子模式等一般要建立起資料字典,以說明它們的識別符號、同義名及有關資訊。在本節中要說明對此資料字典設計的基本考慮。
1)基本資料設定(BasicData_Info)
資料項編號 資料項名 儲存結構 別名
001 半小時費用 Char(10) HalfCharge
002 遞增時間 Char(10) IncreaseTime
003 最少上機時間 Char(10) LeastTime
004 上機準備時間 Char(10) ReadyTime
005 卡內最少餘額 Char(10) LeastCash
006 設定日期 Char(10) Date
007 設定時間 Char(10) Time
2)退卡資訊(CancelCard_Info)
資料項編號 資料項名 儲存結構 別名
010 退卡金額 Numeric(18,1) CancelCash
3)日/周結賬單(CheckDay_Info)
資料項編號 資料項名 儲存結構 別名
012 所有金額 numeric(18,0) AllCash
4)上機資訊(Online_Info)
資料項編號 資料項名 儲存結構 別名
013 上機日期 Char(10) OnDate
014 上機時間 Char(10) OnTime
015 電腦名 Char(10) Computer
5)充值記錄(Recharge_Info)
資料項編號 資料項名 儲存結構 別名
016 充值金額 Numeric(10) AddMoney
6)學生資訊(Student_Info)
資料項編號 資料項名 儲存結構 別名
017 學號 Char(10) StudentNo
018 卡號 Char(10) CardNo
019 學生姓名 Char(10) StudentName
020 系別 Char(10) Department
021 性別 Char(10) Sex
022 年級 Char(10) Grade
023 班級 Char(10) Class
024 金額 Numeric(10,3) Cash
025 備註 Varchar(50) Explain
026 使用者名稱 Char(10) UserID
027 狀態 Char(10) Status
028 是否結賬 Char(10) IsCheck
029 註冊日期 Char(10) Date
030 註冊時間 Char(10) Time
7)使用者資訊(User_Info)
資料項編號 資料項名 儲存結構 別名
031 賬號 Char(10) UserID
032 密碼 Char(10) PWD
033 級別 Char(10) Level
034 使用者名稱 Char(10) UserName
8)值班資訊(WorkLog_Info)
資料項編號 資料項名 儲存結構 別名
035 登入日期 Char(10) LoginDate
036 登入時間 Char(10) LogoutTime
037 登出日期 Char(10) LogoutDate
038 登出時間 Char(10) LogoutTime
4.2安全保密設計
說明在資料庫的設計中,將如何通過區分不同的訪問者、不同的訪問型別和不同的資料物件,進行分別對待而獲得的資料庫安全保密的設計考慮。
系統主要有三個管理使用者級別,分別擁有不同的管理許可權。具體如下:
一般使用者 操作員 管理員
學生資訊管理 √ √ √
使用者資訊管理 √
收支賬目管理 √ √
系統資訊管理 √