詳細(xì)設(shè)計(jì)說明書_第1頁
詳細(xì)設(shè)計(jì)說明書_第2頁
詳細(xì)設(shè)計(jì)說明書_第3頁
詳細(xì)設(shè)計(jì)說明書_第4頁
詳細(xì)設(shè)計(jì)說明書_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、詳細(xì)設(shè)計(jì)說明書1引言1. 1編寫目的根據(jù)需求規(guī)格說明書、概要設(shè)計(jì)說明書,在仔細(xì)考慮討論之后,我們對(duì)圖書管理系統(tǒng)軟件的功能劃分、數(shù)據(jù)結(jié)構(gòu)、軟件總體結(jié)構(gòu)的實(shí)現(xiàn)有了進(jìn)一步的想法。我們將這些想法記錄下來,作為詳細(xì)設(shè)計(jì)說明書,為進(jìn)一步設(shè)計(jì)軟件、編寫代碼打下基礎(chǔ)。1.2 背景隨著社會(huì)信息量的與日俱增,作為信息存儲(chǔ)的主要媒體之一圖書,數(shù)量、規(guī)模比以往任何時(shí)候都大的多,不論個(gè)人還是圖書管理部門都需要使用方便而有效的方式來管理自己的書籍。在計(jì)算機(jī)日益普及的今天,對(duì)個(gè)人而言若采用一套行之有效的圖書管理系統(tǒng)來管理自己的書籍,會(huì)方便許多。對(duì)圖書管理部門而言,以前單一的手工檢索已不能滿足人們的要求,為了便于圖書資料的管

2、理需要有效的圖書管理軟件。本圖書管理系統(tǒng)軟件是一套功能比較完善的數(shù)據(jù)管理軟件,具有數(shù)據(jù)操作方便高效迅速等優(yōu)點(diǎn)。該軟件采用功能強(qiáng)大的數(shù)據(jù)庫軟件開發(fā)工具進(jìn)行開發(fā),具有很好的可移植性,可在應(yīng)用范圍較廣的DOSWINDOWU等操作系統(tǒng)上使用1.3 定義文檔中采用的專門術(shù)語的定義及縮略詞簡要如下:LMS:LibraryManagementSystem,圖書管理系統(tǒng)1.4 參考資料1 費(fèi)賢舉關(guān)于圖書管理系統(tǒng)的批文2 鄭人杰,殷人昆,陶永雷。實(shí)用軟件工程(第二版)。北京:清華大學(xué)出版社,1997。3 王立福,麻志毅。軟件工程(第二版)。北京:北京大學(xué)出版社,2001。4 唐學(xué)忠,王文。VisualBasic

3、程序設(shè)計(jì)教程北京:中國電力出版社,20022程序系統(tǒng)的結(jié)構(gòu)系統(tǒng)操作模塊3程序(標(biāo)識(shí)符)設(shè)計(jì)說明3.1主模塊功能建立與數(shù)據(jù)庫連接獲取系統(tǒng)設(shè)置運(yùn)行主對(duì)話框根據(jù)輸入調(diào)用子模塊退出系統(tǒng)時(shí)斷開與數(shù)據(jù)庫的連接入項(xiàng)目用戶鼠標(biāo)點(diǎn)擊輸入程序邏輯見右圖存儲(chǔ)分配內(nèi)部數(shù)據(jù):數(shù)據(jù)庫連接系統(tǒng)設(shè)置子對(duì)話框hlm_pConnectionm_lsConnectedm_MaxLBNumm_MaxLBDaym_BookOutDlgm_BooklnDlgm_BookQuiryDlgm_SysDlg測試要點(diǎn)數(shù)據(jù)庫連接情況:正常情況,數(shù)據(jù)庫文件缺少,外部系統(tǒng)異常。系統(tǒng)設(shè)置獲?。赫G闆r,外部系統(tǒng)異常。對(duì)用戶輸入的響應(yīng):合法輸入,能夠正常

4、調(diào)用子模塊數(shù)據(jù)備份初始化_ConnectionPtrBOOLintintCBookOutDlgCBookInDlgCBookQuiryDlgCSysDlg數(shù)據(jù)庫連接指針數(shù)據(jù)庫連接指示可借圖書數(shù)上限借書天數(shù)上限借書對(duì)話框還書對(duì)話框圖書查詢對(duì)話框系統(tǒng)操作對(duì)話框非法輸入,系統(tǒng)能否辨別,并作出響應(yīng)(提出警告)子模塊的異常狀況,系統(tǒng)能否及時(shí)做出響應(yīng)3.2借書模塊功能查驗(yàn)輸入的讀者證號(hào)運(yùn)行借書對(duì)話框獲取該讀者的相關(guān)信息查驗(yàn)輸入的圖書號(hào)登記借書輸入項(xiàng)目讀者證號(hào)、圖書書號(hào)(用戶輸入)輸出項(xiàng)目讀者信息(姓名);讀者已借圖書信息(書名、借書日期)程序邏輯接口調(diào)用形式:voidCBookDlg:LendBook(c

5、onst_ConnectionPtrpConnection,constintMaxLBNum)傳入?yún)?shù):pConnection數(shù)據(jù)庫連接指針MaxLBNumS統(tǒng)參數(shù)(可借圖書上限)傳出參數(shù):無存儲(chǔ)分配內(nèi)部數(shù)據(jù): 數(shù)據(jù)庫用戶界面內(nèi)部參數(shù)測試要點(diǎn)模塊正常運(yùn)行流程m_pConnection ConnectionPtrm_strReaderName CString m_strLBInf m_strLBNum m_lBookID m_lReaderID m_MaxLBNumCString CString long long int數(shù)據(jù)庫連接指針讀者姓名已借圖書信息 已借圖書數(shù)顯示 欲借圖書書號(hào) 當(dāng)前讀者

6、證號(hào) 可借圖書數(shù)上限用戶輸入數(shù)據(jù)檢查(讀者證號(hào)、圖書書號(hào)),包括數(shù)據(jù)合理性檢查,以及合法性檢查數(shù)據(jù)庫操作數(shù)據(jù)庫連接異常時(shí)的響應(yīng)情況3.2.1 讀者查驗(yàn)?zāi)K功能查驗(yàn)輸入的讀者證號(hào)是否合法(即是否存在與該讀者證號(hào)對(duì)應(yīng)的讀者記錄)輸入項(xiàng)目讀者證號(hào)(整型常數(shù)),讀者姓名(引用型字符串)輸出項(xiàng)目查驗(yàn)結(jié)果(BOOL4)程序邏輯生成數(shù)據(jù)庫查詢語句調(diào)用數(shù)據(jù)庫查詢模塊IF返回結(jié)果集為空(不存在該讀者證號(hào))置讀者姓名字符串為空返回”非法讀者證號(hào)”ELSE置讀者姓名字符串返回”合法讀者證號(hào)”接口調(diào)用形式:BOOL CheckReader (const long ReaderID,CString &strRe

7、aderName) 傳入?yún)?shù):ReaderID(常量參數(shù)傳入)待查驗(yàn)的讀者證號(hào)m_pConnection (借書模塊內(nèi)的全局變量 ) 數(shù)據(jù)庫連接指針 傳出參數(shù):讀者證號(hào)存在 /不存在標(biāo)志(返回值)strReaderName(傳入的引用參數(shù))讀者證號(hào)對(duì)應(yīng)的讀者姓名(讀者證號(hào)不存在時(shí)置為空存儲(chǔ)分配局部變量:數(shù)據(jù)庫pReader _RecordsetPtr數(shù)據(jù)庫查詢結(jié)果集指針查查詢參數(shù)類型轉(zhuǎn)換vtQuiry vNull strQuiry vtemp_variant_t _variant_t Cstring variantt詢命令查詢連接查詢命令類型轉(zhuǎn)換查詢結(jié)果類型轉(zhuǎn)換測試要點(diǎn)數(shù)據(jù)庫連接正常時(shí)輸入合理

8、合法參數(shù)輸入?yún)?shù)不合理輸入?yún)?shù)不合法數(shù)據(jù)庫連接異常;數(shù)據(jù)庫數(shù)據(jù)異常(讀者姓名為空)3.2.2 圖書查驗(yàn)?zāi)K功能查驗(yàn)輸入的圖書書號(hào)是否合法輸入項(xiàng)目圖書書號(hào)(整型常量)輸出項(xiàng)目查驗(yàn)結(jié)果(BOOL!)程序邏輯生成數(shù)據(jù)庫查詢語句調(diào)用數(shù)據(jù)庫查詢模塊IF返回結(jié)果集為空(不存在該圖書書號(hào))非法圖書書號(hào)”ELSE合法圖書書號(hào)”接口調(diào)用形式:傳入?yún)?shù):BOOL CheckBook (const long BookID )BookID (整型常量)帶查驗(yàn)的圖書書號(hào)傳出參數(shù):書號(hào)合法/不合法標(biāo)志(返回值) 查驗(yàn)結(jié)果存儲(chǔ)分配局部變量:數(shù)據(jù)庫pBookRecordsetPtr數(shù)據(jù)庫查詢結(jié)果集指針查詢參量vtQuiryv

9、ariant t類型轉(zhuǎn)換vNullvariant t查詢字符串查詢連接參量strQuiryCstring查詢命令類型轉(zhuǎn)換測試要點(diǎn)數(shù)據(jù)庫連接正常數(shù)據(jù)庫數(shù)據(jù)正常輸入的書號(hào)合理合法輸入的書號(hào)不合理輸入的書號(hào)不合法數(shù)據(jù)庫數(shù)據(jù)異常數(shù)據(jù)庫連接異常(整型常量);讀者已借圖書3.2.3 相關(guān)信息獲取模塊功能獲取合法讀者的借書記錄輸入項(xiàng)目合法讀者證號(hào)信息(引用型字符串)輸出項(xiàng)目查詢操作結(jié)果(BOOL!)程序邏輯生成數(shù)據(jù)庫查詢語句調(diào)用數(shù)據(jù)庫查詢模塊IF操作成功WHILE查詢結(jié)果集未讀至文件尾讀取各項(xiàng)值置入讀者已借圖書信息字符串返回”操作成功”ELSE置空讀者已借圖書信息字符串返回”操作失敗”接口調(diào)用形式:BOOL

10、 GetLBInf (const long ReaderID,CString &strLBInf) 傳入?yún)⒘浚篟eaderID(整型常量)查詢參數(shù)strLBInf(引用型字符串)返回用的格式化的查詢信息傳出參量:查詢成功/失敗標(biāo)志(BOOL1)查詢操作結(jié)果信息存儲(chǔ)分配局部變量:數(shù)據(jù)庫pRecordsRecordsetPtr數(shù)據(jù)庫查詢結(jié)果集指針查詢參數(shù)vtQuiryvarianttvNullvariant t查詢命令字符串 查詢連接參量類型轉(zhuǎn)換strQuiryCString查詢命令類型轉(zhuǎn)換測試要點(diǎn)數(shù)據(jù)庫連接正常數(shù)據(jù)庫數(shù)據(jù)正常輸入正常(讀者證號(hào)合法輸入異常(讀者證號(hào)非法)數(shù)據(jù)庫數(shù)據(jù)異常數(shù)據(jù)

11、庫連接異常3.2.4借書登記模塊功能登錄借書信息輸入項(xiàng)目讀者證號(hào)(整型常量);圖書書號(hào)(整型常量)輸出項(xiàng)操作結(jié)果(BOOL!)程序邏輯生成數(shù)據(jù)庫操作命令調(diào)用數(shù)據(jù)庫操作模塊IF操作成功返回”操作成功”ELSE返回”操作失敗”接口調(diào)用形式:BOOLWriteBlrecord(constlongReaderlD,constlongBookID)傳入?yún)?shù):ReaderlD (整型常量)操作參數(shù)(借閱者讀者證號(hào))BookID (整型常量)操作參數(shù)傳出參數(shù):操作成功/失敗標(biāo)志(返回值)存儲(chǔ)分配局部變量:操作命令參數(shù)vRecsAffectedvtComma nd類型轉(zhuǎn)換strComma ndstrToday

12、 oleToday測試要點(diǎn)數(shù)據(jù)庫連接正常數(shù)據(jù)庫操作正常輸入?yún)?shù)合法輸入?yún)?shù)非法數(shù)據(jù)庫操作異常數(shù)據(jù)庫連接異常(借閱圖書書號(hào))_varia nt_t_varia nt_t CStri ng CStri ng COleDateTime操作影響操作命令操作命令類型轉(zhuǎn)換借書日期類型轉(zhuǎn)換J借書日期4還書模塊功能運(yùn)行還書對(duì)話框查驗(yàn)輸入的圖書書號(hào)對(duì)合法輸入登錄還書信息顯示相關(guān)信息(本次還書操作信息,尚未歸還圖書的相關(guān)信息,讀者信息)輸入項(xiàng)目圖書書號(hào)(用戶輸入)輸出項(xiàng)目相關(guān)信息(本次還書操作信息,尚未歸還的圖書信息,讀者信息)程序邏輯*初始對(duì)話框點(diǎn)擊退出出錯(cuò)返回借書記錄查驗(yàn)?zāi)K登記還書更新還書信息及顯示接口關(guān)閉

13、對(duì)話框CBookInDlg:ReturnBook(const_ConnectionPtrpConn調(diào)用形式:ection.constintMaxLBDay)傳入?yún)⒘?傳出參量:存儲(chǔ)分配內(nèi)部變量:pConnection(數(shù)據(jù)庫連接指針常量MaxLBDay(整型常量)無)提供數(shù)據(jù)庫連接系統(tǒng)參數(shù)(借書天數(shù)上限)數(shù)據(jù)庫用戶界面內(nèi)部參數(shù)m_pConnectionm_pRecordsm_lBookIDm_strLenderIDm_strLenderm_strRBInfm_strNRBInfm_strRBNumm_strNRBNumm_lCurrIDm_intRBNumm_MaxLBDayConnectio

14、nPtrRecordsetPtrlongCStringCStringCStringCStringCStringCStringlongintint數(shù)據(jù)庫連接指針數(shù)據(jù)庫查詢結(jié)果集指針欲還圖書書號(hào)借閱者圖書證號(hào)顯示借閱者姓名已還圖書信息顯示未還圖書信息顯示已還圖書數(shù)顯示未還圖書數(shù)顯示當(dāng)前還書者讀者證號(hào)已還圖書計(jì)數(shù)借書天數(shù)上限數(shù)據(jù)庫連接異常能否做出適測試要點(diǎn)模塊正常工作流程對(duì)輸入的查驗(yàn),包括輸入值的合法性與合理性檢驗(yàn)當(dāng)處理數(shù)據(jù)庫數(shù)據(jù)異常時(shí)能否判斷并給予適當(dāng)處理4.1借書記錄查驗(yàn)?zāi)K功能查驗(yàn)借書記錄是否存在(即是否存在與指定書號(hào)相對(duì)應(yīng)的借書記錄)輸入項(xiàng)目圖書書號(hào)(傳入?yún)?shù))輸出項(xiàng)目查驗(yàn)結(jié)果(返回值);查

15、詢結(jié)果集(圖書書號(hào)、書名、狀態(tài)、出借日期)程序邏輯生成數(shù)據(jù)庫查詢語句調(diào)用數(shù)據(jù)庫查詢模塊IF操作成功IF查詢結(jié)果集不為空(存在該借書記錄)返回”記錄存在"ELSE警告”記錄不存在”ELSE警告”查詢失敗”返回”記錄不存在”接口調(diào)用形式:BOOLCheckBlrcord(constlongBookID)傳入?yún)⒘浚築ookID(整型常量)傳出參量:書號(hào)合法/非法標(biāo)志(BOOIS)存儲(chǔ)分配局部變量:查詢參數(shù)vtQuiryvariantt查詢命令查詢連接vNull類variantt查詢命令類型轉(zhuǎn)換使型轉(zhuǎn)換strQuiry引用的全局變量:CString用寫(打開)ConnectionPtrm_p

16、Connectionm_pRecords測試要點(diǎn)數(shù)據(jù)庫連接正常數(shù)據(jù)庫數(shù)據(jù)正常RecordsetPtr合法的圖書書號(hào)不合法的圖書書號(hào)數(shù)據(jù)庫數(shù)據(jù)異常數(shù)據(jù)庫連接異常相關(guān)信息獲取模塊“真”查驗(yàn)結(jié)果返回“假”查驗(yàn)結(jié)果,給出警告提示返回“假”查驗(yàn)結(jié)果,給出數(shù)據(jù)異常警告返回“假”查驗(yàn)結(jié)果,給出數(shù)據(jù)庫連接異常警告4.2功能獲取指定讀者(讀者證號(hào))的借書記錄,獲取的信息包括所借圖書書名,借書日期以及所借圖書的總本數(shù)。輸入項(xiàng)目讀者證號(hào)(傳入?yún)?shù));相關(guān)(借書)信息(公共變量)輸出項(xiàng)目已借圖書數(shù)(返回值)程序邏輯生成數(shù)據(jù)庫查詢命令I(lǐng)F操作成功初始化(相關(guān)信息字符串置為空已借圖書計(jì)數(shù)置為0)WHILE未讀至查詢結(jié)果集

17、尾置相關(guān)信息字符串計(jì)數(shù)累加返回計(jì)數(shù)值ELSE置相關(guān)信息字符串為“操作異常”返回"失敗標(biāo)志”ReaderID (整型常量)傳入?yún)?shù):接口調(diào)用形式:intGetLBInf(constlongReaderID)獲取的相關(guān)記錄數(shù)(整型)如發(fā)生異常,返回值置為負(fù)查詢參數(shù)vtQuiry_variant_t查詢命令vNull_variant_t查詢連接類型轉(zhuǎn)換strQuiryCString查詢命令類型轉(zhuǎn)換vtempvariantt查詢結(jié)果類型轉(zhuǎn)換oleDateCOleDateTime借書時(shí)間類型轉(zhuǎn)換指定的讀者證號(hào)局部變量:傳出參數(shù):存儲(chǔ)分配記錄計(jì)數(shù)count引用的全局變量:m_.pConnecti

18、onm_pRecordsm_strNRBInf測試要點(diǎn)數(shù)據(jù)庫連接正常數(shù)據(jù)庫數(shù)據(jù)正??色@取的借書記錄數(shù)為零可獲取的借書記錄數(shù)不為零int_ConnectionPtr_RecordsetPtrCString計(jì)算獲取的記錄數(shù)使用寫(打開、關(guān)閉)寫數(shù)據(jù)庫數(shù)據(jù)異常數(shù)據(jù)庫連接異常并將返回結(jié)果為0,引用字符串置空返回記錄數(shù),相關(guān)信息記錄在引用字符串中返回異常指示,給出警告返回異常指示,給出警告4.4還書信息記錄模塊功能記錄本次還書操作的信息,包括圖書書名,超期天數(shù)。輸入項(xiàng)目包含相關(guān)信息(書名、借書日期)的查詢結(jié)果集(公共變量)輸出項(xiàng)目更新后的格式化還書信息(公共變量)程序邏輯WHILE傳入的查詢結(jié)果集未讀至文件尾讀取書名,置入還書信息字符串讀取借

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論