版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、1引言21.1 編寫目的21.2 背景21.3 定義21.4 參考資料22圖書管理系統(tǒng)的結(jié)構(gòu)23圖書管理系統(tǒng)程序設(shè)計(jì)說明33.1 程序描述43.2 功能63.3 性能83.4 輸人項(xiàng)93.5 輸出項(xiàng)93.6 算法93.7 流程邏輯93.8 接口113.9 存儲(chǔ)分配123.10 注釋設(shè)計(jì)123.11 限制條件123.12 測(cè)試計(jì)劃133.13 尚未解決的問題13詳細(xì)設(shè)計(jì)說明書1引言1.1 編寫目的圖書管理系統(tǒng)詳細(xì)設(shè)計(jì)階段的主要任務(wù)是在圖書管理系統(tǒng)概要設(shè)計(jì)書基礎(chǔ)上,對(duì)概要設(shè)計(jì)中產(chǎn)生的功能模塊進(jìn)行過程描述,設(shè)計(jì)功能模塊的內(nèi)部細(xì)節(jié),包括算法和詳細(xì)數(shù)據(jù)結(jié)構(gòu),為編寫源代碼提供必要的說明。概要設(shè)計(jì)解決了軟件
2、系統(tǒng)總體結(jié)構(gòu)設(shè)計(jì)的問題,包括整個(gè)軟件系統(tǒng)的結(jié)構(gòu)、模塊劃分、模塊功能和模塊間的聯(lián)系等。詳細(xì)設(shè)計(jì)則要解決如何實(shí)現(xiàn)各個(gè)模塊的內(nèi)部功能,即模塊設(shè)計(jì)。具體的說,模塊設(shè)計(jì)就是要為已經(jīng)產(chǎn)生的圖書管理各子系統(tǒng)設(shè)計(jì)詳細(xì)的算法。但這并不等同于系統(tǒng)實(shí)現(xiàn)階段用具體的語言編碼,它只是對(duì)實(shí)現(xiàn)細(xì)節(jié)作精確的描述,這樣編碼階段就可以將詳細(xì)設(shè)計(jì)中對(duì)功能實(shí)現(xiàn)的描述,直接翻譯、轉(zhuǎn)化為用某種程序設(shè)計(jì)語言書寫的程序。1.2 背景本項(xiàng)目的名稱:圖書管理系統(tǒng)本項(xiàng)目的提出者:軟件工程課程教師一一本項(xiàng)目開發(fā)者:賓亞、劉飛、譚艷本項(xiàng)目的用戶:讀者、圖書管理員1.3 定義SQLServer:數(shù)據(jù)庫管理軟件DBMS:數(shù)據(jù)庫管理系統(tǒng)Windows200
3、0/2003/XP:運(yùn)行環(huán)境ASP:軟件開發(fā)語言MacromediaDreamweaver8:開發(fā)工具1.4 參考資料軟件工程導(dǎo)論(第五版)張海藩編著清華大學(xué)出版社2008年2月第5版數(shù)據(jù)庫系統(tǒng)概論(第四版)王珊薩師熠高等教育出版社2006年5月第4版2程序系統(tǒng)的結(jié)構(gòu)依據(jù)軟件工程的基本原理,詳細(xì)設(shè)計(jì)階段的根本任務(wù)是確定應(yīng)該怎樣具體實(shí)現(xiàn)所要求的系統(tǒng),也就是說,經(jīng)過這個(gè)階段的設(shè)計(jì)工作,應(yīng)該得出對(duì)目標(biāo)系統(tǒng)的精確描述,從而在系統(tǒng)實(shí)現(xiàn)階段可以把這個(gè)描述直接翻譯成用某種程序設(shè)計(jì)語言書寫的程序。具體來說就是把經(jīng)過總體設(shè)計(jì)得到的各個(gè)模塊詳細(xì)的加以描述。由于本系統(tǒng)采用MacromediaDreamweaver8
4、作為開發(fā)工具,ASP作為開發(fā)語言,在此給出軟件系統(tǒng)的主程序流程圖,如圖2.1所示。根據(jù)以上主程序的流程圖,我們可以得出下面的關(guān)于各個(gè)模塊的程序流程圖,如下圖所示。用戶HRE學(xué)生俏恩表操作剖布伯總利操作選件由閭信息掙節(jié)立曲匕作若出版社IS注入書號(hào)*小泡出更新/輸入所前記錄置求/都認(rèn)工借闋在找已聚兄示已呆更新教鹿卑用戶注號(hào)史新數(shù)據(jù)眸3圖書管理系統(tǒng)程序設(shè)計(jì)說明3.1程序描述本系統(tǒng)主要功能的程序描述如下:1 .借閱功能的程序描述:<%dimuid,bidbid=request("id")uid=request("userid")ifuid="&q
5、uot;thenresponse.write"<script>alert('session已經(jīng)過期,請(qǐng)重新登陸');window.location.href='login.asp'</script>"else判斷是否借過aa="select*fromloanswhereuid="&uid&"andbid="&bidsetxgw=server.CreateObject("adodb.recordset")xgw.openaa,db,1,3
6、ifnotxgw.eofthenresponse.write"<script>alert('這本書你已經(jīng)借過了咯');window.location.href='book.asp?query=all_book'</script>"elsesq="select*fromuwhereid="&uidsetqq=db.execute(sq)ifqq("loan_num")<="8"then'插入數(shù)據(jù)向loanssetrs=server.Crea
7、teObject("adodb.recordset")sql="select*fromloans"rs.opensql,db,1,3rs.addnewrs("uid")=uidrs("bid"尸bidrs("time"尸date()rs("loan_")=1rs.update'sql="insertintotableloans(uid,bid,time)valuesC"&uid&"','"&
8、;r_id&"','"&date&"')"'db.execute(sql)'更新book表sql1="updatebooksetnum=num-1whereid="&biddb.execute(sql1)'updatetableusql2="updateusetloan_num=loan_num+1whereid="&uiddb.execute(sql2)response.write"<script>ale
9、rt('借書成功');window.location.href='my_borrow.asp?id="&uid&"'</script>"elseresponse.write"<script>alert('沒有借書余額咯');history.go(-1)</script>"endifendifendif%>2 .還書功能程序描述:<%ifrequest("id")<>""andrequ
10、est("uid")<>""thendimid,uidid=request("id")uid=request("uid")'驗(yàn)證輸入正確性sql="select*fromloanswhereuid='"&uid&"'andbid='"&id&"”'setrs=server.CreateObject("adodb.recordset")rs.Opensql,db,1
11、,3ifrs.EOForrs.BOFthenresponse.write"<script>alert('輸入錯(cuò)誤');history.go(-1)</script>"else'tablebookvalueofnum+1db.execute("updatebooksetnum=num+1whereid="&id)'uloan_num-1db.execute("updateusetloan_num=loan_num-1whereid="&uid)db.execute(
12、"deletefromloanswhereuid="&uid&"andbid="&id)response.write"<script>alert('還書成功咯');history.go(-1)</script>"response.End()endifelse%>3 .添加圖書分類功能程序描述:<%'圖書分類添加過程:如果請(qǐng)求操作是分類增加,首先判斷是否有請(qǐng)求類型,有的話執(zhí)行添加,沒有就執(zhí)行輸入類型ifrequest("query")
13、="type_add"thenifrequest("booktype")<>""thensetrs=server.createobject("adodb.recordset")sql="select*frombooktypewherebooktype="'&request("booktype")&""'rs.opensql,db,1,3ifnotrs.eofornotrs.bofthenresponse.writ
14、e"scriptlanguage=javascript>alert('已經(jīng)有這個(gè)分類');history.back(-1)</script>"elsers.addnewrs("booktype"尸request("booktype")rs.updaters.closesetrs=nothingresponse.redirect("book.asp?query=all_type")endifelse如果分類增加得到確認(rèn)但是沒有數(shù)據(jù),提示輸入ifrequest("add&qu
15、ot;尸"add"thenresponse.write"scriptlanguage=javascript>alert('分類增加得到確認(rèn)但是沒有數(shù)據(jù),提示輸入');history.back(-1)</script>"endif%>4 .刪除圖書分類程序描述:<%'分類刪除確認(rèn)該分類下已經(jīng)沒有圖書了再刪除該分類ifrequest("query")="type_del"thenifrequest("id")<>""
16、;thensql1="select*frombooktypewhereid="&request("id")setrs1=db.execute(sql1)qq="select*frombookwherebooktype='"&rs1("booktype")&""'setrq=db.execute(qq)ifrq.eoforrq.bofthensql="deletefrombooktypewhereid="&request(&quo
17、t;id")db.execute(sql)response.write"<script>alert('刪除成功');window.location.href='book.asp?query=all_type'</script>"else分類下存在書,跳到該分類下的書,如果還想繼續(xù)刪除該分類的話response.write"<script>alert('分類下存在書,不能刪除');window.location.href='book.asp?query=books_
18、of_type&booktype="&rs1("booktype")&"'</script>"endifelse%>3.2功能3.2.1 功能需求(一)3.2.1.1 規(guī)格說明讀者登記,即輸入讀者的具體信息。輸由讀喬H體信息傳統(tǒng)昔件山閣系it文則過理入錄通管打T愉人工建桿H體信息3.2.1.2 引言為了把讀者的具體信息(包括:姓名,密碼,狀態(tài),借書數(shù),信箱等)寫入讀者目錄文件中。3.2.1.3 輸入讀者具體信息。3.2.1.4 處理通過圖書管理系統(tǒng)寫入讀者目錄文件中。3.2.1.5 輸出讀者具體
19、信息。3.2.2功能需求(二)3.2.2.1 規(guī)格說明輸入新書的全部信息。輸入:新書的全部信息R統(tǒng)心件M圖系圖文m過理入錄通管普口+新息部3222引言為了輸入新書的全部信息(包括:3.2.2.3 輸入新書的全部信息。3.2.2.4 處理書號(hào)、書名、分類、作者、出版社、價(jià)格、數(shù)量、出版日期等)通過圖書管理系統(tǒng)寫入圖書目錄文件中。3.2.2.5輸出新書信息的全部內(nèi)容。3.2.3功能需求(三)3.2.3.1規(guī)格說明查詢圖書的信息。處理:利用關(guān)犍字在圖書目錄文件中找到此圖書分類號(hào)或書名圖甘的相關(guān)信息的信R書關(guān)愉圖相息圖書管理系統(tǒng)軟件需求分析3.2.3.2 引言為了查找圖書的相關(guān)信息。3.2.3.3 輸
20、入圖書信息的關(guān)鍵字(圖書分類號(hào)和書名)。3.2.3.4 處理利用關(guān)鍵字在圖書目錄文件中找到此圖書分類號(hào)或書名圖書的相關(guān)信息。3.2.3.5 輸出圖書的相關(guān)信息。3.2.4功能需求(四)3.2.4.1 規(guī)格說明輸入讀者借書信息。3.2.4.2 引言為了把讀者借書的相關(guān)信息(包括:圖書名、分類、借閱日期等)寫入借書文件中。3.2.4.3 輸入讀者借書信息。3.2.4.4 處理通過圖書管理系統(tǒng)寫入借書文件中。3.2.4.5 輸出讀者借書信息的全部內(nèi)容3.3 性能3.3.1 精度需求在精度需求上,根據(jù)使用需要,在各項(xiàng)數(shù)據(jù)的輸入,輸出及傳輸過程中,可以滿足各種精度的需求。3.3.2 間需求在軟件方面,響
21、應(yīng)時(shí)間,更新處理時(shí)間都比較快且迅速,完全滿足用戶要求。3.3.3 靈活性當(dāng)用戶需求,如操作方式,運(yùn)行環(huán)境,結(jié)果精度,數(shù)據(jù)結(jié)構(gòu)于其他軟件接口等發(fā)生變化時(shí),設(shè)計(jì)的軟件要做適當(dāng)調(diào)整,靈活性非常大。3.3.4 故障處理a.內(nèi)部故障處理在開發(fā)階段可以隨即修改數(shù)據(jù)庫里的相應(yīng)內(nèi)容。b.外部故障處理對(duì)編輯的程序進(jìn)行調(diào)試,遇到錯(cuò)誤信息,根據(jù)錯(cuò)誤信息修改程序再調(diào)試,直至功能實(shí)現(xiàn)為止。說明對(duì)該程序的全部性能要求,包括對(duì)精度、靈活性和時(shí)間特性的要求。3.4 輸入項(xiàng)給出對(duì)每一個(gè)輸入項(xiàng)的特性,包括名稱、標(biāo)識(shí)、數(shù)據(jù)的類型和格式、數(shù)據(jù)值的有效范圍、輸入的方式。數(shù)量和頻度、輸入媒體、輸入數(shù)據(jù)的來源和安全保密條件等等。1.1.1
22、 主模塊輸入項(xiàng)目:操作系統(tǒng)傳遞至的各種消息以及用戶的輸入數(shù)據(jù)。1.1.2 用戶管理模塊輸入項(xiàng)目:與用戶管理操作有關(guān)的用戶輸入及系統(tǒng)消息。1.1.3 圖書管理模塊輸入項(xiàng)目:書號(hào)。1.1.4 借閱管理模塊輸入項(xiàng)目:學(xué)生學(xué)號(hào)、書號(hào)。1.1.5 歸還管理模塊輸入項(xiàng)目:圖書號(hào)。3.5輸由項(xiàng)3.5.1主模塊輸出項(xiàng)目:用戶界面顯示。1.1.6 用戶管理模塊輸出項(xiàng)目:操作結(jié)果顯示。1.1.7 圖書管理模塊輸出項(xiàng)目:相應(yīng)的界面。1.1.8 借閱管理模塊輸出項(xiàng)目:學(xué)生信息、相關(guān)借書信息。1.1.9 歸還管理模塊輸出項(xiàng)目:相關(guān)學(xué)生信息。3.6 算法本系統(tǒng)是一個(gè)B/S模式的管理系統(tǒng)。沒有涉及到復(fù)雜的算法。簡(jiǎn)單的編程就
23、能實(shí)現(xiàn)3.7 流程邏輯本系統(tǒng)的總體程序流程圖如下:3.7.1 登陸模塊人機(jī)界面設(shè)計(jì):系統(tǒng)響應(yīng)時(shí)間:用戶或管理人員登陸的響應(yīng)時(shí)間應(yīng)穩(wěn)定在1s左右;出錯(cuò)信息處理:若用戶或管理人員輸入的帳號(hào)和密碼不匹配或輸入不存在的帳號(hào),系統(tǒng)應(yīng)友好進(jìn)行提示,如提示“請(qǐng)重新輸入!”過程設(shè)計(jì):盒圖:輸入帳號(hào)輸入密碼判斷密碼是否止確一_丫-N顯示該用戶信息,等提示錯(cuò)誤信息,返回登陸待繼續(xù)操作.界囿.判定表:123帳號(hào)正確TTF密碼匹配TF登陸成功X返回登陸界面XX3.7.2用戶登記a)程序描述實(shí)現(xiàn)用戶信息登記功能b)輸入項(xiàng)用字符串表示的漢字,字符串最大長度是c)輸出項(xiàng)用字符串表示的漢字,字符串最大長度是3.7.3 圖書添
24、加a)程序描述實(shí)現(xiàn)圖書登記的功能10;整數(shù)類型的數(shù)字和時(shí)間類型的日期10;整數(shù)類型的數(shù)字和時(shí)間類型的日期b)輸入項(xiàng)用字符串表示的漢字或英文,字符串最大長度是c)輸出項(xiàng)用字符串表示的漢字或英文,字符串最大長度是3.7.4 圖書查詢程序設(shè)計(jì)a)程序描述實(shí)現(xiàn)查書功能。b)輸入項(xiàng)用字符串表示的漢字或英文,字符串的最大長度為c)輸出項(xiàng)用字符串表示的漢字或英文,字符串的最大長度為3.7.5 借閱登記a)程序描述實(shí)現(xiàn)借閱功能b)輸入項(xiàng)用字符串表示的漢字或英文,字符串的最大長度為c)輸出項(xiàng)用字符串表示的漢字或英文,字符串的最大長度為20;數(shù)值型的數(shù)字20;數(shù)值型的數(shù)字40個(gè)字符。輸入方式為標(biāo)準(zhǔn)輸入。40個(gè)字符
25、。輸出方式為標(biāo)準(zhǔn)輸出。40個(gè)字符。輸入方式為標(biāo)準(zhǔn)輸入。40個(gè)字符。輸出方式為標(biāo)準(zhǔn)輸出。3.8 接口3.8.1 外部接口按Windows應(yīng)用軟件用戶界面的規(guī)范來設(shè)計(jì),使用以對(duì)話框?yàn)橹鞯挠脩艚缑?,便于用戶使用?.8.2 內(nèi)部接口模塊間接口采用數(shù)據(jù)耦合方式,通過參數(shù)表傳送數(shù)據(jù),交換信息。3.8.3 用戶接口本產(chǎn)品的用戶一般需要通過終端進(jìn)行操作,進(jìn)入主界面后點(diǎn)擊相應(yīng)的窗口,分別進(jìn)入相對(duì)應(yīng)的界面(如:輸入界面、輸出界面)。用戶對(duì)程序的維護(hù),最好要有備份。3.9 存儲(chǔ)分配根據(jù)需要,本程序的存儲(chǔ)分配情況如下:3.9.1 圖書文件的存儲(chǔ)分配列名數(shù)據(jù)類型長度允許空idfloat8“booktypenvarchar255publishingnvarchar2557bookmuneynvarchar25SpdatesmkLlda
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度新能源儲(chǔ)能項(xiàng)目農(nóng)民工勞務(wù)合同規(guī)范4篇
- 二零二五版年薪制勞動(dòng)合同:大數(shù)據(jù)分析行業(yè)專家協(xié)議4篇
- 2025年度農(nóng)行房貸利率調(diào)整專項(xiàng)合同書2篇
- 二零二五白蟻滅治與老舊建筑改造服務(wù)合同3篇
- 二零二五年度建筑工程合同履行補(bǔ)充協(xié)議范本3篇
- 個(gè)人承包旅游景區(qū)開發(fā)與經(jīng)營合同(2024版)3篇
- 二零二五年度節(jié)能環(huán)保門窗定制采購合同2篇
- 二手住宅買賣合同(2024版)范例2篇
- 二零二五版木托盤租賃與物流信息化建設(shè)合同4篇
- 管理決策知到智慧樹章節(jié)測(cè)試課后答案2024年秋山西財(cái)經(jīng)大學(xué)
- 飛鼠養(yǎng)殖技術(shù)指導(dǎo)
- 壞死性筋膜炎
- 2024輸血相關(guān)知識(shí)培訓(xùn)
- 整式的加減單元測(cè)試題6套
- 股權(quán)架構(gòu)完整
- 山東省泰安市2022年初中學(xué)業(yè)水平考試生物試題
- 注塑部質(zhì)量控制標(biāo)準(zhǔn)全套
- 人教A版高中數(shù)學(xué)選擇性必修第一冊(cè)第二章直線和圓的方程-經(jīng)典例題及配套練習(xí)題含答案解析
- 銀行網(wǎng)點(diǎn)服務(wù)禮儀標(biāo)準(zhǔn)培訓(xùn)課件
- 二年級(jí)下冊(cè)數(shù)學(xué)教案 -《數(shù)一數(shù)(二)》 北師大版
- 晶體三極管資料
評(píng)論
0/150
提交評(píng)論