图书管理系统需求分析与设计.pdf
图书管理系统需求分析与设计(总 19 页)本页仅作为文档封面,使用时可以删除 This document is for reference only-rar21year.March 目录 一:需求分析 二:系统设计 1系统功能模块的设计 2系统主要工作流程 三:系统数据库的设计 1概念设计 2关系数据库的逻辑设计 四:总结 图书管理系统 一:需求分析 图书管理系统需要满足来自图书馆工作人员、普通用户和借阅者三方面人员的需求。图书馆工作人员对图书借阅者的借阅及还书要求进行操作,同时形成借书或还书报表给借阅者查看确认,还可通过图书编号、借阅者证号等查询相应的借阅情况及查看已归还的图书信息(即历史信息);普通用户的需求是查询图书馆所存的图书的相关情况;图书借阅者的需求是查看自己的相关信息及查询自己的借阅情况。图书借阅者可直接查看图书馆图书情况,如果图书借阅者根据本人借书证号和密码登录系统,还可以进行本人借书情况的查询和维护部分个人信息。一般情况下图书借阅者只应该查询和维护本人的借书情况和个人信息若查询和维护其他借阅者的借书情况和个人信息就要知道其他图书借阅者的借书证号和密码。本功能实现对馆内图书信息的查询。可以通过图书名称、作者的名字和出版社来查询相应的图书信息,此查询可模糊查询也可精确查询。所以不但满足了图书借阅者的要求,还保护了图书借阅者的个人隐私。图书馆工作人员有对图书借阅者借书和还书记录进行操作的权限,所以需对工作人员登陆本模块进行更多的考虑。在此模块中,图书馆工作人员可以为图书借阅者加入借书记录或是还书记录,并生成相应的报表给用户查看和确认。图书馆工作人员可以浏览、查询、统计、添加借阅图书的基本信息及删除已归还的图书的基本信息,但不能删除和修改已经借阅的图书相关信息,当删除某条图书借阅的基本信息记录时,应实现对该图书借阅者借阅记录的级联删除。本功能实现对图书信息的管理和统计。图书馆管理人员功能的信息量大,数据安全性和保密性要求最高。本功能实现对图书信息、借阅者信息、总体借阅情况信息的管理和统计、工作人员和管理人员信息查看及维护。图书馆管理员可以浏览、查询、添加、删除、修改、统计图书的基本信息;浏览、查询、统计、添加、删除和修改图书借阅者的基本信息,浏览、查询、统计图书馆的借阅信息,但不能添加、删除和修改借阅信息,这部分功能应该由图书馆工作人员执行。但是,删除某条图书借阅者基本信息记录时,应实现对该图书借阅者借阅记录的级联删除,并且还应具有生成催还图书报表并打印输出的功能。二:系统设计 1系统功能模块的设计 该系统的主要功能有对书籍信息的管理,书籍信息的查询,对用户的管理等,对各项能进行分块、集中、关联、优化,按照结构化程序设计的要求,设计功能模块如图所示。该系统用户共有三类,分别是工作人员、普通用户和借阅者。A图书馆工作人员模块的主要功能如下:实现借书管理;实现借阅者信息记录的管理;存储图书馆借阅图书信息;查询图书馆借阅信息;实现还书管理。B普通人员可通过图书名称、作者和出版社来进行相关图书的查询并且可以申请帐号。C借阅者可通过输入自己的姓名和密码来浏览自己的借阅信息,其中初始密码是固定的,进入到页面后,借阅者可自行修改自己的密码和其它的相关信息。可以查询借阅者自己的借阅信息。图书管理系统 系统管理 读者服务 读者信息 书籍信息 借阅信息 添加读者信息 修改读者信息 删除读者信息 添加书籍信息 修改书籍信息 删除书籍信息 添加借书信息 添加还书信息 读者借阅信息 书籍借阅信息 2系统主要工作流程图书管理系统 工作人员 图 书 借 阅 管 理 借 阅 者 信 息管理 查询图书借阅信息 图书归还管理 存储图书借阅信息 普通人员 借阅者 查询图书信息 查询自己借阅信息 修改密码 申请帐号 借阅归还图书 系统功能流程图 开始 系统页进入登录窗口 工作人员管理 进入图书查询馆内图书查询 进入借阅窗口 借阅信息查结束 N N Y Y 工作人员流程图开始 登录页面 身份验图书馆工作人员进行借、还书等结束 失败 通过 普通人员流程图开始 图书查询页图书名称 查询所输图书信息 作者 查询所输作者的图书信息 出版社 查询所输出版社的图书信息 结束 N N Y Y 借阅者程序流程图 三:系统数据库的设计 1概念设计 在概念设计阶段中,设计人员从用户的角度看待数据及处理要求和约束,产生一个反映用户观点的概念模式,然后再把概念模式转换成逻辑模式。将概念设计从设计过程中独立开来,使各阶段的任务相对单一化,设计复杂程度大大降低,不受特定 DBMS 的限制。利用 ER 方法进行数据库的概念设计,可分成三步进行:首先设计局部 ER 模式,然后把各局部 ER 模式综合成一个全局模式,最后对全局 ER 模式进行优化,得到最终的模式,即概念模式。(1)设计局部 ER 模式 开始 借阅查询页身份验查询借阅者自己的借阅信息 结束 失败 通过 实体和属性的定义:图书(图书编号,名称,作者,出版社,价格,类别,藏处,数量,图书状态)工作人员(名字,性别,编号,工作,科室,职称号,系统用户名)借阅者(借阅者的图书证号,学号,姓名,性别,出生年月,民族,系别)借阅(图书编号,借阅者姓名,借阅数量,借阅日期,归还日期,过期天数)ER 模型的“联系”用于刻画实体之间的关联。一种完整的方式是对局部结构中任意两个实体类型,依据需求分析的结果,考察局部结构中任意两个实体类型之间是否存在联系。若有联系,进一步确定是 l:N,M:N,还是 1:1 等。还要考察一个实体类型内部是否存在联系,两个实体类型之问是否存在联系,多个实体类型之间是否存在联系,等等。上述实体的 ER 图为:图书 编号 名称 作者 出版社 价格 类别 藏处 数量 图书状态 借阅者 图书证号 性别 姓名 学号 日期 民族 系别 (2)设计全局 ER 模式 所有局部 ER 模式都设计好了后,接下来就是把它们综合成单一的全局概念结构。全局概念结构不仅要支持所有局部 ER 模式,而且必须合理地表示一个完整、一致的数据库概念结构。确定公共实体类型,借阅 借阅者姓名 借阅数量 图书编号 借阅日期 归还日期 过期天数 工作人员 姓名 性别 编号 系统用户名 科室 工作 职称号 为了给多个局部 ER 模式的合并提供开始合并的基础,首先要确定各局部结构中的公共实体类型。在这一步中我们仅根据实体类型名和键来认定公共实体类型。一般把同名实体类型作为公共实体类型的一类候选,把具有相同键的实体类型作为公共实体类型的另一类候选。局部 ER 模式的合并,合并的原则是:首先进行两两合并;先合并那些现实世界中有联系的局部结构;合并从公共实体类型开始,最后再加入独立的局部结构。全局 ER 模式的优化:在全局 ER 模式后,为了提高数据库系统的效率,还应进一步依据处理需求对 ER 模式进行优化。一个好的全局 ER模式,除能准确、全面地反映用户功能需求外,还应满足下列条件:实体类型的个数要尽可能的少;实体类型所含属性个数尽可能少;实体类型间联系无冗余。2关系数据库的逻辑设计 由于概念设计的结果是 ER 图,DBMS 一般采用关系型,因此数据库的逻辑设计过程就是把 ER 图转化为关系模式的过程。由于关系模型所具有的优点,逻辑设计可以充分运用关系数据库规范化理论,使设计过程形式化地进行。设计结果是一组关系模式的定义。(1)初始关系模式 book(图书编号,名称,作者,出版社,价格,类别,藏处,数量,图书状态)bookuser(借阅者的图书证号,学号,姓名,性别,出生年月,民族,系别)worker(名字,性别,编号,工作,科室,职称号,系统用户名)borrow(借阅者的图书证号,学号,姓名,性别,出生年月,民族,系别)(2)产生子模式 子模式是用户所用到的那部分数据的描述。除了指出用户用到的数据外,还应指出数据与概念模式中相应数据的联系,即指出概念模式与子模式之间的对应性。借书子模式(借阅者的图书证号群,姓名,图书编号#,图书名称,借阅时间)3数据库的分析与设计 本次开发的数据库包括四个方面。A工作人员信息数据表:名字(WORKER-NAME,数据类型为CHAR,允许为空),性别(WORKER-SEX,数据类型为 CHAR,允许为空),编号(WORKER-NUM,数据类型为 INT,为主键),工作(WORKER-WORK,数据类型为 CHAR,允许为空),科室(WORKER-KS,数据类型为 CHAR,允许为空),职称号(WORKER-ZNUM,数据类型为 INT,允许为空),系统用户名(WORKER-NAME,数据类型为CHAR,允许为空)工作人员信息数据表 字段名 数据类型 说明 备注 WORKER-ID INT 编号 主关键字 WORKER-SEX CHAR 性别 允许为空 WORKER-NAME CHAR 姓名 允许为空 WORKER-WORK CHAR 工作 允许为空 WORKER-NUM CHAR 科室 允许为空 WORKER-ZNAME INT 职称号 允许为空 WORKER-XNAME CHAR 系统用户名 允许为空 B图书借阅信息数据表:存储借阅图书的信息。包括图书编号(BO-ID,数据类型为 INT,设为主关键字),借阅者姓名(BO-NAME,数据类型为 CHAR,允许为空),借阅数量(BO-NUM,数据类型为INT,允许为空),借阅日期(BO-BODA,数据类型为 CHAR,允许为空),归还日期(BO-BADA,数据类型为 CHAR,允许为空),过期天数(BO-OUTDA,数据类型为 INT,允许为空);图书借阅信息数据表:字段名 数据类型 说明 备注 BO-ID INT 图书编号 主关键字 BO-NAME CHAR 借阅者姓名 允许为空 BO-NUM INT 借阅数量 允许为空 BO-BODA CHAR 借阅日期 允许为空 BO-BADA CHAR 归还日期 允许为空 BO-OUTDA INT 过期天数 允许为空 C所有入库图书数据表:存储所有图书的信息。包括图书编号(BOOK-ID,数据类型为 INT,设为主关键字),名称(BOOK-ID,数据类型为 INT,设为主关键字),作者(BOOK-WRIT,数据类型为 CHAR,设为允许为空),出版社(BOOK-PULI,数据类型为 CHAR,设为允许为空),价格(BOOK-ID,数据类型为 INT,设为允许为空),类别(BOOK-KB,数据类型为 CHAR,设为允许为空),藏处(BOOK-CC,数据类型为 CHAR,设为允许为空),数量(BOOK-NUM,数据类型为 INT,设为允许为空),图书状态(BOOK-STATE,数据类型为CHAR,允许为空)所有入库图书数据表:字段名 数据类型 说明 备注 BOOK-ID INT 图书编号 主关键字 BOOK-NAME CHAR 名称 允许为空 BOOK-WRIT CHAR 作者 允许为空 BOOK-PULI CHAR 出版社 允许为空 BOOK-RICE CHAR 价格 允许为空 BOOK-LB CHAR 类别 允许为空 BOOK-CC CHAR 藏处 允许为空 BOOK-NUM INT 数量 允许为空 BOOK-STATE CHAR 图书状态 允许为空 D图书借阅者信息数据表:存储借阅者的信息。包括借阅者的图书证号(READER-ID,数据类型为 INT,主关键字),学号(READER-TS,数据类型为 CHAR,允许为空),姓名(READER-NAME,数据类型为 CHAR,允许为空),性别(READER-SEX,数据类型为 CHAR,允许为空),出生年月(READER-DATE,数据类型为 CHAR,允许为空),民族(READER-MZ,数据类型为 CHAR,允许为空),系别(READER-XB,数据类型为 CHAR,允许为空)。图书借阅者信息数据表:字段名 数据类型 说明 备注 READER-ID INT 学号 主关键字 READER-TS CHAR 图书证号 允许为空 READER-NAME CHAR 姓名 允许为空 READER-SEX CHAR 性别 允许为空 READER-DATE CHAR 出生年月 允许为空 READER-MZ CHAR 民族 允许为空 READER-XB CHAR 系别 允许为空 四:总结 当今的时代是信息的时代,作为信息搜集、存储、加工、传播中心的图书馆要适应时代的变迁,必须采用全新的管理体系来实现管理的自动化和科学化。管理信息系统拥有最先迸的管理思想和设计体系,将其引入图书馆管理工作中来必将使图书馆以崭新的面貌迎接新的时代。在国内虽然图书管理系统近几年有了很大的发展。但是,基础薄弱,发展不平衡;图书馆现代信息技术的总体水平不高。因此,我国图书馆在网络环境下的发展,要根据我国社会经济发展的实际水平和信息技术的发展状况,实事求是地实施符合自己实际情况的图书管理系统。本系统利用 VB 语言作为编译语言,数据库使用 SQL Sever,实现了图书管理信息系统的一些基本功能,但是还有很多方面考虑不周到,有很多功能也没涉及,这需要在以后进一步改进。