3.2 主要功能分析
基于前面对需求的分析,可将系统划分为信息管理和信息查询两大模块。系统要实现的功能如下。
(1)读者信息管理:包括读者信息的添加、删除、修改和查询
(2)图书信息管理:包括图书信息的添加、删除、修改和查询
(3)图书借阅信息管理:包括对图书借出、图书归还信息的录入
(4)图书检索功能:可以对图书按编号、名称、出版社、图书类型等进行条件查询
3.3 系统功能模块的设计
根据前面对图书馆具体需求的分析和主要功能的分析,按照结构化程序设计的要求具体,得到系统功能模块的具体设计如图1所示。
图1 系统功能模块图
4.数据库的设计与实现
4.1 数据库的需求分析
数据库在一个信息管理系统中占有非常重要的地位,合理的数据库结构设计可以提高数据存储的效率,保证数据的完整性和一致性。本系统的需求具体体现在对各种信息的提供、保存、更新和查询,这要求数据库能够充分满足各种信息的输入和输出[7]。针对一般图书馆管理系统的需求,通过对图书借阅过程的内容和数据流程的分析,设计了所需的数据项和数据结构。
4.2 概念结构设计
概念结构设计是描述用户要求的现实世界,通过对其信息的分类,聚集和概括,建立抽象的概念数据模型,是数据库设计的关键,通常描述概念模型的有力工具是E-R模型。系统设计的E-R图如图2所示。
图2 系统E-R图
4.3 逻辑结构设计
逻辑结构设计的任务是把概念结构设计阶段设计好的E-R图转换为数据库管理系统所支持的数据模型相符合的逻辑结构。
根据实际需求,图书馆管理系统的实现需要创建一个数据库,主要包含5张数据表,即管理员表、读者信息表、图书信息表、借阅信息表和归还信息表。具体描述如下。
管理员表(管理员编号,管理员密码)
读者信息表(读者编号,读者姓名,密码,性别,读者类型,已借阅图书数目,联系方式)
图书信息表(图书编号,图书名称,ISBN,作者,出版社,图书类型,在馆副本数,可借数,价格)
借阅信息表(借阅者编号,借阅图书编号,借阅时间,借阅数目)
归还信息表(借阅者编号,借阅图书编号,归还时间,借阅数目)
5.系统详细设计与实现
5.1 登录模块
在进入系统主界面之前,会出现一个登录对话框,需要验证用户的身份。输入用户名和密码后,如果都正确,根据所选择的权限来判断进入管理员页面还是普通用户页面,否则提示相应的错误信息。通过检索登录信息表(Admin和UserMsg)判断用户名是否存在,如果用户名不存在,处理终止。如果用户名正确,则比较密码字段,如果密码不相等,则提示输入的密码有误,如果密码也正确,系统进入主界面。
在信息处理的过程中,首先是三层架构中的表示层来获取用户输入到窗体控件里的用户权限、用户名和密码,表示层根据不同的用户权限来分别调用业务逻辑层(UserBLL)中的管理员登录函数AdminLogin()和普通用户登录函数UserLogin(),业务逻辑层再把处理中需要访问数据库的信息UserID和UserPwd传送到数据访问层(UserDAL),由数据访问层来直接访问数据库,处理后得到的结果经由业务逻辑层再返还给表示层,表示层根据返回的结果flag提示相关的错误信息,如果flag=0就提示登录成功,如果flag=1就提示账户不存在,如果flag=2就提示密码错误。
5.2 管理员管理主模块
当管理员登录成功后,系统会自动跳转到管理员的管理主界面。管理员管理模块又包含图书管理、读者管理、图书借阅管理和信息查询四个子模块。当管理员需要对图书、读者以及借阅信息进行管理时,可以通过这个模块来对这些信息进行实时有效的管理,并且通过主界面可以直接跳转到所需要管理的界面。由管理员主界面进入到图书、读者管理界面时,可以实现对图书和读者信息的添加、删除、修改和查询,进入到图书借阅和归还界面时,可以实现对图书借阅和归还信息的录入,进入到信息查询界面时,可以实现对图书信息的检索和读者详细信息的查询。 C#+sqlserver图书馆管理系统的设计与实现(3):http://www.youerw.com/jisuanji/lunwen_2360.html