软设考试笔记–UML建模
意义:
开发一款软件,好比是建设一栋房子,如果没有设计图,肯定是不行的。在面向对象的软件设计中,也有建模设计。所以对一位优秀的软件设计师而言,掌握UML建模是必须的。
UML简介:
UML建模语言是面向对象软件的标准化建模语言,由于其简单、统一,又能够表达软件设计中的动态和静态信息,目前已经成为可视化建模语言事实上的工业标准。
它可以描述开发锁需要的各种视图,软后以此为基础装配系统。
UML 包含三种构造块:事物、关系和图。
考试要求:
能够根据具体问题,创建符合UML标准的类图、用例图、并准确识别类中的关键属性和方法,以及类之间的关联。
考察的建模图有:类图、用例图、状态图、顺序图、活动图、通信图。
相关概念梳理
事物:
UML中4种事物:结构事物、行为事物、分组事物、注释事物。
结构事物:结构事物是UML模型中的名词。它们通常是模型的静态部分,描述概念或物理元素。
结构事物包括类、接口、写作、用例、主动类、构件、制品、结点。
行为事物:行为事物是UML模型的动态部分。它们是模型中的动词,描述了跨越时间和空间的行为。行为事物包括交互、状态机和活动。
- 一个对象群体的行为或单个操作的行为可以用一个交互来描述。在图形上,把一个消息表示为一条有向直线,通常在表示消息的线段上总有操作名。
- 状态机描述了一个对象或一个交互在生命周期内响应事件所经历的状态序列。
- 活动是描述计算机过程执行的步骤序列。
分组事物:分组事物是UML模型的组织部分,是一些由模型分解成的“”盒子“”。
注释事物:注释事物是UML模型的解释部分。
关系:
UML中有4种关系:依赖、关联(聚集)、泛化和实现。
UML中的图:
UML2.0提供了13中图:分别是类图、对象图、用例图、序列图、通信图、状态图、活动图、构建图、组合结构图、部署图、包图、交互概览图和计时图。序列图、通信图、交互概览图和计时图均被称为交互图。
1、类图
类图展现了一组对象、接口、写作和它们之间的关系。
类图用于对系统的静态设计视图建模。这种视图主要支持系统的功能需求,即系统要提供给最终用户的服务。
2、对象图
对象图展现了某一时刻一组对象以及它们之间的关系,描述了在类图中所建立的事物的实例的静态快照。
3、用例图
用例图展现了一组用例、参与者以及它们之间的关系
用例图包含以下内容:
(1)用例
(2)参与者
(3)用例之间的扩展关系和包含关系,参与者和用例之间的关联关系,用例与用例以及参与者与参与者之间的泛化关系。
4、交互图
交互图用于对一个系统的动态方面的建模。交互图表现为序列图、通信图、交互概览图和计时图。交互图一般包含对象、链和消息。
序列图是强调消息事件顺序的交互图。
通信图十强调接收和发送消息的对象的结构组织的交互图。
交互概览图强调控制流的交互图。
(1)序列图
序列图是场景的图形化表示,描述了以时间顺序组织对象之间的交互活动。
序列图有两个不同于通信图的特征:序列图有对象生命线、序列图有控制焦点。
(2)通信图
通信图强调收发消息的对象的结构组织。
通信图有两个不同于序列图的特性:通信图有路径、通信图有序列号。
(3)交互概览图
它是活动图的变体,描述业务过程中的控制流概览,软件过程中的详细逻辑概览,以及将多个图进行连接,抽象掉了消息和生命线。
(4)计时图
计时图是另一种新增的、特别适合实时和嵌入式系统建模的交互图,关注沿着线性时间轴、生命内部线和生命线之间的条件改变。
5、状态图
状态图展现了一个状态机、它由状态、转换、事件和活动组成。
6、活动图
是一种特殊的状态图,它展现了在系统内的从一个活动到另一个活动的流程。
7、构件图
展现了一组构件之间的组织和依赖。
8、组合构件图
用于描述一个分类器的内部结构,分类器与系统中其他部分之间的交互端口,展示一组相互协作的实现如何完成特定的任务,描述设计、架构模式或策略。
9、部署图
是用来对面向对象系统的物理方面建模的方法,展现了运行时处理结点以及其中构建的配置。
10、包图
是用于把模型本身组织成层次结构的通用机制,不能执行,展现由模型本身分解而成的组织单元以及其间的依赖关系。
总结:UML这部分的考察重点在于用例图、类图与对象图的理解上,其他的图也会有涉及,但是对一位优秀的面对对象的软件设计工程师而言,掌握UML建模是十分有必要的。