




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 本科学生设计性实验报告项目组长陈贝贝学号0088225成员罗玉龙、尚丽娟、丁雪辉、郑婧专业08软件工程班级_四班_实验项目名称_图书管理系统数据库设计_指导教师及职称_熊碧舟(讲师_开课学期2010 至2011 学年_一_学期上课时间2010年9月1日2010年12月9日一、实验设计方案实验名称:图书管理系统实验时间:2010年12月小组合作:是否小组成员:陈贝贝、罗玉龙、尚丽娟、丁雪辉、郑婧1、实验目的:通过小型信息系统设计和开发,使我们了解数据库设计在软件工程中的地位,掌握数据库设计的方法,并把数据库运用于编程,巩固我们在课堂上学习到的知识,并培养我们作为未来软件开发,测试者应该具有的合
2、作精神,主动学习运用新知识。针对特定应用设计系统功能模块结构和数据库表结构,达到将数据库系统原理课程的理论知识综合运用的目的。2、实验场地及仪器、设备和材料:场地:H123实验室设备:计算机软件:WORD、VISIO、SQL-SERVER 20003、实验思路(实验内容、数据处理方法及实验步骤等:一、实验内容:1用户需求分析1.1总体需求描述1.2用户总体业务构造1.3其他需求1.4系统功能设想1.5业务流程分析1.1总体需求描述图书管理系统涉及读者信息管理、借阅信息管理、图书信息管理等多方面的信息管理,系统的使用对象为图书管理员和读者。他们在使用系统时,各拥有不同的权限,以完成各自需要的工作
3、。下面对图书管理系统中主要的业务流程进行简要分析:在图书管理系统中,图书管理员要为每个读者建立借阅账户,记录读者的个人信息和图书借阅信息。读者个人账户建立成功后,给读者发借阅卡,可以通过图书管理员借阅、归还图书,也可以通过相应的终端查询个人的借阅信息,检索图书。读者借阅图书时,先输入借阅证卡号、密码,验证借阅证的有效性及是否可续借,无效则向读者提示原因,如“卡号不对”、“密码不对”、“已借满,不能再借”等;有效则显示读者的基本信息,例如读者的个人资料、已经借阅的图书信息等;读者通过图书管理员向系统提出借阅请求,管理员操作管理终端,登记读者新借阅图书的相关信息。相应地,读者归还图书时,也需验证借
4、阅卡号、密码等信息,验证借阅证的有效性,若不对,系统给出相关的提示;通过系统验证后,显示读者基本信息及图书借阅信息;读者向图书管理员递交归还的图书,管理员验证无误后,删除读者该书的借阅信息;若读者超期归还,则先向管理员递交图书滞纳费用,归还图书;另外,图书馆图书资料变更,如新购进图书或图书被损毁不能再使用时,图书管理员要相应的将图书信息入库或注销;同理,若有新增读者帐号或需要注销读者帐号的,图书管理员应通过系统管理终端进行记录。1.2用户总体业务构造一个典型的图书管理系统应包含图书信息管理、借阅信息管理、读者信息管理三部分数据管理,其中图书管理员可实现如下操作:(1增加、删除图书;(2增加、删
5、除读者;(3借出、归还图书记录;(4查询读者信息、图书信息;普通读者可以实现如下操作:(1修改个人信息(如登陆密码,或其他个人信息等(2查询个人借阅信息和检索图书;1.3其他需求师生可借阅图书,借阅图书有期限限制和数量限制,逾期不还还需要罚款;每本书的馆藏数量不同,图书管理员需对这些书进行管理,书籍借出和归还时须注意是否有损毁。1.4系统功能设想图1 图书管理系统整体功能图示1.5业务流程分析错误信息读者所借图书图书管理员所需图书图书管理系统基础数据和辅助管理用户登录及其验证登陆及退出系统图书借阅管理读者信息管理图书信息管理借书还书添加读者修改读者图书修改注销图书超期丢失正常删除读者查询读者新
6、书入库2系统概念结构设计2.1实体2.2系统局部E-R 图 2.3系统全局E-R 图上述数据流图和数据字典共同构成了对用户需求的表达,它们是系统分析员(数据库管理员在需求调查过程中和用户反复交互得到的。概念设计就是通过对需求分析阶段得到的信息需求进行综合、归纳与抽象,形成一个独立于具体数据库管理系统的概念模型,主要使用E-R 图。书籍信息添加/修改图书管理员书籍信息书籍信息书籍查询借书读者图书管理员删除读者读者资料2.1实体由前面分析得到的数据流图和数据字典,抽象出来的实体主要有3个:图书管理员、读者、图书、出版社(系统管理员先暂时不计。 实体和属性的定义:书库图书信息,包括数据项有:图书编号
7、、书名、书号、类别、出版社、作者、ISBN 、印张、字数、版次、印数、定价、开本、是否在库、是否损坏、是否遗失、入库时间、图书介绍读者信息,包括数据项有:学生编号、学号、姓名、性别、系别、班级、级别、已借图书、照片借书信息,包括数据项有:图书编号、学生编号、是否归还、书名、姓名、学号、书号、系别、班级、已借图书、出版社、作者、借阅日期、图书类别、是否续借出版社信息,包括数据项有:供货商序号、供货商、城市、地址、电话、传真、邮政编码、EMAIL 、联系人、首次合作时间用户信息,包括数据项有:用户编号、姓名、密码、类别、性别、家庭住址、联系电话、职务、出生日期、照片罚款信息,包括数据项有:流水号、
8、罚款原因、罚款金额、日期。过期图书信息,包括数据项有:图书编号、书名、书号、学生序号、学生姓名、系别、班级、过期时间。师生可借阅图书,借阅图书有期限限制和数量限制,逾期不还需要罚款;每本书的馆藏数量不同,图书管理员需对这些书进行管理,书籍借出和归还时须注意是否有损毁。2.2系统局部E-R 图ER 模型的“联系”用于刻画实体之间的关联。一种完整的方式是对局部结构中任意两个实体类型,依据需求分析的结果,考察局部结构中任意两个实体类型之间是否存在联系。若有联系,进一步确定是1:N ,M:N ,还是1:1等。还要考察一个实体类型内部是否存在联系,两个实体类型之间是否存在联系,多个实体类型之间是否存在联
9、系,等等。联系定义如图3-1所示。解释如下:一个借阅者(用户只能具有一种身份,而一种身份可被多个借阅者所具有; 一本图书只能属于一种图书类别(类别,而一种图书类别可以包含多本图书; 一个用户可以借阅多本不同的书,而一本书也可以被多个不同的用户所借阅。读者管理管理员 借阅管理图书nmnnmm.图书图书编号图书名称 作者出版社出版日期图书类型 已借数量状态入库日期图书简介页数价格译者序列编号读者读者编号姓名年龄联系电话地址性别已借书总数借阅 读者 书籍读者姓名读者性别 读者编号 读者编号借阅编号图书状态 单价作者图书数量序列编号出版日期图书编号图书名称1N2.3系统全局E-R 图3数据库逻辑结构设
10、计3.1E-R 图到关系模式的转换 3.2关系模式的规范及调整3.3各个数据表的表结构设计还书读者书籍读者姓名读者性别 读者编号 读者编号还书编号图书状态 单价作者图书数量序列编号出版日期图书编号图书名称1N3.1E-R图到关系模式的转换读者与图书之间的关系式多对多的联系,因此,将读者与图书以及借书联系分别设计成如下的关系模式:图书(图书编号,图书名称,作者,译者,出版社,出版日期,入库日期,图书类型,书数,图书状态,页数,价格,附件,图书简介读者(读者编号,读者类型,姓名,有效证件,证件号码,性别,职业,联系电话,E-mail,家庭住址,备注因为图书与读者间的关系借书与还书,并且是多对多的关
11、系,所以抽出借阅归还的关系。借书(读者编号,读者姓名,性别,有效证件,有效证件号码,读者类别,联系电话,已借数量,借书总量,图书编号,图书名称,作者,图书类型,价格,出版时间,出版社,借出次数,附件出版社和图书之间是一对一的关系所以作为单独的关系。用户与图书的关系之间是一个管理员可以操作多本图书,一本图书可以被多个管理员管理,将用户作为一个单独的关系进行处理,均如下。出版社(出版社编号,出版社名称用户(用户编号、姓名、密码、类别、性别、家庭住址、联系电话、职务、出生日期、照片对于读者与图书之间图书超期罚款关系以及过期图书处理关系,过期需要罚款,损坏图书也需要罚款。罚款(流水号、罚款原因、罚款金
12、额、日期过期图书(图书编号、书名、书号、读者序号、姓名、职务、过期时间3.2关系模式的规范及调整对于读者与图书之间图书超期罚款关系以及过期图书处理关系,过期需要罚款,损坏图书也需要罚款的调整:罚款(流水号、罚款原因、罚款金额、日期,罚款图书,罚款人,操作人罚款类型(类型编号、类型名称、罚款条目(1用户访问权限:任何用户都不能访问其他用户的密码。(2任何用户只可查自己的历史操作情况,不可访问到其他用户的业务情况。(3借书数量和借书总数并且各自的数量都不能为空值。(4图书编码规则:以字母B开头再加上8位数字。(5读者编码规则:以字母R开头加上8位数字,其中前4位数字由读者进入学校的时间年份顺序生成
13、,后4位则是按流水号一次增大。(6用户编码规则:以字母M开头再加上8位数字。其中前4位数字由用户的时间年份顺序生成,后4位则是按流水号一次增大。(7出版社编码规则:以字母P开头再加上8位数字。其中前4位数字由学校采购图书的时间年份顺序生成,后4位则是按流水号一次增大。3.3各个数据表的表结构设计经由E-R模型得到关系模型并且得到适当调整后,我们可以结合在需求表述中数据字典包含的数据项信息,得到数据库的表结构。具体设计各个数据表的表结构,包括表名,表中各列的字段数据类型、数据长度和表的主键和外码:还要考虑应该建立那些索引以及索引的类型。需要注意的是,考虑到系统的统一,兼顾如数据库管理员和后续软件
14、开发中对数据库管理以及编程引用的便利,表明和字段名的命名以具有意义的英文名称为主或以其缩写字母构成:同时要为各个表名和字段名做出完整的中文文档说明。数据库表名关系模式名称备注User 用户(图书管理员用户信息表ReaderType 读者类型读者类型信息表Reader 读者读者信息表PaperType 有效证件类型证件类型信息表BookType 图书类别图书类别信息表BookConcern 出版社出版社信息表Book 图书图书信息表GiveInfo 图书借阅归还借阅归还信息表Amerce 罚款罚款信息表AmerceType 罚款项罚款类型设置表字段名称含义属性类型长度备注UserID 用户号va
15、rchar 10 主键,也可以作为登陆标识UserPwd 用户密码varchar 10 Not nullAuthority 权限varchar 10 Not null字段名称含义属性类型长度备注ID 类型编号int 4 主码ReaderType 类型名称varchar 10 Not null BorrowBookNum 借书数量int 4 Not null字段名称含义属性类型长度备注ReaderID 读者编号varchar 10 主码ReaderName 姓名varchar 10 Not nullReaderSex 性别varchar 2 男/女ReaderBirth 出生年月Datetime
16、 8ReaderTel 联系电话 varchar 13 Not null ReaderAddr 地址 varchar 100 联系地址ReaderStatus 状态 varchar 4表示在校、毕业或者转学 ReaderTypeID 读者类型 int 4所属类型编号,外码>ReaderType.IDBorrowedCount 已借次数 int 4 Not nullPaperType 证件类型 varchar 4证件类型名称,外码>PaperType.PaperName PaperNum 证件号码 varchar 20证件类型编号,外码>PaperType.PaperIDRea
17、derWork 职业 varchar 20 学生、教授,副教授等 E-mail 电子邮箱 varchar 30 Remark 备注 varchar 100 BorrowedSum类型名称varchar20字段名称 含义属性 类型 长度 备注 CID 出版社编号 varchar 4 主码 CName出版社名称 varchar 20字段名称含义属性 类型 长度 备注字段名称 含义属性 类型 长度 备注 BookID 图书编号 varchar 10 主码 BookName 图书名称 varchar 20WritterName 作者 varchar 10 默认:未知 BookConcern 出版社编号
18、 varchar 4 Not nullPublishDate 出版日期 datetime 8 BookType 图书类型 varchar 4 LentCount借书次数int 4 默认:0 Status 状态 varchar 4 结出、在馆等 默认:在馆InDate 入馆时间 datetime 8 当天 BookView 图书简介 text 16 默认:无 PageCount 页数 int 4 默认:0 Accessories 序列号 varchar 20 Not null Interpret 译者 varchar 20 默认:无 Price价格money8默认:0BookID 图书编号var
19、char 10 主码ReaderID 读者编号varchar 10 主码GiveTime 还书时间datetime 8 Not nullIsAddTime 续借时间bit 1 Not nullReturnTime 还书时间datetime 8 Not nullAmerce 罚款money 8 Not null GiveAccessories 归还序列varchar 2 Not nullIsReturnTime 实际归还时间datetime 8 Not nullUserID 操作人varchar 10 Not null字段名称含义属性类型长度备注AmerceID 罚款流水号varchar 10
20、主码Amerce 罚款金额varchar 8 主码ADate 罚款时间datetime 8 Not nullABookID 相关图书Amemo 10 Not nullAReader 相关读者Amemo 10 Not nullAUserID 操作人员Amemo 10 Not nullAreason 罚款原因varchar 10 Not nullAmemo 备注Amemo 50字段名称含义属性类型长度备注A TypeID 罚款类型号varchar 10 主码A TName 罚款名称varchar 10 Not nullA TList 罚款条目text 16 Not null4数据库的物理设计4.1
21、存储介质的选择4.2数据库的存储结构设计4.3各个数据表(视图的建立4.4选择存取的方法4.5数据库服务器的性能优化4.1存储介质的选择RAID(独立磁盘冗余阵列是由多个磁盘驱动(一个阵列组成的磁盘系统,可以提供更高性能、可靠性、存储容量和更低的成本。容错列阵分为送05共六个RAID等级。每个等级使用不同的算法实现容错。SQL server一般使用RAID等级0、1和5(注:RAID仅在windows NT4.0、windows 2000及windows 2003等系统上配合使用。RAID1也称为镜像集的磁盘文件系统或磁盘镜像系统。磁盘镜像提供选定磁盘的冗余的、完全一样的复本。所有写入主磁盘的
22、数据均写入镜像磁盘。RAID 1提供容错能力,如一个磁盘数据损坏总是可以从另一个磁盘得到恢复。这种级别的RAID基本上能保证数据读取的性能,但是由于在写数据时需要将相同的数据同时写到两个硬盘上,因而RAID1会降低数据的写性能。RAID5 等级也称带奇偶校验的数据分割技术,时目前设计中常用的策略。该等级在阵列内的磁盘中,将数据分成大块。并在所有的磁盘中写入奇偶校验的信息,数据同于有这些奇偶信息提供。数据和奇偶信息排列在磁盘列阵上,而且两者始终错开存放在不同的磁盘上,所有RAID 5提供阵列上的所有数据冗余,在大多数情况下允许单个磁盘发生故障并被替代,而不会中断系统运行(指所谓的热插拔。RAID
23、 5提供的性能比RAID0和RAID1要低一些,但提供更高的可靠性和更快的恢复能力。相对RAID1 RAID5,在同样保证数据可靠性的前提下,实现更高的性能和存储量。4.2数据库的存储结构设计SQL server 2000使用一组操作系统文件映射数据库。数据库中的所有数据和对象(如表、存储过程、触发器和视图都存储在下列3种文件类型的操作系统文件中。1主数据库文件。这些文件包含数据库的启动信息。主数据库文件还用于存储数据。每个数据库都包含一个主数据库文件,其扩展名为.mdf。2次数据库文件。这些文件含有不能置于主数据库文件中的所有数据。如果主数据库文件足够大,能够容纳数据库中的所有数据,则该数据
24、库不需要此数据库文件。有些数据库可能非常大,因此需要多个次数据文件,或可能在各自的磁盘驱动器上使用次要文件,以便在多个磁盘上存储数据。其扩展名一般为.ndf。3事务日志文件。这些文件用于包含于恢复数据库的日志信息。每个数据库必须至少有一个事务日志文件(但是可以有多个,日志文件最小为512KB,其扩展名一般为ldf。创建一个简单的数据库demo时,可以只使用一个包含所有数据和对象的主数据库文件和一个包含事物日志信息的日志文件。而在创建更复杂的数据库mis时,可以使用一个主数据库文件和5个辅助文件。数据库内的数据和对象可被扩展到所有的6个文件中,另外有4个日志文件包含事物日志信息。(1在目前实验条
25、件下,根据实验的实际需求,将各数据文件存储在以下路径中。create database bookon primary(name='book',filename='D:StudySQLbook.mdf',size=5,maxsize=20,filegrowth=1log on(name='book',filename='D:StudySQLbook.ldf',size=2,maxsize=8,filegrowth=1Go4.3各个数据表(视图的建立Book表BookConcern表BookType表GiveInfo表PaperTyp
26、e表Reader表ReaderType表User表Amerce表AmerceType表4.4选择存取的方法为提高数据库数据的存取速度,而需要设置合适的存取方式,主要采用以下两类存取方式。存储过程和建立索引。4.5数据库服务器的性能优化实际对数据服务器新能的要求主要需要参照设计目标,实现依据应来自以下三种方式:理论上设计、仿真测试和实际运行的反馈分析。仿真测试可以采用一些专业的软件测试工具(如Load Runner,这对于还没有投入实际运行的数据库系统的性能分析具有重要的参考意义。作为数据库系统的管理者(包括分析设计角色,需要了解应用程序的需求和数据的逻辑、物理结构,并在相互冲突的数据库中(如联
27、机事物处理和面向决策支持应用间的矛盾权衡利弊。虽然各因素和手段之间存在复杂的联系,我们可以简单的将其划分为如下两种方式:(1设计经途数据库模式设计(如分区表、索引等(2配置途径配置途径通过将网络流通、磁盘I/O和CPU时间减到最小,使每个查询的响应时间最短并最大限度的提高整个数据库服务器的吞吐量、1硬件配备,如磁盘I/O使用RAID,针对大量数据交互情形内存的提升会显著减少总体的相应时间,CPU时一个较难预算的因素,一般需要实际测试才能做出判断。2参数配置,一般数据库可能有一套自动资源管理机制,那只是非自主的资源发挥而已,适用于一般的应用情形,对于严格要求的唱歌,只有Oracle这样的产品对能
28、提供一套完整的性能调整机制,使得数据库系统管理员实现目标(如Oracle中SGA各种参数的设置。5数据库的实现建立了图书管理系统的相关表,数据库表名关系模式名称备注User 用户(图书管理员用户信息表ReaderType 读者类型读者类型信息表Reader 读者读者信息表PaperType 有效证件类型证件类型信息表BookType 图书类别图书类别信息表BookConcern 出版社出版社信息表Book 图书图书信息表GiveInfo 图书借阅归还借阅归还信息表Amerce 罚款罚款信息表AmerceType 罚款项罚款类型设置表以及视图还有存储过程。建立了表与表的关系图如下: 二、实验步骤
29、1收集系统需求;本阶段成果的内容形式上主要包括数据流图和数据字典。数据流图和数据字典是描述用户需求的重要工具以及阶段成果的表达方式。这里借助了用例分析进行辅助。它作为需求分析的成果和用户交流的主要手段和依据,是后续数据库设计的前提。我们从数据流图中可以比较充分的了解软件的结构,所以也是软件设计的重要依据。小组调查了解了用户的需求后,需要进一步表达用户的需求,采用的分析和表达用户需求的方法是结构化分析法。该方法是基于数据流的需求分析法,它利用图形的方式进行表达,更加直观易运用。结构化分析法采用的是自顶向下、分层分解的方式分析系统,即将系统的功能从宏观层面逐渐细化直到最终,其中主要采用:数据流图(
30、DFD、数据字典(DD等这里还采用了辅助工具(UML。2.1功能描述:功能名称图书信息管理功能描述对图书的基本信息管理。输入信息图书的基本信息。处理过程对图书的基本信息的管理,管理包括图书信息的添加、修改、删除和查询。输出信息处理结果后,系统会向用户返回数据处理结果,用户根据返回结果可以判断处理的成功与否功能名称读者信息管理功能描述对读者的基本信息管理。输入信息读者的基本信息。处理过程对读者的基本信息的管理,管理包括读者信息的添加、修改、删除和查询。输出信息处理结果后,系统会向用户返回数据处理结果,用户根据返回结果可以判断处理的成功与否功能名称读者借书信息管理功能描述对读者借书信息管理输入信息
31、读者借书的基本信息处理过程对借书信息的管理,实现的是将读者要求借出的书籍信息加入到数据库中,然后更新数据库,借出的时间段内,该书不能再借出。借出信息包括所借的书籍信息,读者信息以及续借。输出信息处理结果后,系统会向用户返回数据处理结果,用户根据返回结果可以判断处理的成功与否功能名称图书归还信息管理功能描述对图书归还的信息管理输入信息图书的基本信息处理过程对图书的归还信息的管理,实现将读者要还的书籍信息以及读者的姓名,重新将书籍状态设置为可用。同时更新数据库。输入信息包括书名、作者、借出的书目和借出的读者的姓名,图书损坏与否。输出信息处理结果后,系统会向用户返回数据处理结果,用户根据返回结果可以
32、判断处理的成功与否2分析典型业务的数据流程;2.2数据流图数据流图可以清楚的表示各个模块之间的调用关系。下面是各个模块的数据流图:读者借书数据流图读者借书详细数据流图图书管理人员存储信 息新书编 号存储信息图书编号图书编号图书编号 图书 管理员处理读者信息读者信息 查询借书数量处理借书信息读者借书信息 借书信息读者能否借书信息读者信息读者信息图书 管理员处理读者信息读者信息 查询借书数量检查书过期否读者借书信息借书信息 读者能否借书信息读者信息借书数量信息读者信息借书信息借书信息借书信息借书数量已满更新借书信息借书过期信息过期书信息图书管理员处理图书信息图书信息读者图书清单图书信息查找的图书信
33、息图书信息借书信息图书 管理员接收借书信息 更新借书信息 取消借书记录读者处理罚款借书记录借还书日期借还书日期借书信息图书信息借书信息借书信息3分析数据字典; 3.1数据字典数据流名称新书入库管理 别名 Book描述 新书入库的组成定义图书类型=图书编号+图书名称+作者+译者+出版社+出版日期+入库日期+图书类型+书数+图书状态+页数+价格+附件+图书简介 输入流 图书管理员 输出流 图书编号 补充说明数据流名称读者管理 别名 Reader描述 读者管理的组成定义读者类型=读者编号+读者类型+姓名+有效证件+证件号码+状态+性别+生日+职业+联系电话+E-mail+家庭住址+所借书数+借书总数
34、+登记日期+备注 输入流 图书管理员 输出流 读者编号 补充说明图书管理员处理用户名与密码 权限身份验证处理命令处理图书信息(借书还书处理图书信息(图书入库处理读者信息(修改、查看读者图书信息借还书信息读者信息输入用户名密码有效用户名密码输入读者借书信息图书信息读者相关信息数据流名称读者借书管理别名BorrowBook描述读者借书的组成定义读者借书=读者信息+所借图书信息读者信息=读者编号+读者姓名+性别+有效证件+有效证件号码+读者类别+联系电话+已借数量+借书总量所借图书信息=图书编号+图书名称+作者+图书类型+价格+出版时间+出版社+借出次数+附件输入流图书管理员输出流借出补充说明图书管
35、理员通过读者编号与所借图书编号输入数据流名称还书管理别名ReturnBook描述图书归还的组成定义图书归还=图书编号+读者信息+图书信息读者信息=读者编号+姓名+性别+类型+有效证件+证件号码+借书数量+罚款金额图书信息=图书编号+图书名称+作者+借阅日期+归还日期+超出时间+借附件输入流图书管理员输出流还书补充说明图书管理员通过归还图书编号输入数据流名称续借图书管理别名ContinueBook描述续借图书的组成定义续借图书=图书编号+续借天数+续借后应还日期+读者信息+图书信息读者信息=读者编号+姓名+性别+类型+有效证件+证件号码+借书数量图书信息=图书编号+图书名称+作者+类型+借阅日期
36、+应还日期+借附件输入流图书管理员输出流续借补充说明图书管理员通过续借图书编号进行数据输入数据流名称出版社设置管理别名PublishCompany描述出版社设置的组成定义出版社设置=出版社编号+出版社名称输入流图书管理员输出流添加,修改,删除补充说明数据流名称用户管理别名User描述用户的组成定义用户=用户名+密码+用户权限输入流图书管理员输出流登陆补充说明SystemManager 、BookManager4提取实体及其关系;上述数据流图和数据字典共同构成了对用户需求的表达,它们是系统分析员(数据库管理员在需求调查过程中和用户反复交互得到的。概念设计就是通过对需求分析阶段得到的信息需求进行综
37、合、归纳与抽象,形成一个独立于具体数据库管理系统的概念模型,主要使用E-R图。4.1实体由前面分析得到的数据流图和数据字典,抽象出来的实体主要有3个:图书管理员、读者、图书、出版社(系统管理员先暂时不计。实体和属性的定义:书库图书信息,包括数据项有:图书编号、书名、书号、类别、出版社、作者、ISBN、印张、字数、版次、印数、定价、开本、是否在库、是否损坏、是否遗失、入库时间、图书介绍读者信息,包括数据项有:学生编号、学号、姓名、性别、系别、班级、级别、已借图书、照片借书信息,包括数据项有:图书编号、学生编号、是否归还、书名、姓名、学号、书号、系别、班级、已借图书、出版社、作者、借阅日期、图书类
38、别、是否续借出版社信息,包括数据项有:供货商序号、供货商、城市、地址、电话、传真、邮政编码、EMAIL、联系人、首次合作时间用户信息,包括数据项有:用户编号、姓名、密码、类别、性别、家庭住址、联系电话、职务、出生日期、照片罚款信息,包括数据项有:流水号、罚款原因、罚款金额、日期。过期图书信息,包括数据项有:图书编号、书名、书号、学生序号、学生姓名、系别、班级、过期时间。师生可借阅图书,借阅图书有期限限制和数量限制,逾期不还需要罚款;每本书的馆藏数量不同,图书管理员需对这些书进行管理,书籍借出和归还时须注意是否有损毁。5画出E-R图;师生可借阅图书,借阅图书有期限限制和数量限制,逾期不还需要罚款
39、;每本书的馆藏数量不同,图书管理员需对这些书进行管理,书籍借出和归还时须注意是否有损毁。5.1系统局部E-R图ER模型的“联系”用于刻画实体之间的关联。一种完整的方式是对局部结构中任意两个实体类型,依据需求分析的结果,考察局部结构中任意两个实体类型之间是否存在联系。若有联系,进一步确定是1:N,M:N,还是1:1等。还要考察一个实体类型内部是否存在联系,两个实体类型之间是否存在联系,多个实体类型之间是否存在联系,等等。联系定义如图3-1所示。解释如下:一个借阅者(用户只能具有一种身份,而一种身份可被多个借阅者所具有;一本图书只能属于一种图书类别(类别,而一种图书类别可以包含多本图书;一个用户可
40、以借阅多本不同的书,而一本书也可以被多个不同的用户所借阅。读者编号姓名年龄联系电话地址性别已借书总数读者管理管理员借阅管理图书n mnnm m.3.3系统全局E-R 图图书图书编号图书名称作者 出版社出版日期图书类型已借数量状态入库日期图书简介页数价格译者序列编号借阅读者书籍读者姓名读者性别 读者编号 读者编号借阅编号图书状态 单价作者图书数量序列编号出版日期图书编号图书名称1N还书读者书籍读者姓名读者性别 读者编号 读者编号还书编号图书状态 单价作者图书数量序列编号出版日期图书编号图书名称1N6创建关系模式;E-R图到关系模式的转换读者与图书之间的关系式多对多的联系,因此,将读者与图书以及借
41、书联系分别设计成如下的关系模式:图书(图书编号,图书名称,作者,译者,出版社,出版日期,入库日期,图书类型,书数,图书状态,页数,价格,附件,图书简介读者(读者编号,读者类型,姓名,有效证件,证件号码,性别,职业,联系电话,E-mail,家庭住址,备注因为图书与读者间的关系借书与还书,并且是多对多的关系,所以抽出借阅归还的关系。借书(读者编号,读者姓名,性别,有效证件,有效证件号码,读者类别,联系电话,已借数量,借书总量,图书编号,图书名称,作者,图书类型,价格,出版时间,出版社,借出次数,附件出版社和图书之间是一对一的关系所以作为单独的关系。用户与图书的关系之间是一个管理员可以操作多本图书,
42、一本图书可以被多个管理员管理,将用户作为一个单独的关系进行处理,均如下。出版社(出版社编号,出版社名称用户(用户编号、姓名、密码、类别、性别、家庭住址、联系电话、职务、出生日期、照片对于读者与图书之间图书超期罚款关系以及过期图书处理关系,过期需要罚款,损坏图书也需要罚款。罚款(流水号、罚款原因、罚款金额、日期过期图书(图书编号、书名、书号、读者序号、姓名、职务、过期时间7关系规范化,创建表结构;读者与图书之间的关系式多对多的联系,因此,将读者与图书以及借书联系分别设计成如下的关系模式:图书(图书编号,图书名称,作者,译者,出版社,出版日期,入库日期,图书类型,书数,图书状态,页数,价格,附件,
43、图书简介读者(读者编号,读者类型,姓名,有效证件,证件号码,性别,职业,联系电话,E-mail,家庭住址,备注因为图书与读者间的关系借书与还书,并且是多对多的关系,所以抽出借阅归还的关系。借书(读者编号,读者姓名,性别,有效证件,有效证件号码,读者类别,联系电话,已借数量,借书总量,图书编号,图书名称,作者,图书类型,价格,出版时间,出版社,借出次数,附件出版社和图书之间是一对一的关系所以作为单独的关系。用户与图书的关系之间是一个管理员可以操作多本图书,一本图书可以被多个管理员管理,将用户作为一个单独的关系进行处理,均如下。出版社(出版社编号,出版社名称用户(用户编号、姓名、密码、类别、性别、
44、家庭住址、联系电话、职务、出生日期、照片对于读者与图书之间图书超期罚款关系以及过期图书处理关系,过期需要罚款,损坏图书也需要罚款。罚款(流水号、罚款原因、罚款金额、日期过期图书(图书编号、书名、书号、读者序号、姓名、职务、过期时间对于读者与图书之间图书超期罚款关系以及过期图书处理关系,过期需要罚款,损坏图书也需要罚款的调整:罚款(流水号、罚款原因、罚款金额、日期,罚款图书,罚款人,操作人罚款类型(类型编号、类型名称、罚款条目经由E-R模型得到关系模型并且得到适当调整后,我们可以结合在需求表述中数据字典包含的数据项信息,得到数据库的表结构。具体设计各个数据表的表结构,包括表名,表中各列的字段数据
45、类型、数据长度和表的主键和外码:还要考虑应该建立那些索引以及索引的类型。需要注意的是,考虑到系统的统一,兼顾如数据库管理员和后续软件开发中对数据库管理以及编程引用的便利,表明和字段名的命名以具有意义的英文名称为主或以其缩写字母构成:同时要为各个表名和字段名做出完整的中文文档说明。数据库表名关系模式名称备注User 用户(图书管理员用户信息表ReaderType 读者类型读者类型信息表Reader 读者读者信息表PaperType 有效证件类型证件类型信息表BookType 图书类别图书类别信息表BookConcern 出版社出版社信息表Book 图书图书信息表GiveInfo 图书借阅归还借阅
46、归还信息表Amerce 罚款罚款信息表AmerceType 罚款项罚款类型设置表字段名称含义属性类型长度备注UserID 用户号varchar 10 主键,也可以作为登陆标识UserPwd 用户密码varchar 10 Not nullAuthority 权限varchar 10 Not null字段名称含义属性类型长度备注ID 类型编号int 4 主码ReaderType 类型名称varchar 10 Not null BorrowBookNum 借书数量int 4 Not null字段名称含义属性类型长度备注ReaderID 读者编号varchar 10 主码ReaderName 姓名va
47、rchar 10 Not null ReaderSex 性别varchar 2 男/女ReaderBirth 出生年月Datetime 8ReaderTel 联系电话varchar 13 Not null ReaderAddr 地址varchar 100 联系地址ReaderStatus 状态varchar 4 表示在校、毕业或者转学ReaderTypeID 读者类型int 4 所属类型编号,外码>ReaderType.IDBorrowedCount 已借次数int 4 Not nullPaperType 证件类型varchar 4证件类型名称,外码>PaperType.Paper
48、NamePaperNum 证件号码varchar 20 证件类型编号,外码>PaperType.PaperIDReaderWork 职业varchar 20 学生、教授,副教授等E-mail 电子邮箱varchar 30Remark 备注varchar 100BorrowedSum 已借书数int 4 Not null InDate 登记日期int 8 Not null字段名称含义属性类型长度备注PaperID 证件编号varchar 4字段名称含义属性类型长度备注TID 图书类型 varchar 4 主码 TType类型名称varchar20字段名称 含义属性 类型 长度 备注 CID
49、 出版社编号 varchar 4 主码 CName出版社名称 varchar 20表GiveInfo 字段信息列表字段名称 含义属性 类型 长度 备注 BookID 图书编号 varchar 10 主码 ReaderID 读者编号 varchar 10 主码 GiveTime 还书时间 datetime 8 Not null IsAddTime 续借时间 bit 1 Not null ReturnTime 还书时间 datetime 8 Not null Amerce 罚款 money 8 默认:0 GiveAccessories 归还序列 varchar 2 Not null IsRetur
50、nTime 实际归还时间 datetime 8Not null UserID 操作人 varchar 10 外键user.userIDAmemo备注Amemo50字段名称 含义属性 类型 长度 备注 BookID 图书编号 varchar 10 主码 BookName 图书名称 varchar 20WritterName 作者 varchar 10 默认:未知 BookConcern 出版社编号 varchar 4 Not nullPublishDate 出版日期 datetime 8 BookType 图书类型 varchar 4 LentCount借书次数int 4 默认:0 Status
51、 状态 varchar 4 结出、在馆等 默认:在馆InDate 入馆时间 datetime 8 当天 BookView 图书简介 text 16 默认:无 PageCount 页数 int 4 默认:0 Accessories 序列号 varchar 20 Not null Interpret 译者 varchar 20 默认:无 Price 价格money8默认:0字段名称含义属性类型长度备注A TypeID 罚款类型号varchar 10 主码A TName 罚款名称varchar 10 Not nullA TList 罚款条目text 16 Not null8选取开发工具实现功能;开发
52、工具SQL server 2000,rose成功创建图书管理系统数据库book 指导老师对实验设计方案的意见:指导老师签名:年月日二、实验结果与分析2.1U M L系统需求分析UML是一种功能强大的、面向对象的可视化系统分析的建模语言,它采用一整套成熟的建模技术,广泛地适用于各个应用领域。它的各个模型可以帮助开发人员更好地理解业务流程,建立更可靠、更完善的系统模型。从而使用户和开发人员对问题的描述达到相同的理解,以减少语义差异,保障分析的正确性。该图书馆管理系统的用例分析从用例图中我们可以看出管理员和读者之间对本系统所具有的用例。管理员所包含的用例有:(1登录系统:管理员可以通过登录该系统进行
53、各项功能的操作(2书籍管理:包括对书籍的增删改等。(3书籍借阅管理:包括借书、还书、书籍逾期处理和书籍丢失处理等等。(4读者管理:包含对读者的增删改等操作。读者所包含的用例有:(1登录系统(2借书:进行借书业务。(3还书:读者具有的还书业务。(4查询:包含对个人信息和书籍信息的查询业务(5逾期处理:就是书籍过期后的缴纳罚金等。(6书籍丢失处理:对书籍丢失后的不同措施进行处理。通过用例图在rose软件中绘画出初步的系统类图,帮助系统分析。图书馆管理系统的类图【类图简单说明】(1Reader类是借阅者的类,它的属性很多,包括借阅者的账户ID(ReaderID、姓名(ReaderName、密码(Re
54、aderPassword、联系方式(ReaderPhoneNo、所借书籍的书目(ReaderBorrowedBooks等。其中主要操作有添加读者(AddReader和删除(DeleteReader和遍历(LookoverReader等可以对借书类进行操作。(2Book类是图书类,他有编号和名称等属性,操作主要是书籍的增删改和读者的增删改等等。(3 BookManager是图书管理员类,对其操作有添加读者,删除修改读者信息。(4 SystemManager是图书管理员类,有用户名密码的属性。(5 BorrowReturn是借书还书类,借书还书等操作。(6 PublishCompany是出版社类,有出版社编号,名称等属性,能对其进行添加修改删除操作。2.2创建表Book表BookConcern表BookType表GiveInfo表PaperType表Reader表ReaderType表User表Amerce表AmerceType表2.3相关视图的创建CREATE VIEW BookViewASSELECT Book.*, BookConcern.*, BookType.*FROM Book INNER JOINBookConcern ON Book.BookConcern = BookConcern.CID
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 玉米原材料采购合同范本
- 村委建设补偿协议书范本
- 禁止学生喝酒安全协议书
- 浦东同城厂房出租协议书
- 材料商玻璃采购合同范本
- 自建房套间出售合同范本
- 防晒服定制采购合同范本
- 注册人员聘用协议书范本
- 空压机节能方案合同范本
- 股东协议书与代持协议书
- 胫骨髁间棘撕脱骨折课件
- 2023年新疆职业大学单招职业技能考试笔试题库及答案解析
- 《仪表工培训》课件
- 小学语文人教六年级下册(统编)第二单元-《爱丽丝漫游奇境》教学反思
- 化粪池 (有限空间)作业安全告知牌及警示标志
- T∕CGMA 033001-2018 压缩空气站能效分级指南
- 辽宁省高中毕业生登记表含成绩表学年评语表体检表家庭情况调查表完整版高中档案文件
- 变形铝及铝合金圆铸锭国家标准
- PCN变更申请单
- 常用硒鼓通用表
- 鹤山饮食文化
评论
0/150
提交评论