软件工程课程设计基于C#的图书管理系统设计和实现.doc_第1页
软件工程课程设计基于C#的图书管理系统设计和实现.doc_第2页
软件工程课程设计基于C#的图书管理系统设计和实现.doc_第3页
软件工程课程设计基于C#的图书管理系统设计和实现.doc_第4页
软件工程课程设计基于C#的图书管理系统设计和实现.doc_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

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

文档简介

_学院_级_专业 姓名_ 学号_(密)(封)(线)四川师范大学成都学院课程考查(论文/作业)专用封面作业(论文)题目: 基于c#的图书管理系统设计和实现 所修课程名称: 软件工程课程设计计 修课程时间: 2013 年 9 月至 2013 年 12 月完成论文(作业)日期: 2013 年 12 月评阅成绩: 评阅意见:总成绩由平时成绩、期末测验两部分组成,共计100分。平时成绩出 勤、卫 生、课 堂 作 业(总分100分)期末测验成绩期末考查(软件50分+文档50分)总成绩平时30%+期末考查70%(总分100分)评阅教师签名: 2013年12月27 日四川师范大学成都学院计算机学院软件工程课程设计 基于c#的图书管理系统设计和实现学生姓名周杨学 号2011102060所 在 系计算机学院专业名称计算机科学与技术班 级2011级计科(软件工程)指导教师王 敏四川师范大学成都学院二一四年十二月 四川师范大学成都学院计算机学院软件工程课程设计基于c#的图书管理系统设计和实现学生:周杨 指导教师:王敏内容摘要:图书馆管理系统是采用c#做前台,后台数据库则采用的是sql server 2008,本系统提供5个功能模块,分别是图书设置模块、图书管理模块、读者管理模块,以及系统帮助模块。这5个模块里又有许多子模块,通过这些模块之间的相互连接与配合,完成管理员发出的各种指令。图书馆管理系统是一个供内部人员使用的系统。管理员主要负责图书的借阅和归还的工作,还能够对书籍信息、读者信息、用户信息等进行管理。论文将全面介绍所设计的图书馆管理系统的系统功能和业务流程,并对系统进行详细的数据分析和设计,最终使用c#完成系统开发。关键词:图书馆管理系统,sql server 2008,c#the books management system based on c# design and implementationabstract:library management system is to use c # to do the front desk, backstage supporters database is used in sql server 2008, this system provides five function modules, respectively is book setting module, books management module, the reader management module, and system help module. and there are many sub-modules in the five modules, through the connection and cooperation between these modules, finish all kinds of instructions from the administrator.library management system is a system for the use of internal staff. administrators responsible for book borrowing and returned to work, can the books information, readers information, user information, etc.papers will be fully agency design of system function and business process of library management system, and detailed data on the system analysis and design, finally complete system development using c#.keywords:library management system, sql server 2008, c#目 录前言11、 系统概述11.1 系统开发背景和意义12、 系统需求分析22.1 需求分析22.2 功能分析22.3 系统用例图设计32.4 绘制系统流程图32.5 系统的开发环境43、系统总体设计43.1 业务流程44、 详细设计54.1 程序流程图54.2数据库的设计64.2.1 数据库分析64.2.2数据库概念设计64.2.3数据逻辑结构设计85、编码实现105.1 程序编码105.1.1 系统登录模块105.1.2 系统主窗体模块125.1.3 读者信息管理模块135.1.4 图书设置管理模块166、 测试分析报告196.1 测试项目196.2 测试用例207、结束语21参考文献22前言随着社会的发展,人们对于知识的需求也在不断地增长。书籍作为人们获取并增长知识的主要途径,使得图书馆在人们生活中占有了一定位置。但是近几年来,随着书量的不断增长,造成了书库空间极度不足,图书挤压,管理不善。这些都直接影响了读者对图书馆藏书的充分利用。这时图书馆就特别需要开发一套图书馆管理系统,通过该系统来提高图书馆的管理效率,从而减少管理方面的工作流和成本。一个现代化的图书馆在正常运营中总是面对大量的读者信息,书籍信息以及两者相互作用产生的借书信息,还书信息。面对图书馆数以万计的图书,纷繁复杂的读者信息,频繁更替的借还书信息,传统的直接方法不但管理出现漏洞,造成损失。因此有一个智能化、系统化、信息化的图书管理系统十分重要的。充分利用计算机的功能实现对读者管理、书籍管理,借阅管理等自动化控制,将会使图书馆的工作大大减弱。方便友好的图形界面、简便的操作、完善的数据库管理。将会使得图书馆系统极大限度的应用于现代化图书管理中。1 系统概述1.1 系统开发背景和意义图书管理是高校内每一个系或院都必须切实面对的工作,但一直以来人们使用传统的人工方式管理图书资料。这种方式存在着许多缺点,如效率低、保密性差且较为繁琐。另外,随着图书资料数量的增加,其工作量也将大大增加,这必将增加图书资料管理者的工作量和劳动强度,这将给图书资料信息的查找、更新和维护都带来了很多困难。经过详细的调查,目前我国各类高等学校中有相当一部分单位图书资料管理还停留在人工管理的基础上。这样的管理机制已经不能适应时代的发展,其管理方法将浪费许多人力和物力。随着科学技术的不断提高,这种传统的手工管理方法必然被以计算机为基础的信息管理方法所取代。图书管理作为计算机应用的一个分支,有着手工管理无法比拟的优点,如检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高图书管理的效率。因此,开发一套能够为用户提供充足的信息和快捷的查询手段的图书管理系统,将是非常必要的,也是十分及时的。2 系统需求分析2.1 需求分析图书馆管理系统是一个高度集成的图书信息处理系统,通过将图书馆的各种功能进行整合,从而达到显示检索信息,提高工作效率,降低管理成本等目的。一个典型的图书馆管理系统应该能够管理所有的图书种类,图书信息以及读者信息,还需要提供各种图书信息的检索查询功能。该系统还需要能够对图书的借阅,归还进行管理。通过该系统的自动化管理,能够大大减少图书馆管理人员,还能减少管理人员的工作任务,从而降低管理开销和成本。一个完整的图书馆管理系统包括前台和后台,前台主要是显示在计算机屏幕上的显示界面,有各种指令按钮,以及文本框,后台主要是为前台的一些操作提供一些必要的数据,也就是一个相对于系统比较完整的数据库,操作员以及各类图书的信息,借书者的信息等等。一个最基本的图书馆管理系统要有如下几个重要功能:(1)管理员可以方便进行图书管理,用户管理,读者管理。图书设置包括图书的添加,修改,删除,查询。用户管理包括用户信息的注册,管理。读者管理包括读者信息的添加,删除,修改、查询等。(2)实现查询,使用户得到更多的相关记录。并且考虑使用的方便性,一些经常使用的输入无须用户输入,比如进行图书查询时图书类别只须用户做选择就可以。一个图书馆管理系统要是能实现以上的各种功能,那么这个图书馆管理系统也就算是比较成功的一个系统了。2.2 功能分析 根据以上需求分析,我所设计的图书馆管理系统有5个功能模块,分别是图书设置模块、图书管理模块、读者管理模块,以及系统帮助模块。其中各功能模块的具体说明如下:图书设置模块:该模块主要负责管理图书馆的图书信息,如图书的添加、图书的修改、图书的删除等信息。图书管理模块:该模块主要负责管理图书馆的图书信息,如图书借阅、图书归还等信息。读者信息管理模块:该模块主要负责管理图书馆的读者信息,如读者编号、读者信息等信息。用户管理模块:该模块主要负责用户的注册、添加、修改。系统帮助模块:该模块主要是关于、帮助、退出模块。2.3 系统用例图设计图书馆管理系统是一个内部人员使用的系统,也就是说不是所有的人都能够使用它,只有图书馆的工作人员才能使用。管理员对图书信息,读者信息,用户信息的管理。下面以管理员为例绘制其所对应的用例图如图1.1所示。图2.3-1 管理员用例图2.4 绘制系统流程图本系统首先需要对用户的身份进行识别,只有合法的用户才能进入系统,否则将无法进入系统。进入系统后,首先打开系统主窗体,在系统首页的菜单栏或者功能区可以选择各种导航链接来进行各种操作。其系统流程图如图2.4-1所示。图书馆管理系统图书管理图书设置读者管理用户管理系统帮助图书添加模块图书删除模块图书查询模块图书撤销模块图书修改模块读者添加模块读者删除模块读者修改模块图书借阅模块用户注册模块读者查询模块用户管理模块退出模块帮助模块关于模块图书归还模块图2.4-1 系统流程图2.5 系统的开发环境图书馆管理系统的具体开发环境要求如下:(1) 系统开发平台:visual studio 2008。(2) 数据库管理系统软件:sql server 2008。(3) 运行平台:windows 7。3 系统总体设计3.1 业务流程根据需求分析的得到的业务处理流程,在用户反复研究后,首先确定目标系统的业务流程,其处理流程如图3.1-1。图3.1-1图书管理系统的业务流程4、 详细设计4.1 程序流程图依据软件工程的基本原理,详细设计阶段的根本任务是确定应该怎样具体实现所要求的系统,也就是说,经过这个阶段的设计工作,应该得出对目标系统的精确描述,从而在系统实现阶段可以把这个描述直接翻译成用某种程序设计语言书写的程序。具体来说就是把经过总体设计得到的各个模块详细的加以描述。由于本系统采用支持面向对象的visual studio 2008作为开发工具,而visual studio 2008采用事件驱动的编程机制,所以在此给出软件系统的主程序流程图,如图4.1-1所示。开始显示主界面是否合法管理员登录选择操作用户管理读者管理图书设置图书管理退出系统系统帮助yesno图4.1-1程序流程图4.2数据库的设计4.2.1 数据库分析在开发图书馆管理系统时,考虑到图书量大,数据库维护大的特点,选用sql server 2008作为数据库管理系统。在sql server 2008中新增一个数据库,其数据库名为bookmanager。数据库中可以包含图书信息、图书借阅信息、用户信息及读者信息等实体,用来存储不同的信息。4.2.2数据库概念设计本系统一共设计规划出4个实体,分别是图书信息实体、读者信息实体、用户信息实体、图书借阅信息实体以及图书订购信息实体。图书有很多,因此可以建立一个图书信息表,专门用来保存图书的信息。图书信息实体e-r图如图4.2-2所示。图4.2-2 图书信息实体e-r图要想在图书馆借书首先要有借阅证才能借书。所以需要建立一个读者信息表来保存图书馆的所有读者的登记信息。读者信息实体e-r图如图4.2-3所示。图4.2-3 读者信息实体e-r图图书馆需要建立一个用户信息表,用来保存用户的身份信息。用户信息实体e-r图如图4.2-4所示。图4.2-4用户信息实体e-r图图书馆最大的功能就是能够借书,这时需要建立一个图书借阅信息表,用来保存读者的借书信息。图书的借阅信息实体e-r图如图4.2-5所示。图4.2-5图书的借阅信息实体e-r图4.2.3数据逻辑结构设计根据设计好的各实体e-r图创建数据库的逻辑结构,数据库各表的结构如下:(1)图书信息表用来储存所有的图书信息,包括图书编号、类别、书名、作者、出版社、出版日期以及单价7个字段。该表的逻辑结构如表4.2-6所示。表4.2-6图书信息表字 段 名数 据 类 型是 否 主 键描 述bookid(int)是图书编号type(varchar)否类别bookname(varchar)否书名author(varchar)否作者publish(varchar)否出版社publishtime(smallldatetime)否出版日期price(numeric)否单价(2)读者信息表用来储存所有的读者信息,包括读者姓名、学号、性别、出生日期、读者编号、院系、专业7个字段。该表的逻辑结构如表4.2-7所示。表4.2-7 读者信息表字 段 名数 据 类 型是 否 主 键描 述name(varchar)是读者姓名sex(varchar)否性别birth(smalldatetime)否出生日期id(varchar)否学号dept(varchar)否院系major(varchar)否专业readerid(int)是读者编号(4) 用户信息表用来保存用户信息,包括用户名、真实姓名、密码、用户类型、备注5个字段。该表的逻辑结构如表4.2-8所示。表4.2-8操作员信息表字 段 名数 据 类 型是 否 主 键描 述name文本(varchar)否用户名remark文本(varchar)否备注truename文本(varchar)否真实姓名usertype文本(varchar)否用户类型password文本(varchar)否密码(5) 图书借阅信息表用来保存所有图书的借阅信息,包括读者编号、姓名、图书编号、可借数量、借阅时间、归还时间、书名、单价8字段。该表的逻辑结构如表4.2-9所示。表4.2-9图书借阅信息表字 段 名数 据 类 型是 否 主 键描 述bookid(int)否(外键)图书编号readerid(int)否(外键)读者编号borrowtime(smalldatetime)否借书日期backtime(smalldatetime)否归还日期name(varchar)否姓名maxnumint 否可借数量bookname(varchar)否书名pricenumeric(4,2)否单价5、编码实现5.1 程序编码5.1.1 系统登录模块对于图书馆管理系统而言,不是所有的用户都是可以使用的,所有需要添加一个登陆模块。通过该模块来对用户的合法性进行判断,只有合法的用户才能进入到系统。整个登陆模块的实现非常简单,相信读者能够快速掌握其开发过程。登录模块的运行结果如图5.1-1所示。图5.1-1 登陆界面程序代码如下:public partial class 图书馆管理系统 : form managerlogin f1 = new managerlogin(); public 图书馆管理系统() initializecomponent(); private void button1_click(object sender, eventargs e) string username = textbox1.text; string password = textbox2.text; string usertype = combobox1.text; if(username.length =10|password.length 10) messagebox.show(用户名或者密码不正确); return; database db = new database(); if (!db.databaseconn() messagebox.show(database error!); this.visible = false; return; string sql = select * from user where username=+username+and password=+password+ and usertype=+usertype+; sqlcommand sqlcmd = new sqlcommand(sql,db.getconn (); if (sqlcmd.executescalar () = null) messagebox.show(用户名或密码错误); return; f1.show(); this.visible = false; private void button3_click(object sender, eventargs e) application.exit(); private void 图书馆管理系统_load(object sender, eventargs e) combobox1.selectedindex = 0; private void button2_click(object sender, eventargs e) textbox1.text = ; textbox2.text = ; combobox1.text=; 5.1.2 系统主窗体模块主窗体的界面,新建一个类mianlogin类,用来显示登录窗体。在该窗体中需要使用到四类控件,分别是linklabel、toolstripmenuitem、groupbox。其中控件linklabel用来提供各种常用功能链接。 主界面如图5.1-2所示。图5.1-2 程序主界面5.1.3 读者信息管理模块读者信息管理模块包含三个子模块,分别是读者信息添加、读者信息修改与删除、读者信息查询。其中读者信息添加模块用来录入新的读者信息,读者信息修改与删除模块用来修改和删除已有的读者信息,读者信息查询用于查询所有的读者信息。其系统运行界面如图5.1-3所示。读者信息添加界面如图5.1-3所示。图5.1-3读者信息登记界面5.1.4 图书设置管理模块 图书设置管理模块包含五子模块,其中包括图书信息添加和图书信息修改。其中图书信息添加模块用来录入新的图书信息,图书信息修改模块用来修改已有的图书信息。图书信息登记界面如图5.1-4所示。图5.1-4图书信息添加界面图5.1-5 图书信息查询界面6、 测试分析报告6.1 测试项目页面测试:逐个测试每个页面是否可以正确显示,显示页面是否美观,易懂,测试各菜单能否正常运行。经测试,所有界面均可以正确显示,显示页面比较美观,易懂,各菜单均能正常运行。功能测试:对每个菜单下的功能逐一测试,尽最大可能发现潜在的错误。经测试,每个菜单下的功能均能实现,暂未发现其潜在的错误。需求测试:根据需求分析的内容,测试系统是否和当初的设计一样。经测试,所设计的图书馆管理系统基本满足当初的设计需求。6.2 测试用例根据本系统的测试项目需求,设计了部分测试用例,见表6.2-1。表6.2-1 测试用例表用例编号测试模块输入输出预期结果与预期结果1登陆模块用户名:admin密 码:123进入主系统界面进入主系统界面相同2图书信息添加输入图书编号:10011类别:小说书名:小时代作者:郭敬明出版社:北京出版社出版日期: 2002-4-19单价:45“添加成功!”“

温馨提示

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

评论

0/150

提交评论