您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > Rose类图及其应用.
第4章类图及其应用《RationalRose2003基础教程》配套电子教案内容基本概念类图操作类规范与类的应用属性规范与应用操作规范与应用关联规范与应用泛化规范与应用依赖规范与应用聚合规范与应用逻辑包规范与应用引言类图是逻辑视图的重要组成部分,用于对系统的静态结构建模,涉及到具体的实现细节。在系统分析阶段,类图主要用于显示角色和提供系统行为的实体的职责;在系统设计阶段,类图主要用于捕捉组成系统体系结构的类结构;在系统编码阶段,根据类图中的类及它们之间的关系实现系统的功能。类图的地位和作用1.1类–定义•类是一组具有相同属性、相同行为、和其他对象有相同关系、有相同表现的对象描述•类具有属性和操作–图形表示•类名、属性、操作•可以简化表示1基本概念1.1类–属性•一般描述类的某个特征,可以确定并区分对象以及对象的状态•完整的语法表示–[可见性]属性名[多重性][:类型]=[初值][{特殊串}]–操作•操作是与类相关联的行为,表示类提供的服务•完整的语法表示–[可见性]操作名[(参数表)][:返回类型][{特殊串}]1基本概念1基本概念1.1类–对象•对象是一个类的实例,对象的每一个属性都有具体的值•图形表示–John是对象名,Person是类名•对象在交互图和状态机中使用–接口•一组可重用的操作,描述类的部分行为•图形表示–两种表示方法John:Person1基本概念1.2关系–1)关联(association)•定义–两个类在概念上有连接关系时,类之间的连接称为关联;提供了不同类的对象可以相互作用的连接•图形表示–用一根连接类的实线表示,用箭头表示关联的方向;如果不明确指明方向,则默认关联是双向的CarPersonTeacherStudent1基本概念1.2关系–2)聚合(aggregation)•定义–类之间的一种整体与部分的关系–体现了一种层次结构,整体类位于部分类的上层,多个部分类处于并列的层次•图形表示–尾端带一个菱形的单箭头直线–菱形指向整体部分1基本概念1.2关系–3)泛化(generalization)•定义–泛化关系是继承机制中产生的类与类之间的关系–“isapartof”关系:一个事物是另一个事物的种类•图形表示–一条带有空心大箭头的有向实线,箭头指向父类1基本概念1.2关系–4)依赖•定义–两个元素之间的一种关系,其中一个元素(提供者)的变化将影响另一个元素(客体),或向它提供所需信息–显示一个类引用另一个类•图形表示–用两个模型元素之间带箭头的虚线表示,箭尾处的模型元素(客户)依赖于箭头处的模型元素(提供者)1基本概念1.2关系–5)实现•定义–类和接口之间的关系是实现关系,表示类实现接口提供的操作显示一个类引用另一个类•图形表示–因接口的表示方法而异2.1创建新的类图–步骤•右单击浏览器中的逻辑视图名称“LogicalView”;•单击快捷菜单中的NewClassdiagram;•输入新类图的名称。2类图操作2.2删除类图–删除类图时,类图中的类并不删除,它们仍然在浏览器和其它模型图中–要删除一幅类图:•右单击浏览器中的类图;•单击快捷菜单中的Delete。2类图操作2类图操作2.3类图工具箱–常用工具如图–可以定制工具箱•右单击工具箱;•单击快捷菜单中的“Customize……”;•在弹出的“自定义工具栏”对话框中,选择相应的工具图标,然后单击“添加”或“删除”将选定的工具图标添加至窗口的工具箱中,或从工具箱中移走。3类规范与类的应用3.1类规范–8个标签•General标签•Detail标签•Operation标签•Attributes标签•Relations标签•Components标签•Nested标签•Files标签3类规范与类的应用3.1类规范–1)General标签•名称(Name)•构造型(Stereotype)•输出控制(ExportControl)选项含义Public系统中所有其它类都能访问这个类Protected这个类可以在嵌套类、友元或同一个类中访问Private这个类可以在友元或同一个类中访问Implementation这个类只能由同一包中的其它类访问3类规范与类的应用3.1类规范–1)General标签•构造型(Stereotype)构造型Actor参与者boundary边界Businessactor业务参与者Businessentity业务实体Businessworker业务工人Control控制Domain域Entity实体Interface接口Table表格View视图3类规范与类的应用3.1类规范–2)Detail标签•多重性(Multiplicity)•存储需求(Space)•并发性(Concurrency)类型描述Sequential默认设置。当只有一个控制线程时,类能正常工作;有多个控制线程时,不能保证类能否正常工作Guarded存在多个控制线程时,类正常工作但不同种的类应相互协作,保证不会互相干扰Active类有自己的控制线程Synchronous存在多个控制线程时,类的正常工作不需要与其他类相互协作,类本身能处理互斥情形3类规范与类的应用3.1类规范–3)Attributes标签–4)Operation标签–5)Relations标签–6)Nested标签•创建嵌套类–右单击标签中任一空白处,从快捷菜单中选择Insert,输入嵌套类名称;–按一般方法创建父类和嵌套类:在浏览器中,将嵌套类拖放到父类。3类规范与类的应用3.1类规范–7)Components标签•显示用于实现系统中类的构件•复选标记框“Showallcomponents”表示是否要显示模型中的所有构件;如果选中该标记,则显示系统中的所有构件;否则,只显示实现所选类的构件•显示构件时,同时还显示构件所属的包,以及实现所采用的编程语言3.2类的操作–添加一个类•单击工具箱中的类图标;•在模型图任一位置单击,新类取名为NewClass;•输入新的类名。–删除一个类•单击模型图中要删除的类;•选择EditDeletefromModel。3类规范与类的应用4.1属性规范–3个标签:•General标签•Detail标签•DDL标签4属性规范与应用4属性规范与应用4.1属性规范–1)General标签•属性数据类型(Type)•属性构造型(Stereotype)•属性的初值(Initial)•输出控制(ExportControl)选项含义Public公共属性。任何其它类都可以浏览或修改属性的之值Protected保护属性。类及其派生类可以访问该属性Private专用属性。其他类不能访问该属性Implemented实现属性。只能被同一包中的类访问可见性Rose图注UML图注Public+Protected#Private-Implemented无4.1属性规范–2)Detail标签•属性控制(Containment)–Byvalue:按数值–Byreference:按引用–Unspecified:未指定•静态属性(Static)•派生属性(Derived)4属性规范与应用4属性规范与应用4.2属性操作–增加一个属性•右单击浏览器或类图中的类,选择NewAttribute,用Name:DataType=InitialValue格式,输入属性名。或者,•打开类的规范窗口,选择“Attributes”标签,右单击属性区的任何位置,在快捷菜单中选择Insert。–删除一个属性•右单击浏览器某个属性,从快捷菜单选择Delete。或者,•选择类图中的某个属性,用退格键删除模型图中的属性名、数据类型和初始值,单击模型图中任一位置,确认删除。或者,•打开属性类的类规范窗口,选择“Attributes”标签,右单击要输出的属性,从快捷菜单中选择Delete,确认删除。5操作规范与应用5.1操作规范–1)General标签•返回值的类型(Return)•构造型(Stereotype)•输出控制(ExportControl)可见性含义Pulic操作可以被其它类访问。Protected操作可以被子类、友元类或本身访问Private操作可以被友元类或本身访问Implemented操作是公开的,但只被同一包中的类访问5操作规范与应用5.1操作规范–2)Detail标签•操作变元(argument)•操作协议(Protocol)•操作限制(Qualification)•内存长度(Size)•时间(Time)•并发性(Concurrency)–Sequential:只有一个控制线程时,操作正常工作。–Guarded:存在多个控制线程时,不同线程的类相互协作,操作可正常工作。–Synchronous:存在多个控制线程时,操作可正常工作。5.1操作规范–3)异常(Exceptions)标签•操作可抛出的异常•通过其中的4个按钮添加、删除和上、下移动异常5操作规范与应用5.1操作规范–4)前置条件(Preconditions)标签•前置条件(Preconditions)–指定操作运行之前应满足的条件,即操作的入口行为,通常是不等式•交互图(InteractionDiagram)–说明操作语义的交互图5操作规范与应用5.1操作规范–5)语义(Semantics)标签•语义(Semantics)–指定操作的工作–在文本框中用伪代码描述操作逻辑•交互图(InteractionDiagram)–说明了操作语义的交互图5操作规范与应用5.1操作规范–6)后置条件(Postconditions)标签•后置条件(Postconditions)–指定操作运行之后要符合的条件,即操作的出口行为,通常是不等式•交互图(InteractionDiagram)–说明操作语义的交互图5操作规范与应用5.2操作应用–增加一个操作•类似于添加一个属性的操作–删除一个操作•类似于删除一个属性的操作5操作规范与应用6.1关联规范–1)General标签•关系名(Name)–一个动词或动词短语,描述关系的作用,是可选的–关系名在关系线上斜体显示6关联规范与应用6.1关联规范–1)General标签•角色(Role)–描述类在关系中的作用–通常是名词或名词短语,显示在起这个作用的类旁边–角色名前带有一个加号“+”,6关联规范与应用6关联规范与应用6.1关联规范–2)Detail标签•链接元素(LinkElement)–链接元素也称为关联类,可以放置与关联相关的属性•使用限制(Constraints)–限制是必须符合的条件。在Rose中可以设置关系的限制条件–输入的限制条件在生成代码时成为说明语句6关联规范与应用6.1关联规范–3)RoleAGeneral和RoleBGeneral标签•Rose在生成代码时要给关联建立一个属性•ExportControl字段设置该属性的可见性可见性含义Public公共属性。任何其它类都可以访问或修改属性的之值Protected保护属性。类及其派生类可以访问该属性Private专用属性。其他类不能访问该属性Implemented实现属性。只能被同一包中的类访问6关联规范与应用6.1关联规范–4)RoleADetail和RoleBDetail标签•多重性(Multiplicity)–表示关联中一个类的几个实例与另一个类的一个实例相联系•包容(Containment)–设置关联属性是按值还是按引用包容•Static–类所有的实例共享的属性•Friend–表示客户类能访问提供者类的非公共属性和操作选项含义Byvalue按数值。属性放在类中Byreference按引用。属性放在类外,类指向这个属性Unspecified未指定。还没有指定控制类型6关联规范与应用6.2Key/Qualifier规范–定义•即限定词,。在一对多的关联中,索引范围很广,使用限定符可以缩小关联的范围•按下面的步骤可以打开Key/Qualifier规范窗口:–双击关联,打开关
本文标题:Rose类图及其应用.
链接地址:https://www.777doc.com/doc-4935662 .html