>检查读者帐号取消图书预留 图2.4图书馆管理员处理借书、还书等的用例图分析:图书管理员使用系统进行的操作主要有:(1)处理读者的送还的图书;(2)处理读者的借书要求;(3)处理读者的预留图书要求;(4)其中在处理还书时,要查看图书的完整性;(5)处理读者借书时,要检查读者信息。
图书管理系统添加新书删除图书查询图书信息增加读者信息删除或更新读者信息查询读者资料系统管理员增加书目删除或更新书目 图2.5系统管理员进行系统维护的用例图
分析:系统管理员使用系统进行的操作主要有:(1)添加、删除、修改图书信息;(2)添加、删除、修改读者信息;(3)维护系统。
第 3 页(共10页)
高级面向对象技术
2.4 Web图书馆管理系统对象模型
根据需求描述,提取出管理员,借阅者,图书等几个对象. 2.4.1 对象模型描述
下面对这个几个对象进行具体陈述并建模: (1)读者Borrower类:
读者在系统注册的信息包括一下几点:姓名(name),住址(address),城市(city),省/州(state),邮政编码(zip),可借数的最大数目(maxbook),借书期限(maxday),读者编号(userid),借书证号码(borrow_number);
读者使用系统可进行的操作有:
查询-------find(), 借书------borrow(),
还书-------return_back();
(2)系统管理员Administrator类:
系统管理员也可以借书,因此他能进行读者类所以的操作;系统管理员同时也是图书管理员,也可以进行图书管理员说做的一切操作;系统管理员有自己的特殊编号,用来登录系统,进行系统级操作.以区别图书管理员. (3)图书管理员Librarian类:
图书管理员也要在系统内注册,注册信息如下:姓名(name),住址(address),城市(city),省(state);系统为每个管理员分配一个唯一编号workID.
图书管理员登录系统后,可以进行以下操作:
更新借书还书信息------update(); 增加预留----------------create(); 删除预留信息----------destroy();
(4)书目Title类:
书目类代表图书,在系统中要保存每一本图书的资料,这些信息包括:书名(name),作者(author),书号(isbn),库存数量(total_number),借阅号(borrowed_number),是否可以借出(is_allowedForBorrow);
在书类的操作有:
查找书目--------------------find(); 增加书目-------------------create(); 删除书目------------------destroy(); 借书------------------------borrow(); 还书------------------------return_back(); 预留图书------------------reserve()
(5)其他类:
Item类:此类代表一个书目的一份拷贝
Loan类:代表对超过还书期限的读书进行罚金的类 Reserve类:预留图书类 2.4.2 类图
由上述分析得出具体类图及类关系图如下:
第 4 页(共10页)
高级面向对象技术
图2.6类图
第 5 页(共10页)
高级面向对象技术
图2.7类关系图
2.5 Web图书馆管理系统动态模型
2.5.1 动态模型
图2.8动态模型图
2.5.2 系列图
(1)系统管理员添加书籍的时序图
第 6 页(共10页)
高级面向对象技术
图2.9系统管理员添加书籍的时序图
分析:主流程描述:
1. 系统管理员向系统提交新书资料(additem()) 2. 系统查询与此书相关的书目 3. 系统返回查询结果
4. 查到书目,则提交,添加此书目的拷贝、
(2)系统管理员添加借阅者帐户的时序图
图2.10系统管理员添加借阅者帐户的时序图
分析:主流程:
1. 系统管理员填写新读者的信息
2.提交信息,创建读者信息保存到数据文件
(3)系统管理员删除书目的时序图
第 7 页(共10页)
高级面向对象技术
图2.11系统管理员删除书目的时序图
分析:主流程:
1. 系统管理员向系统提交要删除的书目 2. 系统查找此书目
3. 系统查找此书目下的所有拷贝 4. 系统删除此书目的所有拷贝 5. 系统删除此书目
(4)图书管理员处理书籍借阅的时序图
图:2.12图书管理员处理书籍借阅的时序图
(5)借阅者查询书籍信息的时序图 数据需求:要查询的图书名称
第 8 页(共10页)
高级面向对象技术
图2.13借阅者查询书籍信息的时序图
2.5.3 活动图
(1)借阅者的活动图及图书管理员的活动图
打开自助服务界面登陆系统查询图书登陆还书借书未登陆超过借阅期限查看图书信息已登陆按时还书还可以借书超过数目预留图书退出系统收费更新读者信息
图2.13借阅者的活动图及图书管理员的活动图
图书管理员登录系统后,处理日常事务,比如处理读者还书,借书等。在处理还书时,系统会计算读者的还书期限是否过期,如果过期,则要交一定的罚金,并且更
第 9 页(共10页)
高级面向对象技术
新借阅信息。而在处理借书时,系统会验证此读者借书的数量是否超过了,如果超过最大可借书的数目时,拒绝继续借书。
(2)系统管理员维护借阅者帐户的活动图
系统管理员登陆系统系统管理员管理程序系统登陆界面系统验证通过验证未通过验证对借阅者进行管理删除或更新借阅者信息查询借阅者信息增加借阅者退出系统系统关闭 图2.14系统管理员维护借阅者帐户的活动图
系统管理员运行Web图书馆管理系统,在登录界面上输入口令后,系统对用户进行验证,只有通过系统验证后,才能进行管理.否则推出系统. 通过系统验证后,进入管理主界面,可以对借阅者进行管理.查看借阅者的相关信息,以保证借阅者信息的正确性;可以为读者注册资料,使其能通过系统借书;更新读者的资料。
另外,系统管理员进行书目信息维护的活动图、系统管理员维护书籍信息的活动图与系统管理员维护借阅者帐户的活动图类似,这里不再画图描述。
3、结束语
此次大作业完成了一个基于面向对象思想的Web图书管理系统设计。通过此次分析和设计,作者对面向对象思想有了更深刻的理解,对类的抽象方法以及面向对象的三大特征(封装、继承、多态)有了深入了解为今后学习展开打下了良好基础。
第 10 页(共10页)