软件工程图书借阅管理系统课程设计说明书_第1页
软件工程图书借阅管理系统课程设计说明书_第2页
软件工程图书借阅管理系统课程设计说明书_第3页
软件工程图书借阅管理系统课程设计说明书_第4页
软件工程图书借阅管理系统课程设计说明书_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数学与计算机学院课程设计说明书课程名称:软件工程课程设计课程代码:8404131题目:图书借阅管理系统年级/专业/班:2009级信息与计算科学1班学生姓名:张彰开始时间:2012年6月01日完成时间:2012年6月15日课程设计成绩:学习态度及平时成绩(30)技术水平与实际能力(20)创新(5)说明书(计算书、图纸、分析报告)撰写质量(45)总分(100)指导教师签名:年月日目录1需求分析 =11系统功能分析 =11系统性能分析 2系统数据需求 =222系统数据流图 =333数据字典 =554概要设计 =884.1系统结构分析 =884.2数据库分析 =13135总体详细设计 =15156系统测试 =2222总结 27致谢 28参考文献 29摘要图书管理系统是智能办公系统(IOA)的重要组成部分,因此,图书管理系统也以方便、快捷的优点正慢慢地进入人们的生活,将传统的图书管理方式彻底的解脱出来,提高效率,减轻工作人员以往繁忙的工作,减小出错的概率,使读者可以花更多的时间在选择书和看书上。从而使人们有更多时间来获取信息、了解信息、掌握信息。其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。采用SQLServer2008数据库作为后台数据库、VisualC#编程语言作为前台开发工具,通过对数据库技术进行了较深入的学习和应用,主要完成书目检索、读者管理、借阅管理、图书管理、用户维护、系统维护等系统功能。系统运行结果证明,本文所设计的图书管理系统可以满足学生和教师借阅者、图书管理员两方面的需要,达到了设计要求。关键词:图书管理;系统设计;信息;;SQLServer2008引言随着计算机及网络技术的飞速发展,Internet/Intranet应用在全球范围内日益普及,当今社会正快速向信息化社会前进,信息系统的作用也越来越大。图书馆在正常运营中总是面对大量的读者信息,书籍信息以及由两者相互作用产生的借书信息,还书信息。因此图书管理信息化是发展的必然趋势。用结构化系统分析与设计的方法,建立一套有效的图书信息管理系统,可以减轻工作,将工作科学化、规范化,提高了图书馆信息管理的工作质量因此根据图书馆目前实际的管理情况开发一套图书管理系统是十分必要的。一需求分析 需求(requirement)分析是定义软件的最后一个阶段,在整个软件生存周期中处于十分关键的地位,它是架起最终用户与软件产品之间关系的桥梁工程。需求分析的基本任务是对目标系统提出完整、准确、清晰、具体的要求。需求分析的结果是系统开发的基础,关系到工程的成败和软件产品的质量。系统功能需求分析根据图书借阅管理系统工程的特点,可以将其分为系统管理,读者管理,图书管理,图书借还,系统查询和排行榜等6个部分。图书管理系统图书管理系统系统设置管理员设置书架设置读者管理排行榜图书管理图书借还系统查询读者类型管理图书借阅排行榜读者借阅排行榜图书借阅查询图书档案查询图书归还图书借阅图书档案管理图书类型管理读者档案管理图1-1系统功能分析系统性能需求分析界面设计友好,美观。数据存储安全,可靠。信息分类清晰,准确。强大的查询功能,保证数据查询的灵活性。实现对图书借阅、续借和归还过程的全程数据信息跟踪。提供图书借阅排行榜,为图书馆管理员提供了真实的数据信息。提供借阅到期提醒功能,使图书管理员可以及时了解到已经到达归还日期的图书借阅信息。提供灵活、方便的权限设置功能,使整个系统的管理分工明确。具有易维护性和易操作性。系统数据需求分析图书信息读者信息图书借阅信息图书归还信息管理员信息二系统数据流图2.1数据流图符号说明数据的源点/终点变换数据的处理数据存储 数据流(1)图书借阅系统完成用户的借书过程其数据流图如图1-2所示。图1-2借阅系统的数据流图(2)还书系统完成图书的归还过程其数据流图如图1-3所示图1-3归还系统的数据流图(3)读者档案系统用于记录读者的详细信息其数据流图如图1-4所示。图1-4读者档案管理数据流图三数据字典(简称为DD)绘制DFD,只是对数据处理和彼此之间的联系进行了说明。为进一步明确数据的详细内容和数据加工过程,应将数据流图中的全部数据流及其组成部分的数据元素,数据存储,数据加工,通过数据字典描述清楚,以便于此后系统设计的进行。这就需要开发人员编写详细的数据字典,来描述系统开发过程的细节。下面列出本系统中的数据项、数据流、数据存储、加工处理和数据结构的数据字典。数据字典可采用图表格式或较紧凑的记录格式描述,本文采用的是图表格式。⑴数据项的DD表列举如下(限于篇幅,仅列举部分):表3.1书籍编号的数据字典数据项系统名:图书借阅系统编号:I001名称:书籍编号别名:图书编号数据项值:类型:字符型长度:10个字节取值范围:简述:每部书籍都具有唯一的编号,它是某本书籍的唯一标识符,如“Tp-0460000”通常用前两位字符表示分类号,中间破折号,最后四位表示该书在该类书中的序号。修改记录:编写日期审核日期表3.2类别名称的数据字典数据项系统名:图书借阅系统编号:I002名称:类别编号别名:数据项值:类型:字符型长度:10个字节取值范围:简述:图书类别有社会、人文、数理等每个类别都有一个编号修改记录:编写日期审核日期表3.3用户名的数据字典数据项系统名:图书借阅系统编号:I003名称:用户名别名:数据项值:类型:字符型长度:10个字节取值范围:简述:使用本系统的图书管理员名称,可以是英文字母数字或汉字修改记录:编写日期审核日期表3.4读者编号的数据字典数据项系统名:图书借阅系统编号:I004名称:读者编号别名:数据项值:类型:字符型长度:10个字节取值范围:简述:借阅图书的学生或教职工的编号修改记录:编写日期审核日期⑵数据流的DD表列举如下(限于篇幅,仅列举一个):表3.5数据流的DD表数据流系统名:图书借阅系统编号:F1条目名称:借书来源:读者去处:图书借阅管理员数据流组成:借书=﹛借阅编号+读者编号+读者姓名+书籍编号+书籍名称+借出日期+还书日期﹜简要说明:修改记录:编写日期审核日期⑶数据存储的DD表列举如下(限于篇幅,仅列举一个):表3.6数据存储的DD表数据存储系统名:图书借阅系统编号:D1条目名称:借书情况主关键字:借阅编号数据量:记录数:相关处理:数据存储组成:借书证号+藏书号+借书日期简要说明:按借书的先后顺序排列修改记录:编写日期审核日期⑷数据处理加工的DD表列举如下:表3.7数据处理加工的DD表数据处理加工系统名:图书借阅系统编号:条目名称:查询图书输入:借书信息输出:查询结果处理逻辑:进行图书的查询简要说明:当查询图书时发生,根据读者的图书的分类号和类别号查询修改记录:编写日期审核日期四系统概要设计系统方案确定通过对系统调研与分析,系统主要应完成的功能如下:书库信息管理、读者档案管理、借阅管理、还书管理、图书检索、系统维护。系统结构设计图书馆管理系统包含图书采编、读者管理、流通、查询等功能。该系统执行时,先输入数据,然后根据输入的数据选择执行路径;购入图书进行登记、编目调用图书采编功能,借书、还书调用功能,查询调用查询功能。图书馆借阅管理系统属于事务型系统,其系统示意图如下图所示:接受数据接受数据事务中心图书采编读者管理图书流通查询 图4-1系统示意图系统结构图示意如下:图书馆管理系统图书馆管理系统图书采编读者管理图书流通查询输入图书信息借书还书 图4-2系统结构图系统功能图如下:图书馆管理系统图书馆管理系统系统登陆系统管理图书管理借书证管理借书添加管理员修改密码退出图书类别管理图书信息管理新开借书证借书证查询借书还书读者管理读者类别管理读者信息管理图4-3系统功能图 4.2数据库设计数据库(Database),是按照数据结构来组织、存储和管理数据的仓库,是用于查询的大量数据的存储区域。使用数据库可以带来许多好处:如减少了数据的冗余度,从而大大地节省了数据的存储空间,实现数据资源的充分共享等等。此外,数据库技术还为用户提供了非常简便的使用手段,使用户易于编写有关数据库应用程序。特别是近年来推出的计算机关系数据库管理系统,操作直观,使用灵活,编程方便,功能强大,环境适应广泛,数据处理能力极强。数据库的设计是指对一个给定的应用环境,构造数据库模式,建立数据库及其应用系统,满足各种用户需求。作为信息资源开发、管理和服务的一种有效的手段,数据库技术的应用已越来越广泛,从小型的单项事务处理系统到大型的信息系统大都用先进的数据库技术来保持系统数据的安全性、完整性和共享性。对一个实际的系统来说,数据库表的设计在遵循数据库理论的同时,必须能用开发工具来实现用户在各方面提出的功能要求。概念结构设计在系统的数据库设计中,先要对系统分析得到的数据字典中的数据存储进行分析,分析各数据存储之间的关系,然后才能得出系统的关系模式。可以采用E-R图的方法来进行数据结构分析,E-R设计方法是一种通过E-R图来描述现实世界信息结构的DB设计方法。1. :读者 读者邮箱姓名登记日期 登录密码编号邮箱姓名登记日期 登录密码编号 图4-5读者E-R图2.借阅E-R图如图4.6所示:借阅信息借阅信息读者编号还书日期借出日期书籍编号借阅编号读者编号还书日期借出日期书籍编号借阅编号 图4-6借阅E-R图 图书类别图书类别类别名称类别编号 图4-7图书类别的E-R图4.系统管理的E-R图如图4.8所示:系统管理员系统管理员用户名密码编号图4-8系统管理的E-R图本系统中所涉及到的主要实体及其属性有读者信息:{读者编号,读者姓名,读者,读者Email,,创建日期,读者密码}借阅信息:{借阅编号,读者编号,书籍条形码,借出日期,还书日期}书籍信息:{书籍条形码,书名,类别,作者,翻译人员,出版社,价钱,库存量,登记日期,借阅次数}图书类别:{类别名称,类别名称}系统管理:{用户名,密码,编号}本系统的实体-联系(E-R)图为了使E-R图表示得更加清晰,现将分E-R图组合成实体及其属性图和实体及其联系图。如图4.11所示(实体的属性没有标出):mn登记维护mn借阅借阅mn登记维护mn借阅借阅图书馆工作人员图书馆工作人员书籍读者书籍读者nn还书m还书m 图4-11系统E-R图E-R图向关系模型转换的结果如下(带下划线的字段为此关系的码):读者信息:{读者编号,读者姓名,读者,读者Email,,创建日期,读者密码}借阅信息:{借阅编号,读者编号,书籍条形码,借出日期,还书日期}书籍信息:{书籍条形码,书名,类别,作者,翻译人员,出版社,价钱,库存量,登记日期,借阅次数}图书类别:{类别名称,类别名称}系统管理:{编号,用户名,密码}各表的物理结构如下读者信息表结构如表4.1所示:字段名称类型是否为空注释ReaderNumberVarchar(30)NOTNULL读者编号ReaderNameVarchar(50)读者姓名ReaderTelVarchar(20)ReaderEmailVarchar(30)邮箱CreateDateSmalldatetime登记时期ReaderPasswordVarchar(30)密码表4.1读者信息表tb_reader借阅信息表结构如表4.2所示:表4.2借阅信息表tb_borrowAndBack字段名称类型是否为空注释IDIntNOTNULL编号ReaderNumberVarchar(30)读者编号BookCodeVarchar(30)图书条形码BorrowTimesmalldatetime借出世间ShouldBackTimesmalldatetime归还时间字段名称类型是否为空注释BookCodeVarchar(30)NOTNULL图书条形码BookNameVarchar(50)书名TypeVarchar(50)类别BookWriterVarchar(50)作者BookTranslatorVarchar(50)译者PubNameVarchar(50)出版社BookPriceMoney价格BookAmountInt数量InTimesmalldatetime进馆时间BorrowNumberint借出次数书籍信息表结构如表4.3所示:表4.3书籍信息表tb_bookinfo书籍类别信息结构如表4.4所示:表4.4书籍类别信息tb_type字段名称类型是否为空注释TypeIDIntNOTNULL编号TypeNameVarchar(30)类别名称系统管理结构如表所示:字段名称类型是否为空注释AdminIDIntNOTNULL编号AdminNameVarchar(30)姓名AdminPasswordVarchar(30)密码表系统管理tb_admin五总体设计在以上工作的基础上,我们对有输出要求的全部数据进行各种分析后,进一步实现了整个系统的人—机接口的结合,提出了系统细化后的数据流图和系统的总体结构模块图。模块分析5.1.1用户登录模块和管理员登录模块 当我们开始运行这个软件时,会出现如图8界面,即用户登陆界面:图8登陆界面登录界面需要的主要代码:namespace图书借阅管理系统{publicpartialclass系统界面:Form{public系统界面(){InitializeComponent();}privatevoid借阅界面_Load(objectsender,EventArgse){}privatevoidbutton1_Click_1(objectsender,EventArgse){管理员登陆p=new管理员登陆();how();}privatevoidbutton3_Click(objectsender,EventArgse){this.Close();}privatevoidbutton2_Click(objectsender,EventArgse){读者界面p=new读者界面();p.Show();}}}}5.2跳转界面 当我们输入正确的用户名和密码后,会跳转到如图9界面,即跳转界面:图9跳转界面输入正确的信息后,进入到跳转界面。此模块用到的主要代码:publicpartialclass管理员界面:Form{public管理员界面(){InitializeComponent();}privatevoidbutton2_Click(objectsender,EventArgse){读者建档p=new读者建档();p.Show();this.Close();}privatevoidbutton3_Click(objectsender,EventArgse){图书维护p=new图书维护();p.Show();this.Close();}privatevoidbutton4_Click(objectsender,EventArgse){读者维护p=new读者维护();p.Show();this.Close();}privatevoidbutton1_Click(objectsender,EventArgse){图书建档p=new图书建档();p.Show();}privatevoidbutton5_Click(objectsender,EventArgse){}privatevoid管理员界面_Load(objectsender,EventArgse)5.3图书查询界面图10菜谱查询界面该模块的核心代码:namespace图书借阅管理系统{publicpartialclass管理员界面:Form{public管理员界面(){InitializeComponent();}privatevoidbutton2_Click(objectsender,EventArgse){读者建档p=new读者建档();p.Show();this.Close();}privatevoidbutton3_Click(objectsender,EventArgse){图书维护p=new图书维护();p.Show();this.Close();}privatevoidbutton4_Click(objectsender,EventArgse){读者维护p=new读者维护();p.Show();this.Close();}privatevoidbutton1_Click(objectsender,EventArgse){图书建档p=new图书建档();p.Show();}}}5.4归还图书界面 图11菜谱修改界面该模块的核心代码:publicpartialclass读者还书:Form{public读者还书(){InitializeComponent();}privatevoidbutton2_Click(objectsender,EventArgse){this.Close();}privatevoidbutton1_Click(objectsender,EventArgse){if(textBox1.Text==""){MessageBox.Show("输入值不能为空!");}else{intt;stringsqlconnstr=ConfigurationManager.ConnectionStrings["ConnectionString"].ToString();SqlConnectionsqlc=newSqlConnection(sqlconnstr);SqlCommandsqlcommand=newSqlCommand();sqlcommand.Connection=sqlc;sqlcommand.CommandText="deletefromjieyuewherebook_ID=@book_ID";sqlcommand.Parameters.AddWithValue("@book_ID",textBox1.Text);try{sqlc.Open();t=sqlcommand.ExecuteNonQuery();if(t>0){label2.Text="还书成功!";}else{label2.Text="该记录不存在";}}catch(Exceptionex){label2.Text="错误原因:"+ex.Message;}finally{sqlcommand=null;sqlc.Close();sqlc=null;}}}privatevoidtextBox1_TextChanged(objectsender,EventArgse){}}5.5添加图书界面当管理员登录界面之后,将显示系统提供给管理员,方便管理员进行处理:图12管理员添加图书界面该模块的核心代码:publicpartialclass管理员界面:Form{public管理员界面(){InitializeComponent();}privatevoidbutton2_Click(objectsender,EventArgse){读者建档p=new读者建档();p.Show();this.Close();}privatevoidbutton3_Click(objectsender,EventArgse){图书维护p=new图书维护();p.Show();this.Close();}privatevoidbutton4_Click(objectsender,EventArgse){读者维护p=new读者维护();p.Show();this.Close();}privatevoidbutton1_Click(objectsender,EventArgse){图书建档p=new图书建档();p.Show();}privatevoidbutton5_Click(objectsender,EventArgse){}privatevoid管理员界面_Load(objectsender,EventArgse){}}5.6删除读者界面 根据管理员输入读者的编号,即可删除读者,如图13图图13删除读者界面该模块的核心代码:public读者维护(){InitializeComponent();}privatevoidbutton3_Click(objectsender,EventArgse){this.Close();}privatevoidbutton1_Click(objectsender,EventArgse){if(textBox1.Text==""){MessageBox.Show("输入值不能为空!");}else{stringsqlconnstr=ConfigurationManager.ConnectionStrings["ConnectionString"].ToString();SqlConnectionsqlc=newSqlConnection(sqlconnstr);stringsql=string.Format("selectcount(*)fromreaderwherereader_ID='{0}'",textBox1.Text.Trim());SqlCommandsqlm=newSqlCommand(sql,sqlc);sqlc.Open();Stringt=sqlm.ExecuteScalar().ToString();if(t!="0"){DataSetds=newDataSet();DataTabledtable;DataRowCollectioncoldrow;DataRowdrow;//sqlc.Open();stringsqlse="select*fromreaderwherereader_ID='"+textBox1.Text.Trim()+"'";SqlDataAdaptersqld=newSqlDataAdapter(sqlse,sqlc);sqld.Fill(ds,"Cb");dtable=ds.Tables["Cb"];coldrow=dtable.Rows;for(inti=0;i<coldrow.Count;i++){drow=coldrow[i];label2.Text+="读者ID:"+drow[0]+"";label2.Text+="读者姓名:"+drow[1]+"";label2.Text+="读者:"+drow[2]+"\r\n";}sqlc.Close();sqlc=null;}else{MessageBox.Show("该读者未注册或ID输入错误!");}}}privatevoidbutton2_Click(objectsender,EventArgse){if(textBox1.Text==""){MessageBox.Show("输入值不能为空!");}else{intt;stringsqlconnstr=ConfigurationManager.ConnectionStrings["ConnectionString"].ToString();SqlConnectionsqlc=newSqlConnection(sqlconnstr);SqlCommandsqlcommand=newSqlCommand();sqlcommand.Connection=sqlc;sqlcommand.CommandText="deletefromreaderwherereader_ID=@reader_ID";sqlcommand.Parameters.AddWithValue("@reader_ID",textBox1.Text);try{sqlc.Open();t=sqlcommand.ExecuteNonQuery();if(t>0){label2.Text="成功注销记录";}else

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论