中职UML与Rose建模应用子情境2.3课件_第1页
中职UML与Rose建模应用子情境2.3课件_第2页
中职UML与Rose建模应用子情境2.3课件_第3页
中职UML与Rose建模应用子情境2.3课件_第4页
中职UML与Rose建模应用子情境2.3课件_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、(中职)UML与Rose建模应用子情境2.3ppt课件学习情境2:桌面系统建模ATM机UML及Rose建模应用子情境2.2 静态结构建模子情境描述根据子情境2.1的和2.2用例分析分别得到了需求分析表和用例图。现在对该系统的结构特征进行分析,并建立静态结构模型,其任务包括:识别类建立类图 1类 类图描述了系统的静态结构。类图不仅定义系统中的类,表示类的内部结构(属性和操作),还表示了系统中类之间的关系,包括关联(Association)、依赖(Dependency)以及聚合(Aggregation)等。相关知识 (1) 类 类是一组具有相同属性、相同行为、和其他对象有相同关系、有相同表现的对象

2、描述。类是对象的抽象,对象是类的实例。现实世界中所有的事物都具有属性,并且通过特有方式向外界展示自己的行为,以账户为例,具有名字、年龄、性别等属性,账户有存款、取款等行为。 在UML模型图中,类图标如图2-13所示。可以看出,类的描述由三部分组成。上方的“账户”为类名,中间的“name、age、sex”类属性,下方的“opname()”为类操作,各部分之间有一条横线分割开。类图标可以详细描述类的属性和操作。相关知识图2-13 类图标 (2) 属性 属性是类的信息包含,它可以确定并区分对象以及对象的状态。属性一般描述类的某个特征,属性的完整语法为: 可见性属性名多重性:类名=初值特殊串相关知识

3、(3) 操作 操作的完整语法形式为: 可见性操作名参数表:返回类型特殊串 操作分三个部分:操作名、操作参数和操作返回值。参数是操作的输入变元,返回是操作的输出。 (4) 对象 对象是一个类的实例。对象的每一个属性都有具体的值。在图形上,对象图标可表示为如图2-14所示的图形。相关知识图2-14 对象图标 2. 关系 系统一般不会只包含一个类,而往往是由多个类组成的。寻找系统中类之间的相互关系,是建模必不可少、也是非常关键的一个过程。两个类之间的关系一般包括关联、聚合、泛化和依赖,还包括他们的构造型关系。相关知识 (1) 关联 当两个类之间在概念上有连接关系时,类之间的连接称为关联。关联关系描述

4、给定类的对象之间语义上的连接。它提供了不同类的对象可以相互作用的连接。 在UML中,关联用一根实线来表示。关联具有方向性,用箭头表示关联的方向如果关联中不明确指明关联的方向,则默认关联式双向的。如图2-15所示,银行对应账户库,这是一种单向关联;账户在多个ATM机上,ATM机上有多个账户,这是一种双向关联。相关知识图2-15 关联关系 (2)聚合 聚合是类之间的一种整体与部分的关系,也就是说,一个整体类是由多个类组成的。部分类和整体类之间存在的这种关联关系称为聚合。 聚合体现了一种层次结构,整体类位于部分类的上层,多个部分类处于并列的层次。 在UML建模中,聚合图标表示为尾端带一个菱形的单箭头

5、直线,菱形指向整体部分,绘图时从整体类拖动鼠标到部分类。银行类与属性类的关系如图2-16所示。图2-16(b)将聚合表示成为一棵树,只是表示方式不同而已,表示没有任何附加的意义。相关知识 (3)泛化面向对象思想的一个重要概念是继承。继承是在现有类的基础上定义和实现一个新类的技术,刻画了类的一般性和特殊性。被继承的类称为父类或超类,继承的类称为子类。子类将父类作为自己的内容,并加入若干新的内容。子类继承了超过一个以上的父类的属性和操作,称为多继承,否则为单继承。相关知识图2-16 银行类与属性类之间聚合关系 UML将继承描述为泛化关系,即泛化关系是机制中产生的类与类之间的关系。 有时也称泛化为“

6、is a part of”关系:一个事物是另一个事物的种类。泛化意味着子类的对象可以被用在父类可能出现的任何地方,但反过来不是这样。换句话说,泛化意味着子类可以替换父类。子类继承父类的特性,特别是父类的属性和操作。通常,子类除了具有父类的属性和操作,还具有另外的属性和操作。 在图形上,泛化表示一条带有空心大箭头的有向实线,箭头指向父类,如图2-17所示。相关知识图2-17 泛化关系 (4)组成在类的众多关系中,组合关系与聚合关系的异同之处在于组成的关系中,整体类同样都是由部分类组成,但是部分类需要整体类才能存在,当整体类被销毁时,部分类将同时被销毁。这正是组合所表达的内涵:为组成类的内在部分建

7、模。表示组成关系的符号与聚集关系类似,但是端末的菱形是实心的。相关知识图2-15 组成关系示例如图2-18所示,代表数据库的整体类DBEmployee由表TableEmployee和表TableSalory组成,这些关联使用组成关系表示,因为如果数据库不存在类,数据库中的标也不存在了。图2-19 新建类图 在浏览窗口中右键单击“Logical View”(逻辑视图),在弹出的菜单上选择菜单项“New”(新建)下的“Class Diagram”(类图)命令,如图2-19所示。新建类图 步骤1 任务实施图2-20 类图重命名类图重命名 步骤2 如图2-20所示,在用例图“NewDiagram”上单

8、击鼠标右键,在弹出的菜单上单击“Rename”命令,从键盘输入“ATM类”,按回车键后,实现重命名 。 任务实施图2-21 Class工具 如图2-21所示,单击选定该图标,然后移动光标到类图窗口,在适当位置单击鼠标左键,出现名为“NewClass”的类创建类步骤3 任务实施图2-22 类重命名示例 鼠标左键双击“NewClass”类,弹出如图2-22所示的对话框,在标签“Name”对应的文本框中输入“银行”,单击“OK”按钮,即可实现重命名。 对“NewClass”重命名步骤4 任务实施图2-23 创建类 参照步骤3、4,创建其它类,最后得到的效果如图2-23所示。创建其它类步骤5 任务实施

9、图2-24 选择聚合工具 图2-25 聚合示例 如图2-24,从工具箱中选择aggregation工具,组合工具 如图2-25,按“从银行到银行储蓄库”的方向拖动。 创建聚合关系步骤6 任务实施图2-26 ATM机聚合关系 对照步骤7的方法,依次创建其它类间的聚合关系,如图2-26所示。 创建其它类间聚合关系步骤7 任务实施如图2-27所示的对话框,进行设置。图2-27 聚合对话框 更改类组合关系为组成关系步骤8 任务实施 接着移动光标指向页框“Role B detail” 单击鼠标左键,切换至“Role B detail”页框。然后移动光标指向“By Value”选项,如图2-29所示,单击

10、选定该项。图2-29 选定“By Value”选项 最后单击“OK”按钮, 如图2-30所示,注意到空菱形箭头变成了黑色菱形箭头,此时组合关就变成组成关系。 任务实施图2-30 组成关系示例 任务实施 参照步骤9的方法,依次创建其它类间的组成关系,最后得到的效果图如图2-31所示。图2-31 类间的组成关系创建其它类间的组成关系步骤9 任务实施图2-32 选择“New Attribute”命令 鼠标右键单击“帐户”类,对弹出的菜单上选择“New Attribute”(新属性)命令,如图2-32所示,单击鼠标左键。 创建“账户”类的属性步骤10 任务实施 如图2-33(a)所示,出现名为“nam

11、e”的属性,从键盘输入“账户类型:char”(【注意】输入冒号时请切换至英文方式),按回车确认,实现对“账户”类的属性创建,如图2-33(b)所示。 图2-33 创建类属性 (a)(b) 任务实施 鼠标左键单击“类型设置”属性左边的图标,出现如图2-34(a)所示的权限图标列表,在其中选择“带钥匙”的图标,设置类“账户类型”的属性的访问权限为私有的访问权限,如图2-34(b)所示。 图2-34 设置类属性访问权限 (a)(b)设置类属性访问权限步骤11 任务实施 鼠标右键单击“帐户”类,对弹出的菜单上选择“New Operation”(新操作)命令,如图2-35所示,单击鼠标左键。图2-35

12、选择“New Operation”命令 设置“账户”类的操作步骤12 任务实施 如图2-36(a)所示,出现名为“opname()”的操作,从键盘输入“设置类型()”(【注意】输入圆括号时请切换至英文方式),按回车确认,实现对“账户”类的操作创建,如图2-36(b)所示。(a) (b)图2-36 创建类的操作 任务实施 图2-37 操作调用权限示例(a)(b) 鼠标左键单击“设置类型()”操作左边的图标,出现如图2-37(a)所示的调用权限图标列表,在其中选择第一个图标,设置“设置类型()”操作为公有的调用权限,如图2-37(b)所示。设置“设置类型()”操作的调用权限步骤13 任务实施图2-

13、38 ATM机的类图 参照步骤11、12完成其它类的属性的创建与权限设置,参照步骤13、14完成其它类的操作的创建与访问权限的设置,最后得到效果如图2-38所示。ATM机的类图步骤14 任务实施 【提示】 对象的创建依附于“协作图”,也就是就,首先需新建一个“协作图”,然后在打开协作图窗口的前提下,利用工具箱中的工具“Object”才能创建对象及对象图,故此,此处只给出一个对象图创建的示例,如图2-39所示,关于对象的创建与协作图,将在2.3.5任务中再详细介绍。2-39 创建对象示例创建Object(对象)示例步骤15 任务实施知识或技能拓展 许多银行储户组成了储户库。ATM系统包含了许多A

14、TM机。银行储户及ATM机两个类包含哪些属性,哪些操作,它们的可见性及操作的返回类型、参数个数、参数类型从类图上都一目了然。更多的属性及操作都可以一一加上,使这个类图更详细更完整,从而使参与项目的每个成员都能无歧义的明了整个设计的类的结构。同样对于一个真正的银行系统,这个类图过于简单。不同的帐户有不同的余额计算方法,我们可以加上具体的算法。对于不同的帐户可能还有一些它特有的操作,我们也可以加上,通过类图不仅可以使设计者明确的表达自己的设计意图,也能帮组自己整理思路,充实及优化自己的设计。知识或技能拓展 许多银行储户组成了储户库。ATM系统包含了许多ATM机。银行储户及ATM机两个类包含哪些属性,哪些操作,它们的可见性及操作的返回类型、参数个数、参数类型从类图上都一目了然。更多的属性及操作都可以一一加上,使这个类图更详细更完整,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论