您的位置:首页 > 其它

UML中的九种图及画图技巧——用例图、类图、对象图

2012-12-29 17:25 931 查看


      UML中的各种图是UML模型的重要组成部分。近期的几篇文章中我将陆续为大家介绍UML中比较重要的九种图。大致的内容如下目录所示。
       1、用例图、类图、对象图
       2、序列图、协作图
       3、活动图、状态图
       4、组件图、部署图
        
      在今天这篇博客中,主要讲下用例图、类图和对象图。之所以把类图和对象图拿在一起来讲,是因为他俩是静态图的一部分。严格意义上来说,静态图包括类图、对象图和包图。言归正传,下面将一一说明用例图、类图和对象图。

 用例图
      用例图是软件需求到最终实现的第一步。用例图是使系统的用户更好的理解系统元素的用途,同时也便于软件开发人员最终的实现。用例图的最终目的是说明系统对于用户来说是什么样子的,因此不必追究每一个用例的内部实现细节,这不是构造用例图时应该关心的问题。能否正确反映用户的需求是用例图的关键所在。
      用例图画图技巧:相对来说用例图是所有UML图中最好画的一种图。甚至可以不用完全掌握有关用例图的相关概念,单单拿出一张用例图的大致模板,就能“照葫芦画瓢”的画出来。但是关键是,自己画用例图时一定
要充分了解整个系统的功能,弄清整个系统和局部以及局部各个功能的关系。

 类图
      从用例图中钻出来之后,就要转移到用例图上了。建模中最常见的图就是类图,是定义其他图的基础。类图是描述类、接口、协作以及它们之间关系的图,描述的是一种静态关系,在系统的整个生命周期都是有效的。
      类图画图技巧:首先要学会从整个系统中抽象出具体的类。例如订票系统中,它的类图应该包含的类有Custmor(顾客)、Reservation(订票)、Ticket(票)、Performance(出席看演出)、Show(演出)。其实相对于我们刚刚接触UML的同学来说,从一个系统中准确地抽象出类,其实是不很容易的。就像我画机房收费系统的类图时,自己就会觉得抽象出的类不是很准确,而且抽象出的有些“类”并不能算作是正确意义上的“类”。其次,要熟悉并熟练掌握类的四种关系:关联关系、依赖关系、泛化关系和实现关系,其中关联关系又包括聚合关系和组成关系。对于类的关系,要能掌握在类图中相应的图形表示,不可混淆。最后这一点,也是在UML每个图中都应该注意的地方,那就是要弄清各个图中不同的图形表示什么。例如活动图中的活动用圆角矩形表示,而状态图中是用矩形表示,在不同的图中,所使用的图形都是不一样的。可能现在在类图中说这个还有些早,但这点的确是每个图中都应该注意的地方。
     最后值得说明的一点是,类图是UML中很重要的一种图。类图是其他图的基础,从类图中便可抽象出其他的图,并加之以细细描述。如果说把类图比作是树干,那么其他图便是这树干上滋长出来的新枝新芽,是这个“树干”的扩展生长。因此要把类图足够重视起来。

 对象图
      对象图是类图的实例。几乎有与类图完全相同的标识。不同点在于对象图显示类图的多个对象实例,而不是实际的类。一个对象图时类图的一个实例。与类图不同的是,对象图只能在系统的某一时间存在,因为对象存在生命周期,所以不能像类图那样在系统的整个生命周期都有效。
      对象图画图技巧:画对象图,自然也少不了研究其图形表示方法及其组成。抛开这一点另说,对象图是表示某一时刻一组对象及它们之间关系的图,可以说是类图在系统某一时刻的实例。这样说来,又再一次印证的上面我说的话,一定要把类图重视起来。所谓对象图,照其名字说来,是针对对象而言的,因此只要注意把对象间的关系缕清,那样就成功一多半了。

       在后面的几篇文章中,我们将继续研究UML中的图,希望大家多提宝贵意见,我们共同学习! 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  uml 图形