《[圖書館管理系統(tǒng)]詳細(xì)設(shè)計(jì)分析報(bào)告》由會員分享,可在線閱讀,更多相關(guān)《[圖書館管理系統(tǒng)]詳細(xì)設(shè)計(jì)分析報(bào)告(13頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。
1、 軟件一班Java小組
【圖書館管理系統(tǒng)】
詳細(xì)設(shè)計(jì)報(bào)告
姓名:郭佳 韓國榮
班級:08軟件工程(1)班
指導(dǎo)老師:王麗娟
1 引言
1.1 編寫目的
該文檔旨在推動軟件工程規(guī)范化,使設(shè)計(jì)人員能夠遵守統(tǒng)一的詳細(xì)設(shè)計(jì)書寫規(guī)范,降低程序設(shè)計(jì)的風(fēng)險(xiǎn)。文檔對【圖書館管理系統(tǒng)】做了系統(tǒng)的描述,對任務(wù)劃分 時(shí)間要求 做了詳細(xì)安排。對其中的關(guān)鍵模塊做了詳盡的設(shè)計(jì)說明
2、。方便小組設(shè)計(jì)人員開發(fā)本系統(tǒng)。
1.2 背景
說明:
a. 待開發(fā)的軟件系統(tǒng)的名稱:【圖書館管理系統(tǒng)】
b. 該系統(tǒng)的相關(guān)人員:
任務(wù)提出者:XX圖書館
開發(fā)者:軟件一班JAVA小組
項(xiàng)目需求方:XX圖書館
用戶:XX圖書館全本用戶及管理員
1.3 定義
DB---database 數(shù)據(jù)庫
DBConnectionPool 數(shù)據(jù)庫連接池
Query 查詢
UI 用戶界面
Table 表
1.4 參考資料
a. 《圖書館管理系統(tǒng)》需求分析說明書
b. 《詳細(xì)設(shè)計(jì)說明書編寫規(guī)范》
c
3、. 《網(wǎng)站論壇詳細(xì)設(shè)計(jì)說明書》
d. 《圖書館管理系統(tǒng)》可行性分析說明書
1.5 人員配置
Java小組成員:
組長: 郭佳
成員: 韓國榮 李陽陽 黃治華
孫亞楠 蘇慶男 李筱
任務(wù)劃分
參與人員
項(xiàng)目進(jìn)度
日期
需求分析
郭佳 孫亞楠
完成
11.10
數(shù)據(jù)庫設(shè)計(jì)
李陽陽 李筱
韓國榮 郭佳
完成
11.11
界面設(shè)計(jì)
蘇慶男 黃治華
前臺頁面設(shè)計(jì)完成
后臺完成40
4、%
11.12
程序設(shè)計(jì)實(shí)現(xiàn)
郭佳 韓國榮
李筱 孫亞楠
用戶登錄注冊,綜合管理 用戶管理 用戶查詢模塊已完成
其余部分正在進(jìn)行
11.12
軟件測試
李陽陽 韓國榮
后期維護(hù)
黃治華 李筱
2 程序系統(tǒng)的結(jié)構(gòu)
2.1系統(tǒng)總體結(jié)構(gòu)
2.2 數(shù)據(jù)庫設(shè)計(jì)
該系統(tǒng)一共用到7張表。分別是:
User:用戶表,存放用戶基本注冊信息
Book:書目表,存放書目基本信息,設(shè)置rtDate(歸還日期)和brDate(借出日期) 實(shí)現(xiàn)過期查詢。
Manager:管理員表。放置兩個(gè)密碼。實(shí)現(xiàn)二次鑒權(quán)
LendBook:用戶
5、借閱歷史和借閱查詢數(shù)據(jù)
Message:用戶留言
Overdue:過期書籍信息和賠償數(shù)額。
News:新聞更新板塊
圖2
3 程序設(shè)計(jì)說明
程序按照系統(tǒng)規(guī)定的約束條件設(shè)計(jì),正確把握其中的邏輯關(guān)系。整個(gè)系統(tǒng)總體劃分為9個(gè)模塊。各個(gè)模塊都要按照該模塊的數(shù)據(jù)流程圖設(shè)計(jì)。下面列舉其中關(guān)鍵模塊的邏輯實(shí)現(xiàn)。
3.1 用戶登錄模塊
3.1.1登錄模塊流程圖
Start
N
If exist
In User User
register
Y
DB
User
Login
6、
END
3.1.2 登錄實(shí)現(xiàn)
1. 通過JSP頁面獲取username 和password
2. User業(yè)務(wù)類 通過XML獲取username和password
3. User業(yè)務(wù)實(shí)現(xiàn)類(UserServiceImpl.java)通過DBconnection連接數(shù)據(jù)庫執(zhí)行Query操作,如圖:
3.1.3 注冊的實(shí)現(xiàn)
如果存在返回登錄成功。如果失敗,提示失敗,并提醒注冊。
注冊過程與此類似。下圖是注冊的業(yè)務(wù)實(shí)現(xiàn):
用戶注冊的業(yè)務(wù)實(shí)現(xiàn)
該過程對時(shí)間要求較高。
3.2 用戶賠償模塊
START
7、 3.2.1數(shù)據(jù)流程圖
i=0?
LOST
A,M,S初值均為0
P為丟失書的價(jià)格
S=P
S=0+S
M=a;
M=0+M
A=A+M+S
i=0?
Output A
END
3.2.2 賠償功能的實(shí)現(xiàn)
創(chuàng)建并獲取業(yè)務(wù)實(shí)現(xiàn)類:
通過DBConnectionPool獲取 流程圖中的i值和損壞丟失的圖書列表
最后通過xml配置文件傳賠償金額和圖書信息到用戶頁面
3.3輸入項(xiàng)
1. login.jsp在登錄頁面有輸入接口
2. Us
8、erdetQuery.jsp 管理員查詢用戶界面
3. UserQuery.jsp用戶書籍查詢頁面
3.4 算法
賠償金額返回:
定義3個(gè)變量A(賠償總價(jià))=0, M(丟失賠償)=0, S(損壞總價(jià))=0。 定義3個(gè)定值. 書籍原價(jià)P值從BOOK表獲取,i
(事件次數(shù))污損賠償D
If i !=0
i=i-1
If dirty
S=S+D
Else
9、 M=M+P
A=M+S+A
return A
Else return A=0
書籍過期判斷:
獲取BOOK表rtDate和bdDate。用select now()獲取數(shù)據(jù)庫當(dāng)前時(shí)間(注意,一定要用數(shù)據(jù)庫當(dāng)前時(shí)間)
if rtDate>now()
re
10、turn TURE
else
return FALSE
續(xù)期的實(shí)現(xiàn):
獲取rtDate.用JAVA函數(shù),獲取month 在month+1后,執(zhí)行SQL語句。返回到數(shù)據(jù)庫。
sql="select rtDate from Book,where book.id= "+id;
set(Calendar.month,getCalendar.month+1) //獲取月份并+1
sql="update Book se
11、t rtDate="'+Calendar.get()+''';//執(zhí)行插入
實(shí)現(xiàn)續(xù)期功能
3.5 存儲分配
數(shù)據(jù)庫設(shè)計(jì)
3.6測試計(jì)劃
軟件測試是軟件質(zhì)量保證的關(guān)鍵步驟,本系統(tǒng)采用采用軟件工程的方法進(jìn)行軟件測試。盡量發(fā)現(xiàn)本系統(tǒng) BUG并即時(shí)改正,以避免在運(yùn)行過程中造成損失。
1.測試步驟
測試過程應(yīng)采用綜合測試策略;即先作靜態(tài)分析,再作動態(tài)測試。
2. 模塊測試
以設(shè)計(jì)說明書為指導(dǎo),測試模塊內(nèi)部重要控制路徑
3. 集成測試
將各個(gè)模塊組裝,對系統(tǒng)進(jìn)行統(tǒng)一測試,確保系統(tǒng)常見的功能沒有問題。
4. 系統(tǒng)測試
將該系統(tǒng)放在服務(wù)器上進(jìn)行封閉測試。
5. 驗(yàn)收測試
將系統(tǒng)交給圖書館,并在使用中發(fā)現(xiàn)并改正問題。
3.7 尚未解決的問題
問題
問題描述
時(shí)間
后臺頁面
后臺頁面引用的js效果一直不起作用。
WEB-XML
xml隱藏對象的用法還有欠缺
13
2010-11-15