`
xmong
  • 浏览: 261724 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

UML

uml 
阅读更多
UML

目录
1 UML简介 1
1.1 UML的简介 1
1.2 UML的历史 1
1.3 UML模型图分类 2
2 类图 2
3 用例图 2



1 UML简介
1.1 UML的简介
UML (Unified Modeling Language)统一建模语言,为面向对象软件设计提供统一的、标准的、可视化的建模语言。适用于描述以用例为驱动,以体系结构为中心的软件设计的全过程。 
 Unified:UML是一种标准语言,广泛适用于全世界。
 Modeling:UML用途在建模。
 Language:UML是一门语言。
UML的定义包括UML语义和UML表示法两个部分。
  (1) UML语义:UML对语义的描述使开发者能在语义上取得一致认识,消除了因人    而异的表达方法所造成的影响。
  (2) UML表示法:UML表示法定义UML符号的表示法,为开发者或开发工具使用这些图形符号和文本语法为系统建模提供了标准。
UML的模型图是一种实体关系图(表示实体与实体之间关系的图形):
事物(Things):UML模型中最基本的构成元素,是具有代表性的成分的抽象(实体)。
关系(Relationships):关系把事物紧密联系在一起
图(Diagrams ):图是事物和关系的可视化表示

1.2 UML的历史
UML在Rational Software公司支持下于1994年开始成形,是Grady Booch,James Rumbaugh,Ivar Jacobson 三位从事面向对象方法研究专家合作研究的成果,UML标准是OMG协会在1997年制定。
1996年6月和10月分别发布了UML0.9, UML0.91。
1997年1月,UML1.0被提交给对象管理组织OMG。
1997年9月,提交UML1.1,1997年11月被OMG采纳作为基于面向对象技术的标准建模语言。
1998、1999、2000、2001、2004年分别发布了UML1.2、UML1.3、UML1.4、UML1.5、UML2.0。
UML已经迅速成长为一个事实上的工业标准。不论在计算机学术界、软件产业界还是在商业界,UML已经逐渐成为人们为各种系统建模、描述系统体系结构、商业体系结构和商业过程时使用的统一工具,而且在实践过程中人们还在不断扩展它的应用领域。

1.3 UML模型图分类
UML有很多种图,大体可以分为两类:
(1)结构型(静态)的图(Structure Diagram)
  类图(Class Diagram)
  对象图(Object Diagram)
  构件图(Component Diagram)
  部署图(Deployment Diagram)
  包图(Package Diagram)
(2)行为型(动态)的图(Behavior Diagram)
  活动图(Activity Diagram)
  状态机图(State Machine Diagram)
  顺序图(Sequence Diagram)
  通信图(Communication Diagram)
  用例图(Use Case Diagram)
  时序图(Timing Diagram)

2 类图
类图:描述系统中类的静态结构。不仅定义系统中的类,表示类之间的联系如关依赖、关联、泛化、实现、聚合等,也包括类的内部结构(类的属性和操作) 。是描述类,接口,协作关系的图。
2.1 类图中的类
类:是对现实世界中的事物的抽象,这些事物具有相同属性,操作,关系和语义。
类图也是一种实体关系图:类图的实体:就是类,接口等。类图的关系:依赖,关联,实现,泛化,聚合,组合。
类的3个基本组件:类名、属性、方法。



类的名称是必须的,属性和操作可选。
如果有属性,属性具有属性名,可见性,默认值,值类型。
如果有操作,操作具有操作名,可见性,参数值,返回值类型。
可见性:“+”表示public,“#”表示protected,“-”表示private。

2.2 类图中的关系
类图中的关系有:泛化,实现,依赖,关联,聚合,组合。

(1) 泛化
泛化(generalization):表示is-a的关系,是对象之间耦合度最大的一种关系,子类继承父类的所有细节。直接使用语言中的继承表达。在类图中使用带三角箭头的实线表示,箭头从子类指向父类。
代码示例:类的继承
表示:


(2) 实现
实现(Realization):在类图中就是接口和实现的关系。这个没什么好讲的。在类图中使用带三角箭头的虚线表示,箭头从实现类指向接口。
代码示例:类实现接口
表示:


(3) 依赖
依赖(Dependency):对象之间最弱的一种关联方式,是临时性的关联。代码中一般指由局部变量、函数参数、返回值建立的对于其他对象的调用关系。 一个类调用被依赖类中的某些方法而得以完成这个类的一些职责。在类图使用带箭头的虚线表示,箭头从使用类指向被依赖的类。
代码示例:局部变量、方法的参数或者对方法的调用
表示:


(4) 关联
关联(Association) : 对象之间一种引用关系,比如客户类与订单类之间的关系。这种关系通常使用类的属性表达。关联又分为一般关联、聚合关联与组合关联。后两种在后面分析。在类图使用带箭头的实线表示,箭头从使用类指向被关联的类。可以是单向和双向。
代码示例:成员变量
表示:


(5) 聚合
聚合(Aggregation) : 表示has-a的关系,是一种不稳定的包含关系。较强于一般关联,有整体与局部的关系,并且没有了整体,局部也可单独存在。
代码示例:关联的一种,成员变量
表示:


(6) 组合
组合(Composition) : 表示contains-a的关系,是一种强烈的包含关系。组合类负责被组合类的生命周期。是一种更强的聚合关系。部分不能脱离整体存在。
代码示例:关联的一种,不可缺少成员变量
表示:


3 用例图
用例图是从用户角度描述系统功能, 是用户所能观察到的系统功能的模型图。用例是系统中的一个功能单元 ,用例建模的最主要功能就是用来表达系统的功能性需求或行为。用例建模可分为 用例图和用例描述。
用例图与用例描述的区别:用例图是以图的形式来描述功能性的需求和行为,而用例描述这是以一定格式的文字来描述功能性需求和行为的。
用例图从实体关系图角度来分析:用例图的实体,参与者和用例名。用例图的关系,泛化,关联,包含,扩展。
3.1 用例图的事物
参与者:在系统外部与系统直接交互的人或事物(如另一个计算机系统或一些可运行的进程)。需要注意的是:
1.参与者是角色(role)而不是具体的人,它代表了参与者在与系统打交道的过程中所扮演的角色。所以在系统的实际运作中,一个实际用户可能对应系统的多个参与者。不同的用户也可以只对应于一个参与者,从而代表同一参与者的不同实例。
2.参与者作为外部用户(而不是内部)与系统发生交互作用,是它的主要特征。
3.在后面的顺序图等中出现的“参与者”,与此概念相同,但具体指代的含义,视具体情况而定。
参与者表示:


用例:系统外部可见的一个系统功能单元。系统的功能由系统单元所提供,并通过一系列系统单元与一个或多个参与者之间交换的消息所表达 。
用例的表示:







************************

未完待续

  • 大小: 5 KB
  • 大小: 1.4 KB
  • 大小: 1.5 KB
  • 大小: 1.5 KB
  • 大小: 1.6 KB
  • 大小: 1.5 KB
  • 大小: 1.3 KB
  • 大小: 1.9 KB
  • 大小: 2.4 KB
分享到:
评论

相关推荐

    UML精粹.pdf

    UML精粹一书中介绍了UML的基本元素、结构以及各种UML图,目的是为了帮助读者快速理解和掌握UML的核心知识,整理业务逻辑。 本书详细介绍了UML的几种重要图,包括用例图、类图、序列图、活动图等。用例图关注于系统...

    UML网络教学系统(UML课程设计)

    《UML网络教学系统——深度解析与应用》 UML(Unified Modeling Language),即统一建模语言,是一种在软件工程领域广泛使用的可视化建模工具,它为系统分析、设计及项目管理提供了统一的标准语言。本篇文章将围绕...

    uml书籍( UML用户指南(第2版).pdf+面向对象设计uml实践(第二版).pdf)

    《UML用户指南(第2版).pdf》与《面向对象设计uml实践(第二版).pdf》这两本书籍是IT领域中关于统一建模语言(Unified Modeling Language,简称UML)的重要参考资料,对于理解并应用UML进行软件设计具有极高的价值。...

    uml2.4.1上层标准

    统一建模语言(UML)是一种标准化的建模语言,用于软件工程领域中的可视化、详细描述、构造和文档化软件系统的各种方面的蓝图。UML 2.4.1是UML的版本之一,它包含了对UML的各种改进和错误修正。 首先,UML是被国际...

    UML期末大作业

    **UML期末大作业** 本项目是一份针对UML(统一建模语言)的期末大作业,涵盖了多种UML图表的使用,旨在帮助学生全面理解和应用UML在软件设计中的重要性。通过这份作业,你可以深入学习如何用UML来描述、可视化、...

    eclipse UML2插件

    Eclipse UML2插件是Eclipse集成开发环境(IDE)的一个强大工具,它使得软件开发者能够方便地创建、编辑和管理统一建模语言(UML)模型。这个插件扩展了Eclipse的功能,允许用户在开发过程中直接进行UML建模,从而...

    UML 大学讲义PPT

    **UML(统一建模语言)是软件工程领域中一种重要的建模工具,它通过图形化的方式描绘系统的行为和结构,使得复杂的设计和需求能够更直观地被理解和沟通。本讲义主要围绕UML的基础知识展开,特别是针对初学者,其中...

    UML期末大作业——PDF

    文档中虽然没有提供实际的UML图表,但提到了“UML期末大作业”,说明了作业内容中应包含了UML图表的设计,如类图、用例图等,以展示系统的结构和行为。UML图表是文档设计和描述系统功能的重要组成部分。 6. 系统...

    适用axure9的UML元件库

    个人觉得全网最全的UML元器件图,性价比也是最高的,只需要5分,几乎免费了。包含UML活动图(流程图)、泳道图、状态图、用例图、类图、时序图六类常用图表元件及示例图,可快速、便捷地在Axure中进行产品建模分析。...

    UML 2.2 Visio 模板

    **UML 2.2 Visio 模板详解** UML(统一建模语言)是一种在软件工程领域广泛使用的标准化建模语言,用于可视化、规格化系统设计的各个层面。UML 2.2是其最新的版本,包含了丰富的图形符号和构造,用于描述系统的结构...

    uml实例uml实例uml实例uml实例uml实例

    UML(Unified Modeling Language)是统一建模语言,是一种用于软件工程领域中系统建模的标准语言,它通过图形化的方式帮助我们理解、设计和沟通软件系统。UML实例通常包括了类图、对象图、用例图、序列图、协作图、...

    UML建模实例大全

    《UML建模实例大全》是一本深入探讨UML(统一建模语言)在实际项目中的应用的书籍,尤其强调了其在设计模式中的实践。UML作为一种强大的可视化建模工具,是软件开发过程中的重要组成部分,它为系统分析、设计和沟通...

    eclipse中的uml类图插件jar包

    org.eclipse.uml2.uml:这是Eclipse UML插件的核心库,提供了UML类图的基本元素,如类、接口、关联、活动图等。它还包含了用于创建和编辑UML模型的编辑器。 org.eclipse.uml2.uml.diagram:这个库包含了用于创建和...

    uml网上购物系统

    《UML在线购物系统设计详解》 UML(统一建模语言)是软件工程领域中一种重要的建模工具,用于描述、可视化、构建和文档化软件系统。在本项目"uml网上购物系统"中,我们将深入探讨如何运用UML的各种图来设计一个完整...

    UML用户手册中英文版含第二版 - UML用户指南英文版

    **UML用户手册和用户指南** UML(统一建模语言)是一种标准的建模语言,用于可视化软件系统的结构和行为。"UML用户手册中英文版含第二版 - UML用户指南英文版" 提供了对UML的全面理解和应用的资源。手册和指南覆盖...

    UML在线考试系统.docx

    "UML在线考试系统.docx" 本文是“基于UML的在线考试系统的需求分析”,对各种用例图、顺序图、活动图、状态图、类图等UML建模语言来绘制,可以为学生的课程大作业提高参考。以下是从该文件中生成的知识点: 一、...

    UML 统一建模语言.pdf

    ### UML统一建模语言概览 UML(Unified Modeling Language),即统一建模语言,是软件工程领域的一项重大创新,标志着1995至1997年间软件工程领域前所未有的进步。这一时期的成果超过了过去十五年的总和,UML的诞生...

    完整版_UML_快递管理系统

    《UML快递管理系统详解》 在信息技术领域,UML(统一建模语言)是一种标准的图形化建模语言,用于软件开发过程中系统分析和设计的可视化表达。本资源包“完整版_UML_快递管理系统”提供了全面的UML文档,包括不同...

    JAVA类生成UML图

    在软件开发过程中,UML(统一建模语言)是一种强大的工具,用于可视化、构建和文档化软件系统的结构和行为。UML图可以帮助开发者、设计师和项目团队清晰地理解系统的设计和实现,从而提高沟通效率和代码质量。"JAVA...

    EA UMLEA UMLEA UMLEA UML

    【EA UML】是Enterprise Architect(EA)软件中关于统一建模语言(UML)的使用和应用。Enterprise Architect是一款强大的系统建模工具,广泛用于软件工程、业务流程建模和系统分析等领域。UML是一种图形化建模语言,...

Global site tag (gtag.js) - Google Analytics