UML(Unified Modeling Language)是一种面向对象建模语言,旨在促进软件经验的共享和协作。该语言采用了由Grady Booch、Ivar Jacobson、James Rumbaugh三位软件开发先驱合并而成的标记符号,使得UML成为了业界标准。其最初目的是创造一个通用的、可扩展的面向对象的建模语言,同时也为软件工程和设计提供了相应的规范。
UML的设计者们在设计UML语言的时候,考虑到了软件设计的不同方面,包括用例、类、活动、序列、状态、组件等,因此,UML支持不同的模型类型。下面从用例图,类图,活动图,序列图和状态图几个方面说明UML的理解。
用例图
用例图是一种展示功能和行为的系统用例的UML图。用例图描述了系统如何和外部参与者进行交互,旨在识别一个系统或业务需求的行为。
用例图包括用例,参与者,子系统,语言或需求规范。其中,用例表示系统的功能行为,参与者可以是一个人、另一个系统或一个组织。子系统表示系统的功能模块,语言或需求规范定义了系统的具体要求。一个用例图通常会有多个用例,可以对多个用例进行关联和泛化,表示不同功能之间的关系。
类图
类图是描述类和它们的关系的静态模型。类图可以帮助我们识别系统中的对象和它们之间的关系,从而在设计阶段确立代码架构。
类图包含类,接口,关联关系,依赖关系,继承关系,实现关系和聚合关系等。类是一个封装了属性和方法的抽象分组。接口定义了一个类的行为,关联关系描述两个对象之间的关系,依赖关系描述了一个对象依赖于另一个对象,继承关系描述了一个类继承自其它类,聚合关系描述一个对象是由不同对象组成的。
活动图
活动图是一种描述系统业务流程和计算流程的UML图,用于描述系统中的功能、业务流程和内部行为等。
活动图包含活动、流程控制、分支、并发、汇聚等元素,其中,活动代表业务流程中的操作或计算,流程控制指用于控制活动执行的转换。分支用来描述不同决策的选项,在并发下允许不同的并发路径,汇合用于聚合并发流量。
序列图
序列图用于描述对象之间的交互和消息传递。序列图是面向对象分析方法中的一种交互建模图。
序列图包含对象、生命线、参与者等元素,其中,对象代表实现系统或业务流程的对象,生命线有时也称为活动条,用于描述对象的状态,参与者是参与交互的对象。
状态图
状态图用于描述对象的完整性和在不同状态之间的转变。状态图是一类特殊的活动图,用于描述系统在不同时间的状态转换。
状态图包括状态事件和转换,其中,状态是对象的某一特定时刻的状态,事件描述在对象的生命周期中发生的事情,转换描述状态的转型。
微信扫一扫,领取最新备考资料