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

下载本文档

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

文档简介

软件工程项目报告图书管理系统班级:项目经理:项目组成员:模块负责人需求分析用例图代码设计数据库设计界面设计目录第一章绪论……………………项目背景…………………………….编写目的…………………………….第二章需求分析…………………………..系统功能需求分析…………….主要参与者………………………..用例图………………..系统用例一览表…………………用例规约……………………………时序图………………..第三章系统设计……………………………系统实体总类图以及介绍…………………相关数据库的设计……………E-R图……………………………数据库的设计……………….主界面设计………………………..登录/注册界面设计……………………...管理员操作页面…………………………读者用户管理界面………………………代码设计………………………第四章结束语第一章绪论项目背景随着时代的发展,计算机技术越来越深入各行各业,为广大的用户提供了更为周到和便捷的服务。目前各行各业广泛使用专用系统,其用户群十分庞大,因此,设计开发好一个系统是十分重要。近年来,随着用户要求的不断提高及计算机科学的迅速发展,特别是数据库技术的广泛应用,向用户提供的服务将越来越丰富,越来越人性化。本系统通过强大的计算机技术给图书管理人员和读者借、还书带来便利。本系统除了图书馆内管理的一般功能除外,还包括网上在线查询图书信息、查询本人的借阅情况。编写目的本系统最终将达到减少了人力与管理成本,提高信息准确度,改进管理和服务,建立高效的平台,提高信息处理速度和利用率,系统设计优良,界面设计精美、快捷,人性化设计,后台管理功能好、效率高,更简便、信息化程度更高的图书管理流程。第二章需求分析系统功能需求分析设计图书馆管理系统。此系统要达到方便读者查找图书,阅读图书,而且也要方便图书馆管理员的管理工作。管理员:对图书的订购、摆放、添加、删除、查询、统计、修改图书信息。对读者的信息进行安全管理,所谓安全管理也就是对读者的所有注册信息进行保密管理,也就是只有此管理员可以获取和查看读者的信息(读者本人也可以查看),其他人则无权查看与修改。对读者的借还信息进行管理,即当读者借阅图书时将读者的借阅信息保存,同时将某图书被借阅的信息保存;当读者归还图书时可以及时将归还信息保存,实现消除该读者的借书信息,以方便读者继续借阅书籍。读者进行借阅书籍时,只需要找到管理员即可获得自己想要阅览的书籍的信息,这样可以减少读者查询书籍的时间,而其余的工作则由管理员们来协调完成,这样提高了图书馆的工作效率,同时也让读者可以获得一个更好的读书方式。 读者除了借阅书籍以外,还可以对自己的注册信息进行修改,但是一旦注册成功,则只能修改个人密码,其他人则无权修改。主要参与者1、图书馆管理员:管理员要为每个读者建立借阅账户,并給读者发放不同类别的借阅卡(借阅卡可提供卡号、读者姓名),账户内存储读者的个人信息和借阅记录信息。持有借阅卡的读者可以通过管理员(作为读者的代理人与系统交互)借阅、归还图书,不同类别的读者可借阅图书的范围、数量和期限不同,可通过互联网或图书馆内查询终端查询图书信息和个人借阅情况,以及续借图书(系统审核符合续借条件)。2、借阅者:借阅图书时,先输入读者的借阅卡号,系统验证借阅卡的有效性和读者是否可继续借阅图书,无效则提示其原因,有效则显示读者的基本信息(包括照片),供管理员人工核对。然后输入要借阅的书号,系统查阅图书信息数据库,显示图书的基本信息,供管理员人工核对。最后提交借阅请求,若被系统接受则存储借阅纪录,并修改可借阅图书的数量。归还图书时,输入读者借阅卡号和图书号(或丢失标记号),系统验证是否有此借阅纪录以及是否超期借阅,无则提示,有则显示读者和图书的基本信息供管理员人工审核。添加读者用例图添加读者登录登录删除读者修改图书删除读者修改图书修改个人信息添加图书修改个人信息添加图书查看借阅信息删除图书查看借阅信息删除图书查看图书数目查看图书数目删除借书信息删除借书信息系统维护添加借书信息系统维护添加借书信息查看读者信息查看读者信息图一管理员用例图借阅图书预约借读图书注册借阅图书预约借读图书注册续借图书归还图书查看图书数目查看借阅信息续借图书归还图书查看图书数目查看借阅信息修改个人信息修改个人信息图二读者用例图用例描述用例名称:图书管理员用例目的:完成登记注册、统计查询、借书、还书等操作;参与者:数据库管理员事件流:第一步:进入管理员登陆界面讨论区成员:选择相应的操作区系统:将管理员的增删改查权限显示出来即读者信息,图书信息,统计条件信息,读者情况,图书情况,统计结果;加工名:录入新读者加工编号:简要描述:将新的读者信息登记到读者信息表中输入数据流:新读者数据,读者类别输出数据流:有效读者信息加工逻辑:输入读者信息选择读者类别执行SQL语句,将完整的读者信息写入读者信息表加工名:读者信息修改加工编号:简要描述:修改指定的读者信息(卡号、已借书本数不可修改)输入数据流:待修改的读者信息输出数据流:修改后的读者信息加工逻辑:输入读者编号执行SQL语句,从读者信息表中找出该读者的详细信息修改除借书卡号和已借书本数以外的信息执行SQL语句,将修改后的读者信息写入读者信息表中加工名:读者信息删除加工编号:简要描述:将已归还全部图书的指定读者信息从读者信息表中删除输入数据流:待删除的读者信息,借书状况信息输出数据流:待删除的读者信息加工逻辑:输入读者借书卡号执行SQL语句,从读者信息表中找出该读者的详细信息IF该读者处于借阅状态的书本数>0THEN提示“该读者还有未还的图书,暂时不能删除”ELSE执行SQL语句,将该读者的信息从读者信息表中删除ENDIF加工名:添加图书;加工编号:;简要描述:将新购入的图书登记入库,便于读者随时借阅;输入数据流:新图书信息,图书类别;输出数据流:有效图书信息;加工逻辑:输入新图书信息选择相应的图书类别执行SQL语句,将新书信息写入图书信息表,记录登记人姓名,图书状态设置为“在库”加工名:修改图书加工编号:简要描述:将修改后的图书信息(图书编号和状态不能修改)重新写入图书信息表中;输入数据流:待修改的信息;输出数据流:修改的图书信息加工逻辑:输入图书编号执行SQL语句,从图书信息表中查询该图书的详细信息IF图书状态为“借阅中”THEN提示“图书不在库,不能修改”ELSE执行SQL语句,将修改后的图书信息写入图书信息表ENDIF加工名:删除图书加工编号:简要描述:将报废的或已经遗失的图书从系统中删除输入数据流:待删除信息,图书状态信息;输出数据流:删除的图书信息加工逻辑:输入图书编号执行SQL语句,从图书信息表中查询该图书的详细信息IF图书状态为“借阅中”THEN提示“图书处在“借阅中”,暂时不能删除”ELSE执行SQL语句,将该图书信息从图书信息表中删除ENDIF加工名:查询图书加工编号:简要描述:按设置的条件从图示信息表中查询满足条件的图书信息输入数据流:图书查询条件,图书信息;输出数据流:图书查询结果加工逻辑:输入查询条件执行SQL语句,从图书信息表中查询满足条件图书的详细信息加工名:借书管理加工编号:简单描述:通过借书卡号和可借的图书编号完成图书借阅,并在相应的表中添加记录输入数据流:读者信息,图书信息,操作员姓名,预借信息输出数据流:已借数,借书信息,图书状态加工逻辑:执行SQL语句,分别从读者信息表和图书信息表读取指定的读者信息图书信息IF读者借书限额已满THEN提示“借书限额已满,暂时不能借阅新书”ENDIFIF图书状态为“借阅中”THEN提示“该书目前不在库,不能借阅”ENDIFIF续借信息为真THENIF该读者的续借限额未满THEN执行SQL语句,将借书信息表中相应记录的限还日期延长返回借书界面,清空有关文本框ELSE提示“续借限额已满,不能再续借”ENDIFELSE执行SQL语句,读者信息表中该读者的已借书数增值执行SQL语句,图书信息表中该书的状态更改为“借阅中”执行SQL语句,将图书编号、书名、借书卡号、读者姓名、借书日期、限还日期、

当前操作员姓名等信息写入借书信息表中返回借书界面,清空有关文本框ENDIF加工名:还书管理加工编号:简单描述:归还读者借阅的图书,同时使读者的当前借书总数减值,使归还的图书

状态为“在库”,使相应的借书记录状态为“已还”。输入数据流:预还信息,操作员姓名,罚金金额输出数据流:已借数,图书状态,借书记录状态,还书信息加工逻辑:执行SQL语句,从借书信息表中查询指定的借书记录IF过期金额==0AND损坏罚金==0THEN执行SQL语句,向还书信息表中写入罚金信息为0的含操作员姓名的还书记录

ELSE执行SQL语句,向还书信息表中写入罚金信息不为0的含操作员姓名的还书记录

ENDIF执行SQL语句,将图书信息表中该图书状态更改为“在库”执行SQL语句,将读者信息表中当前读者的当前借书总数减值执行SQL语句,将借书信息表中相应的借书记录状态更改为“已还”加工名:图书总量统计加工编号:简单描述:统计系统中的图书总量或按图书类别统计图书数输入数据流:总量统计条件,统计项信息输出数据流:图书总量信息加工逻辑:IF图书类别不为空THEN执行SQL语句,统计指定类别的图书数量ELSE执行SQL语句,统计所有图书的总量ENDIF系统用例一览表系统用例汇总模块用例名称用例ID说明管理员相关1.查看图书书目UC-01管理用户管理图书2.系统维护UC-023.修改个人信息UC-034.添加图书UC-045.删除书目UC-056.修改书目UC-067.查看读者信息UC-078.查看借阅信息UC-089.添加读者UC-0910.删除读者UC-1011.添加借阅信息UC-1112.删除借阅信息UC-12读者相关13.查看借阅信息UC-1314.查看图书书目UC-14注册登录借阅图书修改个人信息15.预约借读图书UC-1516.修改个人信息UC-1617.借阅图书UC-1718.归还图书UC-1819.续借图书UC-1920.注册UC-20用例规约添加用户用例规约用例编号UC-09用例名称添加读者用例描述管理员增加读者的过程参与者管理员前置条件登录后置条件无基本路径1.参与者提出增加读者的请求2.系统显示增加读者界面3.参与者注册4.管理员分配权限类型5.系统保存用户数据非功能需求补充说明添加图书用例规约用例编号UC-06用例名称添加图书用例描述管理员增加图书的过程参与者管理员前置条件登录后置条件无涉众利益基本路径1.系统显示增加图书书目界面2.系统保存用户数据扩展点字段列表业务规则非功能需求补充说明查看借阅信息用例规约用例编号UC-08、UC-13用例名称查看借阅信息用例描述管理员或读者查看借阅信息的过程参与者管理员、读者前置条件登录后置条件无涉众利益基本路径1.用户登录2.系统显示借阅信息界面扩展点字段列表业务规则非功能需求补充说明查看读者信息用例规约用例编号UC-07用例名称查看读者信息用例描述管理员或读者查看读者信息的过程参与者管理员、读者前置条件登录后置条件无涉众利益基本路径1.用户登录2.系统显示读者信息界面扩展点字段列表业务规则非功能需求补充说明查看图书书目用例规约用例编号UC-01、UC-14用例名称查看图书书目用例描述管理员或读者查看图书书目的过程参与者管理员、读者前置条件登录后置条件无涉众利益基本路径1.用户登录2.系统显示图书书目界面扩展点字段列表业务规则非功能需求补充说明添加借阅信息用例规约用例编号UC-011用例名称添加借阅信息用例描述管理员添加借阅信息的过程参与者管理员前置条件登录后置条件无涉众利益基本路径1.管理员登录2.系统显示借阅信息界面扩展点字段列表业务规则非功能需求补充说明注册用例规约用例编号UC-20用例名称注册用例描述用户注册的过程参与者读者前置条件无后置条件无涉众利益基本路径1.用户匿名进入系统2.系统注册登录界面3.注册成功后。系统保存数据信息并自动登录该用户。扩展点字段列表业务规则非功能需求补说明注册用户必须是本人真实信息!时序图图1:登陆时序图图2:注册更新个人信息时序图图3:添加图书时序图图4:修改图书时序图图5:删除图书时序图图6:系统维护时序图图7:添加读者时序图图8:删除读者时序图图9:查看借阅列表时序图图10:查看读者信息时序图图11:查看图书书目时序图图12:删除借书信息时序图图13:添加借书信息时序图图14:修改个人信息时序图图15:预约借阅图书时序图图16:归还图书时序图图17:借阅图书时序图图18:续借图书时序图第三章系统设计系统实体总类图以及介绍系统边界类序号名称备注BO-1系统主界面登录、注册、修改个人密码BO-2管理员界面查看图书表、读者表、借还表,添加图书、读者,删除图书、读者,查找图书。BO-3读者界面查看图书列表、借阅列表,借阅图书,归还图书、续借图书,预借图书,查看及修改个人信息等。BO-4图书列表界面显示图书信息,添加、删除、修改、查询图书。BO-5读者列表界面显示读者信息,添加、修改、删除、查询读者。BO-6借还列表界面查看借还信息,续借图书等。BO-7修改个人信息界面修改个人信息系统实体类序号名称备注EN-1图书EN-2管理员唯一管理员EN-3读者系统控制类序号名称备注CON-1查看图书信息图书列表CON-2查看读者信息读者列表CON-3查看借还信息借还列表CON-4添加图书信息图书列表CON-5删除图书信息图书列表CON-6修改图书信息图书列表CON-7添加读者信息读者列表CON-8删除读者信息读者列表CON-9修改读者信息读者列表CON-10预订借阅图书借阅列表CON-11归还图书借阅列表CON-12续借图书借阅列表CON-13注册用户系统主界面CON-14修改个人密码系统主界面相关数据库的设计经过对系统的需求分析,我们总结出,该系统数据库设计思路如下(以表格信息表示)。E-R图联系方式姓名联系方式姓名密码管理员管理员作者作者书名书名管理管理图书编码图书编码管理评论图书评论图书库存量库存量联系方式读者借阅密码学号班级姓名出版社价格联系方式读者借阅密码学号班级姓名出版社价格数据库的设计图书信息表 管理员可以对读书进行增、删、改、查等操作,读者可以对读书进行借阅、预定借阅、续借、归还、查询等操作,以下是图书的基本信息。序号列名字段说明数据类型长度/位主键允许空1图书编号书籍编号int8是否2图书名称书籍名称nvarchar255否否3作者书籍作者nvarchar255否否4价格书籍价格varchar6否否5库存量书籍册数Int8否是6出版社书籍的出版社nvarchar255否否7评论书籍评价nvarchar255否是管理员信息表序号列名字段说明数据类型长度/位主键允许空1姓名管理员姓名nvarchar255是否2密码管理员密码Varchar16否否3联系方式管理员电话Int16否否读者信息表读者可以是校内的学生,也可以是校外人士,因此需要的身份验证方式不一样。以下是读者的信息表,以及具体详细。序号列名字段说明数据类型长度/位主键允许空1姓名读者姓名nvarchar255否否2学号若是学生,需要学号Int16是是3密码读者密码Varchar16否否4班级若是学生,需要班级nvarchar255否是5身份证号不是学生,需身份证号Varchar25是是6联系方式读者电话Int16否是数据库设计代码:表的设计:图书信息表uselibrarygocreatetablebookinfo(bookNOintnotnullconstraintpk_ISBNprimarykey,Booknamenvarchar(255)notnull,booknamevarchar(40)notnull,pulishnamenvarchar(255)notnull,pricevarchar(6)notnull,stockintnotnull,commentnvarchar(255)go读者信息表uselibrarygocreatetablereader(readerNoint,readerNamenvarchar(255)notnull,passwordvarchar(16)notnull,classnvarchar(255),IDnumbervarchar(25),TelephoneintCONSTRAINTreaderPKPRIMARYKEY(readerNo))Go管理员信息表uselibrarygoCREATETABLEAdmin(adminNamenvarchar(255)notnull,passwordvarchar(16)notnull,telephoneintnotnull,CONSTRAINTAdminPKPRIMARYKEY(adminName))Go 存储过程:图书管理员增加图书的存储过程描述:输入:书名,作者,出版社,ISBN号,价格,库存输出:图书编号过程:向表中插入书名,作者,出版社,ISBN号,价格createPROCEDUREaddbookInfo@bookNochar(20),@booknamenvarchar(255),@authornvarchar(255),@pulishnamenvarchar(255),@pricemoneyvarchar(6),@stockint,@commentnvarchar(255)asInsertbookInfovalues(@bookNo,@bookName,@author,@pulishname,@price,@stock,@comment)图书管理员修改图书的存储过程描述:输入:图书编号,书名,作者,出版社,图书类别,ISBN号,定价,库存,是否可借过程:根据图书编号修改表中的书名,作者,出版社,图书类别,ISBN号,定价,库存,是否可借CREATEPROCEDUREupdatebookInfo@classnamenvarchar(255),@bookNamenvarchar(255),@authornvarchar(255),@pulishnamevarchar(255),@pricemoneyvarchar(6),@stockint,@bookNooutput,asbeginupdatebookInfosetclassname=@classname,bookNo=@bookNo,bookName=@bookName,author=@author,pulishname=@pulishname,price=@price,stock=@stock,whereISBNNo=@ISBNNoend图书管理员删除图书的存储过程描述:输入:图书编号过程:根据图书编号删除表中该图书的信息createprocDeletebook@bookNointasbegindeletefrombookwherebookNo=@bookNoEnd图书管理员删除读者信息的存储过程描述:输入:读者号过程:根据输入的读者号删除表中该读者的信息createprocDeletereader@readerNointasbegindeletefrombookwherereaderNo=@readerNoend主界面设计登陆/注册界面设计人机界面设计设计概述人机界面设计是接口设计的一个重要的组成部分。对于交互式系统来说,人机界面设计和数据设计,体系结构设计及过程设计一样重要。图书管理系统是基于对话框设计的,用到了三个对话框,分别为登录对话框,书库管理员对话框和借阅人对话框。在用户登入时验证用户身份,如果是合法用户,则根据数据库中记录的用户权限转到管理员界面或者借阅人界面。图1登陆界面打开登录界面输入用户名和密码,点击登录进入图书管理界面。如果没有请注册账户图2注册界面管理员操作界面选择“图书维护”菜单中的“书的ID”菜单,出现如图所示的输入图书信息界面。输入信息后,单击“图书查询”按钮图3总管理界面图4图书管理界面输书的书名或书的ID点击“图书查询”图5借还管理界面1.借书选择“图书流通”菜单中的“借书”菜单,。输入借阅信息后,单击“借书”按钮。2.还书选择“图书流通”菜单中的“还书”菜单,输入借阅信息后,单击“还书”按钮读者用户管理界面图6读者用户管理用户图7修改密码界面编辑要修改的信息,单击“保存”按钮图8读者界面点击左边的选框可以查询到你要查询的信息系统响应时间对于用户的各种操作请求应尽快给出响应,响应时间应控制在1s左右。出错信息处理对于用户不符合要求的输入,系统会给出错误提示,并告知其错误原因。部分代码:添加图书的代码:using;publicpartialclassAdd:protectedvoidPage_Load(objectsender,EventArgse){}protectedvoidButton1_Click(objectsender,EventArgse){stringconstr="server=.;database=library;trusted_connection=yes";SqlConnectioncon=newSqlConnection(constr);SqlCommandcmd=newSqlCommand(con);=con;="addbookInfo";=;SqlParametersp1=newSqlParameter("@bookname",,255);="@nvarchar";=;SqlParametersp2=newSqlParameter("@author",,255);="@author";=;SqlParametersp3=newSqlParameter("@pulishnam",,255);="@pulishnam";=;SqlParametersp4=newSqlParameter("@price",,6);="@price";=FormatString;SqlParametersp5=newSqlParameter("@stock",;="@stock";=;SqlParametersp7=newSqlParameter("@comment",,255);="@comment";=SqlParametersp6=newSqlParameter("@bookNO",;="@bookNO";=;();();();intid=if(id>0){("<script>alert('恭喜你,添加成功,感谢您的参与!');=''</script>");return;}else{("<script>alert('对不起,操作出现错误,请返回!!');=''</script>");}}publicstringFormatString(stringstr){str=("","  ");str=("<","<");str=(">",">");str=('\n'.ToString(),"<br>");returnstr;}}nvarchar(255)notnull,varchar(16)notnull,telephoneintnotnull,管理员登录代码:usingSystem;using;using;using;publicpartialclassAdmin:protectedvoidPage_Load(objectsender,EventArgse){if(!IsPostBack){alue;database=newmessage;trusted_connection=true";S

温馨提示

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

评论

0/150

提交评论