UML_8_使用PowerDesigner进行面向对象分析与UML建模

在开发最初,很多设计人员都难以熟练的运用工具来进行面向对象的分析与建模,甚至说不知选什么样的工具来做模型描述。

在使用工具之前,应该知道面向对象分析的客体是对象,因此我们首先要了解的是面向对象中对象的三种模型:

  • 对象模型:一种表示静态的、结构化系统的“数据性质”的模型;
  • 动态模型:用以考察对象的动态行为,动态模型表示瞬间的、行为化的系统“控制”性质,它规定了对象模型中对象的合法变化序列;
  • 功能模型:表示变化的系统的“功能”性质,指明了系统应该“做什么”,可以更直接的反映用户对目标系统的需求。

那什么是UML建模呢?

UML作为统一建模语言的缩写,可以概要的理解为一种描述模型化的语言,就像人类的自然语言那样为了表达意思的语言,不过UML比较狭隘和专一,它仅仅作为面向对象软件分析中软件设计模型化表述的用途。

UML描述了模型元素、模型结构与模型本身三大要素。

1、UML模型元素

  • 表示模型中的某个概念(类、对象、用例、结点、组件、包、接口等等);
  • 表示模型间相互连接的关系(关联、泛化、依赖、聚集)。

2、UML模型结构:四个抽象层次(如下图)

UML_8_使用PowerDesigner进行面向对象分析与UML建模_第1张图片

3、UML模型:不同视角的系统建模,形成不同的视图(View),每个视图是系统完整描述中的一个抽象,代表该系统的一个特定方面,每个视图又由一组图(Diagram)构成。

为了绘制出模型,我们除了可以使用常规的草稿手工绘画外,还可以运用软件来作图,软件绘制模型的好处就是易于保存、扩展和修改。

相信大家都听过PowerDesigner这个工具吧,它的具体由来和历史就不在此赘述了。接下来我们则会简述如何利用此工具来完成面向对象分析与设计中软件模型的搭建。

打开该软件,新建并选择“Object-Oriented Model”(意思是建立面向对象的模型),在“First diagram”下拉框中我们可以看到可以选择创建的OOM图有以下几类(如下图)。

UML_8_使用PowerDesigner进行面向对象分析与UML建模_第2张图片

简述:

  • 类图和对象图:用来定义类和对象以及它们的属性和操作;
  • 用例图:主要用来描述系统的外部行为;
  • 顺序图:显示对象之间的动态合作关系,它强调对象之间消息发送的顺序,同时显示对象之间的交互;
  • 组件图和部署图:描述实现系统的元素组织和系统环境元素的配置;
  • 状态图:描述类的对象所有可能的状态以及事件发生时状态的转移条件;
  • 活动图:描述满足用例要求所要进行的活动以及活动间的约束关系,有利于识别并行活动;
  • 协作图:强调对象间的动态协作关系。

对象模型

静态图包括:用例图(Use Case Diagram)、类图(Class Diagram)、对象图(Object Diagram)、组件图(Component Diagram)和部署图(Deployment Diagram)。

用例图:描述系统的功能。

UML_8_使用PowerDesigner进行面向对象分析与UML建模_第3张图片

UML_8_使用PowerDesigner进行面向对象分析与UML建模_第4张图片

类图:描述系统的静态结构(类之间关系:泛化、关联、依赖)。

UML_8_使用PowerDesigner进行面向对象分析与UML建模_第5张图片

UML_8_使用PowerDesigner进行面向对象分析与UML建模_第6张图片

UML_8_使用PowerDesigner进行面向对象分析与UML建模_第7张图片

UML_8_使用PowerDesigner进行面向对象分析与UML建模_第8张图片

UML_8_使用PowerDesigner进行面向对象分析与UML建模_第9张图片

UML_8_使用PowerDesigner进行面向对象分析与UML建模_第10张图片

UML_8_使用PowerDesigner进行面向对象分析与UML建模_第11张图片

UML_8_使用PowerDesigner进行面向对象分析与UML建模_第12张图片

UML_8_使用PowerDesigner进行面向对象分析与UML建模_第13张图片

UML_8_使用PowerDesigner进行面向对象分析与UML建模_第14张图片

输出Java Code:Language >General Java Code >...

对象图:类图的实例,描述系统某个时刻具体的静态结构。

UML_8_使用PowerDesigner进行面向对象分析与UML建模_第15张图片

自行车是车类的对象,拥有车类的属性(外加:操作|方法)等。

组件图:描述实现系统的元素组织。

部署图:描述系统环境元素的配置。

UML_8_使用PowerDesigner进行面向对象分析与UML建模_第16张图片

组件中创建接口、对象、类,彼此构建关系,最终组合成完整的开发框架。

动态模型

动态图包括:状态图(Statechart Diagram)、顺序图(Sequence Diagram)、协作图(Collaboration Diagram)和活动图(Activity Diagram)。

状态图:描述系统元素的状态变化。

UML_8_使用PowerDesigner进行面向对象分析与UML建模_第17张图片

顺序图:描述按时间顺序系统元素之间的交互。

UML_8_使用PowerDesigner进行面向对象分析与UML建模_第18张图片

协作图:按时空的顺序描述系统元素之间的交互和关系。

UML_8_使用PowerDesigner进行面向对象分析与UML建模_第19张图片

活动图:描述系统元素的活动。

UML_8_使用PowerDesigner进行面向对象分析与UML建模_第20张图片

功能模型

五种视图包括:用例视图、结构模型(逻辑)视图、行为模型(并发)视图、实现模型(组件)视图和部署视图。

用例视图:从用户角度表达系统功能(使用用例图+活动图)描述。

结构模型(逻辑)视图:主要使用类图和对象图描述系统静态结构,用状态图、顺序图、协作图和活动图描述对象间实现给定功能时的动态协作关系。

行为模型(并发)视图:展示系统动态行为以及其并发性,用状态图、顺序图、协作图、活动图、组件图和部署图描述。

实现模型(组件)视图:展示系统实现的结构和行为描述,用组件图描述。

部署视图:展示系统的实现环境和组件是如何在物理结构中部署的,用部署图描述。

注:

  1. 能用Powerdesigner作图就尽量用,尽量不要使用Visio;
  2. 虽然很多图之间都可以转换,但要自己判断转换后的图是否有意义;
  3. 所有的code都需要用规范的英文名称;
  4. 模型间的关系有依赖、泛化、关联、实现四种。

你可能感兴趣的:(UML_8_使用PowerDesigner进行面向对象分析与UML建模)