为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

软件工程课程设计 图书借阅管理系统

2020-03-09 4页 doc 336KB 5阅读

用户头像 个人认证

木子与

暂无简介

举报
软件工程课程设计 图书借阅管理系统《软件工程》课程设计报告书项目名称:图书借阅管理系统指导老师:学生姓名:专业:班级:日期:信息科学与工程系目录一、项目计划 1(一)项目开发背景及内容 1(二)开发环境 1(三)进度安排 1二、结构化分析设计 2(一)数据流图 2(二)数据字典 3(三)加工说明(可用结构化语言描述、判定表、判定树) 8(四)结构图 9(五)流程图 9三、面向对象分析设计 11(一)用例图 11(二)对象行为模型 12(三)系统包图 13(四)类图 14(五)配置图 15四、系统实现 15(一)程序代码 15(二)功能演示(界面) 25五、测试...
软件工程课程设计 图书借阅管理系统
《软件工程》课程设计书项目名称:图书借阅管理系统指导老师:学生姓名:专业:班级:日期:信息科学与工程系目录一、项目 1(一)项目开发背景及内容 1(二)开发环境 1(三)进度安排 1二、结构化分析设计 2(一)数据流图 2(二)数据字典 3(三)加工说明(可用结构化语言描述、判定、判定树) 8(四)结构图 9(五)图 9三、面向对象分析设计 11(一)用例图 11(二)对象行为模型 12(三)系统包图 13(四)类图 14(五)配置图 15四、系统实现 15(一)程序代码 15(二)功能演示(界面) 25五、测试 27六、软件发布 28七、参考文献 28八、总结体会 29 一、项目计划(一)项目开发背景及内容随着计算机技术的不断发展,计算机作为知识经济时代的产物,已被广泛应用于社会各个行业和领域。目前,我国的科技水平高速发展,计算机作为今天使用最广的现代化工具已深入到各个领域,并且正在成为未来社会——信息社会的重要支柱。在这样的大背景下,现代图书馆的管理方式,资源建设等方面都发生了重大变化,这种变化表现在图书馆工作,管理和服务平台发生的变化,图书馆不再是传统的手工操作,人工管理,而是全面实行计算机管理。图书馆的正常运营中总是面对大量的读者信息,图书信息以及两者相互作用产生的借书信息,因此要对读者资源,图书资源,借书信息进行管理。本系统的开发就是在于提高图书借阅管理的工作效率,加强图书馆的管理,全面实行计算机管理。(2)开发环境开发环境:Win7旗舰版开发工具:Visualbasic6.0ACCESS作图软件:MicrosoftVisio2010(3)进度安排该软件应用MicrosoftVisio2010和Visualbasic6.0,ACCESS进行编程作图,历时大概两周,最终完成了这个小型图书借阅管理系统。由于时间仓促,该小型图书借阅管理系统并不完善。我用了两天时间查找相关资料,两天时间编写代码和连接数据库。其余三天开始用MicrosoftVisio2010画数据流图、结构图、流程图、用例图和包图类图。整个过程系我们三人分工人完成。二、结构化分析设计(一)数据流图 图2.2.1系统的数据流图图2.2.21层数据流图(2)数据字典在定义的图书借阅管理系统数据字典中,主要对数据流图中的数据项、数据流、数据存储和处理过程进行说明。(1)数据项描述1)数据项名称:借书证号含义说明:惟一标识一个借书证类型:字符型长度:50逻辑关系:不允许为空2)数据项名称:用户名含义说明:读者的名称类型:字符型长度:20逻辑关系:不允许为空3)数据项名称:密码含义说明:对用户名和操作员管理员进行加密类型;字符型长度:10逻辑关系:允许为空4)数据项名称:性别类型:字符型长度:10逻辑关系:允许为空5)数据项名称:所在系别类型;字符型长度:10逻辑关系:允许为空6)数据项名称:所在班级类型:字符型长度:10逻辑关系:允许为空7)数据项名称:操作员名称类型:字符型长度:30逻辑关系:不允许为空8)数据项名称:操作员简称含义说明:惟一标识一个操作员类型:字符型长度:10逻辑关系:不允许为空9)数据项名称:操作员级别含义说明:对操作员和管理员进行区分类型:字符型长度:10逻辑关系:不允许为空10)数据项名称:图书编号含义说明:惟一标识一个图书类型:字符型长度:10逻辑关系:不允许为空11)数据项名称:图书名称类型:字符型长度:50逻辑关系:不允许为空12)数据项名称:作者类型:字符型长度:50逻辑关系:不允许为空13)数据项名称:出版社类型:字符型长度:50逻辑关系:不允许为空14)数据项名称:出版时间类型:日期时间型长度:8逻辑关系:不允许为空15)数据项名称:价格类型:整型长度:4逻辑关系:不允许为空16)数据项名称:备注类型:字符型长度:200逻辑关系:允许为空17)数据项名称:借书日期类型:日期时间长度:8逻辑关系:不允许为空18)数据项名称:还书日期类型:日期时间长度:8逻辑关系:不允许为(2)数据结构描述1)数据流名称:用户情况含义说明:定义了一个读者的有关信息组成结构:用户情况=用户名+借书证号+密码+性别+所在系别+所在班级2)数据流名称:操作员情况含义说明:定义了一个操作员的有关信息组成结构:操作员情况=操作员名称+操作员简称+操作员级别+操作员密码3)数据流名称:图书情况含义说明:定义了一个图书的有关信息组成结构:图书情况=图书编号+图书名称+作者+出版社+出版时间+价格+备注(3)数据流描述1)数据流名称:借书含义:读者借书时的记录来源:读者去向:审核借书数据流量:>50份/天组成:借书单=借书证号+图书编号+借书日期2)数据流名称:还书含义:读者还书时要填写的记录来源:读者去向:审核还书数据流量:>25份/天组成:还书单=图书编号+还书日期(4)数据存储说明1)数据存储名称:图书数据表含义说明:存放图书的有关信息组成结构:图书编号+图书名称+作者+出版社+出版时间+价格+备注说明;书号具有惟一性和非空性2)数据存储名称:用户信息表含义说明:存放读者的注册信息组成结构:用户名+借书证号+密码+性别+所在系别+所在班级说明:证号具有惟一性和非空性,性别只能是男和女3)数据存储名称:借书记录含义说明:存放读者的借书,还书信息组成结构:借书证号+图书编号+借书日期+还书日期说明:要求能够立即查询(5)处理过程说明1)处理过程名称:图书管理输入:图书情况,输出:图书记录处理说明:对馆内所有图书按图书编号进行管理,将图书数据数据化,存储图书数据表中。2)处理过程名称:读者管理输入:读者情况,输出:读者记录处理说明:建立读者信息表,对读者进行统一编号,实现读者记录表的增删改维护功能。3)处理过程名称:查看数目输入:借书请求,读者输出:借书记录,图书信息处理说明:实现根据图书编号等查询图书。4)处理过程名称:借书处理输入:图书情况,读者,借书记录输出:借书记录处理说明:确认读者符合借书条件,办理借书手续。5)处理过程名称:还书处理输入:图书情况,输出:借书记录处理说明:对照相应的图书编号可办理还书手续。6)处理过程名称:安全管理输入:操作员情况,用户情况输出:操作员级别,操作员记录,用户记录处理说明:通过用户名和口令,确认用户身份,保证系统的安全型。(三)加工说明(可用结构化语言描述、判定表、判定树)图2.3.1借阅管理系统的判定树(四)结构图图2.4.1系统的结构图(5)流程图图2.5.1系统登录流程图图2.5.2系统的借书流程图图2.5.3系统的还书流程图三、面向对象分析设计(一)用例图用例图在需求分析阶段有重要作用,它是作为参与者的外部用户所能观察到的系统功能模型图。整个开发过程都是围绕需求阶段用例进行的。图3.1.1系统的用例图(2)对象行为模型图3.2.1系统状态图图3.1.2系统活动图(三)系统包图图3.3.1系统的包图数据库包:包含数据库中所有的数据信息用户包:包含要使用系统的用户及其属性管理员包:包含要使用系统的管理员及其属性接口包:表示系统和数据库的借口系统包:表示图书借阅管理系统(四)类图类是面对对象系统组成的核心。类是对一组相同属性、操作、关系和语义的对象的描述。这些对象包括了对现实世界中的物理实体、商业事务、逻辑事务、应用事务和行为事务等,甚至也包括了纯粹概念性的事务,它们都是类的实例。图3.4.1系统的类图(五)配置图图3.5.1系统配置图四、系统实现(一)程序代码图书借阅管理:PublicSchCndAsStringPrivateSubCmd_Add_Click()'初始化FrmBorrowEdit信息'设置借阅编号为当前编号最大值+1DimJYNoAsString'取表中的最大借阅编号JYNo="00"+Trim(Str(Val(MyBorrow.GetMaxNo())+1))FrmBorrowEdit.txtBorrowNo="JY"+JYNoFrmBorrowEdit.txtBorrowDate=DateFrmBorrowEdit.txtReturnDate=""FrmBorrowEdit.txtBCount=0FrmBorrowEdit.txtCardNo=""FrmBorrowEdit.txtName=""FrmBorrowEdit.txtCardType=""FrmBorrowEdit.txtMaxCount=0FrmBorrowEdit.txtMaxDays=0FrmBorrowEdit.txtBookNo=""FrmBorrowEdit.txtBookName=""FrmBorrowEdit.txtBookType=""FrmBorrowEdit.txtLCount=0FrmBorrowEdit.txtTotal=0'设置添加图书按钮不能用FrmBorrowEdit.Cmd_Add.Enabled=FalseFrmBorrowEdit.Cmd_Del=FalseFrmBorrowEdit.Cmd_Ok.Enabled=False'设置图书信息不能用FrmBorrowEdit.Frame2.Enabled=False'启动编辑窗体FrmBorrowEdit.Show1'刷新DataGrid表格的内容GridRefreshEndSub'单击“返回”按钮PrivateSubCmd_Back_Click()UnloadMeEndSubPrivateSubCmd_Push_Click()'列出离应归还日期小于等于5天的图书FrmPush.Show1EndSubPrivateSubCmd_Return_Click()'归还调用FrmReturnEdit窗体,需要输入借阅证号,提取该证借阅信息FrmReturnEdit.Show1GridRefreshEndSubPrivateSubComboFlag_click()GridRefreshEndSub'启动窗体PrivateSubForm_Load()'设置借阅状态为"借阅"ComboFlag.ListIndex=0'刷新DataGrid表格的内容GridRefreshEndSubPrivateSubGridRefresh()IfComboFlag.ListIndex>0ThenSchCnd="ANDl.Status='"+Trim(ComboFlag.Text)+"'"ElseSchCnd=""EndIf'设置ADO控件的连接字符串Adodc1.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="_+App.Path+"\Books.mdb;PersistSecurityInfo=False"'刷新DataGrid记录'设置数据源Adodc1.RecordSource="SELECTl.BookNoAS图书编号,i.BookNameAS图书名称,"_+"l.BCountAS借阅数量,b.BorrowNoAS借阅编号,b.CardNoAS借阅证编号,c.NameAS姓名,"_+"BorrowDateAS借阅日期"_+"FROMBorrowb,BorrowListl,Cardsc,BookInfoi"_+"WHEREl.BNo=b.BorrowNoANDb.CardNo=c.CardNoANDl.BookNo=i.BookNo"+SchCnd_+"ORDERBYl.BookNo,b.BorrowDateDESC"'MsgBox(Adodc1.RecordSource)Adodc1.RefreshDataGrid1.Columns(0).Width=1200DataGrid1.Columns(1).Width=1600DataGrid1.Columns(2).Width=1200DataGrid1.Columns(3).Width=1400DataGrid1.Columns(4).Width=1400DataGrid1.Columns(5).Width=1200DataGrid1.Columns(6).Width=1400EndSub编辑用户信息:PublicModifyAsBooleanPublicOriUserAsStringPrivateSubCmd_Cancel_Click()UnloadMeEndSubPrivateSubCmd_OK_Click()IfTrim(txtUserName)=""ThenMsgBox"请输入用户名"txtUserName.SetFocusExitSubEndIfIfLen(txtPass)<6ThenMsgBox"密码长度不能小于6"txtPass.SetFocustxtPass.SelStart=0txtPass.SelLength=Len(txtPass2)ExitSubEndIfIftxtPass<>txtPass2ThenMsgBox"密码和确认密码不相同,请重新确认"txtPass2.SetFocustxtPass2.SelStart=0txtPass2.SelLength=Len(txtPass2)ExitSubEndIfWithMyUserIfModify=FalseOrOriUser<>Trim(txtUserName)ThenIf.In_DB(MakeStr(txtUserName))=TrueThenMsgBox"用户名已经存在,请重新输入"txtUserName.SetFocustxtUserName.SelStart=0txtUserName.SelLength=Len(txtUserName)ExitSubEndIfEndIf.UserName=MakeStr(txtUserName).Pwd=MakeStr(txtPass)IfModify=FalseThen.InsertMsgBox"添加完成"Else.Update(OriUser)MsgBox"修改完成"'如果修改自身用户名,则更新CurUser对象IfOriUser=CurUser.UserNameAndTrim(txtUserName)<>OriUserThenCurUser.UserName=Trim(txtUserName)CurUser.GetInfo(CurUser.UserName)EndIfEndIfEndWithUnloadMeEndSubPrivateSubForm_Load()EndSubPrivateSubtxtPass_Change()EndSub用户管理:PrivateSubCmd_Add_Click()WithFrmUserEdit.txtUserName="".txtPass="".txtPass2="".Modify=False.Show1EndWithAdoUserList.RefreshDataList1_ClickEndSubPrivateSubCmd_Back_Click()UnloadMeEndSubPrivateSubCmd_Del_Click()IfDataList1.Text=""ThenMsgBox"请选择要删除的用户"ExitSubEndIfIfMyUser.UserName="Admin"ThenMsgBox"此用户不能删除"ExitSubEndIf'确认删除IfMsgBox("是否删除当前用户",vbYesNo,"请确认")=vbYesThenMyUser.Delete(DataList1.Text)MsgBox"成功删除"AdoUserList.RefreshDataList1_ClickEndIfEndSubPrivateSubCmd_Modi_Click()IfDataList1.Text=""ThenMsgBox"请选择要修改的用户"ExitSubEndIfWithFrmUserEdit.OriUser=MyUser.Overcame.txtUserName=MyUser.UserName.txtPass=MyUser.Pwd.txtPass2=MyUser.PwdIfTrim(MyUser.UserName)="Admin"Then.txtUserName.Enabled=FalseEndIf.Modify=True.Show1EndWithAdoUserList.RefreshDataList1_ClickEndSubPrivateSubDataList1_Click()IfDataList1.Text=""ThenExitSubEndIf'读取用户数据MyUser.GetInfo(DataList1.Text)lblUserName=MyUser.UserNameIfTrim(MyUser.UserName)="Admin"ThenlblUserType="系统管理员"ElselblUserType="普通用户"EndIfEndSubPrivateSubForm_Load()lblUserType=""lblUserName=""'设置ADO控件的连接字符串AdoUserList.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="_+App.Path+"\Books.mdb;PersistSecurityInfo=False"'设置数据源AdoUserList.RecordSource="SELECT*FROMUsers"AdoUserList.RefreshEndSubPrivateSubFrame2_DragDrop(SourceAsControl,XAsSingle,YAsSingle)EndSub(二)功能演示(界面)图4.2.1图书借阅管理系统主界面图图4.2.2用户登录图图4.2.3借阅管理图图4.2.4用户管理图图4.2.5编辑用户信息图五、测试 序号 测试内容 测试数据 期望结果 测试结果 测试结论 1 合法输入 00001 王明00001女20123456计算机 王明00001女20123456计算机 正确 2 错误证件号名 10060028 提示“请输入正确的证件号!” 提示“请输入正确的证件号!” 正确 3 空数据 Null 提示“请输入正确的证件号!” 提示“请输入正确的证件号!” 正确系统用户管理测试用例 序号 测试内容 测试数据 期望结果 测试结果 测试结论 1 合法输入格式 20天 没超期 没超期 正确 2 超期 40天 超期,交罚金 超期,交罚金 正确还书模块测试用例 序号 测试内容 测试数据 期望结果 测试结果 测试结论 1 合法输入格式 00001 索书号为:00001,书名为:Java程序设计,现有数量为1,出版社为:清华大学出版社,作者为:沈泽刚 索书号为:00001,书名为:Java程序设计,现有数量为1,出版社为:清华大学出版社,作者为:沈泽刚 正确 2 错误索书号 0 提示“对不起,没有您要找的书籍!” 提示“对不起,没有您要找的书籍!” 正确 3 空索书号 Null 提示“对不起,没有您要找的书籍!” 提示“对不起,没有您要找的书籍!” 正确借书模块测试用例6、软件发布1.电脑操作系统:Win7旗舰版,开发工具:Visualbasic6.0ACCESS2.系统配置说明:分别给开发工具配置特定环境,特别注意连接数据库的语句是否匹配。3.登录用户名:admin密码:admin登录用户名:079041密码:079041七、参考文献[1]窦万峰.软件工程方法与实践[M].机械工业出版社,2009[2]史济民,顾春华,郑红。软件工程—原理、方法与应用。高等教育出版社,200928
/
本文档为【软件工程课程设计 图书借阅管理系统】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索