圖書借閱管理系統(tǒng)_第1頁
圖書借閱管理系統(tǒng)_第2頁
圖書借閱管理系統(tǒng)_第3頁
圖書借閱管理系統(tǒng)_第4頁
圖書借閱管理系統(tǒng)_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

軟件工程實驗報告題目:圖書借閱管理系統(tǒng)試驗一試驗要求:=1\*GB3①.在實驗題目列出的幾個系統(tǒng)中選擇一個作為自己要開發(fā)的軟件系統(tǒng),要求該系統(tǒng)有明確的功能需求,并建立系統(tǒng)的分析模型。=2\*GB3②.對系統(tǒng)進行需求分析,掌握ER圖、DFD、DD的設(shè)計與編寫=3\*GB3③.熟悉Visio環(huán)境和根本操作,制作一個簡單的系統(tǒng)流程圖和數(shù)據(jù)流圖、主要數(shù)據(jù)項的數(shù)據(jù)字典描述及主要加工的邏輯說明〔自己選擇結(jié)構(gòu)語言、判定樹、判定表等〕。=4\*GB3④.撰寫需求分析規(guī)格說明書試驗步驟:選擇圖書借閱管理系統(tǒng)為要開發(fā)的軟甲系統(tǒng),該系統(tǒng)要求能夠具有圖書管理和會員管理的功能,并且能夠具有增加圖書、查詢圖書、刪除圖書、圖書借閱——借書、還書的功能,還具有增加會員、查詢會員、刪除會員、借書信息等功能。功能需求2.1總體功能需求圖書館管理信息系統(tǒng)是針對圖書館的大量業(yè)務(wù)處理工作用計算機進行全面現(xiàn)代化管理.主要包括讀者管理、書籍管理、和借閱信息管理,等幾個方面的功能,以實現(xiàn)用戶方便的借書.還書.查詢所需書籍等需求。2.2具體系統(tǒng)功能需求描述1〕圖書管理功能圖書管理功能模塊要求具有增加圖書、查詢圖書、刪除圖書、圖書借閱——借書、還書以及借閱信息的功能。2〕會員管理功能會員管理功能要求具有增加會員、查詢會員、刪除會員等功能。ER圖設(shè)計ER圖中包含了實體〔即數(shù)據(jù)對象〕、關(guān)系和屬性3種根本成分。數(shù)據(jù)流圖DFD設(shè)計1〕頂層數(shù)據(jù)流圖2〕更新圖書數(shù)據(jù)流圖3〕借書數(shù)據(jù)流圖4〕還書數(shù)據(jù)流圖5數(shù)據(jù)字典DD設(shè)計1)讀者表列名數(shù)據(jù)類型位數(shù)是否為空讀者號varchar50否讀者姓名varchar50否讀者性別varchar20否聯(lián)系varchar12是最大借書量int否所在系varchar50否生效日期Datetime是失效日期Datetime是違章狀態(tài)Varchar50是累計借書Int是備注varchar100是2)管理員表列名數(shù)據(jù)類型位數(shù)是否為空工作號varchar12否密碼varchar50否姓名Varchar12是性別varchar2否Varchar12是備注varchar100是3)借閱表列名數(shù)據(jù)類型位數(shù)是否為空工作號bigint1,1否ISBNVarchar50否讀者學(xué)號Varchar50否借書日期Datetime否還書日期Datetime否真實還書日期Datetime是是否續(xù)借Varchar50是備注varchar100是4)圖書列名數(shù)據(jù)類型位數(shù)是否為空書籍編號Bigint1,1否ISBNVarchar50否書名Varchar50否作者Varchar50是出版社Varchar50是價格Money是出版日期Datetime是庫存量Int是狀態(tài)varchar50是實驗二采用面向數(shù)據(jù)流的設(shè)計方法設(shè)計系統(tǒng)軟件結(jié)構(gòu),使用Visio畫出軟件層次圖實驗要求:=1\*GB3①學(xué)習總體設(shè)計的根本方法;=2\*GB3②掌握面向數(shù)據(jù)流的設(shè)計方法;=3\*GB3③通過對實驗〔一〕中DFD圖的分析,使用Visio畫出軟件層次圖。=4\*GB3④編寫出初步的系統(tǒng)設(shè)計報告實驗步驟:根據(jù)實驗〔一〕DFD圖,使用Visio2023畫出軟件層次圖實驗〔三〕完成實驗〔二〕中的兩到三個主要功能模塊的詳細設(shè)計;編寫局部代碼實驗要求:=1\*GB3①學(xué)習詳細設(shè)計的根本方法;=2\*GB3②掌握詳細設(shè)計圖形工具的使用方法;=3\*GB3③給出主要功能模塊的算法=4\*GB3④選擇程序設(shè)計語言編寫主要功能模塊代碼。實驗步驟:圖書管理子模塊詳細設(shè)計1〕功能描述在此模塊中要求管理員對圖書管理系統(tǒng)定期核查,產(chǎn)生圖書訂購表;采購員根據(jù)訂購表采購圖書;新書入庫;管理員對圖書進行管理,更新圖書系統(tǒng),刪除破損、壞舊圖書。2〕程序流程圖3〕功能代碼實現(xiàn)privatevoidBind()//DataGridView數(shù)據(jù)綁定{stringsql="";switch(FrmMain.MenuCode){case1:sql="SELECT[UKCode],[UKName]FROM[t_User_Kind]ORDERBY[UKCode]";break;case2:sql="SELECT[RCode],[RName]FROM[LibMIS].[dbo].[t_Right]ORDERBY[RCode]";break;case3:sql="SELECT[BKCode],[BKName]FROM[LibMIS].[dbo].[t_Book_Kind]";break;}DataTabledt=dbobj.dt(sql);//讀數(shù)據(jù)dGV.DataSource=dt;//制定DataGridView數(shù)據(jù)源if(dt.Rows.Count>0){//修改界面顯示內(nèi)容switch(FrmMain.MenuCode){case1:dGV.Columns[0].HeaderText="用戶類別編碼";dGV.Columns[1].HeaderText="用戶類別名稱";break;case2:…….case3:…….}}//控制各按鈕與文本框的操作性,如單擊“增加〞、“修改〞按鈕后文本框可編輯,//同時“增加〞、“修改〞按鈕失效?!氨4妯?、“取消〞按鈕有效。privatevoidOpreateEnable(BooleanYN){txtCode.ReadOnly=!YN;txtName.ReadOnly=!YN;butAdd.Enabled=!YN;butUpdate.Enabled=!YN;butDelete.Enabled=!YN;butExit.Enabled=!YN;butSave.Enabled=YN;butCancel.Enabled=YN;}privatevoidbutAdd_Click(objectsender,EventArgse)//增加代碼{IsAdd=true;//用于在保存時,區(qū)分是新增,還是修改OpreateEnable(true);txtCode.Text="";txtName.Text="";sCode="";sName="";}privatevoidbutUpdate_Click(objectsender,EventArgse)//修改{IsAdd=false;OpreateEnable(true);txtCode.ReadOnly=true;}privatevoiddGV_Click(objectsender,EventArgse)//單擊DataGridView時在文本框中顯示選定數(shù)據(jù){inti=dGV.CurrentCell.RowIndex;txtCode.Text=dGV[0,i].Value.ToString();txtName.Text=dGV[1,i].Value.ToString();sCode=txtCode.Text.ToString();sName=txtName.Text.ToString();}privatevoidbutCancel_Click(objectsender,EventArgse)//取消修改或新增數(shù)據(jù){OpreateEnable(false);txtCode.Text=sCode;txtName.Text=sName;}privatevoidbutSave_Click(objectsender,EventArgse)//保存新增或修改數(shù)據(jù){if(FrmMain.MenuCode==1||FrmMain.MenuCode==2){if(txtCode.Text.Trim().Length!=2)//限定用戶類別編碼與權(quán)限編碼長度為2位{MessageBox.Show("編碼長度為兩位字符!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information);return;}if(txtName.Text.Trim().Length>20){MessageBox.Show("名稱長度不能超過20個字符!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information);return;}}else{if(txtCode.Text.Trim().Length>10){MessageBox.Show("編碼長度不能超過10個字符!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information);return;}if(txtName.Text.Trim().Length>20){MessageBox.Show("名稱長度不能超過40個字符!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information);return;}}stringstrSql="";if(IsAdd)//調(diào)用存儲過程完成數(shù)據(jù)保存strSql="Pr_Code_Insert";elsestrSql="Pr_Code_UPDATE";sCode=txtCode.Text.ToString();sName=txtName.Text.ToString();if(dbobj.CodeManage(sCode,sName,strSql,FrmMain.MenuCode)>0){MessageBox.Show("更新成功!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information);Bind();}else{MessageBox.Show("更新失??!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information);txtCode.Text=sCode;txtName.Text=sName;}OpreateEnable(false);}privatevoidbutDelete_Click(objectsender,EventArgse)//刪除數(shù)據(jù){stringstrSql="Pr_Code_Delete";sCode=txtCode.Text.ToString();sName=txtName.Text.ToString();if(dbobj.CodeManage(sCode,sName,strSql,FrmMain.MenuCode)>0)MessageBox.Show("刪除成功!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information);elseMessageBox.Show("刪除失?。?,"提示",MessageBoxButtons.OK,MessageBoxIcon.Information);Bind();txtCode.Text="";txtName.Text="";}圖書借閱子模塊詳細設(shè)計功能描述在此模塊中要求讀者結(jié)束之前必須對圖書信息庫進行查詢,如想借圖書當前有剩余那么可借,管理員對相應(yīng)圖書信息進行更新;反之,當有讀者還書時,也對圖書信息進行更新。程序流程圖功能代碼實現(xiàn)DBClsdbobj=newDBCls();protectedvoidPage_Load(objectsender,EventArgse){if(!IsPostBack){GVBind();stringsql="SELECT[BName],[BBDate],[BBNumber],[InLibrary]FROM[LibMIS].[dbo].[v_Bespeaking_Books]";//預(yù)約圖書sql=sql+"WHERERLCNumber='"+Session["RLCNumber"].ToString()+"'";DataTabledt=dbobj.dt(sql);GridView2.DataSource=dt;GridView2.DataBind();}}privatevoidGVBind()//借閱信息{stringsql="SELECT[LRSNumber],[RLCNumber],[LRLDate],[LRMDate],[LRIsRenew],[LRRTimes],[BName],[Status]";sql=sql+"FROM[LibMIS].[dbo].[v_Reader_Borrow_Book]WHERERLCNumber='"+Session["RLCNumber"].ToString()+"'";DataTabledt=dbobj.dt(sql);GridView1.DataSource=dt;GridView1.DataBind();}protectedvoidChkAll_CheckedChanged(objectsender,EventArgse)//全選{Booleanb;if(ChkAll.Checked==false)b=false;elseb=true;for(inti=0;i<GridView1.Rows.Count;i++){CheckBoxchk=(CheckBox)GridView1.Rows[i].FindControl("CheckBox1");if(GridView1.Rows[i].Cells[4].Text.ToString()=="超期")chk.Checked=false;elsechk.Checked=b;}}protectedvoidbutReNew_Click(objectsender,EventArgse)//續(xù)借{strings="";intBKRTimes=Convert.ToInt16(Session["BKRTimes"]);stringLRSNumber="";strings1="";intj=0;for(inti=0;i<GridView1.Rows.Count;i++){CheckBoxchk=(CheckBox)GridView1.Rows[i].FindControl("CheckBox1");if(chk.Checked){s1=GridView1.Rows[i].Cells[6].Text;if(s1==" ")j=1;elsej=Convert.ToInt16(GridView1.Rows[i].Cells[6].Text)+1;if(j<BKRTimes){LRSNumber=GridView1.DataKeys[i].Value.ToString();try{dbobj.ReNewBook(LRSNumber,Session["RKCode"].ToString());}catch(Exceptionex){throwex;return;}}elses=s+GridView1.Rows[i].Cells[0].Text+",";}}GVBind();}實驗〔四〕對所選系統(tǒng)完成系統(tǒng)測試〔2學(xué)時〕實驗要求:=1\*GB3①學(xué)習軟件測試的根本方法;=2\*GB3②結(jié)合實驗〔三〕中的算法,用白盒法中的邏輯覆蓋測試技術(shù),設(shè)計測試用例;=3\*GB3③選擇實驗〔三〕中給出代碼的模塊進行黑盒測試。實驗步驟:白盒測試白盒測試也稱結(jié)構(gòu)測試或邏輯驅(qū)動測試,它是按照程序內(nèi)部的結(jié)構(gòu)測試程序,通過測試來檢測產(chǎn)品內(nèi)部動作是否按照設(shè)計規(guī)格說明書的規(guī)定正常進行,檢驗程序中的每條通路是否都能按預(yù)定要求正確工作。1.1邏輯覆蓋有選擇的執(zhí)行程序中某些最具代表性的通路是對窮盡測試的唯一可行的代替方法。通過邏輯覆蓋中的兩種覆蓋來測試流通管理模塊下各子模塊的通路。依據(jù)是詳細設(shè)計階段的流通管理各子模塊程序流程圖。即預(yù)定流程圖,圖書借閱流程圖,圖書歸還流程圖和圖書喪失、損害處理流程圖。1)結(jié)束模塊中的條件組合覆蓋條件編號借書證號合法確認操作繼續(xù)操作執(zhí)行路徑1YYYabcdefgd2YYNabcdefgh3YN—abcded4N——abcb2〕圖書歸還模塊中的條件組合覆蓋條件編號圖書超期繼續(xù)操作執(zhí)行路徑1YYabcdefb2YNabcdefg3NYabcefb4NNabcefg組合1:圖書超期(Y)、繼續(xù)操作(N)和圖書超期(N)、繼續(xù)操作(Y)覆蓋路徑:abcdefg和abcefb組合2:圖書超期(N)、繼續(xù)操作(N)和圖書超期(Y)、繼續(xù)操作(Y)覆蓋路徑:abcefg和abcdefb2黑盒測試黑盒測試〔Black-boxTesting,又稱為功能測試或數(shù)據(jù)驅(qū)動測試〕是把測試對象作一個黑盒子。利用黑盒測試法進行動態(tài)測試時,需要測試軟件產(chǎn)品的功能,不需測試軟件產(chǎn)品的內(nèi)部結(jié)構(gòu)和處理過程。

采用黑盒技術(shù)設(shè)計測試用例的方法有:等價類劃分、邊界值分析、錯誤推

溫馨提示

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

評論

0/150

提交評論