图书馆管理系统作为一个线上的图书管理平台,可分别为普通用户、图书管理员和系统管理员提供与图书馆内图书相关操作的服务。
分模块阐述系统功能细节
1.系统功能描述
(1)普通用户功能
登录图书馆管理系统。
登录成功后,可以进行书籍查询。
对查询到的书籍可以进行借阅操作。
对已经借阅的书籍可以进行还书操作。
可以对喜欢的书籍进行预约申请。
可以查看已经预约的书籍的信息。
可以退出系统登录
(2)图书管理员功能
登录图书馆管理系统。
可以管理普通用户的借书申请。
可以管理普通用户的还书操作。
可以管理普通用户的预约书籍申请。
(3)系统管理员功能
用户管理:删除/添加用户。
书籍管理:查询、添加、删除书籍以及修改书籍信息。
概述
根据图书馆管理系统的用户特点,主要参与者包括:普通用户、图书管理员及管理员。根据系统功能的描述,可以分离出的主要用例包括:登录,查询书籍,借阅书籍,归还书籍,预约申请,管理借阅,管理还书,管理预约,添加/删除书籍,修改书籍信息,用户管理,退出登录等。
详细阐述每个参与者和用例的细节
普通用户可以登录、查询书籍,借阅书籍,归还书籍,预约申请,退出登录等。
图书管理员可以登录、查询书籍,从事针对普通用户的书籍管理等业务。
系统管理员可以登录,从事书籍管理、用户管理等业务。
关系模式
admins(id, uname, code, password)
users(id, uname, code, password)
sysadmin(id, uname, code, password)
books(id,bname,sid,number,author,birth,edition)
backs(id,brid,status)
borrows(id,uid,bid,startTime,endTime,status)
reserves(id,uid,bkid,startTime,endTime,status)
sorts(id,sname)
要求给出基于MVC模式的划分
永久层主要包括AdminMapper,BooksMapper,SysAdminMapper等接口及映射文件。
业务层主要包括AdminService(Impl),BooksService(Impl),SysAdminService(Impl)等接口(实现类)。
主要包括AdminController,PageController,SysAdminController,UsersController等类。这些类的职责是接受View层的请求,与模型层交互完成业务功能后,再将处理结果反馈给View层。
主要包括index.jsp,login.jsp,show.jsp,showBackBook.jsp,showReserveBook.jsp,add.jsp,addUser.jsp,showUser.jsp,update.jsp,updateUser.jsp,等。
提供用例模型中每个用例的顺序图
(包括普通用户、图书管理员、系统管理员的登陆用例,下图给出的是图书管理员登陆的用例,其他两个的类似。)

(包括普通用户、图书管理员、系统管理员的查询书籍用例,下图给出的是普通用户查询书籍的用例,其他两个的类似。)






























