摘要:由于UML很好地实现了用户、开发人员、设计人员及管理人员之间的信息传递,提高了相互间的协作能力,使软件开发的工程化程度大大提高。基于UML对软件进行分析和建模,很好地体现了这一点。
关键词:UML;面向对象建模;图书管理系统;高校教材管理系统;学籍管理系统
中图分类号:TP311文献标识码:A 文章编号:1009-3044(2008)18-20000-00
Object-oriented UMLand its Application
ZHU Li-li
(Jinling institute of technology, Nanjing 211169,China)
Abstract: As UMLwell positioned to enable users, developers, designers and management of the transmission of information between the staff and enhance mutual collaboration, the development of software engineering degree has been greatly increased. UML-basedsoftware analysis and modeling, a good expression to this point.
Key words: UML; object-oriented modeling; library management system; college teaching materials management system; school management system.
1 引言
对于软件,有多种建模方法。最普通的两种方法是从算法的角度建模和从面向对象的角度建模。传统的软件开发是从算法的角度进行建模。按照这种方法,所有的软件都用过程或函数当需求发生变化( 总会变化的)以及系统增长( 总会增长的)时,用这种方法建造的系统就会变得很难维护。而现代的软件开发采用面向对象的观点进行建模。按照这种方法,所有软件系统都用对象或类作为其主要构造块。面向对象的开发为使用构件技术装配系统提供了概念基础。选择以面向对象的方式观察世界,会产生一系列的问题:什么是好的面向对象的体系结构? 项目会创造出什么样的制品?而对面向对象系统进行可视化、详述、构造和文档化正是统一建模语言(UML)的目的。
2 UML的发展
1997 年,OMG 组织发布了统一建模语言(Unified Modeling Language,UML)。UML的目标之一就是为开发团队提供标准通用的设计语言来开发和构建计算机应用。UML提出了一套软件专业人员期待多年的统一的标准建模符号。
UML成为“标准”建模语言的原因之一,在于它与程序设计语言无关。而且UML符号集只是一种语言而不是一种方法学。这点很重要,因为语言与方法学不同,它可以在不做任何更改的情况下很容易地适应任何单位的业务运作方式。
3 UML的特点
作为一种标准的图形化建模语言,UML具有以下特点:
1)一种标准的建模语言,而不是一个标准的开发过程,它完全独立于开发过程。
2)可视化,表示能力强。通过UML的模型图能清晰地表示系统的逻辑模型和实现模型,可用于各种复杂系统的建模。
3)建模能力比其他面向对象方法更强,不仅适合于一般系统的开发,更擅长于并行、分布式系统的建模。
4)提出了许多新的概念,如构造型、职责、扩展机制、模式等等。
5)易于掌握,便于使用。UML图形结构清晰,建模简洁明了,便于掌握和使用。所以UML的出现意味着开发方法统
一化、标准化的新发展,标志着软件自动化进程又向前迈进了一步。
4 UML在OO建模中的应用
UML用九种图来描述所建立的模型, 分别是用例图( UseCaseDiagram)、对象图( ObjectDiagram)、类图( Class Diagram)、顺序图( SequenceDiagram)、合作图( CollaborationDiagram)、状态图( Statechart Diagram)、活动图(ActivityDiagram)、组件图( Component Diagram)、配置图(Deployment Diagram)。在建立模型后,和目标语言建立连接,即有可能按照一定的规则生成目标代码框架,并从已有代码出发更新模型,提高开发效率。
5 利用UML进行面向对象的系统分析设计
5.1 基于UML的图书管理系统的开发过程
5.1.1 系统需求分析
需求分析是定义系统功能及用户界面,使用户知道系统的功能,开发人员知道系统的需求。它的主要工作是寻找系统的用例,建立系统需求模型,主要成果是用例图和系统的参与者。
图书馆管理系统的功能包括以下几个方面:
(1)借阅者可以通过网络查询书籍信息和预订书籍。
(2)借阅者能够借阅书籍和还书。
(3)图书管理员能够处理借阅者的借阅和还书请求。
(4)系统管理员可以对系统的数据进行维护,如:增加、删除和更新书目,增加、删除和更新借阅者账户,增加和删除书籍信息。
可见,系统的参与者主要有三类:借阅者、图书管理员、图书管理系统维护者。如借阅者请求服务的用例图包括登录系统(Logon sys2tem) 、查询自己的借阅信息(Query Info) 、查询书籍信息( Search for book) 、预订书籍(Reserve book) 、借阅书籍(Bor2row book)和归还书籍(Return book) 。
5.1.2 系统设计
第一步建立静态模型
用面向对象的思想描述方法,能够把复杂的系统简单化、直观化,而且易于用面向对象语言编程实现,还方便日后对系统的维护工作。用面向对象的方法处理实际问题时,需要建立面向对象的模型。体现在静态建模过程中很重要的就是类图。类图的设计是系统设计最核心的部分,在图书管理系统中用到的主要类有7个:借阅者类(Borrower) 、图书管理员类(Librarian) 、系统管理员类(Administrator) 、书目信息类(Title) 、书类( Item) 、书的借阅信息类(Loan)和书的预订信息类(Reservation) 。各类之间有着不同的依赖关系,如每条书目记录都有多本书存在, Title与Item之间存在着一对多的关系;每条书目Title可以没有或有多个预订记录Reservation;每个借阅者Borrower可以有多条借阅书籍信息,也可有多条预订信息等。
第二步建立动态模型
UML提供的动态建模机制包括:状态图、活动图、时序图、协作图。状态图用于对系统中的某些对象,比如类、用例和系统的行为建模。活动图被设计用于简化描述一个过程或者操作的工作步骤,即用以描述用例和对象内部的工作过程,它展现出对象执行某种行为时或在业务过程中所要经历的步骤和判断点。它是状态图的一种扩展形式。在图书馆管理系统中,有明确活动的类有:借阅者、图书管理员和系统管理员。可以在系统中为这3个类建立活动图。如图书管理员可以处理借书和还书操作。当用户借书时,图书管理员要查看借阅者凭证上显示的可借书的书目是否满足要求;当用户还书时,图书管理员要检查所借书籍是否已经超过期限,如果超期,则收取一定的罚金,其具体活动如图1所示。在UML中,用例的实现用交互图来指定和说明。交互图通过显示对象之间的关系和对象之间处理的消息来对系统的动态特性建模。有两种交互图:时序图和协作图。时序图的功能是按时间顺序描述系统元素间的交互,合作图的功能按照时间和空间顺序描述系统元素间的交互和它们之间的关系。如:图书管理员处理书籍借阅时,先查找书目,再根据书目从数据库中查找所要书籍,然后验证借阅者身份和借阅者信息,借书后修改借阅信息。
图1 图书管理员的活动图
5.1.3 系统实现
建立了系统可视化模型后,就可以利用Rose正向工程生成系统的初步框架代码。编程前选择合适的编程环境、设计语言及数据库等,如采用JAVA语言和ORACLE数据库。该阶段同时根据系统数据库的类关联图设计所有的数据库表、视图、存储过程。最后完成系统应用程序代码的编写。UML作为一种建模语言,应用于各种系统的设计与分析,改变了传统的软件设计思想,降低了系统设计的盲目性,也更有利于系统的扩展与测试。由于UML很好地实现了用户、开发人员、分析人员、测试人员以及管理人员之间的信息传递,提高了相互间的协作能力,使软件开发的工程化程度大大提高。基于UML对图书管理系统的分析和建模很好地体现了这一点。随着UML的进一步发展,软件的开发设计必将更加高质高效。
6 结束语
UML统一了面向对象建模的基本概念、术语及图形符号,为人们建立了便于交流的共同语言,适用于各种软件开发方法、软件生命周期的各个阶段、各种应用领域以及各种开发工具。UML能够对整个开发过程提供灵活、一致、易读的表达,表现出其强大的能力,它融合了各种面向对象的建模语言的优点,具有非常广阔的应用前景。
参考文献:
[1] 尤克滨.UML应用建模实践过程[M].北京:机械工业出版社,2003.
[2] 刘超,张莉.可视化面向对象建模技术[M].北京:北京航空航天大学出版社,1999
[3] 宋波. JDeveloperWeb 应用与开发[M] 北京:清华大学出版社, 2003.
[4] 张龙祥.UML与系统分析设计[M] 北京:人民邮电出版社, 2001.
[5] 陈健.UML技术应用探讨[J] 计算机工程, 2004.
[6] 蔡敏.UML基础与Rose建模教程[M] 北京:人民邮电出版社, 2006.
收稿日期:2008-04-17
作者简介:朱丽丽(1980-),女,江苏省淮安人,助教,研士在读,研究方向:模式识别与数据挖掘。