




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、软件综合开发设计课程设计报告项 目 名 称 _ _项 目 负 责 人_ _项 目 组 成 员_ _填 表 日 期_ _指 导 教 师_一、 立项书开发项目名称图书馆管理系统主要应用行业1学校图书馆2公司资料管理3起止时间2010年5月3日拟评定等级b项目组情况负责人学号姓名出生年月19901联系电话住址e-mail其他成员情况学号姓名在项目中的分工用户的登录, 系统的设置图书的流程管理,图书的查询做一个简单的数据库,图书的管理项目内容及意义摘要虽然现在许多学校的图书管理水平已经在计算机管理的基础上了,但在这个日益更新的时代,计算机的管理也在不断的推陈出新,所以图书管理系统具有优化的空间,提高信
2、息处理的速度和准 确 性。主题词1主题词理数所量不多于三个;2。主题词之间空一格。及时准确 有效的查询和修改二、图书馆管理系统需求说明书1引言1.1编写目的需求说明书有时候也被称为规格说明书,本规格说明描述了图书馆管理系统的要求,并且作为各方面沟通的依据,也为下一步工作提供基准。软件开发小组的每一位成员应该阅读本需求说明,以明确项目最后要求完成的软件产品的特点。经使用方认可的需求说明将作为产品特征评价、仲裁的重要参考。1.2背景说明:a 软件系统的名称:图书馆管理系统;b 任务提出者:开发者:本项目将实现图书馆的管理,并方便用户对图书进行添加,查找等功能。c 本系统将存储用户信息,并可以与其他
3、系统共享这些注册信息,共享的系统可能是教务 管理系统。这些系统之间不提供应用程序级别的接口,数据共享通过sql server数据库表的公共访问来实现。本系统将使用sql server 2000作为数据库存储系统。1.3定义无1.4参考资料无2任务概述2.1目标当今时代是飞速发展的信息时代。在各行各业中离不开信息处理,这正是计算机网被广泛应用于管理信息系统的外部环境。计算机的最大好处在于利用它能够进行信息管理。使用计算机进行信息处理,不仅提高了工作效率,而且大大的提高了其安全性。尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。计算机进行信息管理与管理信息系统的开发密切相关,系统的开发是系统
4、管理的前提。本系统就是为了管理好图书馆信息而设计的。图书馆作为一种信息资源的集聚地,图书和用户借阅资料繁多,包含很多的信息数据的管理。本案例的问题定义是:为了减轻新生入学(或新员工入公司)、不断增加、修改图书给图书馆带来的不便而设计的。图书馆管理系统是办公自动化不可缺少的一部分,是适应现代管理制度要求、推动学生学籍管理走向科学化、规范化的必要条件。该软件最终的使用者是学校,公司,图书馆管理者,并提供以下的功能:1. 默认页提供关于图书馆的基本信息;2. 图书馆管理者可以根据读者信息创建读者的帐户;3. 如果读者输入的电子邮件 id 在数据库中已存在,系统将显示错误页;4. 图书馆管理者必须先登
5、录才能在了解图书馆的详细信息和自己的基本信息,并可以对图书进行添加、查找、修改、注销等的操作,还可对读者进行管理与归类;5. 读者必须先登录才能对图书进行借阅、归还、续借等操作。2.2用户的特点本系统主要的功能是系统分为三种不同的角色,每种不同的角色选择不同的登陆方式,实现的各自不同的操作。进入系统后,只要输入图书的书名就可以迅速的查找到图书,对图书进行管理,实现了计算机的管理,节省了大量的人力、物力和财力。2.3假定和约束约束条件包括:a、本系统的预算在10元(人民币);b、本系统的最后的交付日期是2010年7月1日,之后进行负荷测试、峰值测试、试运行,系统要求在2010年9月1日正常投入使
6、用;假设:无3需求规定 3.1对功能的规定(1)首页设计首页设计应该清晰简单、美观大方,同时还要做到信息充足,突出图书馆的特点和操作的入口。(2)用户管理只有登录后的用户才可以对图书进行管理,登录人员姓名/密码组合来进行验证。(3)图书管理对图书增加、删除、修改、注销、遗失等事件的处理。以便管理员对图书的信息直观而且有效的进行处理。(4)流通管理图书管理员可以通过流通管理里面的各个选项对借阅者所借图书进行借阅、归还、续借等操作。(5)图书查询图书信息查询可以根据书号、书名、类别、作者、出版社中所含有的信息进行检索,结果显示在下面出现的表单中。(6)系统设置在系统设置中可以对借阅设置、图书借阅时
7、限设置、类别设置、图书借阅数量设置。3.2对性能的规定3.2.1精度1、个人信息:真实,准确。2、对图书和读者进行信息查询,应执行不完全匹配的模糊查询;3.2.2时间特性要求a 用户登录请求、个人信息填写完毕后的提交、个人信息更改、删除的操作,响应时间应该在1.5s之内用户不应感到系统有延迟的时间;b 管理者对图书进行信息查询,返回记录在100行之内的,响应时间应不超过2s,超过100行记录的情况,应该进行分页显示结果信息;3.2.3灵活性a 操作方式程序在通常的应用环境下使用鼠标和键盘进行输入操作,对于执行按钮,通常使用鼠标的点击完成。b 运行环境在window xp,window vist
8、a,window 7下均可安装使用c 同其他软件的接口的变化 本系统不直接与其他的系统产生交互操作,因此不提供接口。d 精度和有效时限的变化不适用e 计划的变化或改进由于本系统的规模比较小,计划和进度的改变不影响到需要实现的需求。3.3输人输出要求系统的基本数据单元如下:数据单元名称登录组成名称格式范围精度说明密码字符10-登录所需的密码序号字符50-员工号或学号备注序号不予许重复3.4数据管理能力要求以下是每天、每月的各个单元可能产生的新的数据量、和对应可能访问值的估计次数。操作单元月访问次数数据库操作单元数借阅100-1000100-10000归还100-1000100-1000续借100
9、-1000100-1000罚款100-1000100-10003.5故障处理要求a. 在数据访问、增改时,用户输入一些不合理的数据的时候,能够进行一些合理的提示信息,不能因为输入错误而导致系统的错误,或者窗口关闭;b数据库要求有备份机制,以防止数据的全部丢失;3.6其他专门要求a安全性进行图书跟读者的信息查询和信息的修改,必须是已经登录的用户。b可扩充性系统在开发完毕以后,应允许在后续的答辩中进行功能的扩展或者功能的重新解释和实现。c健壮性系统应该保证在一次开机三个月之内稳定运行,数据库在一些事故中能够在系统安装好之后,两小时内恢复。4.1设备用户程序硬件要求:具有 pentium ii 处理
10、器且满足以下要求的计算机:最低 64 mb 内存最小 1 gb 硬盘鼠标键盘数据库服务器硬件需求:具有 pentium iii 处理器且满足以下要求的计算机:最低 256mb 内存最小 20 gb 硬盘鼠标键盘4.2支持软件用户程序软件 window xp,window vista,window 7数据库服务器软件 sql server 2005企业版4.3接口系统之间不提供应用程序级别的接口,数据共享通过sql server数据库表的公共访问来实现。4.4控制无三、数据库设计说明书数据库的设计都是有李辉完成的bborrow(借书管理)字段名数据类型描述ridchar读者编号rnamechar
11、读者姓名bidchar书编号bnamechar书名bdatedatetime借书时间bdatabacedatetime还书时间bfinechar罚款bmanage(添加图书)字段名数据类型描述bidchar图书标号bnamechar书名bnumberchar书数目bsorechar分类bstatechar借书状态bphotoimage书照片madmin(图书员管理)字段名数据类型描述mnamechar图书管理员姓名mpwdchar图书管理员密码magechar图书管理员年龄msexchar图书管理员性别注:馆长 用户名为 madmin 密码 0管理员 用户名为 admin 密码0读者信息表re
12、ader(学生表)字段名数据类型描述rsnochar学生号rnamechar学生姓名rpwdchar密码ragechar年龄rsexchar性别rbrithrstate datetimechar生日状态rnumberchar电话号码remailchar电子邮件radresschar地址rgradechar年纪rclasschar班级教师表teacher字段名数据类型描述tsnochar职工号tnamechar职工姓名tpwdchar密码tagechar年龄tsexchar性别tstate char状态tnumberchar电话号码temailchar电子邮件radresschar地址借阅历史(
13、学生版) rrecordridint读者编号 学号rnamechar读者姓名bidint图书编号bnamechar图书名称借阅历史(教师版) trecordridint读者编号 学号rnamechar读者姓名bidint图书编号bnamechar图书名称系统设置 syeridint标识readerstatechar读者(学生)借书的本书限制readerfinechar读者 超期罚款设置readertimechar读者 时间限制teacherstatechar教师 借书的本书限制teacherfinechar教师 罚款设置teachertimechar教师 时间限制四、界面截图及说明1.以下是刘
14、静所做的窗口设计: (1)登录窗口(实现管理员和馆长的登陆) (2)管理员窗口 (3)馆长窗口(4)关于窗口2. .以下是蒋玲所做的窗口设计:(1)新增图书窗口 (2)创建学生读者信息窗口(3)创建教师读者信息窗口(4)新增管理员窗口3.以下是张赛所做的窗口设计: (1)管理员的查找及修改窗口(2)学生读者的查找及修改窗口(3)教师读者的查找及修改窗口 (4)图书的查找及修改窗口4. 以下是李辉所做的窗口设计:(1)还书窗口 (2)借书窗口 (3)系统设置窗口(4)连接数据库的dbhelper类五、核心代码及注释1以下是刘静所实现窗体功能的核心代码(1)登录窗口private void but
15、ton1_click(object sender, eventargs e) bool isuser = false; string message = ; input(); if (logintype.text.trim() = 管理员) if (input() isuser = yanzhenguser(logintype.text, loginid.text, loginpwd.text, ref message); if (isuser) adminform adminform = new adminform(); adminform.show(); this.hide(); else
16、 messagebox.show(message, 登陆失败, messageboxbuttons.ok, messageboxicon.error); if(logintype.text.trim()=馆长) if (input() isuser = yanzhenguser(logintype.text, loginid.text, loginpwd.text, ref message); if (isuser) managerform managerform = new managerform(); managerform.show(); this.hide(); else messag
17、ebox.show(message, 登陆失败, messageboxbuttons.ok, messageboxicon.error); private bool input() if(loginid.text.trim()= ) messagebox.show(请输入用户名); loginid.focus(); return false; else if(loginpwd.text.trim()=) messagebox.show(请输入密码); loginpwd.focus(); return false; else if (logintype.text.trim() = ) messa
18、gebox.show(请选择类型); return false; else return true; public bool yanzhenguser(string logintype, string loginid, string loginpwd,ref string message) int count = 0; bool isuser = false; if(logintype=管理员) string sql = string.format(select count(*) from madmin where mname=0and mpwd=1,loginid,loginpwd); tr
19、y sqlcommand command = new sqlcommand(sql,dbhelper.connection); dbhelper.connection.open(); count = (int)command.executescalar(); if (count = 1) isuser = true; else message=用户名或密码错误; isuser=false; catch(exception ex) message=ex.message; console.writeline(ex.message); finally dbhelper.connection.clos
20、e(); if (logintype = 馆长) string sql = string.format(select count(*) from madmin where mname=0and mpwd=1, loginid, loginpwd); try sqlcommand command = new sqlcommand(sql, dbhelper.connection); dbhelper.connection.open(); count = (int)command.executescalar(); if (count = 1) isuser = true; else message
21、 = 用户名或密码错误; isuser = false; catch (exception ex) message = ex.message; console.writeline(ex.message); finally dbhelper.connection.close(); return isuser ; (2)管理员窗口 private void tsmiaddstudent_click(object sender, eventargs e) addsdreader addsdreader = new addsdreader(); addsdreader.showdialog(); pr
22、ivate void tsmiaddteacher_click(object sender, eventargs e) addtcreader addtcreader = new addtcreader(); addtcreader.showdialog(); private void tsmiupdatestudent_click(object sender, eventargs e) selectsdreader selectsdreader = new selectsdreader(); selectsdreader.showdialog(); private void tsmiupda
23、teteacher_click(object sender, eventargs e) selecttcreader selecttcreader = new selecttcreader(); selecttcreader.showdialog(); private void tsmiaddbook_click(object sender, eventargs e) addnewbook addnewbook = new addnewbook(); addnewbook.showdialog(); private void tsmiupdatebook_click(object sender
24、, eventargs e) updatebook updatebook = new updatebook(); updatebook.showdialog(); private void tsmiaboat_click(object sender, eventargs e) aboutform aboutform = new aboutform(); aboutform.showdialog(); private void bkborrowtc_click(object sender, eventargs e) bkborrow bkborrow = new bkborrow(); bkbo
25、rrow.showdialog(); private void bkbacktc_click(object sender, eventargs e) bkback bkback = new bkback(); bkback.showdialog(); (3)馆长窗口private void tsbtnclose_click(object sender, eventargs e) this.close(); private void tsmisystem_click(object sender, eventargs e) systemform systemform = new systemfor
26、m(); systemform.showdialog(); private void tsmiaddadmin_click(object sender, eventargs e) addadmin addadmin = new addadmin(); addadmin.showdialog(); private void tsmiselectadmin_click(object sender, eventargs e) selectadmin selectadmin = new selectadmin(); selectadmin.showdialog(); private void tsmi
27、aboat_click(object sender, eventargs e) aboutform aboutform = new aboutform(); aboutform.showdialog(); private void managerform_formclosed(object sender, formclosedeventargs e) application.exit(); (4)关于窗口 int index = 0;private void timer_tick(object sender, eventargs e) if (index ilanimation.images.
28、count - 1) index+; else index = 0; picanimation.image = ilanimation.imagesindex; 2以下是蒋玲所实现窗体功能的核心代码(1)新增图书窗口private bool validatinput() if (txtname.text = ) messagebox.show(请输入职工号, 输入提示, messageboxbuttons.ok, messageboxicon.information); txtname.focus(); return false; if (txtpassword.text = ) messag
29、ebox.show(请输入密码, 输入提示, messageboxbuttons.ok, messageboxicon.information); txtpassword.focus(); return false; if (txtpswagain.text = ) messagebox.show(请输入确认密码, 输入提示, messageboxbuttons.ok, messageboxicon.information); txtpswagain.focus(); return false; if (!(txtpassword.text = txtpswagain.text) messag
30、ebox.show(两次输入不一致, 输入提示, messageboxbuttons.ok, messageboxicon.information); txtpswagain.focus(); return false; if (txtage.text = ) messagebox.show(请输入读者姓名, 输入提示, messageboxbuttons.ok, messageboxicon.information); txtage.focus(); return false; if (!rdomale.checked & rdofemale.checked) messagebox.show
31、(请选择读者性别, 输入提示, messageboxbuttons.ok, messageboxicon.information); rdomale.focus(); return false; if (txttel.text = ) messagebox.show(请输入读者姓名, 输入提示, messageboxbuttons.ok, messageboxicon.information); txtage.focus(); return false; return true; private void btnsave_click(object sender, eventargs e) if
32、 (validatinput() string name = txtname.text; string pwd = txtpassword.text; string sex = rdomale.checked ? rdomale.text : rdofemale.text; string number = txttel.text; string age = txtage.text; string sql = string.format(insert into madmin(mname,mpwd,mage,msex,mnumber)values(0,1,2 , 3,4), name, pwd,
33、age,sex, number); try sqlcommand command = new sqlcommand(sql, dbhelper.connection); dbhelper.connection.open(); int result = command.executenonquery(); if (result 1) messagebox.show(添加失败!, 操作提示, messageboxbuttons.ok, messageboxicon.error); else messagebox.show(添加成功!, 操作提示, messageboxbuttons.ok, mes
34、sageboxicon.information); this.close(); catch (exception ex) messagebox.show(操作数据库出错!, 操作演示, messageboxbuttons.ok, messageboxicon.error); console.writeline(ex.message); finally dbhelper.connection.close(); (2)创建学生读者信息窗口private bool validatinput() if (txtreadername.text = ) messagebox.show(请输入用户名, 输入
35、提示, messageboxbuttons.ok, messageboxicon.information); txtreadername.focus(); return false; if (txtpassword.text = ) messagebox.show(请输入密码, 输入提示, messageboxbuttons.ok, messageboxicon.information); txtpassword.focus(); return false; if (txtpswagain.text = ) messagebox.show(请输入确认密码, 输入提示, messageboxbu
36、ttons.ok, messageboxicon.information); txtpswagain.focus(); return false; if (!(txtpassword.text = txtpswagain.text) messagebox.show(两次输入不一致, 输入提示, messageboxbuttons.ok, messageboxicon.information); txtpswagain.focus(); return false; if (txtname.text = ) messagebox.show(请输入读者姓名, 输入提示, messageboxbuttons.ok, messageboxicon.information); txtname.focus(); return false; if (!rdomale.checked & rdofemale.checked) messagebox.show(请选择读者性别, 输入提示, messageboxbuttons.ok, messagebox
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年西式面点师实操考核试卷:西式糕点制作流程规范
- 2025年教师资格证面试结构化面试真题卷:班级管理策略试题
- 2025年美发师实操技能考核试卷:美发师团队协作与实操试题
- 矿山主要安全管理制度
- 布袋除尘器管理制度
- 罪犯改造车间管理制度
- 网点设备准入管理制度
- 硬件出厂检验管理制度
- 矿山企业自主管理制度
- 船舶运输工程管理制度
- 2024北京初三一模英语汇编:材料作文
- T/CCMA 0137-2022防撞缓冲车
- GB/T 20854-2025金属和合金的腐蚀循环暴露在盐雾、“干”和“湿”条件下的加速试验
- 麻风病知识讲座课件
- 江苏省2025年中职职教高考文化统考数学试题答案
- 氨区作业安全培训课件
- 2025内蒙古中考:生物必背知识点
- 国有资产管理清查报告编写指南
- 2025年湖北省新高考信息卷(一)化学试题及答案
- 岩土工程设计课件
- 智能消防无人机行业深度调研及发展战略咨询报告
评论
0/150
提交评论