您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 基于UML的图书馆管理系统建模设计
1图书管理系统一、摘要面向对象的软件工程,同传统的面向过程的软件工程相比,在需求的获取、系统分析、设计和实现方面都有着很大的区别。UML是OOA和OOD的常用工具。使用UML来构建软件的面向对象的软件工程的过程,就是一个对系统进行不断精化的建模的过程。这些模型包括用例模型、分析模型、设计模型,然后,我们需要使用具体的计算机语言来建立系统的实现模型。当然,在整个软件工程中,我们还需要建立系统的测试模型,以保证软件产品的质量。使用面向对象的工具来构建系统,就应该使用面向对象的软件工程方法。然而,我们经常会发现,在实际的开发过程中,很多开发人员虽然能够理解UML的所有图形,却仍然不能得心应手的使用UML来构建整个项目,其很大的原因,是仍然在使用原有的软件工程方法,而不清楚如何使用UML来建立系统的这些模型,不清楚分析和设计的区别,以及他们之间的转化。应用软件系统,就其本质来说,是使用计算机对现实世界进行的数字化模拟。应用软件的制造过程,按照UML的方法,就是建立这一些列模型的过程。关于这个图书馆系统,基本的需求比较简单,就是允许学生可以在图书馆借阅和归还图书,另外,也可以通过网络或者图书馆的终端来查阅和预订书。当然,图书馆管理员也可以对图书进行管理。为了简化系统,我们没有把图书馆中的人员作细分。本文只是对使用UML的过程做一个探讨,着眼于使用UML进行建模的过程,说明各个层次的模型之间的区别和联系,展示系统演进的过程,而不会深入UML的细节方面。对于更加复杂的系统,其分析和设计的方法是相通的,可以举一反三。二、图书管理系统可行性分析随着政府机关与广大企事业单位内部网络的广泛建立,在通用信息平台上构筑高效实用的协同工作和自动化办公应用系统,满足信息高度共享和即时发布的需求,有效实现内部知识管理,已成为众多用户的共同需求。图书管理系统,为政府机关与广大企事业单位自动化办公提供了一个较好的解决方案。在开发过程中,按照软件工程的步骤,从设计到开发采用了面向对象的思想和技术,采用了SQLSERVER2008数据库,使得本系统可以方便的和其他子系统进行数据交换。同时,注意从软件的图形应用界面上优化软件质量,使得本系统具有很强的可操作性。三、图书管理系统需求分析(一)系统开发的总目标系统开发的总目标是实现内部图书借阅管理的系统化、规范化和自动化。(1)能够对图书进行注册登记,也就是将图书的基本信息(如:书的编号、书名、作者、价格等)预先存入数据库中,供以后检索。(2)能够对借阅人进行注册登记,包括记录借阅人的姓名、编号、班级、年龄、性别、地址、电话等信息。(3)提供方便的查询方法。如:以书名、作者、出版社、出版时间(确切的时间、时间段、某一时间之前、某一时间之后)等信息进行图书检索,并能反映出图书的借阅情况;以借阅人编号对借阅人信息进行检索;以出版社名称查询出版社联系方式信息。(4)提供对书籍进行的预先预订的功能。(5)提供旧书销毁功能,对于淘汰、损坏、丢失的书目可及时对数据库进行修改。2(6)能够对使用该管理系统的用户进行管理,按照不同的工作职能提供不同的功能授权。(7)提供较为完善的差错控制与友好的用户界面,尽量避免误操作。(二)系统功能需求分析1.功能分析(1)图书管理系统能够为一定数量的借阅者提供服务。每个借阅者能够拥有唯一标识其存在的编号。图书馆向每一个借阅者发放图书证,图书证中包含每一个借阅者的编号和个人信息。系统通过一个单独的程序为借阅者提供服务,不需要管理人员的干预,这些服务包括提供查询图书信息、查询个人信息服务和预定图书服务等。(2)当借阅者需要借阅书籍、归还书籍时需要通过图书管理员进行,即借阅者不直接与系统交互,而是图书管理员充当借阅者的代理与系统交互。当借阅者借阅的图书数量超过限制时,不允许借阅者再进行借阅。当借阅者借阅的图书超过一定的期限时,需要对其进行处罚。借阅图书时需要图书证作为凭据,归还时不需要。(3)系统管理员负责系统的管理维护工作,维护工作包括图书的添加、删除和修改;书目的添加和删除;借阅者的添加、删除和修改,并且系统管理员能够查询借阅者、图书和图书管理员的信息。(4)可以通过图书的名称或图书的ISBN/ISSN号对图书进行查找。2.满足以上需求的系统主要包含有一下几个子系统(1)基本业务处理子系统:基本业务处理模块主要用于实现图书管理员对借阅者借阅图书和归还图书的处理。图书管理员通过合法的认证登录到该系统中,从而管理借阅者的借阅和归还等活动。(2)基本数据录入功能子系统:该子系统主要包含有书籍信息和读者信息录入功能。(3)信息查询子系统:信息查询子系统主要用于实现借阅者对信息的查询,包括图书信息的查询、自身信息的查询和书籍的预订等功能。(4)数据库管理功能子系统:主要包含了借阅信息管理功能,书籍信息管理功能和预订信息管理功能。(5)系统维护(帮助功能)子系统:系统维护模块主要用于实现系统管理员对系统的管理和对数据库的维护,系统的管理包括对借阅者信息、图书信息、图书管理员信息和书目信息等信息的维护。数据库的维护包括数据库的备份、恢复等数据库管理操作。下图为该图书馆管理(子系统)系统的主要功能模块图:图书馆管理系统基本业务功能基本数据录入功能信息查询功能数据库管理功能帮助功能借书还书预订书籍信息录入借阅者信息录入书籍信息查询读者信息查询借阅信息管理书籍信息管理预订信息管理3图1:图书管理系统功能模块图3.功能描述(1)借书。处理借书业务。(2)还书。处理还书业务。(3)书籍预订。借阅者可以通过网络进行书籍预订。(4)书籍信息录入。处理书籍个类信息录入业务。(5)借阅者信息录入。对读者信息进行录入。(6)书籍信息查询。负责书籍信息的查询。(7)读者信息查询。负责数据信息的查询。(8)借阅信息管理。书籍借阅信息包括所借书的书名、ISBN以及借书的时间等。(9)书籍信息管理。书籍信息包括书籍的名字、ISBN、作者、入库时间以及书籍在相应书目下的编号等。(10)预订信息管理。负责管理书籍预订信息。四、图书管理系统分析与设计阶段(一)系统用例分析创建系统用例模型进行系统分析和设计的第一步就是创建系统的用例模型。做为描述系统的用户或参与者所能操作的图,它在需求分析阶段有着重要作用,,整个开发过程都是围绕系统的需求用例表述的问题和问题模型进行的。创建系统用例的第一步试确定系统的参与者。图书管理系统的参与者包含以下三种。A:借阅者(Borrower)图书借阅者能够通过该系统进行借阅图书、查询书籍信息、预定图书和归还图书等操作。B:图书管理员(Librarian)对于系统来说,借阅者借阅图书和归还图书都需要图书管理员来进行处理。C:系统管理员(Administrator)系统管理员负责图书、借阅者、书目等信息的维护,并且系统管理员还需要对数据库进行维护操作。因此,根据参与者的不同分别画出各个参与者的用例图。LibrarianAdministrator1.借阅者用例图借阅者能够通过该系统进行如下活动:a.查找图书:借阅者可以通过图书名称或者ISBN/ISSN号查找图书的详细信息b.登录系统:借阅者能够根据图书证编号和相关密码登录自助机器,查询图书信息、个人信息和图书预定c.查询个人信息:每一个借阅者都可以通过自助机器在登录后查询自己的信息,但是不允许在未授权的情况下查询其他人的信息d.预定图书:在登录自助机器后,借阅者可以预定相关的书籍内容Borrower4e.借阅图书:借阅者可以通过图书管理员借阅相关书籍f.归还图书:借阅者通过图书管理员归还书籍,如果未按时归还,需要缴纳罚金通过上述活动,获得的借阅者用例图如下图所示:登陆系统交纳罚金查找图书借阅图书预定图书查询借阅信息Borrower归还图书includeincludeextend2.图书管理员用例图图书管理员能够通过该系统进行如下活动:a.处理借阅:借阅者可以通过图书管理员借阅书籍。当图书管理员处理借阅时,需要检查用户的合法性,如果不合法,不允许借阅书籍。如果之前该图书已经被该借阅者预定,需要删除该图书的预订信息b.处理归还:借阅者可以通过图书管理员归还书籍。当借阅者借阅的书籍超过一定的期限时,图书管理员需要收取罚金通过上述活动,获得的图书管理员用例图如下图所示:删除预定信息检查用户合法性收取罚金图书借阅处理Librarian图书归还处理extendincludeextend53.系统管理员用例图系统管理员能够通过该系统进行如下活动:a.查询书籍信息:系统管理员有权限去查询各种图书的信息b.添加书籍:书籍的添加是通过系统管理员进行的,图书添加时要输入书籍的详细信息c.删除书籍:书籍的删除也是通过系统管理员进行的,图书删除时书籍的所有信息都将被删除d.修改书籍:书籍的信息可以被系统管理员修改e.查询读者信息:系统管理员有权限去查询读者的信息f.添加读者:读者的添加是通过系统管理员进行的,读者被添加时要输入读者的详细信息g.删除读者:读者的删除也是通过系统管理员进行的,读者被删除时读者的所有信息都将被删除h.修改读者信息:读者的信息可以被系统管理员修改i.添加书目:书目的添加是通过系统管理员进行的,书目被添加时要输入书目的描述信息j.删除书目:书目的删除也是通过系统管理员进行的,书目被删除时所有关于该书目的图书信息都将被清空通过上述这些活动,获得的系统管理员用例图如下图所示:删除书目添加书目添加读者删除读者查询读者信息查询书籍信息删除书籍Administrator添加书籍(二)创建系统静态模型在获得系统的基本需求的用例模型后,可通过考察系统对象的各种属性创建系统的静态模型。首先,确定系统参与者的属性。系统管理员登录系统时,需要提供系统管理员的用户名6和密码,因此每一个系统管理员应该拥有用户名和密码属性,命名为administratorName和passwords。同理,图书管理员也是一样的,命名为librarianName和passwords。对于每一个借阅者而言,图书证中包含借阅者的名称、地址等,不同类型的借阅者可以借阅不同数目的图书,并且不同的借阅者允许借阅和预定的天数也是不一样的。借阅者登录系统时需要密码,因此可以创建借阅者编号userId、借阅者名称name、借阅者地址address、最大允许借阅书籍书目maxBooks、最长借阅日期maxBorrowDays、密码passwords和最大预定天数maxReserveDays。根据这些属性可以建立参与者(系统管理员、图书管理员和借阅者)的基本类图模型,如下图所示:其次,可以确定在系统中的主要业务实体类,这些类通常需要在数据库中进行存储,如需要存储图书的信息,因此需要一个图书类,同样,预订信息可以确定预定类;借阅信息可以确定借阅类;对于书目信息的存储同样需要一个书目类,在确定需要的这些存储类后需要确定这些类的主要属性。每一本图书拥有一个和其他图书相区别的编号、目录名称编号、ISBN名称、作者名称、出版社名称、书名称以及出版日期。(读者)借阅书籍时,借阅信息存储书籍的编号、读者的编号以及借阅日期。预定图书信息存储书籍的编号、读者的编号以及预定日期。书目信息包含书目的编号和书目的名称。这些业务实体类的表示如下图所示:最后,还可以通过关系链接将这些类连接起来。在关系表示中要标明类与类之间一对多或者多对多等数量关系,如一个书目的图书可以是很多本。一个借阅者可以有0或者多个借阅(或者是预定)。每一个借阅和预订都和多本书籍相联系。根据这些信息,连接起来的类7图如下所示:(三)创建系统动态模型根据系统的用例模型还可以通过对象之间的相互作用来考察系统对象的行为。这种交互作用通过两种方式进行考察,一种是通过相互作用的一组对象为中心考察,即通过交互图进行,包括序列图和协作图;另一种是通过以独立的对象为中心进行考察,包括活动图和状态图。对象之间的相互作用构成系统的动态模型。序列图描绘了系统中的一组对象在时间上交互的整体行为。协作图描绘了系统中一组对像在几何排列上的交互行为。在图书管理系
本文标题:基于UML的图书馆管理系统建模设计
链接地址:https://www.777doc.com/doc-2572701 .html