1、基于UML图书管理系统需求分析与设计摘要:本文对面向对象概念、UML产生背景及其基本内容进行了阐述,在对图书馆图书管理系统进行功能描述和需求分析基本上,结合软件工程和面向对象需求分析,设计了基于UML用例图、包图和顺序图,状态图等语言机制图书馆图书管理系统模型。核心词: UML;建模语言;面向对象;需求分析;图书管理系统1关于面向对象面向对象是一种程序设计办法,或者说它是一种程序设计类型,其基本思想是使用对象,类,继承,封装,消息等基本概念来进行程序设计。它是从现实世界中客观存在事物(即对象)出发来构造软件系统,并在系统构造中尽量运用人类自然思维方式,强调直接以问题域(现实世界)中事物为中心来
2、思考问题,结识问题,并依照这些事物本质特点,把它们抽象地表达为系统中对象,作为系统基本构成单位(而不是用某些与现实世界中事物有关比较远,并且没有相应关系其他概念来构造系统)。这可以使系统直接地映射问题域,保持问题域中事物及其互有关系本来面貌。它可以有不同层次理解: (1)从世界观角度可以以为:面向对象基本哲学是以为世界是由各种各样具备自己运动规律和内部状态对象所构成;不同对象之间互相作用和通讯构成了完整现实世界。因而,人们应当按照现实世界这个本来面貌来理解世界,直接通过对象及其互有关系来反映世界。这样建立起来系统才干符合现实世界本来面目。(2)从办法学角度可以以为:面向对象办法是面向对象世界观
3、在开发办法中直接运用。它强调系统构造应当直接与现实世界构造相相应,应当环绕现实世界中对象来构造系统,而不是环绕功能来构造系统。(3)从程序设计角度来看,面向对象程序设计语言必要有描述对象及其互相之间关系语言成分。这些程序设计语言可以归纳为如下几类:系统中一切皆为对象;对象是属性及其操作封装体;对象可按其性质划分为类,对象成为类实例;实例关系和继承关系是对象之间静态关系;消息传递是对象之间动态联系唯一形式,也是计算唯一形式;办法是消息序列。 面向对象办法学涉及了如下核心概念:对象(object):即指现实世界中各种各样实体。它可以指详细事物也可以指抽象事物。 类(class):类是具备相似内部状
4、态和运动规律实体集合(或统称、抽象)。类概念来自于人们结识自然、结识社会过程。 消息(Message):消息是指对象间互相联系和互相作用方式。一种消息重要由5某些构成:发送消息对象、接受消息对象、消息传递办法、消息内容(参数)、反馈。封装:对象间互相联系和互相作用过程重要通过消息机制得以实现。对象之间并不需要过多理解对方内部详细状态或运动规律。面向对象类是封装良好模块,类定义将其阐明(顾客可见外部接口)与实现(顾客不可见内部实现)显式地分开,其内部实现按其详细定义作用域提供保护。类是封装最基本单位。封装防止了程序互相依赖性而带来变动影响。在类中定义接受对方消息办法称为类接口。继承:类之间继承关
5、系是现实世界中遗传关系直接模仿,它表达类之间内在联系,以及对属性和操作共享,即子类可以沿用父类某些特性。重载:重载是指类同名办法在给其传递不同参数是可以有不同运动规律。在对象间互相作用时,虽然接受消息对象采用相似接受办法,但消息内容详细限度不同,接受消息对象内部运动规律也也许不同。2 关于UMLUML(Unified Modeling Language)是在Booch办法、OOSE办法和OMT办法基本上演化而来基于面向对象技术原则建模语言。它统一了面向对象建模基本概念、术语和图示符号,描述了建模过程中所必要遵循基本环节,提供了一整套描述软件系统模型概念和图形表达法,可从不同视角为系统建模。 统
6、一建模语言UML是一种语义丰富、通用、可视化建模语言和事实上国际工业原则,易于理解和交流。UML提供丰富视图从各种视角描述系统不同侧面,可以有效运用于软件建模、分析与设计。原则建模语言UML定义涉及UML语义和UML表达法两个某些。UML语义通过其元模型来严格地定义。UML表达法定义UML符号表达法,为开发者或开发工具使用这些图形符号和文本语法来建模提供原则。这些图形符号和文字所表达是应用级模型,在语义上它是UML元模型实例。UML重要内容通惯用用例图、类图、对象图、状态图、活动图、构件图、配备图、顺序图、协作图和包图等l0种图来描述,它们从不同角度和层次为系统建模提供支持,完全可以描述系统方
7、方面面。与老式软件建模办法相比,UML 有如下某些特点:(1)UML 是一种可视化建模语言,是一种图形化面向对象设计工具语言,而不是可视化程序设计语言,但用UML描述模型可与各种编程语言直接相连,把UML 模型映射成编程语言。在不同程序中使用同样UML 图表类型,由于UML 具备任意程序独立性,定义一种原则程序不是一种UML 目的。(2)UML 是一种可用于详细描述语言,其所建立模型是精准、无歧义和完整。同步UML是一种文档化语言,对其各建模元素可进行详细阐明,并能生成所建模型文档。原则建模语言UML支持面向对象分析与设计,定义良好、易于表达、功能强大。它最大用途是运用图形来描述真实世界各个对
8、象符合表达,让所有系统设计者在构建系统需求分析、对象模型化定义到对象设计整个开发过程完全原则化。3 本课题研究意义 一种图书馆图书资料库在正常运转中总是面对大量读者信息、书籍信息以及两者互相作用产生借书信息、还书信息。图书馆作为一种信息资源集散地,图书和顾客借阅资料繁多,包括着诸多信息数据。此前对信息管理重要方式是基于文本、表格等纸介质手工解决,对于图书借阅状况(如借书天数、超过限定借书时间天数)记录和核算等往往采用人工检查,对借阅者借阅权限以及借阅天数等采用人工计算、手抄进行,数据信息解决工作量大,容易出错和丢失。因而,建立一种智能化、系统化、信息化图书资料库是十分重要。使用计算机软件对图书
9、进行管理,是计算机应用一某些。充分运用计算机功能,实现对读者管理、书籍管理等自动化控制,将会使图书资料库工作强度大大削弱,可以实现图书检索迅速、可靠性高、存储量大、寿命长、成本低,能最大限度地提高图书管理效率,也是图书管理信息化、正规化管理必然趋势。4 基于UML图书管理系统需求分析与设计过程图书管理系统开发和应用重要通过两个环节来实现:一方面是基于系统功能需求分析,另一方面是系统模型设计和实现。4.1需求分析 需求分析是软件工程过程一种重要阶段,其中一种重要任务是拟定系统功能需求,采用面向对象办法,基于UML可视化系统需求分析,由于有顾客积极参加,既可以加快设计者对于问题理解,又可以在系统描
10、述方面减少语义差别,保证分析对的性。需求分析目的就是建立需求模型,即从功能需求出发建立用例模型,UML用例视图从顾客需求中提取,以盒图方式描述待开发系统功能需求。每个用例都指定了客户需求即她们需要系统干什么。用例图为设计活动不但记录需求并且还提供了一种挖掘信息,它记录了需求到设计成果之间映射关系,可以保证设计成果具备明确依照或者说具备可维护性,基于UML软件开发过程是以用例驱动。一方面咱们进行角色辨认,角色辨认任务是找出所有也许与系统发生交互行为外部实体、对象、系统。它们行为不受系统控制,但是可以提供输入给系统。对于一所大学图书管理系统,基本功能是完毕图书借阅和有关信息管理,服务对象有本科生,
11、研究生,教师,及其她学校学生,尚有社会人员,这些人可归结为一类即读者。而为协助读者顺利完毕借还书可以是工作人员,可以是自动借还书机,她们可以归结为一类即图书管理人员。因而对于一种图书管理系统重要有两类角色,读者、图书管理员。另一方面,在重要角色基本上,可以辨认出与角色相应用例,从而得到系统用例模型。与读者有关过程涉及:借书、还书、预定、图书信息检索、借阅查询(如查询本人借书记录、还书期限、与否超期)、个人有关信息查询及修改(如学号、姓名、性别、年级、专业、家庭住址、联系电话、出生日期、民族、政治面貌、身份证号等)。与图书管理员有关过程涉及:办理借书、办理还书、解除预定、图书订购、读者信息管理(
12、增长/删除读者、修改读者权限及密码、借阅超期罚款)、图书信息管理(增长/删除数目、图书类别等有关信息修改、流通状况)。系统管理(系统登陆、退出、日记维护、系统更新)。以上分析中,与读者,图书管理员有关过程构成了本系统基本用例。 4.2 系统整体构造 综上所述一种图书管理系统整体构造可以分为三大模块:图书管理模块、读者管理模块、系统管理模块。(1)图书管理模块涉及与图书有关某些过程,重要有图书借出、图书归还、预定、图书信息检索、图书订购、图书有关信息管理。(2)读者管理模块重要涉及与读者有联系有关过程,重要有增长/删除读者、修改读者权限及密码、借阅信息查询、个人信息查询及修该、借阅超期和丢失罚款
13、。(3)系统管理模块涉及系统登陆、退出、系统维护、系统更新。综上咱们画出系统整体构造,如图一所示:图一 图书管理系统整体构造 4.3 图书管理系统用例图从以上分析中咱们不难得出系统基本用例图,如图二所示:图二 系统基本用例图图书管理和图书管理是图书管理系统重要构成某些,为此咱们按照前文所述将图书管理模块和读者模块以及系统管理模块详细精化得出如下用例图,如图三、图四、图五所示:图三 图书管理模块用例图图四 读者管理用例图 图五 系统管理模块用例图4.4 图书管理系统行为图咱们再进行动态建模分析。对于图书管理系统借书还书是两个重要过程,咱们先来分析一下借书、还书普通过程,并由借书普通过程画出其顺序
14、图、协作图以及活动图。(1)借书过程:读者刷卡进入图书馆,或者先查询图书及个人借阅信息,或者直接去挑选图书,选取好图书后进入借书程序,管理员先检查读者借书证件,查验能否借阅,例如:证件与否无效或书籍与否已经借满等,即检查其借书合法性和有效性,如果是非法顾客或借书数量范畴外,则该读者不能借阅图书。如果满足借阅规定,则再获取所借书标题以进行库内搜索,获取书目查询此书数量,看与否尚有此书,如果没有则制止其她借书者也许进行预订活动,将此书借出,依照书号将此书借阅标志位取反以表达此书已借出,并将此书书目减1。并为此读者记录借阅日期,以及归还日期,在归还日期内未能归还和续借,并为其记录超借天数及罚款数额。
15、(2)还书过程:在返还图书过程中,管理员一方面获取读者借阅信息和被归还书籍信息,如书标题信息,数量等,并一一审核每本书归还日期与否超过应归还日期。在完毕阶段,将此书书号登记并设计标志位为已归还,以便读者网上预订和继续借阅,同步将此类图书数量加1,如果读者超期或丢失所借书籍,则要进行补偿解决。 因此咱们不难画出借书普通过程顺序图,如图六所示:图六 借书普通过程顺序图有顺序图可得到协作图,如图七所示。仔细分析借书过程细节,可以画出如图八所示活动图,它表达了复杂算法过程,特别是过程中判断、并发和同步。图七 借书普通过程协作图 以上咱们用各种语言机制分析了读者重要有关事件流,下面咱们绘制图书管理员使用
16、系统状态图分析图书管理员重要事件流。从以上分析可知,图书管理员有关过程涉及:办理借书、办理还书、解除预定、图书订购、读者信息管理(增长/删除读者、修改读者权限及密码、借阅超期罚款)、图书信息管理(增长/删除数目、图书类别等有关信息修改、流通状况)。由此咱们可绘制如图九所示图书管理员使用系统状态图:图九图书管理员使用系统状态图4.5 图书管理系统静态图定义并描述了各个类后,咱们可以依照实际状况引入包来管理类,本图书馆管理系统可以划分为四个包:顾客管理:对系统顾客进行管理,为顾客提供信息服务接口,便于对系统进行操作。借阅管理涉及借书解决,还书解决和罚款解决等。读者管理涉及对读者图书等信息进行维护,
17、重要有读者信息增删,对图书更新资料进行维护。系统服务:涉及系统登录检查,安全维护等。系统包图如图十所示:图十 系统包图4.6 图书管理系统实现通过系统分析和设计后,就可以依照设计模型在详细环境中实现系统,生成系统源代码、可执行程序和相应软件文档,建立一种可执行系统。进而需要对系统进行测试和排错,保证系统符合预定规定,获得一种无错系统实现。测试成果将确认所完毕系统可以真正使用。参照文献1 齐治昌.谭庆平.宁洪. 软件工程.北京:高等教诲出版社2 张海藩.软件工程.北京:人民邮电出版社3 董翔.基于UML图书管理系统开发和应用.科技情报开发与经济第l8卷第l2期4 吴开华.邢养晓.罗德撤.数字图书
18、馆元数据研究J.中华人民共和国图书馆学报,(3)5 刘治国构建基于BS构造图书管理系统J信息技术,(3):72736 管斌.袁国忠 译.用例驱动UML对象建模应用-范例分析.北京:人民邮电出版社结束语 本文以一种图书馆图书管理系统开发为背景,针对图书馆对图书资源进行有效运用和管理功能需求,采用统一建模语言(UML)对图书资源进行面向对象描述,通过运用统一建模语言UML中各种图形,分析和设计图书管理系统,建起了图书管理面向对象模型,探讨了基于UML体系构造建模及其实现问题。由建模过程可以看出UML在体系构造建模方面存在较好优势,不但从整体上对的描述了该图书管理系统体系构造,并且可以充分运用UML面向对象优势,从而实现整个软件系统面向对象分析、设计与开发,大大缩短开发周期,最后使得项目成功完毕,此管理系统节约了管理人员和读者大量时间,有助于信息解决效率提高。鉴于篇幅有限,本文只对重要某些和重要过程做了简介,限于水平,欢迎各位读者对本文缺陷、错误提出批评。