图书管理系统文档

图书管理系统

课题名称:指导教师:专业班级:姓 名:学 号:

图书管理系统 完成日期:2014年6月

目 录

1 图书管理系统的需求分析 . .......................................................................................................... 4

1.1 图书借阅者的需求 . ........................................................................................................... 4 1.2 图书馆管理员的需求 . ....................................................................................................... 4 1.3系统管理员的需求 . ............................................................................................................ 4 2 图书管理系统的UML 建模 ......................................................................................................... 4

2.1标识参与者 . ........................................................................................................................ 4 2.2 标识用例 . ......................................................................................................................... 5

2. 2.1借阅者请求服务的用例图 . .................................................................................... 5 2.2.2 图书馆管理员处理借书、还书等的用例图 . ........................................................ 6 2.2.3系统管理员进行系统维护的用例图 . ..................................................................... 6 2.3实现用例的时序图 . ............................................................................................................ 7

2.3.1 系统管理员添加书籍的时序图 . ............................................................................ 7 2.3.2系统管理员添加借阅者帐户的时序图 . ................................................................. 8 2.3.3系统管理员删除书目的时序图 . ............................................................................. 9 2.3.4 图书管理员处理书籍借阅的时序图 . .................................................................... 9 2.3.5 图书管理员处理书籍归还的时序图 . .................................................................. 10 2.3.6 借阅者查询书籍信息的时序图 . .......................................................................... 11 2.3.7借阅者预订书籍的时序图 . ................................................................................... 12 2.4实现用例的协作图 . .......................................................................................................... 12

2.4.1系统管理员添加书籍的协作图 . ........................................................................... 12 2.4.2系统管理员删除书籍的协作图 . ........................................................................... 13 2.4.3图书管理员处理借书的协作图 . ........................................................................... 13 2.4.4图书管理员处理还书的协作图 . ........................................................................... 14 2.4.5借阅者预订书籍的协作图 . ................................................................................... 15 2.5对象的状态图 . .................................................................................................................. 15

2.5.1书的状态图 . ........................................................................................................... 15 2.5.2借阅者帐户的状态图 . ........................................................................................... 16 2.6参与者的活动图 . .............................................................................................................. 17

2.6.1借阅者的活动图 . ................................................................................................... 17 2.6.2图书管理员的活动图 . ........................................................................................... 18 2.6.3系统管理员的活动图 . ........................................................................................... 19

3 系统中的类................................................................................................................................. 21

3.1系统中主要的类: . .......................................................................................................... 21

3.1.1参与者相关的类 . ................................................................................................... 21 3.1.2系统中用到的其它的类 . ....................................................................................... 22 3.2各个类之间的关系 . .......................................................................................................... 23 4系统的配置与实现 . ............................................................................................................. 24 4.1系统的组件图 . .................................................................................................................. 24

4.1.1业务对象组件图 . ................................................................................................... 25 4.1.2 用户界面的组件图 . .............................................................................................. 25 4.2系统的配置图 . .................................................................................................................. 26 5 小结 ............................................................................................................................................ 27

6 参考文献..................................................................................................................................... 27

1 图书管理系统的需求分析

立足于校园实际,着眼于未来发展,建成符合标准化协议、通用性较强、实用的系统,以提高图书信息的现代化管理水平,实现信息资源的共享。图书馆管理系统需要满足三个方面的需求,这三个方面分别是图书借阅者、图书馆管理员和图书系统管理人员。借阅者的需求是查询图书馆所存的图书、个人借阅情况和个人信息的修改;图书馆管理员对图书借阅者的借阅及还书要求进行操作,同时形成借书或还书记录;系统管理员可以对系统的数据进行维护,如增加、删除和更新图书目录,增加、删除和更新借阅者账户,增加和删除图书。

1.1 图书借阅者的需求

图书借阅者可直接查看图书馆图书情况,如果图书借阅者根据本人的图书证号和密码登录系统,还可以进行个人的借书情况的查询并维护部分个人信息。一般情况下,图书借阅者只应该查询和维护个人的借书情况和信息,若查询和维护其他的借阅者的信息和借阅情况,就要知道其他借阅者的借书证号和密码。这些是很难得到的特别是密码,所以 不但满足了图书借阅者的需求而且还保护了图书借阅者的个人隐私。

1.2 图书馆管理员的需求

图书馆管理员有修改图书借阅者的借书和还书记录的权限,在此模块中,图书馆管理员可以为图书借阅者加入借书记录后还书记录。

1.3系统管理员的需求

图书馆系统管理员功能的信息量大,数据安全性和保密性要求最高。本功能实现对图书信息、借阅证信息、总体借阅情况信息的管理和信息查看及维护。图书馆系统管理员可以浏览、查询、添加、删除、修改图书的基本信息;浏览、查询、添加、删除和修改图书借阅者的基本信息,但不能添加、删除和修改借阅信息,这部分功能应该由图书馆管理员来执行,但是,删除某条图书借阅者基本信息记录时,应实现对该图书借阅者借阅记录的级联删除。总之本系统功能需求包括下面的几个方面和几个功能模块。

2 图书管理系统的UML 建模

2.1标识参与者

参与者是在业务中扮演某个角色的人、部门或独立的软件系统。一般来说,参与者使用系统或为系统提供服务。

图书管理系统的参与者介绍如下:

(1)借阅者:可以通过网络查询书籍信息和预定书籍,借阅者能够借阅书籍和还书。 (2)图书管理员:能够处理借阅者的借阅和还书请求。

(3)系统管理员:可以对系统的数据进行维护,如增加、删除和更新书目,增加、删除和更新借阅者账户,增加和删除书籍。

2.2 标识用例

2. 2.1借阅者请求服务的用例图

借阅者请求服务是涉及7个用例,如图1所示。 下列是用例图的说明:

(1)Search for book:书籍查询用例。 (2)Reserve the book:书籍预定用例。

(3)Logon the system:登录系统。用户可以登录系统以便进行借阅信息查询以及预定书籍等操作。

(4)Query Info:借阅查询信息。 (5)Borrow the book:借阅书籍。 (6)Return the book:归还书籍。

(7)Return With Fine:还书时缴纳罚金。如果借阅者所借书籍超过借阅期未还,还书时候就要缴纳一定的罚金。

Return the bookReturn With Fine

图1 借阅者请求服务用例图

2.2.2 图书馆管理员处理借书、还书等的用例图

图书管理员处理借书、还书等涉及5个用例,如图2所示。 下列是用例的说明:

(1)Get book:书籍归还处理。 (2)Lend book:书籍借阅处理。

(3)Remove Reservation:删除书籍预订信息。 (4)Get With Fine:还书时收取罚金。

(5)Check user count:检查用户借阅凭证的合法性。图书管理员在借阅者借书的时候要检查用户借阅凭证的合法性。

Remove Reservation

图2 图书管理员处理借书、还书等用例图

2.2.3系统管理员进行系统维护的用例图

系统管理员维护系统时涉及8个用例,如图3所示。 下列是用例的说明:

(1)Query Borrower Info:查询读者信息。 (2)Query Book Info:查询书籍信息。

(3)Add Title:增加书目。

(4)Remove or Update Title:删除或更新书目。 (5)Add Book:增加书籍。 (6)Remove Book:删除书籍。

(7)Add Borrower:添加借阅者账户。

(8)Remove or Update Borrower:删除或更新借阅者账户信息

Administrator

图3 系统管理员进行系统维护用例图

2.3实现用例的时序图

2.3.1 系统管理员添加书籍的时序图

系统管理员添加书籍的时序图如图4所示。 下列是时序图的说明:

(1)add Item():添加书籍函数。

(2)find(String):根据书籍查找相应书目的函数。 (3)create(integer,Title):修改书籍数目的函数。

注:添加书籍时,系统管理员首先与系统的维护窗口交互,查找有没有相应的书目信息。如果有,直接添加,如果没有,要创建新的书目。

Check if

title exist

图4 系统管理员添加书籍的时序图

2.3.2系统管理员添加借阅者帐户的时序图

系统管理员添加借阅者账户的时序图如图5所示。 下列是时序图说明:

(1)

Create(String,String):添加新的借阅者账户的函数。

注:系统管理员要添加新的借阅者账户,首先要与维护窗口交互,维护窗口负责创建一个新的借阅者账户。

图5 系统管理员添加借阅者账户时序图

2.3.3系统管理员删除书目的时序图

系统管理员删除书目的时序图如图6所示。 下列是时序图说明:

(1)find(String):书目类的查找函数。

(2)find_on_title(Title):查找此书目下书籍信息的函数。 (3)destroy :删除书籍信息的函数。 (4)destroy :删除书目信息的函数。

注:系统管理员与系统的维护窗口交互,查找到相应的书目及书籍信息并删除。

items first

图6 系统管理员删除书目的时序图

2.3.4 图书管理员处理书籍借阅的时序图

图书管理员处理书籍借阅的时序图如图7所示。 下列是时序图的有关说明:

(1)find(String):查找书目的函数。 (2)find_item():查找所要书籍的函数。

(3)find_on_title(Title):根据书目名从数据库中找到书目信息的函数。 (4)identify_borrower():验证借阅者身份的函数。

(5)find(String):根据借阅者的登录账号找到借阅者信息的函数。 (6)create(Borrower,item):修改借阅信息的函数。

图7 图书管理员处理图书借阅的时序图

2.3.5 图书管理员处理书籍归还的时序图

图书管理员处理书籍归还的时序图如图8所示。 有关时序图说明:

(1)check():检查书籍状况的函数。 (2)update():更新书籍类信息的函数。 (3)update():更新借阅者借阅信息的函数。

注:图书管理员处理还书时,首先从借阅者手里接过书籍,然后与还书窗口交互,还书窗口负责检查书籍状况,然后更新书籍信息和读者的借阅信息。

图8 图书管理员处理书籍归还的时序图

2.3.6 借阅者查询书籍信息的时序图

借阅者查询书籍的时序图如图9所示。 下列是时序图说明:

(1)Fine_on_title(Title):根据书目查找到相应的书籍信息。

图9 借阅者查询书籍的时序图

2.3.7借阅者预订书籍的时序图

借阅者预订书籍的时序图如图10所示。 时序图说明如下:

(1)Login :登录系统的函数。

(2)Find(String):查找相应的书目的函数。 (3)Reserve():预订书籍的函数。

注:借阅者首先与系统的网络模块交互,如果找到要预订的书籍,就将预订的信息添加进去。

图10 借阅者预定书籍的时序图

2.4实现用例的协作图

2.4.1系统管理员添加书籍的协作图

系统管理员添加书籍的协作图如图11所示。 以下是协作图说明:

(1)add item():添加书籍的函数。

(2)find(String):根据书籍名查找相应书目的函数。 (3)update():修改某类书目下书籍数量的函数。

图11 系统管理员添加书籍的协作图

2.4.2系统管理员删除书籍的协作图

系统管理员删除书籍的协作图如图12所示。 以下是协作图说明:

(1)remove_item():删除书籍的函数。

(2)find(String):根据书籍名查找相应书目的函数。 (3)update():修改某类书目下书籍数量的函数。

图12 图书管理员删除书籍的协作图

2.4.3图书管理员处理借书的协作图

图书管理员处理借书的协作图如图13所示 以下是协作图说明:

(1)identify_borrower():验证借阅者身份的函数。

(2)find_reservation():查找预订信息的函数。

(3)find(Borrower,Title):根据借阅者和借阅的书籍名找到相应预订信息的函数。 (4)borrow():处理借书的函数。

(5)update():更新某一书目下书籍数量的函数。

(6)check_if_max():检查借阅凭证所借书籍数目是否已经超过最大限额的函数。

图13 图书管理员处理借书的协作图

2.4.4图书管理员处理还书的协作图

图书管理员处理还书的协作图如图14所示。 以下是协作图说明:

(1)find_borrower():查找借阅者信息的函数。

(2)find(String):根据借阅者查找借阅信息的函数。 (3)return_back():处理还书的函数。 (4)update():更新书籍数目函数。

图14图书管理员处理还书的协作图

2.4.5借阅者预订书籍的协作图

借阅者预订书籍的协作图如图15所示。 以下是协作图说明:

(1)identify_borrower():验证借阅者身份的函数。 (2)find(String):根据书籍名称查找书目信息的函数。 (3)reserve():预订某一书目下的书籍的函数。 (4)create(Title,Borrower):修改预订信息的函数。

图15借阅者预订书籍的协作图

2.5对象的状态图

2.5.1书的状态图

书的状态图如图16所示。 下列是状态图的说明:

(1)New book:还未入库的新书。 (2)Delete :已经从书库里删除的书。

(3)Available :书籍处于可用状态,即可以外借的状态。 (4)Reserved :预订状态。 (5)Borrowed :借出状态。

注:书籍处于可用(Available )状态时既可以预订也可以外借,外借后变为借阅(Borrower )状态。处于预订(Reserved )状态时可以外借,超出预订时间期限则从预订状态直接转为可用状态。借阅者在规定的预订时间内也可以考虑取消预订,取消预订后书籍的状态转为可用。外借书籍归还后变为可用状态。

图16书的状态图

2.5.2借阅者帐户的状态图

借阅者帐户的状态图如图17所示 下列是状态图的说明:

(1)New Borrower:新加入的借阅者的账户。

(2)Account Available:借阅账户为可用状态,即未达到所规定的书籍借阅数目上限。 (3)Account Unavailable:借阅账户为不可用状态,即所借的书籍数已达到规定的书籍借阅数目上限,不能再借阅书籍了。

(4)Delete Account:个人账户被删除状态。

注:借阅者的账户刚被管理员加入时处于新帐户(New Borrower)状态,当管理员添加借阅权限后就变为可用(Account Available )状态,当所借书籍数已达到规定的书籍借阅数目上限时,变为不可用状态(Account Unavailable )状态,当账户被系统管理员删除后,变为删除(Delete )状态。

图17借阅者帐户的状态图

2.6参与者的活动图

2.6.1借阅者的活动图

借阅者的活动图如图18所示。 下列是活动图的说明:

(1) Self-help Service: 打开图书馆负责自助服务的计算机。 (2) Search for books: 查询需要的书籍。 (3) Login :登录管理系统。

(4) View book information: 查看书籍信息。 (5) Reserve the book: 预订书籍。 (6) Exit System: 退出系统。

(7) Leave Computer: 离开自助服务的计算机。

注:借阅者进行自助服务时,可以首先登录系统,然后进行书目查询、书籍信息查询、书籍预订等活动,也可以先查询书目和书籍信息后登录系统预订书籍。

图18借阅者的活动图

2.6.2图书管理员的活动图

图书管理员的活动图如图19所示。 下列是活动图说明:

(1)Login the system: 图书管理员登录系统。 (2)Get book: 处理还书操作。 (3)Lend book: 处理借书操作、

(4)Update borrower’s information: 更新借阅者借阅凭证上的信息。 (5)Accept money: 收取罚金。

注:1,图书管理员可以处理两种情况,借书操作和还书操作。当用户借书时,图书管理员要查看借阅者凭证上显示的可借书的数目是否满足要求;当用户还书时,图书管理员要查阅所借书籍是否已经超过期限,如果超期,要收取一定的罚金。,2,系统管理员登录系统后,可以进行查阅书目信息、添加书目、删除或更新书目等活动。

图19图书管理员的活动图

2.6.3系统管理员的活动图

注:系统管理员登录系统后,可以进行添加书籍、删除书籍等活动。 以下是活动图的说明:

(1)Login the system: 登录系统。

(2)Operation on borrower: 对借阅者账户操作。 (3)Operation on title: 对书目进行操作。 (4)Operation on book: 对书籍进行操作。 (5)Query borrower info: 查询借阅者信息。 (6)New borrower: 添加新的借阅者账户。

(7)Remove or Update borrower: 删除或更新借阅者账户。 (8)Query title: 查询书目信息。 (9)New title: 增加新的书目。

(10)Remove or update title: 删除或更新书目。

(11)Add book: 增加书籍信息。 (12)Remove book: 删除书籍信息。 (13)Exit the system: 退出系统。

图20-1系统管理员维护借阅者帐户的活动图:

图20-2系统管理员进行书目信息维护的活动图

:

图20-3系统管理员维护书籍信息的活动图:

3 系统中的类

3.1系统中主要的类:

3.1.1参与者相关的类

下列是类图的说明:

(1)Borrower 类是借阅者的类,它的属性很多,包括借阅者的账户ID (UserID )、姓名(Name )、地址(Address )、邮编(Zip )、所借书籍的书目(borrow_number)等. 其中主要操作有借书(borrow)和还书(return_back)。

(2)Librarian 类是图书管理员的类,包括工作帐号(WorkID )、名字(Name )和地址(Address )等属性。

(3)Administrator 类是系统管理员类。

图21 参与者相关的类

3.1.2系统中用到的其它的类

类图说明如下:

下列是类图的说明:

(1)Title 类是记录书目信息的类,包括书籍的名字(name )、作者(author )、ISBN 、此种书籍总数量(total_number)、借出的数量(borrowed_number)、是否允许借出 (isAllowForBorrow )等属性。

(2)Item 类是具有某本书的类,包括书籍号(id )。操作包括预订(reserve )、按书目查找(find_on_title)等。

(3)Loan 类是某本书的借阅信息类,包括所借阅书籍的ISBN 、借阅的时间(date )等。

(4)Reservation 类是预订信息类,每个预订信息包括预订日期(date )、所预订书籍的ISBN 、预订书籍的用户ID (UserID )等属性。

图22系统中用到的其它的类

3.2各个类之间的关系

下列是类图的有关说明:

Title 类是书库里的一条记录,而Item 类是指具体的书籍。现实世界里,每条记录都会有多本术存在,所以Title 与Item 之间是一对多的关系;Title 与Reservation 之间也是一对多的关系,也就是说Title 可以有多个预订记录,但是也可以没有预订记录。Item 与Reservation 之间是一对一的关系,不可能存在同一本书被两个人预订的情况;Borrower 与Loan 以及Borrower 与Reservation 之间是一对多的关系。

图23各类之间的关系

4系统的配置与实现

4.1系统的组件图

图书管理系统主要包括两个组件图:业务对象组件图和用户界面组件图。

4.1.1业务对象组件图

Item.java Loan.java BorrowerInformation.java

图24 业务对象组件图

4.1.2 用户界面的组件图

UpdateBorrowerFrame.jav

a BorrowerFrame.jav

a MainWindow.jav

a

CancelReserv ation.jav

a BrowseWindow.jav

a Reserv ationFrame.jav

a

FindBorrowerDialog.jav

a ReturnItemFrame.jav

a TitleInforWindow.jav

a

LendItemFrame.jav

a

a

BorrowerInforWindow.jav

a

UpdateTitleFrame.jav

a TitleFrame.jav

a AboutDialog.jav

a

MessageBox.jav

a QuitDialog.jav

a ResultOfFindBorrower.jav

a ResultOfFindTitle.jav a

图25 用户界面组件图

4.2系统的配置图

系统的配置图主要用来说明如何配置系统的软件和硬件。系统由5个节点构成,应用服务器负责整个系统的总体协调工作;数据库负责管理数据;Web 应用程序模块用于借阅者进行书籍查询、网上书籍预定;业务操作模块用于处理读者借书、还书等一般业务流程;信息维护模块用于系统管理员维护整个系统的数据信息。

图26系统的配置图

5 小结

这次的课程设计,对我来说,是一次尝试与创新,也是一个挑战的过程。以前实践太少,现在利用所学知识将理论与实践相结合。在具体的设计与实施中,我看到一个管理系统从无到有的过程,对具体的设计步骤、思路、方法、技巧都有了进一步的了解,深刻感受。

6 参考文献

[1] UML统一建模实用教程

图书管理系统

课题名称:指导教师:专业班级:姓 名:学 号:

图书管理系统 完成日期:2014年6月

目 录

1 图书管理系统的需求分析 . .......................................................................................................... 4

1.1 图书借阅者的需求 . ........................................................................................................... 4 1.2 图书馆管理员的需求 . ....................................................................................................... 4 1.3系统管理员的需求 . ............................................................................................................ 4 2 图书管理系统的UML 建模 ......................................................................................................... 4

2.1标识参与者 . ........................................................................................................................ 4 2.2 标识用例 . ......................................................................................................................... 5

2. 2.1借阅者请求服务的用例图 . .................................................................................... 5 2.2.2 图书馆管理员处理借书、还书等的用例图 . ........................................................ 6 2.2.3系统管理员进行系统维护的用例图 . ..................................................................... 6 2.3实现用例的时序图 . ............................................................................................................ 7

2.3.1 系统管理员添加书籍的时序图 . ............................................................................ 7 2.3.2系统管理员添加借阅者帐户的时序图 . ................................................................. 8 2.3.3系统管理员删除书目的时序图 . ............................................................................. 9 2.3.4 图书管理员处理书籍借阅的时序图 . .................................................................... 9 2.3.5 图书管理员处理书籍归还的时序图 . .................................................................. 10 2.3.6 借阅者查询书籍信息的时序图 . .......................................................................... 11 2.3.7借阅者预订书籍的时序图 . ................................................................................... 12 2.4实现用例的协作图 . .......................................................................................................... 12

2.4.1系统管理员添加书籍的协作图 . ........................................................................... 12 2.4.2系统管理员删除书籍的协作图 . ........................................................................... 13 2.4.3图书管理员处理借书的协作图 . ........................................................................... 13 2.4.4图书管理员处理还书的协作图 . ........................................................................... 14 2.4.5借阅者预订书籍的协作图 . ................................................................................... 15 2.5对象的状态图 . .................................................................................................................. 15

2.5.1书的状态图 . ........................................................................................................... 15 2.5.2借阅者帐户的状态图 . ........................................................................................... 16 2.6参与者的活动图 . .............................................................................................................. 17

2.6.1借阅者的活动图 . ................................................................................................... 17 2.6.2图书管理员的活动图 . ........................................................................................... 18 2.6.3系统管理员的活动图 . ........................................................................................... 19

3 系统中的类................................................................................................................................. 21

3.1系统中主要的类: . .......................................................................................................... 21

3.1.1参与者相关的类 . ................................................................................................... 21 3.1.2系统中用到的其它的类 . ....................................................................................... 22 3.2各个类之间的关系 . .......................................................................................................... 23 4系统的配置与实现 . ............................................................................................................. 24 4.1系统的组件图 . .................................................................................................................. 24

4.1.1业务对象组件图 . ................................................................................................... 25 4.1.2 用户界面的组件图 . .............................................................................................. 25 4.2系统的配置图 . .................................................................................................................. 26 5 小结 ............................................................................................................................................ 27

6 参考文献..................................................................................................................................... 27

1 图书管理系统的需求分析

立足于校园实际,着眼于未来发展,建成符合标准化协议、通用性较强、实用的系统,以提高图书信息的现代化管理水平,实现信息资源的共享。图书馆管理系统需要满足三个方面的需求,这三个方面分别是图书借阅者、图书馆管理员和图书系统管理人员。借阅者的需求是查询图书馆所存的图书、个人借阅情况和个人信息的修改;图书馆管理员对图书借阅者的借阅及还书要求进行操作,同时形成借书或还书记录;系统管理员可以对系统的数据进行维护,如增加、删除和更新图书目录,增加、删除和更新借阅者账户,增加和删除图书。

1.1 图书借阅者的需求

图书借阅者可直接查看图书馆图书情况,如果图书借阅者根据本人的图书证号和密码登录系统,还可以进行个人的借书情况的查询并维护部分个人信息。一般情况下,图书借阅者只应该查询和维护个人的借书情况和信息,若查询和维护其他的借阅者的信息和借阅情况,就要知道其他借阅者的借书证号和密码。这些是很难得到的特别是密码,所以 不但满足了图书借阅者的需求而且还保护了图书借阅者的个人隐私。

1.2 图书馆管理员的需求

图书馆管理员有修改图书借阅者的借书和还书记录的权限,在此模块中,图书馆管理员可以为图书借阅者加入借书记录后还书记录。

1.3系统管理员的需求

图书馆系统管理员功能的信息量大,数据安全性和保密性要求最高。本功能实现对图书信息、借阅证信息、总体借阅情况信息的管理和信息查看及维护。图书馆系统管理员可以浏览、查询、添加、删除、修改图书的基本信息;浏览、查询、添加、删除和修改图书借阅者的基本信息,但不能添加、删除和修改借阅信息,这部分功能应该由图书馆管理员来执行,但是,删除某条图书借阅者基本信息记录时,应实现对该图书借阅者借阅记录的级联删除。总之本系统功能需求包括下面的几个方面和几个功能模块。

2 图书管理系统的UML 建模

2.1标识参与者

参与者是在业务中扮演某个角色的人、部门或独立的软件系统。一般来说,参与者使用系统或为系统提供服务。

图书管理系统的参与者介绍如下:

(1)借阅者:可以通过网络查询书籍信息和预定书籍,借阅者能够借阅书籍和还书。 (2)图书管理员:能够处理借阅者的借阅和还书请求。

(3)系统管理员:可以对系统的数据进行维护,如增加、删除和更新书目,增加、删除和更新借阅者账户,增加和删除书籍。

2.2 标识用例

2. 2.1借阅者请求服务的用例图

借阅者请求服务是涉及7个用例,如图1所示。 下列是用例图的说明:

(1)Search for book:书籍查询用例。 (2)Reserve the book:书籍预定用例。

(3)Logon the system:登录系统。用户可以登录系统以便进行借阅信息查询以及预定书籍等操作。

(4)Query Info:借阅查询信息。 (5)Borrow the book:借阅书籍。 (6)Return the book:归还书籍。

(7)Return With Fine:还书时缴纳罚金。如果借阅者所借书籍超过借阅期未还,还书时候就要缴纳一定的罚金。

Return the bookReturn With Fine

图1 借阅者请求服务用例图

2.2.2 图书馆管理员处理借书、还书等的用例图

图书管理员处理借书、还书等涉及5个用例,如图2所示。 下列是用例的说明:

(1)Get book:书籍归还处理。 (2)Lend book:书籍借阅处理。

(3)Remove Reservation:删除书籍预订信息。 (4)Get With Fine:还书时收取罚金。

(5)Check user count:检查用户借阅凭证的合法性。图书管理员在借阅者借书的时候要检查用户借阅凭证的合法性。

Remove Reservation

图2 图书管理员处理借书、还书等用例图

2.2.3系统管理员进行系统维护的用例图

系统管理员维护系统时涉及8个用例,如图3所示。 下列是用例的说明:

(1)Query Borrower Info:查询读者信息。 (2)Query Book Info:查询书籍信息。

(3)Add Title:增加书目。

(4)Remove or Update Title:删除或更新书目。 (5)Add Book:增加书籍。 (6)Remove Book:删除书籍。

(7)Add Borrower:添加借阅者账户。

(8)Remove or Update Borrower:删除或更新借阅者账户信息

Administrator

图3 系统管理员进行系统维护用例图

2.3实现用例的时序图

2.3.1 系统管理员添加书籍的时序图

系统管理员添加书籍的时序图如图4所示。 下列是时序图的说明:

(1)add Item():添加书籍函数。

(2)find(String):根据书籍查找相应书目的函数。 (3)create(integer,Title):修改书籍数目的函数。

注:添加书籍时,系统管理员首先与系统的维护窗口交互,查找有没有相应的书目信息。如果有,直接添加,如果没有,要创建新的书目。

Check if

title exist

图4 系统管理员添加书籍的时序图

2.3.2系统管理员添加借阅者帐户的时序图

系统管理员添加借阅者账户的时序图如图5所示。 下列是时序图说明:

(1)

Create(String,String):添加新的借阅者账户的函数。

注:系统管理员要添加新的借阅者账户,首先要与维护窗口交互,维护窗口负责创建一个新的借阅者账户。

图5 系统管理员添加借阅者账户时序图

2.3.3系统管理员删除书目的时序图

系统管理员删除书目的时序图如图6所示。 下列是时序图说明:

(1)find(String):书目类的查找函数。

(2)find_on_title(Title):查找此书目下书籍信息的函数。 (3)destroy :删除书籍信息的函数。 (4)destroy :删除书目信息的函数。

注:系统管理员与系统的维护窗口交互,查找到相应的书目及书籍信息并删除。

items first

图6 系统管理员删除书目的时序图

2.3.4 图书管理员处理书籍借阅的时序图

图书管理员处理书籍借阅的时序图如图7所示。 下列是时序图的有关说明:

(1)find(String):查找书目的函数。 (2)find_item():查找所要书籍的函数。

(3)find_on_title(Title):根据书目名从数据库中找到书目信息的函数。 (4)identify_borrower():验证借阅者身份的函数。

(5)find(String):根据借阅者的登录账号找到借阅者信息的函数。 (6)create(Borrower,item):修改借阅信息的函数。

图7 图书管理员处理图书借阅的时序图

2.3.5 图书管理员处理书籍归还的时序图

图书管理员处理书籍归还的时序图如图8所示。 有关时序图说明:

(1)check():检查书籍状况的函数。 (2)update():更新书籍类信息的函数。 (3)update():更新借阅者借阅信息的函数。

注:图书管理员处理还书时,首先从借阅者手里接过书籍,然后与还书窗口交互,还书窗口负责检查书籍状况,然后更新书籍信息和读者的借阅信息。

图8 图书管理员处理书籍归还的时序图

2.3.6 借阅者查询书籍信息的时序图

借阅者查询书籍的时序图如图9所示。 下列是时序图说明:

(1)Fine_on_title(Title):根据书目查找到相应的书籍信息。

图9 借阅者查询书籍的时序图

2.3.7借阅者预订书籍的时序图

借阅者预订书籍的时序图如图10所示。 时序图说明如下:

(1)Login :登录系统的函数。

(2)Find(String):查找相应的书目的函数。 (3)Reserve():预订书籍的函数。

注:借阅者首先与系统的网络模块交互,如果找到要预订的书籍,就将预订的信息添加进去。

图10 借阅者预定书籍的时序图

2.4实现用例的协作图

2.4.1系统管理员添加书籍的协作图

系统管理员添加书籍的协作图如图11所示。 以下是协作图说明:

(1)add item():添加书籍的函数。

(2)find(String):根据书籍名查找相应书目的函数。 (3)update():修改某类书目下书籍数量的函数。

图11 系统管理员添加书籍的协作图

2.4.2系统管理员删除书籍的协作图

系统管理员删除书籍的协作图如图12所示。 以下是协作图说明:

(1)remove_item():删除书籍的函数。

(2)find(String):根据书籍名查找相应书目的函数。 (3)update():修改某类书目下书籍数量的函数。

图12 图书管理员删除书籍的协作图

2.4.3图书管理员处理借书的协作图

图书管理员处理借书的协作图如图13所示 以下是协作图说明:

(1)identify_borrower():验证借阅者身份的函数。

(2)find_reservation():查找预订信息的函数。

(3)find(Borrower,Title):根据借阅者和借阅的书籍名找到相应预订信息的函数。 (4)borrow():处理借书的函数。

(5)update():更新某一书目下书籍数量的函数。

(6)check_if_max():检查借阅凭证所借书籍数目是否已经超过最大限额的函数。

图13 图书管理员处理借书的协作图

2.4.4图书管理员处理还书的协作图

图书管理员处理还书的协作图如图14所示。 以下是协作图说明:

(1)find_borrower():查找借阅者信息的函数。

(2)find(String):根据借阅者查找借阅信息的函数。 (3)return_back():处理还书的函数。 (4)update():更新书籍数目函数。

图14图书管理员处理还书的协作图

2.4.5借阅者预订书籍的协作图

借阅者预订书籍的协作图如图15所示。 以下是协作图说明:

(1)identify_borrower():验证借阅者身份的函数。 (2)find(String):根据书籍名称查找书目信息的函数。 (3)reserve():预订某一书目下的书籍的函数。 (4)create(Title,Borrower):修改预订信息的函数。

图15借阅者预订书籍的协作图

2.5对象的状态图

2.5.1书的状态图

书的状态图如图16所示。 下列是状态图的说明:

(1)New book:还未入库的新书。 (2)Delete :已经从书库里删除的书。

(3)Available :书籍处于可用状态,即可以外借的状态。 (4)Reserved :预订状态。 (5)Borrowed :借出状态。

注:书籍处于可用(Available )状态时既可以预订也可以外借,外借后变为借阅(Borrower )状态。处于预订(Reserved )状态时可以外借,超出预订时间期限则从预订状态直接转为可用状态。借阅者在规定的预订时间内也可以考虑取消预订,取消预订后书籍的状态转为可用。外借书籍归还后变为可用状态。

图16书的状态图

2.5.2借阅者帐户的状态图

借阅者帐户的状态图如图17所示 下列是状态图的说明:

(1)New Borrower:新加入的借阅者的账户。

(2)Account Available:借阅账户为可用状态,即未达到所规定的书籍借阅数目上限。 (3)Account Unavailable:借阅账户为不可用状态,即所借的书籍数已达到规定的书籍借阅数目上限,不能再借阅书籍了。

(4)Delete Account:个人账户被删除状态。

注:借阅者的账户刚被管理员加入时处于新帐户(New Borrower)状态,当管理员添加借阅权限后就变为可用(Account Available )状态,当所借书籍数已达到规定的书籍借阅数目上限时,变为不可用状态(Account Unavailable )状态,当账户被系统管理员删除后,变为删除(Delete )状态。

图17借阅者帐户的状态图

2.6参与者的活动图

2.6.1借阅者的活动图

借阅者的活动图如图18所示。 下列是活动图的说明:

(1) Self-help Service: 打开图书馆负责自助服务的计算机。 (2) Search for books: 查询需要的书籍。 (3) Login :登录管理系统。

(4) View book information: 查看书籍信息。 (5) Reserve the book: 预订书籍。 (6) Exit System: 退出系统。

(7) Leave Computer: 离开自助服务的计算机。

注:借阅者进行自助服务时,可以首先登录系统,然后进行书目查询、书籍信息查询、书籍预订等活动,也可以先查询书目和书籍信息后登录系统预订书籍。

图18借阅者的活动图

2.6.2图书管理员的活动图

图书管理员的活动图如图19所示。 下列是活动图说明:

(1)Login the system: 图书管理员登录系统。 (2)Get book: 处理还书操作。 (3)Lend book: 处理借书操作、

(4)Update borrower’s information: 更新借阅者借阅凭证上的信息。 (5)Accept money: 收取罚金。

注:1,图书管理员可以处理两种情况,借书操作和还书操作。当用户借书时,图书管理员要查看借阅者凭证上显示的可借书的数目是否满足要求;当用户还书时,图书管理员要查阅所借书籍是否已经超过期限,如果超期,要收取一定的罚金。,2,系统管理员登录系统后,可以进行查阅书目信息、添加书目、删除或更新书目等活动。

图19图书管理员的活动图

2.6.3系统管理员的活动图

注:系统管理员登录系统后,可以进行添加书籍、删除书籍等活动。 以下是活动图的说明:

(1)Login the system: 登录系统。

(2)Operation on borrower: 对借阅者账户操作。 (3)Operation on title: 对书目进行操作。 (4)Operation on book: 对书籍进行操作。 (5)Query borrower info: 查询借阅者信息。 (6)New borrower: 添加新的借阅者账户。

(7)Remove or Update borrower: 删除或更新借阅者账户。 (8)Query title: 查询书目信息。 (9)New title: 增加新的书目。

(10)Remove or update title: 删除或更新书目。

(11)Add book: 增加书籍信息。 (12)Remove book: 删除书籍信息。 (13)Exit the system: 退出系统。

图20-1系统管理员维护借阅者帐户的活动图:

图20-2系统管理员进行书目信息维护的活动图

:

图20-3系统管理员维护书籍信息的活动图:

3 系统中的类

3.1系统中主要的类:

3.1.1参与者相关的类

下列是类图的说明:

(1)Borrower 类是借阅者的类,它的属性很多,包括借阅者的账户ID (UserID )、姓名(Name )、地址(Address )、邮编(Zip )、所借书籍的书目(borrow_number)等. 其中主要操作有借书(borrow)和还书(return_back)。

(2)Librarian 类是图书管理员的类,包括工作帐号(WorkID )、名字(Name )和地址(Address )等属性。

(3)Administrator 类是系统管理员类。

图21 参与者相关的类

3.1.2系统中用到的其它的类

类图说明如下:

下列是类图的说明:

(1)Title 类是记录书目信息的类,包括书籍的名字(name )、作者(author )、ISBN 、此种书籍总数量(total_number)、借出的数量(borrowed_number)、是否允许借出 (isAllowForBorrow )等属性。

(2)Item 类是具有某本书的类,包括书籍号(id )。操作包括预订(reserve )、按书目查找(find_on_title)等。

(3)Loan 类是某本书的借阅信息类,包括所借阅书籍的ISBN 、借阅的时间(date )等。

(4)Reservation 类是预订信息类,每个预订信息包括预订日期(date )、所预订书籍的ISBN 、预订书籍的用户ID (UserID )等属性。

图22系统中用到的其它的类

3.2各个类之间的关系

下列是类图的有关说明:

Title 类是书库里的一条记录,而Item 类是指具体的书籍。现实世界里,每条记录都会有多本术存在,所以Title 与Item 之间是一对多的关系;Title 与Reservation 之间也是一对多的关系,也就是说Title 可以有多个预订记录,但是也可以没有预订记录。Item 与Reservation 之间是一对一的关系,不可能存在同一本书被两个人预订的情况;Borrower 与Loan 以及Borrower 与Reservation 之间是一对多的关系。

图23各类之间的关系

4系统的配置与实现

4.1系统的组件图

图书管理系统主要包括两个组件图:业务对象组件图和用户界面组件图。

4.1.1业务对象组件图

Item.java Loan.java BorrowerInformation.java

图24 业务对象组件图

4.1.2 用户界面的组件图

UpdateBorrowerFrame.jav

a BorrowerFrame.jav

a MainWindow.jav

a

CancelReserv ation.jav

a BrowseWindow.jav

a Reserv ationFrame.jav

a

FindBorrowerDialog.jav

a ReturnItemFrame.jav

a TitleInforWindow.jav

a

LendItemFrame.jav

a

a

BorrowerInforWindow.jav

a

UpdateTitleFrame.jav

a TitleFrame.jav

a AboutDialog.jav

a

MessageBox.jav

a QuitDialog.jav

a ResultOfFindBorrower.jav

a ResultOfFindTitle.jav a

图25 用户界面组件图

4.2系统的配置图

系统的配置图主要用来说明如何配置系统的软件和硬件。系统由5个节点构成,应用服务器负责整个系统的总体协调工作;数据库负责管理数据;Web 应用程序模块用于借阅者进行书籍查询、网上书籍预定;业务操作模块用于处理读者借书、还书等一般业务流程;信息维护模块用于系统管理员维护整个系统的数据信息。

图26系统的配置图

5 小结

这次的课程设计,对我来说,是一次尝试与创新,也是一个挑战的过程。以前实践太少,现在利用所学知识将理论与实践相结合。在具体的设计与实施中,我看到一个管理系统从无到有的过程,对具体的设计步骤、思路、方法、技巧都有了进一步的了解,深刻感受。

6 参考文献

[1] UML统一建模实用教程


相关内容

  • 电子图书馆网络建设方案
  • 电子图书馆网络建设方案 第一章 电子图书馆系统方案 1.1网络架构 1.1.1 采用以PC 为核心的局域网 计算机的发展现在PC 是主流,从技术的角度,资金占用角度等诸多方面来看,以PC 和PC Server 为核心的局域网早已超出大型主机系统,结合湖南商学院电子图书馆实际应用需要,我们采用了上述方 ...

  • 图书馆测试计划
  • 目 录 1. 简介 ............................................................................................................................................ ...

  • 软件项目立项建议书
  • 篇一:软件立项建议书 编号: _________________ 版本: _________________ hwtt-2014-zsoa-11-12 { 某oa系统 } 立项建议书 编写?人?签名?______ * *___________ 2014 年 11 月 12 日? 批准?人?签 名?_ ...

  • 第一组_图书管理系统测试用例
  • 图书管理系统测试用例 河南大学软件学院软件测试班第一小组 测试人员:高 扬 蔡一搏 王骁原 孟方超 测试时间:2012年3月12日 - 1 - 目 录 0. 文档介绍 .................................................................. ...

  • 软件项目规划书
  • 陕西职业技术学院图书管理系统 软件项目规划书  编写人:  校对人:  审核人:  通过人: 红红软件公司 目录 1.引言 ............................................................. 3 1.1.编写目的 ........... ...

  • 关于电子书
  • 电子书 百科名片 电子书电子书代表人们所阅读的数字化出版物, 从而区别于以纸张为载体的传统出版物, 电子书是利用计算机技术将一定的文字.图片.声音.影像等信息, 通过数码方式记录在以光.电.磁为介质的设备中, 借助于特定的设备来读取.复制.传输 ." 目录[隐藏] 简介 电子书 - 含义来 ...

  • 图书馆管理系统需求分析文档
  • Project:资料室 (Replacewith System/ProjectName) 需求分析文档 Document history: (Commentsexplain the reasons for changing) 1. 系统概述 东软信息学院计算机系的资料室主要是用来存放系里老师自行购买 ...

  • 02 图书管理系统-系统分析文档 v2
  • 公共图书管理系统 Version1.0 系统分析文档 Document history: (Comments explain the reasons for changing) 1. 术语表 系统中出现的业务术语,在此进行含以上的统一,参见表1. 2. 领域模型 凡是使用公共图书管理系统的用户都要拥 ...

  • 实验二 结构化分析模型的建立
  • 实验二 结构化分析模型的建立 一.实验目的 以图书借阅子系统为例,掌握用Visio 建立软件结构化分析方法中分析模型的方法. 二.实验内容 以图书借阅子系统为例,实验前准备好系统的需求分析图表和文档,按照"自顶向下,逐层分解,逐步细化"的方法,完成分层的数据流图:给出数据字典,对 ...

  • 计算机二级MSOFFICE模拟试题2
  • 一.选择题(每小题1分.共20分) 1.下列叙述中正确的是( ). A .栈是"先进先出"的线性表 B .队列是"先进后出"的线性表 C .循环队列是非线性结构 D .有序线性表既可以采用顺序存储结构,也可以采用链式存储结构 2.支持子程序调用的数据结构是( ...