1、软件工程面向对象分析与设计1目录1. 图书管理系统开发背景22. 图书管理系统设计 22.1任务目标 22.2 图书管理系统需求描述22.2.1 系统组成22.2.2 图书管理系统功能描述32.2.3 系统参与者 32.3 图书管理系统功能模型32.3.1 功能模型描述 32.3.2 功能模型的 用例图 32.3.2.1 读者借书等的用例图32.3.2.2 图书馆管理员处理借书、还书等的用例图42.3.2.3 系统管理员进行系统维护的用例图52.4 图书管理系统对象模型 72.4.1 对象模型描述 72.4.1.1 读者 Borrower 类 72.4.1.2 系统管理员 Administra
2、tor 类72.4.1.3 图书管理员 Librarian 类72.4.1.4 书目 Title 类72.4.1.5 其他类 72.4.2 类图62.5 图书管理系统动态模型 92.5.1 图书管理系统动态模型92.5.2 图书管理系统系列图 102.5.2.1 系统管理员添加书籍的时序图102.5.2.2 系统管理员添加借阅者帐户的时序图102.5.2.3 系统管理员删书目的时序图112.5.2.4 图书管理员处理书籍借阅的时序图112.5.2.5 读者查询籍息的时序图122.5.3 图书管理系统活动图122.5.3.1 借阅者的活动图122.5.3.2 图书管理员的活动图142.5.3.3
3、 系统管理员维护借阅者帐户的活动图152.5.3.4 系统管理员进行书目信息维护的活动图162.5.3.5 系统管理员维护书籍信息的活动图17软件工程面向对象分析与设计2图书管理系统面向对象分析与设计报告2. 图书管理系统开发背景图书馆作为一种信息资源的集散地,图书和用户借阅资料繁多,包含很多的信息数据的管理,现今,有很多的图书馆都是初步开始使用,甚至尚未使用计算机进行信息管理.图书馆若采取手工方式对图书资料和图书借阅情况进行人工管理,由于资料繁多,手工处理的工作量大,整体管理效率低下,也不方便读者对图书资料的查阅.基于以上情况,我们需要一套图书管理系统,来提高信息管理效率.2.图书管理系统设
4、计 2.1任务目标 图书馆信息管理系统作为办公电子化,利用计算机软件,为图书馆管理员管理图书馆藏书,为读者(学生)结束提供借阅图书提供服务。本次开发任务就是为某学校开发一个图书馆管理系统。通过使用本系统,实现图书馆藏书管理电子化,借阅自动化,并提供管理员实时监控图书馆藏书,读者实时借书/还书的功能。除此之外,还提供图书馆管理员维护藏书,读者信息数据库的功能以及读者查阅图书相关信息的功能2.2 图书管理系统需求描述2.2.1 系统组成图书管理系统由一下几个子系统构成:1. 系统管理员管理子系统2. 图书管理员管理子系统3. 读者子系统各个子系统又包含一些各自的独立功能模块,详细模块分配如下图:软
5、件工程面向对象分析与设计3图书管理系统系统管理员借阅者图书管理员登录查询系统查询图书还书借书预留图书处理还书处理借书登录管理系统处理图书信息处理读者信息查询查询图书信息查询读者信息增加读者删除或更新读者删除或更新书目增加书目2.2.2 图书管理系统功能描述1:借阅者可以通过网络查询书籍信息和预定书籍。借阅者能够借阅书籍和还书。图书管理员能够处理借阅者的借阅和还书请求。系统管理员可以对系统的数据进行维护,如增加、删除和更新书目,增加、删除和更新借阅者帐户,增加和删除书籍。 2:系统主要包括以下几个模块:基本数据维护模块基本业务模块数据库管理模块信息查询模块2.2.3 系统参与者图书管理员,借阅者
6、,系统管理员.三者间的关系如下图:系统管理员图书管理员读者其中,读者是多个,图书管理员是几个,系统管理员是一个。读者可以查询自己的借阅情况、分门别类的查询图书和在规定期限内续借不能软件工程面向对象分析与设计4超过一次操作的情况下进行自行登录续借书等。图书管理员主要是日常操作以下几个工作环节:图书订购、新书验证、书目录入、图书登记、读者信息管理、借阅书登记、图书信息注销和读者信息注销等,而系统管理员统筹管理图书的系统相关事宜,比如权限维护、日志维护、增删用户和管理系统后台数据等。2.3 图书管理系统功能模型系统的参与者主要有三类:读者(也可称为借阅者)图书馆管理员图书馆管理系统维护者 2.3.1
7、 功能模型描述1. 借阅者请求服务的用例图2. 图书馆管理员处理借书、还书等的用例图3. 系统管理员进行系统维护的用例图 2.3.2 功能模型的 用例图2.3.2.1 读者借书等的用例图如下:图 书 管 理 系 统借阅者查询图书预留图书查看借阅信息借书还书登陆系统图书完好归还i n c l u d ei n c l u d e读者借助此图书管理系统子系统,可以进行一下操作:1. 查询图书2. 预留图书3. 借书软件工程面向对象分析与设计54. 还书5. 查阅借阅信息其中,在读者进行预留图书和查询借阅信息之前,读者必须先登录系统;读者进行还书操作时,必须保证图书完整;2.3.2.2 图书馆管理员
8、处理借书、还书等的用例图图书管理员图 书 管 理 员 日 常 管 理 程 序取书借出图书取消图书预留图书完整取出检查读者帐号图书管理员用例描述:图书管理员使用系统进行的操作主要有:1. 处理读者的送还的图书2. 处理读者的借书要求3. 处理读者的预留图书要求其中在处理还书时,要查看图书的完整性;处理读者借书时,要检查读者信息;2.3.2.3 系统管理员进行系统维护的用例图如下:软件工程面向对象分析与设计6图 书 管 理 系 统系统管理员添加新书删除图书查询图书信息删除或更新读者信息查询读者资料增加书目删除或更新书目增加读者信息软件工程面向对象分析与设计72.4 图书管理系统对象模型根据需求描述
9、,提取出管理员,借阅者,图书等几个对象.2.4.1 对象模型描述下面对这个几个对象进行具体陈述并建模:2.4.1.1 读者 Borrower 类:读者在系统注册的信息包括一下几点:姓名(name),住址(address),城市(city),省/州(state), 邮政编码(zip),可借数的最大数目(maxbook),借书期限(maxday),读者编号(userid),借书证号码(borrow_number);读者使用系统可进行的操作有:查询-find(),借书-borrow(),还书-return_back();2.4.1.2 系统管理员 Administrator 类:系统管理员也可以借书
10、,因此他能进行读者类所以的操作;系统管理员同时也是图书管理员,也可以进行图书管理员说做的一切操作;系统管理员有自己的特殊编号,用来登录系统,进行系统级操作.以区别图书管理员.2.4.1.3 图书管理员 Librarian 类:图书管理员也要在系统内注册,注册信息如下:姓名 (name),住址(address),城市(city),省(state);系统为每个管理员分配一个唯一编号 workID.图书管理员登录系统后,可以进行以下操作:更新借书还书信息-update();增加预留-create();删除预留信息-destroy();2.4.1.4 书目 Title 类:书目类代表图书,在系统中要保
11、存每一本图书的资料,这些信息包括:书名(name),作者(author),书号(isbn),库存数量(total_number),借阅号(borrowed_number),是否可以借出(is_allowedForBorrow);在书类的操作有一些:查找书目-find();增加书目-create();删除书目-destroy();借书-borrow();还书-return_back();预留图书-reserve()2.4.1.5 其他类:Item 类 :此类代表一个书目的一份拷贝Loan 类: 代表对超过还书期限的读书进行罚金的类Reserve 类:预留图书类2.4.2 类图软件工程面向对象分析
12、与设计8软件工程面向对象分析与设计92.5 图书管理系统动态模型2.5.1 动态模型软件工程面向对象分析与设计102.5.2 系列图2.5.2.1 系统管理员添加书籍的时序图数据需求:书目信息每本书的拷贝的详细资料主流程描述:1. 系统管理员向系统提交新书资料(additem()2. 系统查询与此书相关的书目3. 系统返回查询结果4. 查到书目,则提交,添加此书目的拷贝2.5.2.2 系统管理员添加借阅者帐户的时序图数据需求:读者详细资料软件工程面向对象分析与设计11主流程:1. 系统管理员填写新读者的信息2.提交信息,创建读者信息保存到数据文件2.5.2.3 系统管理员删除书目的时序图数据需
13、求:书目信息主流程:1. 系统管理员向系统提交要删除的书目2. 系统查找此书目3. 系统查找此书目下的所有拷贝4. 系统删除此书目的所有拷贝5. 系统删除此书目2.5.2.4 图书管理员处理书籍借阅的时序图软件工程面向对象分析与设计122.5.2.5 借阅者查询书籍信息的时序图数据需求:要查询的图书名称2.5.3 活动图2.5.3.1 借阅者的活动图软件工程面向对象分析与设计13打开自助服务界面查询图书 登陆查看图书信息预留图书已登陆未登陆退出系统软件工程面向对象分析与设计142.5.3.2 图书管理员的活动图登陆系统还书 借书超过借阅期限 按时还书收费更新读者信息还可以借书 超过数目限制图书
14、管理员登录系统后,处理日常事务,比如处理读者还书,借书.在处理还书时,系统会计算读者的还书期限是否过期,如果过期,则要交一定的罚金,并且更新借阅信息.处理借书时,系统会验证此读者借书的数量是否超过了限制,如果超过最大可借书的数目时,拒绝继续借书.软件工程面向对象分析与设计152.5.3.3 系统管理员维护借阅者帐户的活动图系统管理员管理程序系统管理员登陆系统系统登陆界面系统验证对借阅者进行管理通过验证未通过验证查询借阅者信息删除或更新借阅者信息退出系统系统关闭增加借阅者系统管理员运行图书管理系统,在登录界面上输入口令后,系统对用户进行验证,只有通过系统验证后,才能进行管理.否则推出系统.通过系
15、统验证后,进入管理主界面,可以对借阅者进行管理.查看借阅者的相关信息,以保证借阅者信息的正确性;可以为读者注册资料,使其能通过系统借书;更新读者的资料.软件工程面向对象分析与设计162.5.3.4 系统管理员进行书目信息维护的活动图系统管理员管理程序系统管理员登陆系统 系统登陆界面系统验证对书目进行管理通过验证未通过验证增加图书 删除图书退出系统系统关闭查询书目系统管理员运行图书管理系统,在登录界面上输入口令后,系统对用户进行验证,只有通过系统验证后,才能进行管理.否则推出系统.通过验证后,系统管理员可以对书目进行管理,购买了新书后,需要向系统增加新的书目信息;查询书目信息,对图书资料进行全局管理和监督;图书过时后,需要删除相关资料,保证数据的正确.软件工程面向对象分析与设计172.5.3.5 系统管理员维护书籍信息的活动图系统管理员管理程序系统管理员登陆系统 系统登陆界面系统验证对图书进行管理通过验证 未通过验证增加图书删除图书退出系统系统关闭系统管理员登录系统,输入口令,系统进行验证,验证通过后,才可以使用系统.否则系统拒绝.登录后,系统管理员可以对图书进行一些管理,比如增加图书,删除图书,操作完成后,推出系统.