《軟件工程》圖書管理系統(tǒng)課程設(shè)計_第1頁
《軟件工程》圖書管理系統(tǒng)課程設(shè)計_第2頁
《軟件工程》圖書管理系統(tǒng)課程設(shè)計_第3頁
《軟件工程》圖書管理系統(tǒng)課程設(shè)計_第4頁
《軟件工程》圖書管理系統(tǒng)課程設(shè)計_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1

設(shè)計目的隨著計算機(jī)技術(shù)的不斷開展計算機(jī)作為知識經(jīng)濟(jì)時代的產(chǎn)物被廣泛應(yīng)用于社會各個行業(yè)和領(lǐng)域目前我國的科技水平高速開展計算機(jī)作為今天使用最廣的現(xiàn)代化工具已深入到各個領(lǐng)域且正在成為未來社會——信息社會的重要支柱在這樣的大背景下現(xiàn)代圖書館的管理方式資源建立等方面都發(fā)生了重大變化這種變化表現(xiàn)在圖書館工作管理和效勞平臺發(fā)生的變化圖書館不再是傳統(tǒng)的手工操作,人工管理,而是全面實(shí)行計算機(jī)管理。圖書館的正常運(yùn)營中總是面對大量的讀者信息書信息以及兩者相互作用產(chǎn)生的借書信息,因此要對讀者資源,圖書資源,借書信息進(jìn)展管理。本系統(tǒng)的開發(fā)就是在于提高圖書管理的工作效率加強(qiáng)圖書館的管理全面實(shí)行計算機(jī)管理。2

可行性研究告在軟件的開發(fā)過程中這一步是十分必要的如果在定義階段及早發(fā)現(xiàn)將來可能在開發(fā)過程中的問題及早做出決斷可以防止大量的人力財力和時間上的浪費(fèi)。1.

技術(shù)可行性:本組開發(fā)成員都具有一定的電腦知識,學(xué)習(xí)過多種程序開發(fā)語言。特別是在工程確定后C#和SQLServer數(shù)據(jù)庫的強(qiáng)化學(xué)習(xí),使本系統(tǒng)成功開發(fā)成為可能。2.

經(jīng)濟(jì)可行性:本系統(tǒng)有其生存空間,成功后有其市場。并且本小組開發(fā)人員基于一種愛好去研究他的,我們有自己的電腦,可以說本錢開支極其有限。3.

現(xiàn)階段各種各樣的圖書館越來越多,圖書館的書也越來越多,圖書的管理工作也越來越復(fù)雜。本系統(tǒng)就是為了減輕圖書管理人員的工作而設(shè)計的。4.

法律可行性:本系統(tǒng)為我五人開發(fā)小組獨(dú)立完成,不關(guān)他人,開發(fā)成功后其所有權(quán)歸我們五人所有,用戶購置后其使用權(quán)一同買斷,我們將頁腳下載后可刪除,如有侵權(quán)請告知刪除!

提供技術(shù)支持。5.

基于水平和時間有限,我們的系統(tǒng)還不是十分完善。可擴(kuò)展的地方很多,現(xiàn)列舉如:建立圖書預(yù)約機(jī)制建立過期催還機(jī)制

建立讀者反應(yīng)機(jī)制建立條碼掃描機(jī)制等。3

以現(xiàn)有的人力和時間來衡量,我們只有放棄。經(jīng)過以上可行性論證,本系統(tǒng)可以按任務(wù)書要求開發(fā)。工程開發(fā)方書開發(fā)階段制定開發(fā)方案需求分析概要設(shè)計詳細(xì)設(shè)計系統(tǒng)實(shí)現(xiàn)系統(tǒng)測試編寫課程設(shè)計報告

時間進(jìn)度兩天一周一周兩周三周一周兩周4

系統(tǒng)需求規(guī)說明書該過程是個不斷認(rèn)識不斷細(xì)化的過程里所要完成的工作是深入描述軟件的功能和性能確定軟件的設(shè)計限制和軟件同其他系統(tǒng)元素的接口細(xì)節(jié)從而奠定軟件的開發(fā)根底。1.性能需求:該系統(tǒng)中,各個模塊只有管理人員才能對其進(jìn)展操作,系統(tǒng)管理人員要進(jìn)展身分驗(yàn)證才能進(jìn)入界面操作。2.功能需求:我們設(shè)計的系統(tǒng)要完成的功能模塊如下:登陸模塊

管理員管理模塊

借閱卡管理模塊

書籍管理模塊查詢管理模塊。3.環(huán)境需求:電腦需要安裝.net架,安裝SQL2021據(jù)庫,硬件要求酷睿i3雙核以上處理器,100G硬盤空間,以上內(nèi)存,系統(tǒng)應(yīng)有WindowsXP,Windows7,或Windows8操作系統(tǒng)。頁腳下載后可刪除,如有侵權(quán)請告知刪除!

4.界面需求:本軟件是面向群眾,界面友好,操作簡單靈活,根據(jù)界面上的提示便可完成一系列動作。5

概要設(shè)計說書系統(tǒng)計程(一)(二)

建庫;建立數(shù)據(jù)庫;設(shè)計相應(yīng)的操作界面;功能塊造設(shè)一、軟件設(shè)計過程對程序構(gòu)造數(shù)據(jù)構(gòu)造過程細(xì)節(jié)和接口細(xì)節(jié)逐步細(xì)化評審和編寫文檔的過程。從技術(shù)角度上,軟件設(shè)計分成體系構(gòu)造設(shè)計、數(shù)據(jù)設(shè)計、過程設(shè)計、接口設(shè)計4個方面的工作從管理角度上講軟件設(shè)計分為概要設(shè)計和詳細(xì)設(shè)計兩個階段。二、軟件設(shè)計目標(biāo)設(shè)計必須實(shí)現(xiàn)分析模型中描述的所有顯示需求須滿足用戶希望的所有隱式需求設(shè)計必須是可讀可理解的使得將來易于編程易于測試易于維護(hù);設(shè)計應(yīng)從實(shí)現(xiàn)角度出發(fā),給出數(shù)據(jù)、功能、行為相關(guān)的軟件全貌。三、根本原理和相關(guān)概念⑴抽象化:常用的抽象化手段有過程抽象、數(shù)據(jù)抽象和控制抽象●過程抽象:任何一個完成明確動能的操作都可被使用者當(dāng)做單位的實(shí)體對待,盡管這個操作時機(jī)上可能由一系列更低級的操作來完成?!駭?shù)據(jù)抽象:與過程抽象一樣,允許設(shè)計人員在不同層次上描述數(shù)據(jù)對象的細(xì)節(jié)?!衽c過程抽象和數(shù)據(jù)抽象一樣,控制抽象可以包含一個程序控制機(jī)制而無須規(guī)定其內(nèi)部細(xì)節(jié)。⑵自頂向下逐步細(xì)化將軟件的體系構(gòu)造按自頂向下方式對各個層次的過程細(xì)節(jié)和數(shù)據(jù)細(xì)節(jié)逐層細(xì)化知道用程序設(shè)計語言的語句能夠?qū)崿F(xiàn)為止從而最后確立整個的體系構(gòu)造。頁腳下載后可刪除,如有侵權(quán)請告知刪除!

⑶模塊化:將一個待開發(fā)的軟件分解成假設(shè)干個小的簡單的局部——模塊,每個模塊可獨(dú)立地開發(fā)試組裝成完整的程序是一種復(fù)雜問題的“分而治之〞的原那么。模塊化的目的是使程序構(gòu)造清晰,容易閱讀,容易理解,容易測試,容易修改。⑷控制層次:說明了程序構(gòu)件〔模塊〕的組織情況??刂茖哟瓮贸绦虻膶哟螛?gòu)造〔樹形或網(wǎng)型〕來表示?!裆疃龋撼绦驑?gòu)造的層次數(shù),可以反映程序機(jī)構(gòu)的規(guī)模和復(fù)雜程度?!駥挾龋和粚幽K的最大模塊個數(shù)●模塊的扇出:一個模塊調(diào)用〔或控制〕的其他模塊數(shù)●模塊的扇入:調(diào)用〔或控制〕一個給定模塊的模塊個數(shù)⑸信息屏蔽將每個程序的成分隱蔽或封裝在一個單一的設(shè)計模塊中定義每一個模塊時盡可能少的顯露其內(nèi)部的處理可以提高軟件的可修改性可測試性和可移植性。⑹模塊獨(dú)立每個模塊完成一個相對特定獨(dú)立的子功能并且與其他模塊之間的聯(lián)系簡單衡量度量標(biāo)準(zhǔn)有兩個模塊間的耦合和模塊的內(nèi)聚模塊獨(dú)立性強(qiáng)必須做到高內(nèi)聚低耦合?!耨詈希耗K之間聯(lián)系的嚴(yán)密程度,耦合度越高模塊的獨(dú)立性越差。耦合度從低到高的次序?yàn)榉侵苯玉詈蠑?shù)據(jù)耦合標(biāo)記耦合控制耦合外部耦合、公共耦合、內(nèi)容耦合?!駜?nèi)聚是指內(nèi)部各元素之間聯(lián)系的嚴(yán)密程度,內(nèi)聚度越低模塊的獨(dú)立性越差。內(nèi)聚度從低到高依次是:偶然內(nèi)聚、邏輯內(nèi)聚、瞬時內(nèi)聚、過程內(nèi)聚、通信內(nèi)聚、順序內(nèi)聚、功能內(nèi)聚。構(gòu)造化設(shè)計方法采用類似于構(gòu)造化分析的“由大到小〞“自頂向下逐層分解〞的根本思想描述〔分解〕系統(tǒng)。構(gòu)造化設(shè)計方法,首先以數(shù)據(jù)流圖為根底導(dǎo)出系統(tǒng)模塊〔功能〕構(gòu)造圖。在導(dǎo)出系統(tǒng)模塊〔功能〕構(gòu)造圖的過程中,以獨(dú)立性、低耦合性、高內(nèi)聚性、公共模塊作為模塊劃分的原那么。先將系統(tǒng)數(shù)據(jù)流圖中的加工轉(zhuǎn)換成模塊再將各大模塊繼續(xù)劃分為較小的模塊直到每一模塊都是功能單一的模塊。根據(jù)系統(tǒng)功能分析和圖書館管理的特點(diǎn)過模塊化的分析得到如下圖的圖頁腳下載后可刪除,如有侵權(quán)請告知刪除!

書館管理系統(tǒng)功能模塊構(gòu)造圖。圖書管理系統(tǒng)管理員管理

借書卡管理

書籍管理

查詢管理

借閱管理管理員維護(hù)

增加管理員

增加借書卡

借書卡維護(hù)

新增書籍管理

書籍信息維護(hù)

書籍信息查詢

超期圖書查詢

借書管理

還書管理E-R管理員圖編號

用戶名

密碼學(xué)生圖編號圖書圖

管理員借閱卡姓名

有效期始時間有效期束時間班級頁腳下載后可刪除,如有侵權(quán)請告知刪除!

編號

書名

作者借閱圖書名借書間歸還間系統(tǒng)整體E-R圖

圖書借書息

出版社出版日期標(biāo)識編號學(xué)生號圖書號頁腳下載后可刪除,如有侵權(quán)請告知刪除!

N

N

N

N

1

NN1

1

1

6

詳細(xì)設(shè)計說書6.1數(shù)據(jù)庫計根據(jù)設(shè)計好的各實(shí)體E-R圖創(chuàng)立數(shù)據(jù)庫的邏輯構(gòu)造,本系統(tǒng)采用了送了SQLServer2021據(jù)庫,數(shù)據(jù)庫名稱為.?dāng)?shù)據(jù)庫包含以下6個表:圖書信息book、圖書管理員admin、圖書類別type、借書卡信息表card、圖書借閱表lend。表的具體構(gòu)造如下:1〕管理員表:用于保存管理員信息,構(gòu)造如下頁腳下載后可刪除,如有侵權(quán)請告知刪除!

/******Object:Table[dbo].[Users]ScriptDate:04/26/202115:56:26******/SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATETABLE[dbo].[Users]([Name][nvarchar]50)NULL,[Password][nvarchar]50)NULL,[Type][int]NULL)ON[PRIMARY]GO2〕圖書信息表/******Object:Table[dbo].[Book]ScriptDate:04/26/202115:56:26******/SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATETABLE[dbo].[Book]([Num][nvarchar]50NOTNULL,[Name][nvarchar]50)NULL,[Author][nvarchar](50NULL,[Type][int]NULL,[ISBN][nvarchar]50)NULL,[CBS][nvarchar]50NULL,[CBRQ][datetime]NULL,[Status][nvarchar](50NULL,CONSTRAINT[PK_Book]KEYCLUSTERED([Num]ASC)WITH(PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKSONON[PRIMARY])ON[PRIMARY]頁腳下載后可刪除,如有侵權(quán)請告知刪除!

GO3〕借書卡信息表/******Object:Table[dbo].[Card]ScriptDate:04/26/202115:56:26******/SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATETABLE[dbo].[Card]([Num][nvarchar]50NOTNULL,[Name][nvarchar]50)NULL,[Class][nvarchar](50)NULL,[StartTime][datetime]NULL,[EndTime][datetime]NULL,CONSTRAINT[PK_Card]KEYCLUSTERED([Num]ASC)WITH(PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKSONON[PRIMARY])ON[PRIMARY]GO4〕圖書借閱表/******Object:Table[dbo].[Lend]ScriptDate:04/26/202115:56:26******/SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATETABLE[dbo].[Lend](頁腳下載后可刪除,如有侵權(quán)請告知刪除!

[CardNum][nvarchar](50)NULL,[BookNum][nvarchar](50)NULL,[Time][datetime]NULL,[Status][nvarchar](50NULL)ON[PRIMARY]GO5〕圖書類型表/******Object:Table[dbo].[Type]ScriptDate:04/26/202115:56:26******/SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATETABLE[dbo].[Type]([ID][int]IDENTITY11)NOTNULL,[Name][nvarchar]50)NULL,CONSTRAINT[PK_Type]KEYCLUSTERED([ID]ASC)WITH(PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKSONON[PRIMARY])ON[PRIMARY]GO6.2系統(tǒng)界設(shè)計登陸界面頁腳下載后可刪除,如有侵權(quán)請告知刪除!

//驗(yàn)證用戶privatevoidokButton_Click(objectsender,System.EventArgse){if(tB_Name.Text==""){MessageBox.Show("請輸入用戶名!,"提示);return;}if(cB_Type.SelectedIndex<0){MessageBox.Show("請選擇登陸身份!"示);return;}stringstrCommand;strCommand="selectPasswordfromUserswhereName='"+tB_Name.Text+"'";SqlCommandcommand=newSqlCommand(strCommand,DBHelper.Conn);SqlDataReaderreader;reader=command.ExecuteReader();if(reader.Read()){stringpassword=reader["Password"http://驗(yàn)證用戶if(password==tB_Password.Text){//MainForm.m_strName=tB_Name.Text;this=DialogResult.OK;this}else{MessageBox"戶或口令信息不正確!,"提);}}elseMessageBox.Show("用戶不存在!,"提示);reader.Close();}主界面頁腳下載后可刪除,如有侵權(quán)請告知刪除!

privatevoid圖書管理oolStripMenuItem_Click(objectsender,EventArgse){Bookdlg=newBook();dlg.MdiParent=this;dlg.Show();}privatevoid借書卡管理oolStripMenuItem_Click(objectsender,EventArgse){Carddlg=newCard();dlg.MdiParent=this;dlg.Show();}圖書管理頁腳下載后可刪除,如有侵權(quán)請告知刪除!

privatevoidBook_Load(sender,EventArgse){stringsql=string@"select[Num]編號Book.[Name]書名[Author]作者,Type.Name類別[ISBN],[CBS]出版社,[CBRQ]出版日期,[Status]出狀態(tài)fromBookleftjoinTypeonBook.Type=Type.ID");dataGridView1.DataSource=DBHelper.GetDataSet(sql);}privatevoidbtnAdd_Click(sender,EventArgse){BookAdddlg=newBookAdd("");dlg.ShowDialog();stringsql=string@"select[Num]編號Book.[Name]書名[Author]作者,Type.Name類別[ISBN],[CBS]出版社,[CBRQ]出版日期,[Status]出狀態(tài)fromBookleftjoinTypeonBook.Type=Type.ID");dataGridView1.DataSource=DBHelper.GetDataSet(sql);}借書卡管理頁腳下載后可刪除,如有侵權(quán)請告知刪除!

privatevoidCard_Load(sender,EventArgse){dataGridView1.DataSource=DBHelper.GetDataSet(@"select[Num]編號,[Name]姓名,[Class]班級,[StartTime]開場時間[EndTime]完畢時間[Card]");}privatevoidbutton1_Click(sender,EventArgse){CardAdddlg=newCardAdd("");dlg.ShowDialog();dataGridView1.DataSource=DBHelper.GetDataSet(@"select[Num]編號,[Name]姓名,[Class]班級,[StartTime]開場時間[EndTime]完畢時間[Card]");}借書界面頁腳下載后可刪除,如有侵權(quán)請告知刪除!

privatevoidLend_Load(sender,EventArgse){CardNum.DataSource=DBHelper.GetDataSet("select*fromCard");CardNum.DisplayMember="Num"CardNum.ValueMember="Name";CardName.Text="";BookNum.DataSource=DBHelper.GetDataSet("select*fromBook");BookNum.DisplayMember="Num"BookNum.ValueMember="Name";BookName.Text="";}privatevoidbutton1_Click(sender,EventArgse){string=.Format("insertintolendvalues('{0}','{1}','{2}',')"CardNum.Text,BookNum.Text,DateTime.Now);DBHelper.GetCommand(sql);sql=stringBooksetStatus='已借出whereNum='{0}'",BookNum.Text);DBHelper.GetCommand(sql);MessageBox"閱成功!");this.Close();}還書界面頁腳下載后可刪除,如有侵權(quán)請告知刪除!

privatevoidBack_Load(sender,EventArgse){CardNum.DataSource=DBHelper.GetDataSet("select*fromCard");CardNum.DisplayMember="Num"CardNum.ValueMember="Name";CardName.Text="";}privatevoidbutton1_Click(sender,EventArgse){stringsql=string.Format("updateLendsetStatus='還'whereBookNum='{0}'andCardNum='{1}'"BookNum.Text,CardNum.Text);DBHelper.GetCommand(sql);sql=stringBooksetStatus='未借出whereNum='{0}'",BookNum.Text);DBHelper.GetCommand(sql);MessageBox"還成功!");this.Close();}圖書查詢界面頁腳下載后可刪除,如有侵權(quán)請告知刪除!

privatevoidbutton1_Click(sender,EventArgse){stringsql=string@"select[Num]編號[Name]書名,[Author]作者,[Type]類別,[ISBN],[CBS]出版社[CBRQ]出版日期[Status]出借狀態(tài)fromBookwhereNumlike'%{0}%'orNamelike'%{0}%'orAuthorlike'%{0}%'orISBNlike'%{0}%'orCBSlike'%{0}%'"textBox1.Text);dataGridView1.DataSource=DBHelper.GetDataSet(sql);}超期未還圖書界面privatevoidBackTimeout_Load(sender,EventArgse){stringsql=string@"selectC.Num借書卡,C.Name姓,C.Class班級,B.Num書號B.Name書名,L.Time借閱時間LendLleftjoinBookBon頁腳下載后可刪除,如有侵權(quán)請告知刪除!

L.BookNum=B.NumleftjoinCardConL.CardNum=C.NumwhereL.Status='借andL.Time<'{0}'"DateTimedataGridView1.DataSource=DBHelper.GetDataSet(sql);}用戶管理界面//初始化privatevoidForm_ManagUser_Load(sender,System.EventArgse){stringstrSql="selectName,PasswordfromUsers";m_dsUser=newDataSetm_adapterUser=newSqlDataAdapter(strSql,DBHelper.Conn);m_adapterUser.Fill(m_dsUser,"users");dG_User.DataSource=m_dsUser;dG_User.DataMember="users"}//添加用戶privatevoidbutton_Add_Click(objectsender,System.EventArgse){string=.Format(INTOPassword,Type)VALUES('{0}','{1}',{2})"tB_Name.Text,tB_Password.Text,cB_Type.SelectedIndex);S

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論