UML基础案例与应用第二章UML概述

UML基础案例与应用第二章UML概述

UML的发展

20世纪90年代三种最流行的方法

  • Booch:引入面向对象软件工程的概念;强设计,弱分析
  • OMT:采用面向对象的概念,并引入各种独立于语言的表示符,同时使用对象模型、动态模型、功能模型和用例模型供图完全对整个系统的建模;强分析,弱设计
  • OOSE:面向用例;强行为分析,弱其他

UML的定义

UML定义

UML是用来对软件系统进行可视化建模的语言。UML是为面向对象开发系统的产品进行说明、可视化、和编制文档的一种语言

UML语义

UML语义给出了基于UML的精确的元模型定义。元模型为UML的所有元素在语法和语义上提供了简单、一致、通用的定义性说明,使开发者能在语义上取得一致,消除了因人而异的表示方法所造成的影响。UML还支持对元模型的扩充定义。

UML表示法

UML表示法定义了UML符号的表示方法,为开发者和开发工具使用这些图像符号和文本语法给系统建模提供了标准。这些图形符号和文字所表示的是应用级的模型,在语义上它是UML元模型的实例

UML的图

  • 结构图

    • 类图:类图是使用UML建模时最常用的图。它展示了系统中的静态事物、它们的结构以及它们之间的相互关系。这种图的典型用法是描述系统的逻辑设计和物理设计。

    • 对象图:对象图展示系统中的一组对象。它是系统在某一时刻的快照。对象图是类图在某一时刻的快照。

      扫描二维码关注公众号,回复: 11068892 查看本文章
    • 构建图:构件图展示一组构件的组织和彼此间的依赖关系。构建图说明系统如何实现,软件系统内构件如何协同工作。

    • 部署图:部署图展示物理系统运行时的架构。部署图描述系统中的硬件和硬件上驻留的软件。

    • 包图:包图描绘包之间的依赖关系(包是一个用于组织其他模型元素的通用模型元素)。

  • 行为图

    • 用例图:用例描述了系统的工作方式,以及系统能提供的服务.用例图描述了系统外部参与者如何使用系统提供的服务。

    • 活动图:活动图显示系统内的活动流。通常需要使用活动图描述不同的业务过程。

    • 状态机图:状态图显示一个对象的状态和状态之间的转换。状态图中包括状态、转换、事件和活动。状态图是一个动态视图,对事件驱动的行为建模尤其重要。在UML2.0中,状态图被称作状态机图(state machine diagram)。

    • 协作图:协作图是动态图的另一种表现形式,强调参加交互的各对象结构的信息。协作图是一种类图,包含类元角色和关联角色,而不仅仅是类元和关联。协作图强调的是发送和接收消息的对象之间的组织结构。

    • 时序图:时序图是一种交互图。它通过描述对象之间发送消息的时间顺序显示多个对象之间的动态协作。

    • 交互概述图:交互概观图是一种高层视图,用于从总体上显示交互序列之间的控制流。

什么是模型

模型是一个系统的完整的抽象。人们对某个领域特定问题的求解及解决方案,对它们的理解和认识都蕴涵在模型中。

什么建模

  • 业务建模:组织要解决什么问题

  • 需求:为了解决组织的问题,待开发系统应提供什么功能和性能

  • 分析:为了提供功能,系统内部应该有什么样的核心机制

  • 设计:为了满足性能,系统的核心机制如何用选定平台实现--

开发软件活动包括两个方面工作:

  • 对业务和业务规则的理解和表示;(对业务建模)
  • 规划和设计软件系统。(对要构造的软件建模)

建模的目的和原则

建模的目的

通过对业务和软件系统建模,以实现下面4个目标:

(1)对业务和软件进行可视化,便于对业务和软件系统的理解和交流。

(2)详细说明系统的组成、结构和系统交互的行为。便于开发人员对系统的宏观理解。

(3)用模型的方式为系统提供一个模板,开发人员依据该模板构造软件系统。

(4)将计划和决策文档化。

建模的原则

(1)仅当需要时,才为业务或软件系统构建模型。

(2)明确要建模的类型,问题的起因,以及解决方案是如何一步步形成的。

(3)任何一个模型可能有多种不同的表达程度,程度越深则越详细。但并不见得程度越深则越容易让人理解,没调整好的话,反而更容易让人迷惑。

(4)没有任何一个模型是可以完全完备的,每一个很好的系统都是由一系列独立的子模块联接起来的。

用UML可以建立的模型种类

  • 按产生模型的阶段性分类

    • 业务模型:
    • 需求模型:
    • 设计模型:
    • 实现模型:
    • 数据库模型:
  • 按模型的用途分类

    • 功能模型:从用户的角度展示系统的功能。
    • 对象模型:采用对象,属性,操作,关联等概念展示系统的结构和基础。
    • 动态模型:展现系统的内部行为。
发布了81 篇原创文章 · 获赞 27 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_43309286/article/details/104388061