基于UML的图书馆管理系统建模设计_第1页
基于UML的图书馆管理系统建模设计_第2页
基于UML的图书馆管理系统建模设计_第3页
基于UML的图书馆管理系统建模设计_第4页
基于UML的图书馆管理系统建模设计_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、图书管理系统一、摘要 面向对象的软件工程,同传统的面向过程的软件工程相比,在需求的获取、系统分析、设计和实现方面都有着很大的区别。UML是OOA和OOD的常用工具。使用UML来构建软件的面向对象的软件工程的过程,就是一个对系统进行不断精化的建模的过程。这些模型包括用例模型、分析模型、设计模型,然后,我们需要使用具体的计算机语言来建立系统的实现模型。当然,在整个软件工程中,我们还需要建立系统的测试模型,以保证软件产品的质量。使用面向对象的工具来构建系统,就应该使用面向对象的软件工程方法。然而,我们经常会发现,在实际的开发过程中,很多开发人员虽然能够理解UML的所有图形,却仍然不能得心应手的使用U

2、ML来构建整个项目,其很大的原因,是仍然在使用原有的软件工程方法,而不清楚如何使用UML来建立系统的这些模型,不清楚分析和设计的区别,以及他们之间的转化。应用软件系统,就其本质来说,是使用计算机对现实世界进行的数字化模拟。应用软件的制造过程,按照UML的方法,就是建立这一些列模型的过程。关于这个图书馆系统,基本的需求比较简单,就是允许学生可以在图书馆借阅和归还图书,另外,也可以通过网络或者图书馆的终端来查阅和预订书。当然,图书馆管理员也可以对图书进行管理。为了简化系统,我们没有把图书馆中的人员作细分。本文只是对使用UML的过程做一个探讨,着眼于使用UML进行建模的过程,说明各个层次的模型之间的

3、区别和联系,展示系统演进的过程,而不会深入UML的细节方面。对于更加复杂的系统,其分析和设计的方法是相通的,可以举一反三。二、图书管理系统可行性分析随着政府机关与广大企事业单位内部网络的广泛建立,在通用信息平台上构筑高效实用的协同工作和自动化办公应用系统,满足信息高度共享和即时发布的需求,有效实现内部知识管理,已成为众多用户的共同需求。图书管理系统,为政府机关与广大企事业单位自动化办公提供了一个较好的解决方案。在开发过程中,按照软件工程的步骤,从设计到开发采用了面向对象的思想和技术,采用了SQL SERVER 2008数据库,使得本系统可以方便的和其他子系统进行数据交换。同时,注意从软件的图形

4、应用界面上优化软件质量,使得本系统具有很强的可操作性。三、图书管理系统需求分析(一)系统开发的总目标系统开发的总目标是实现内部图书借阅管理的系统化、规范化和自动化。 (1)能够对图书进行注册登记,也就是将图书的基本信息(如:书的编号、书名、作者、价格等)预先存入数据库中,供以后检索。 (2)能够对借阅人进行注册登记,包括记录借阅人的姓名、编号、班级、年龄、性别、地址、电话等信息。 (3)提供方便的查询方法。如:以书名、作者、出版社、出版时间(确切的时间、时间段、某一时间之前、某一时间之后)等信息进行图书检索,并能反映出图书的借阅情况;以借阅人编号对借阅人信息进行检索;以出版社名称查询出版社联系

5、方式信息。 (4)提供对书籍进行的预先预订的功能。 (5)提供旧书销毁功能,对于淘汰、损坏、丢失的书目可及时对数据库进行修改。 (6)能够对使用该管理系统的用户进行管理,按照不同的工作职能提供不同的功能授权。 (7)提供较为完善的差错控制与友好的用户界面,尽量避免误操作。(二)系统功能需求分析 1.功能分析 (1)图书管理系统能够为一定数量的借阅者提供服务。每个借阅者能够拥有唯一标识其存在的编号。图书馆向每一个借阅者发放图书证,图书证中包含每一个借阅者的编号和个人信息。系统通过一个单独的程序为借阅者提供服务,不需要管理人员的干预,这些服务包括提供查询图书信息、查询个人信息服务和预定图书服务等。

6、 (2)当借阅者需要借阅书籍、归还书籍时需要通过图书管理员进行,即借阅者不直接与系统交互,而是图书管理员充当借阅者的代理与系统交互。当借阅者借阅的图书数量超过限制时,不允许借阅者再进行借阅。当借阅者借阅的图书超过一定的期限时,需要对其进行处罚。借阅图书时需要图书证作为凭据,归还时不需要。 (3)系统管理员负责系统的管理维护工作,维护工作包括图书的添加、删除和修改;书目的添加和删除;借阅者的添加、删除和修改,并且系统管理员能够查询借阅者、图书和图书管理员的信息。(4) 可以通过图书的名称或图书的ISBN/ISSN号对图书进行查找。 2.满足以上需求的系统主要包含有一下几个子系统(1) 基本业务处

7、理子系统:基本业务处理模块主要用于实现图书管理员对借阅者借阅图书和归还图书的处理。图书管理员通过合法的认证登录到该系统中,从而管理借阅者的借阅和归还等活动。 (2)基本数据录入功能子系统:该子系统主要包含有书籍信息和读者信息录入功能。(3)信息查询子系统:信息查询子系统主要用于实现借阅者对信息的查询,包括图书信息的查询、自身信息的查询和书籍的预订等功能。(4)数据库管理功能子系统:主要包含了借阅信息管理功能,书籍信息管理功能和预订信息管理功能。(5)系统维护(帮助功能)子系统:系统维护模块主要用于实现系统管理员对系统的管理和对数据库的维护,系统的管理包括对借阅者信息、图书信息、图书管理员信息和

8、书目信息等信息的维护。数据库的维护包括数据库的备份、恢复等数据库管理操作。下图为该图书馆管理(子系统)系统的主要功能模块图: 图1:图书管理系统功能模块图 3.功能描述 (1)借书。处理借书业务。 (2)还书。处理还书业务。 (3)书籍预订。借阅者可以通过网络进行书籍预订。 (4)书籍信息录入。处理书籍个类信息录入业务。 (5)借阅者信息录入。对读者信息进行录入。 (6)书籍信息查询。负责书籍信息的查询。 (7)读者信息查询。负责数据信息的查询。 (8)借阅信息管理。书籍借阅信息包括所借书的书名、ISBN以及借书的时间等。 (9)书籍信息管理。书籍信息包括书籍的名字、ISBN、作者、入库时间以

9、及书籍在相应书目下的编号等。 (10)预订信息管理。负责管理书籍预订信息。四、图书管理系统分析与设计阶段(一)系统用例分析 创建系统用例模型 进行系统分析和设计的第一步就是创建系统的用例模型。做为描述系统的用户或参与者所能操作的图,它在需求分析阶段有着重要作用,整个开发过程都是围绕系统的需求用例表述的问题和问题模型进行的。 创建系统用例的第一步试确定系统的参与者。图书管理系统的参与者包含以下三种。 A:借阅者(Borrower) 图书借阅者能够通过该系统进行借阅图书、查询书籍信息、预定图书和归还图书等操作。 B:图书管理员(Librarian) 对于系统来说,借阅者借阅图书和归还图书都需要图书

10、管理员来进行处理。 C:系统管理员(Administrator)系统管理员负责图书、借阅者、书目等信息的维护,并且系统管理员还需要对数据库进行维护操作。 因此,根据参与者的不同分别画出各个参与者的用例图。 1.借阅者用例图借阅者能够通过该系统进行如下活动:a. 查找图书:借阅者可以通过图书名称或者ISBN/ISSN号查找图书的详细信息b. 登录系统:借阅者能够根据图书证编号和相关密码登录自助机器,查询图书信息、个人信息和图书预定c. 查询个人信息:每一个借阅者都可以通过自助机器在登录后查询自己的信息,但是不允许在未授权的情况下查询其他人的信息d. 预定图书:在登录自助机器后,借阅者可以预定相关

11、的书籍内容e. 借阅图书:借阅者可以通过图书管理员借阅相关书籍f. 归还图书:借阅者通过图书管理员归还书籍,如果未按时归还,需要缴纳罚金通过上述活动,获得的借阅者用例图如下图所示: 2. 图书管理员用例图 图书管理员能够通过该系统进行如下活动: a.处理借阅:借阅者可以通过图书管理员借阅书籍。当图书管理员处理借阅时,需要检查用户的合法性,如果不合法,不允许借阅书籍。如果之前该图书已经被该借阅者预定,需要删除该图书的预订信息 b.处理归还:借阅者可以通过图书管理员归还书籍。当借阅者借阅的书籍超过一定的期限时,图书管理员需要收取罚金通过上述活动,获得的图书管理员用例图如下图所示:3. 系统管理员用

12、例图 系统管理员能够通过该系统进行如下活动: a.查询书籍信息:系统管理员有权限去查询各种图书的信息 b.添加书籍:书籍的添加是通过系统管理员进行的,图书添加时要输入书籍的详细信息 c.删除书籍:书籍的删除也是通过系统管理员进行的,图书删除时书籍的所有信息都将被删除 d.修改书籍:书籍的信息可以被系统管理员修改 e.查询读者信息:系统管理员有权限去查询读者的信息 f.添加读者:读者的添加是通过系统管理员进行的,读者被添加时要输入读者的详细信息 g.删除读者:读者的删除也是通过系统管理员进行的,读者被删除时读者的所有信息都将被删除 h.修改读者信息:读者的信息可以被系统管理员修改 i.添加书目:

13、书目的添加是通过系统管理员进行的,书目被添加时要输入书目的描述信息 j.删除书目:书目的删除也是通过系统管理员进行的,书目被删除时所有关于该书目的图书信息都将被清空 通过上述这些活动,获得的系统管理员用例图如下图所示:(二)创建系统静态模型在获得系统的基本需求的用例模型后,可通过考察系统对象的各种属性创建系统的静态模型。首先,确定系统参与者的属性。系统管理员登录系统时,需要提供系统管理员的用户名和密码,因此每一个系统管理员应该拥有用户名和密码属性,命名为administratorName和passwords。同理,图书管理员也是一样的,命名为librarianName和passwords。对于

14、每一个借阅者而言,图书证中包含借阅者的名称、地址等,不同类型的借阅者可以借阅不同数目的图书,并且不同的借阅者允许借阅和预定的天数也是不一样的。借阅者登录系统时需要密码,因此可以创建借阅者编号userId、借阅者名称name、借阅者地址address、最大允许借阅书籍书目maxBooks、最长借阅日期maxBorrowDays、密码passwords和最大预定天数maxReserveDays。根据这些属性可以建立参与者(系统管理员、图书管理员和借阅者)的基本类图模型,如下图所示:其次,可以确定在系统中的主要业务实体类,这些类通常需要在数据库中进行存储,如需要存储图书的信息,因此需要一个图书类,同

15、样,预订信息可以确定预定类;借阅信息可以确定借阅类;对于书目信息的存储同样需要一个书目类,在确定需要的这些存储类后需要确定这些类的主要属性。每一本图书拥有一个和其他图书相区别的编号、目录名称编号、ISBN名称、作者名称、出版社名称、书名称以及出版日期。(读者)借阅书籍时,借阅信息存储书籍的编号、读者的编号以及借阅日期。预定图书信息存储书籍的编号、读者的编号以及预定日期。书目信息包含书目的编号和书目的名称。这些业务实体类的表示如下图所示:最后,还可以通过关系链接将这些类连接起来。在关系表示中要标明类与类之间一对多或者多对多等数量关系,如一个书目的图书可以是很多本。一个借阅者可以有0或者多个借阅(

16、或者是预定)。每一个借阅和预订都和多本书籍相联系。根据这些信息,连接起来的类图如下所示:(三)创建系统动态模型根据系统的用例模型还可以通过对象之间的相互作用来考察系统对象的行为。这种交互作用通过两种方式进行考察,一种是通过相互作用的一组对象为中心考察,即通过交互图进行,包括序列图和协作图;另一种是通过以独立的对象为中心进行考察,包括活动图和状态图。对象之间的相互作用构成系统的动态模型。序列图描绘了系统中的一组对象在时间上交互的整体行为。协作图描绘了系统中一组对像在几何排列上的交互行为。在图书管理系统中,通过上述的用例可以获得以下的交互行为:l 借阅者查找图书l 借阅者查询个人信息l 借阅者预定

17、图书l 图书管理员处理借阅l 图书管理员处理还书l 系统管理员查询书籍l 系统管理员添加书籍l 系统管理员删除书籍l 系统管理员修改书籍l 系统管理员查询读者信息l 系统管理员添加读者l 系统管理员删除读者l 系统管理员修改读者信息l 系统管理员添加书目l 系统管理员删除书目1. 借阅者查找图书用例借阅者查找图书的工作流程如下所示:a.借阅者希望通过系统查询图书的信息b.借阅者通过自助系统的用户界面SearchBookWindow录入图书的ISBN/ISSN号,请求查找图书信息c. 用户界面SearchBookWindow根据图书的ISBN/ISSN号将Book类实例化,并请求图书信息d. B

18、ook类实例化对象根据图书的ISBN/ISSN号加载图书信息,并提供给用户界面SearchBookWindowe. 用户界面SearchBookWindow向读者显示图书信息根据基本流程,创建借阅者查找图书的序列图如下图所示:与序列图等价的协作图如下图所示:2. 借阅者查询个人信息借阅者查询个人信息的工作流程如下所示: a.借阅者希望通过系统查询个人信息b.借阅者通过自助系统的用户登陆界面LoginWindow录入图书证编号,请求查找个人信息c.用户登陆界面LoginWindow根据图书证编号将Borrower类实例化,并返回给用户信息显示界面PersonInfoWindowd.用户信息显示界

19、面PersonInfoWindow向借阅者显示借阅者信息根据基本流程,创建借阅者查询个人信息的序列图如下图所示:与序列图等价的协作图如下图所示:3. 借阅者预定图书 借阅者预定图书的基本工作流程如下:a. 借阅者希望通过系统预定某图书b. 借阅者通过自助系统的预订界面ReserverWindow录入图书的名称或ISBN/ISSN号请求查找该图书c. 预订界面ReserverWindow根据图书的名称或ISBN/ISSN号将Book类实例化,并返回图书信息d. 预订界面ReserverWindow将图书信息添加到预定中,并返回是否预订成功的信息e. 预订界面ReserverWindow向读者显示

20、是否预订成功的信息根据基本流程,创建借阅者预定图书的序列图如下图所示:与序列图等价的协作图如下图所示:4. 图书管理员处理借阅 图书管理员处理借阅的工作流程如下所示: a.借阅者希望通过图书管理员借阅某图书 b.借阅者将图书证和图书交给图书管理员c.图书管理员将读者图书证编号录入借阅图书界面LendBookWindow,根据图书的ISBN/ISSN号将Book类实例化,并显示图书信息d.借阅图书界面LendBookWindow根据图书的ISBN/ISSN号将Book类实例化并加载图书信息e.借阅图书界面LendBookWindow将图书信息和读者信息添加到借阅实例中f.借阅实例检查读者的借书数

21、目,并添加借阅信息,返回借阅是否成功g.借阅图书界面LendBookWindow显示是否成功h.图书管理员将图书证和图书归还给借阅者根据基本流程,创建图书管理员处理借阅的序列图如下图所示:与序列图等价的协作图如下图所示:5. 图书管理员处理还书 图书管理员处理还书的工作流程如下所示: a.借阅者希望通过图书管理员归还所借书籍 b.借阅者将所借图书交给图书管理员 c.图书管理员通过归还图书界面SearchBookWindow并根据图书的ISBN/ISSN号将Book类实例化,从而请求图书信息d.Book类实例化对象根据图书的编号请求Loan对象删除借阅信息e.Loan对象检查借阅图书是否超期f.Loan对象删除借阅信息g.Loan对

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论