GB T 28174.2-2011 统一建模语言(UML) 第2部分:上层结构.pdf

上传人:cleanass300 文档编号:257923 上传时间:2019-07-13 格式:PDF 页数:372 大小:13.63MB
下载 相关 举报
GB T 28174.2-2011 统一建模语言(UML) 第2部分:上层结构.pdf_第1页
第1页 / 共372页
GB T 28174.2-2011 统一建模语言(UML) 第2部分:上层结构.pdf_第2页
第2页 / 共372页
GB T 28174.2-2011 统一建模语言(UML) 第2部分:上层结构.pdf_第3页
第3页 / 共372页
GB T 28174.2-2011 统一建模语言(UML) 第2部分:上层结构.pdf_第4页
第4页 / 共372页
GB T 28174.2-2011 统一建模语言(UML) 第2部分:上层结构.pdf_第5页
第5页 / 共372页
亲,该文档总共372页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、GB ICS 35.080 L77 和国国家标准=1:1工/、中华人民GB/T 28174.2-2011 统一建模语言(UML)第2部分:上层结构Unified modeling language(UML) Part 2 : Superstructure specification 2012-06-01实施2011-12-30发布发布中华人民共和国国家质量监督检验检菇总局中国国家标准化管理委员会一批“叫阳山川v.“. 牛.画一吃草草/智、飞飞伪/赔了酬dwfq 豆远远画忌,;m画. GB/T 28174.2-2011 目次前言.四引言.凹I 范围-2 规范性引用文件3类3.1 概述13. 2内

2、核根图CKernel-the Root Diagram ) 2 3. 3 内核命名空间图CKernel-theNamespaces Diagram) 5 3.4 内核一多重性图CKernel二theMultiplicities Diagram) 13 3. 5 内核表达式图CKernel-theExpressions Diagram) 17 3. 6 内核一约束图CKernel-theConstraints Diagram) 23 3. 7 内核一实例图CKernel一theInstances Diagram) 25 3. 8 内核一类目图CKerneltheClassifiers Diagr

3、am) 28 3. 9 内核一特征图CKernel-theFeatures Diagram) 36 3.四内核一操作图CKernel-theOperations Diagram) 39 3.11 内核一类图CKernel-theClasses Diagram) 42 3. 12 内核一数据类型图CKernel-theDataTypes Diagram) 54 3.口内核一包图CKernelthePackages Diagram) 57 3. 14 依赖CDependencies) 62 3.15接口CInterface)673.16 关联类CAssocia tionClasses) 71 3.

4、17 幕类型CPowerType)723.四图CDiagram).79 4 构件.81 4.1 概述814. 2 抽象语法814. 3 类描述834.4图915 组合结构925. 1 概述925. 2 抽象语法935. 3 类描述965.4 表示选项965. 5图1126 部署1136.1 概述113 r- GB/T 28174.2-2011 4APbnb巧7巧Qdin49qLqu4牟nunu?d勺111iqL?“9印。,Lqd勺t7用/勺ioopbEdED严U141i111i1ti-i1i111441IA1-71】9LqLQU-ri o v nd h-E RU-n o-m m 法径法法-hu

5、法语述u路语述语述ou语述象描形u述象描述象描为述象描抽类图图概抽类图概抽类行概抽类作动用JJJJ动JJJ4活l23通123phvphuRunhU巧7巧i巧口已口nxunynynudioOQd10 交互CInteractions) 273 10. 1 概述27310. 2 抽象语法27310.3 类描述27710.4图2961 状态机30811. 1 概要30811. 2 抽象语法30911. 3 类描述312 11. 4图.349 12 用况CUseCases) 352 12. 1 概述35212. 2 抽象语法35212.3 类描述35312.4图CDiagrams).361 H G/T

6、28174.2-20门目。昌. GB/T 28174(统一建模语言分为4个部分:一一第1部分:基础结构;一一第2部分:上层结构;一)第3部分:对象约束语言(OCL); 一一第4部分:图交换。本部分为GB/T28174的第2部分。本部分按照GB/T1. 1-2009给出的规则起草。本部分参考面向对象工作组(OMG)的统一建模语言:上层结构2.0版。请注意本文件的某些内容可能涉及专利。本文件的发布机构不承担识别这些专利的责任。本部分由全国信息技术标准化技术委员会(SAC/TC28)提出并归口。本部分起草单位:中国电子技术标准化研究所、北京大学、广东省广业信息产业集团有限公司、镇江金铁软件有限公司、

7、广东万维博通信息技术有限公司。本部分主要起草人:高健、江善东、许立勇、周伟强、黄孝和、丁力、杨三宝、吴炯祥、邓海强、胡红林、唐泽欢、麻志毅。阳山_ 句GB/T 28174.2-2011 引统一建模语言CUML)是一种可视化规约语言,用于定义和构造计算机信息系统的制品,并将其文档化。它是一种通用建模语言,可以和所有主流的面向对象和面向构件的方法一起使用,并适用于所有的应用领域和实现平台(如,CORBA,J2EE、.NET等)。O. 1 统一建模语言不同版本之间的关系由于UML的技术较新,所以该国际标准历经多次的版本演化,下面是UML在OMG的演化过程:1997 UMLl. 1 1998 UMLl

8、. 2 1999 UMLl. 3 2001 UMLl. 4 2003 UML2.0 GB/T 28174的本部分正文中的UML均指UML2.0统一建模语言和GB/T281740 0.2 关于对读者的建议需要了解语言中的元模型构造物,利用这些构造物进行元模型扩展或者是构造新的建模语言的用户可阅读基础结构部分CGB/T28174.1)。应用系统建模用户和建模工具制造方都需阅读上层结构(GB/T28174.2)。但要注意,该部分的内容是交叉引用的,可不按目次顺序阅读。对于要精确地对模型进行约束的应用系统建模用户或要支持对象约束语言的建模工具制造方,需阅读对象约束语言部分(GB/T28174.3)。支

9、持在不同的软件工具间平滑且无缝地交换文档的建模工具制造方,需阅读图交互部分。N GB/T 28174.2一2011统一建模语言(UML)第2部分:上层结构1 范围GB/T 28174的本部分规定了用于对各类软件系统进行可视化、详述、构造和文挡化的统一建模语言。本语言也可用于对其他领域进行建模。本部分适用于用户使用的本标准的语言构造物。在严格地遵循了GB/T28174. 1基础结构的基础上,本部分讲述了供用户使用的本标准的元模型,即本标准的语法和语义。2 规范性引用文件下列文件对于本文件的应用是必不可少的。凡是注日期的引用文件,仅注日期的版本适用于本文件。凡是不注日期的引用文件,其最新版本(包括

10、所有的修改单)适用于本文件。GB/T 28174.1 统一建模语言(UML)第1部分:基础结构GB/T 28174.3 统一建模语言(UML)第3部分:对象约束语言(OCL)3类3. 1 概述类(Classe)包含有了与UML基本建模概念相关联的子包,尤其是类以及它们之间的关系。包的结构图1描述了包Classes的子包之间的依赖关系(比如包合并(merge) 、, , , / , , , 、PowerTypes AssociationClasses 、 、L: 图1Classes包的子包及它们之间的依赖关系主GB/T 28174.2-20门考虑到Kernel包大小的,本章按照图划分,此处每张K

11、ernel图都为单独的条。A旦引旦ociationClas日巳S包和Powe盯rTy叩pe臼5包虽然与Kernel图关系紧密,但放在了单独的章条描述(竹3分别见Associa创川tionClass巳5和Powe盯rTyp阴巳5)0 Dependenci巳5包和Interfaces包也在不同的条描述(分别见D巳pend巳nCles和Interface)。在这样的情况下,如果后4个包的任一个增加了对原定义在Kernel包中的类的定义,新增部分的描述将写在原有类的下面。来自本标准的复用包Kernel包描述了UML的核心建模概念,包括类、关联和包。这部分主要是从基础结构库复用的,因为大部分概念与MOF

12、(例如)中的是一样的。Kern巳l包是UML的核心部分,主要重用了Infrastrucb) Ab:ltraclions: : MltiliityExpressioll吨、 / c) / 如图2Core:Constructs 图2由Kernel合井的InfrastructureLibrary的包图中的所有依赖关系都表示包合并。3.2 内核一根图(Kernel-theRoot Diagram ) Kernel包的根图如图3所示。2 G/T 28174.2-20门+ownedComment subsets ownedElement +/relatedElement +annotatedElement

13、 * Elemenf 1 union ( 图3Kcrncl包的根图“ 注释i来自内核)Comment (f附m乒rnel) /fi 注释是附属至IJ一组元素的文本Vr:淫解。飞 / 描述:二:二二注释能悦把各种解释F町甘加主刽;q)元c支七,其本均4利4携带i话昌义d卢川砸4川准但旦是可tJ.切包仔们阳必j闺、油主盯丰模莫者平行i用时酌的,信任何元若崇轩J培者阿以有注释。飞;i l f/J/,/,/J/ ; j/l/ J 属性 ,/; 气/; 斤1刀body: Stri1g寸怕定附注特内窑的串。j/ / / L一-一-_-_ - -annotatedElent :“Qement狲一一一引用被注

14、释的元素。 union, 1.* subsets relatedElement 3.2.1 关联约束无添加的约束。语义已_之二二_-卢/注释对被注解的元素没有增制明语义,其楚为模型的读棋萨鱼有用信息。记法-_之二-.-注释用一个右上有折角的矩形表示。该矩形中包含本注释的内容。注释与每个被注释元素由虚线连接。表示选项如果语境关系明显,或者在图中不重要的话,可以省略连接注释与被注释元素的虚线。例子如图4所示。l、Eta|4lltThis class was added by Alan Wright after meeting with the mission planning team 3 Acc

15、ount 注释的记法图4 GB/T 28174.2-2011 3.2.2 有向关系(来自内核包)DirectedRelationship (from Kernel) J 有向关系表示源模型元素集合与目标模型元素结合之间的关系。描述指示性关系涉及一个或多个源元素以及一个或多个目标元素。有向关系是一个抽象元类。属性无添加的属性。关联a) / source: Element 1. .丁一一-说明有向关系的源。Relationship: relatedElement子集。是一个导出集合。b) /target:Element1丁说明有向关系的目标。Relationship: relatedElement

16、子集。是一个导出集合。约束无添加的约束。语义有向关系没有特别的语义,它的各种子类将添加适用于它们表示的概念的语义。记法有向关系没有一般的记法,它的子类将定义自己的记法。在大多数情况下,是从源到目标的直线及其变体。3.2.3 元素(来自内核包)Element (from Kernel) J 元素是构成模型的要素,它具有拥有其他元素的能力。描述元素是没有父类的抽象元类。在Infrastructure库中是所有元类的共同父类。元素跟自己本身有派生组合关联,以支持元素拥有其他元素的一般能力。属性无添加的属性。关联a) ownedComment: Comment普一一该元素拥有的注释。Element:

17、ownedElement子集。b) / ownedElement: Element瓣一一该元素拥有的元素。是一个派生联合。c) / owner: Element 0. . 1J一一拥有该元素的元素。是一个派生联合。约束a) 一个元素不可以直接或间接拥有本身;not self. allOwnedElements()一includes(self) b) 一个被拥有的元素应有一个所有者。self. mustBeOwnedOimplies owner -notEmptyO 俨UAWWhw句附加操作a) allOwnedElements()返回一个元素所有的直接或间接拥有的元素;Element: : a

18、llOwnedElements() : Set( Element) ; allOwnedElements = ownedElement一union(ownedElement-collect(e I e. allOwnedElements0 ) b) mustBeOwned()表明该类型元素是否应有一个所有者,不要求所有者的元素的子类应重载这一操作。Elem巳nt:mustBeOwned() : Boolean; 4 GB/T 28174.2一2011mustBeOwned = true 语义元素的子类提供了适用于它们表示的概念的语义。元素的注释没有添加语义,但是可以表示给模型读者的信息。记法元

19、素没有一般的记法。元素的子类定义了自己的记法。3.2.4 关系(来自内核包)Relationship C from Kernel) 关系是一种说明元素之间某些关系的抽象概念。描述关系涉及一个或多个相关的元素。关系是一个元类。属性元添加的属性。关联/ relatedElement: Element 1. . * 一一-说明由该关系相联系的元素。这是-个派生联合。约束无添加的约束。语义关系没有特定的语义。关系的各种子类会添加适用于它们所表示概念的语义。记法关系没有一般的记法,关系的特定子类会定义它们自己的记法。在大多数情况下,记法为相关元素之间的直线及其变体。3.3 内核一命名空间图CKernel

20、-theNamespaces Diagram) Kernel包的命名空间CNamespace)图如图5所示。要找到图中引用的元类:a) 见“方向性关系气b) 见“元素“;+/member union +/namespace +/ownedMember 01 union, union, subsets owne叶subsetsmember, subsets ownedEJement + importingNamespa臼1 subsets四川出subsetsownedElenent ., SU国etsowner +packagelmpo同图5Kernel包的命名空间图5 提GB/T 28174.

21、2-2011 c)见“包“。3.3. 1 元素引入(来自内核包)ElementImport (from Kernel ) 元素引人用于标识另外一个包中的元素,并且允许不加限定符、仅使用其名称来引用该元素。描述把元素引入定义为一种可打包元素和引人命名空间之间的有向关系。可打包元素的名称或者它的别名被添加到所要引人它的命名空间中。还可以控制二个被引入的元素是否可以被进一步引人。属性a) b) 关联a) b) 约束a) b) 附加操作语义El ge / 、U凸1+t,;c;h;l;t“一扑n茧,1、1;,.n.山.f-ft1;,i;ltlT -=-r y卢Hl-ta袖马|入开素的可肌件也么“;rou

22、blic,也生没有向/ / self. impmtedElerr町It.可isibiJity.notEn;pty ( implies seJ. itnI川?tdElem(tlt. yijsibility # pl,lblic、/if self. ali沁吨沁Rmpty()then self. alia趴丁、else “之self. importedE注计时.na高二三:一一:二endif 士-.元素引人将可打包元素的名称从一个包中添加到引人命名空间里。作为引用,意味着不能向元素引用本身增加特征,但可以在被引用的那个命名空间里修改所引用的元素。元素引入用于选择性地引人单个元素而无须依靠整个包。如

23、果在引人命名空间中发生外部名称(在封闭的命名空间里定义的元素可以在封闭的命名空间中不加限定的引用)命名冲突的情况,外部名称被引人元素隐藏,且用未限定的名称标识所引人元素的名古称,可以通过限定名称访问外部名称。如果由于元素引人或包引入导致多个同名元素被引入到一个命名空间中,为了使用应该对引人的元素的名称加以限定,否则不可以把其添加到命名空间中。如果引入元素跟引入命名空间本身拥有的元素同名,也应限定所引人元素的名称。被引入的元素,还可以进一步通过元素或成员引入被其他的命名空间引人。6 GB/T 28174.2-20门!1alifiedNameas Time。然而,如果图7使用别名的元素引入的例子3

24、.3.2 命名元素(来自内核包,Dependencies包)N amedElement (from Kernel , Dependencies) 命名元素是指模型中拥有名称的一个元素。描述命名元素表示的是可拥有名称的元素。名称用来在定义该元素的命名空间中识别该元素。命名元素还有一个限定的名称,用于在嵌套的命名空间层次中惟一地识别该元素。命名元素是一个抽象元类。7 3马在_. h唱GB/T 28174.2-2011 属性关联a) name:String 0 1J一一被命名元素的名称。b) /qualifiedName:String 0 1J一一用于在嵌套命名空间层次内识别命名元素的名称。它由从嵌

25、套的命名空间的根的名称开始一直到该命名元素本身的名称为止所有的名称构成。是一个派生属性。c) visibility: VisibilityKindO. . 1J一一决定了在整个模型中不同命名空间里该命名元素的可见性。包依赖(见“依赖“)。d) supplierD巳pendency:Dependency樨一一表明引用提供者的依赖。巳)clientDependency: Depende叫,樨一一表明引用客户的依赖。/namespace:NamespaceO. .1J一一详述拥有该命名元素的命名空间。Element: owner子集。是一个派生联合。约束a) 如果元素本身没有名称,或者包含命名空间之

26、一没有名称,则没有限定名;(self. name一isEmptyOorself. allNamespacesO一.select (ns I ns. name一isEmpty()一notEmpty() ) implies self. qualifiedName一isEmpty()b) 元素本身有名称,且每个命名空间都有名称,则限定名由所有命名空间的名称构成;(self. name - notEmpty() and self. aIlNamespaces()一.select (ns I ns. name一isEmpty() isEmpty() implies self. qualifiedName

27、 = self. aIINamespaces()一iterate(ns: Namespace; result: String = self. name I ns. name -union(self. separator() )-union(result) c) 如果一个命名元素并不为任何一个命名空间所有,则它的可见性为空。namespace -isEmpty() implies visibility -isEmpty() 附加操作8 a) aIlNamespaces()返回命名元素所在的由内向外的命名空间序列;NamedElement: : aIlNamespaces() : Sequence

28、(Namespace); allNamespaces if self. namespace -isEmptyO then S巳quence else self. name. allNamespaces()一prepend(self.namespace) endif b) i巴sD趴ist刊tir吨Ul臼shableFrom丑10表明两个命名元素是否能逻辑共存于一个命名空间中。缺省情况下,两个命名元素可被辨识:1) 它们是不相关的类型;2) 它们是相关类型但是名称不同。NamedElement: : isDistinguishableFrom( n: NamedElement, ns: Name

29、space) : Boolean; isDistinguishable if self. oclIsKindOf(n. oclType)or n. oclIsKindOf(self. oclType) then ns. getNamesOfMember ( self)一intersection (ns. getNamesOfMember (n)一isEmpty( ) else true GB/T 28174.2-2011 endif separatorC)返回构造限定名时候使用的分隔符。NamedElement: : separatorC) : String; separator = c) 语

30、义name属性用于在其名称是可访问的命名空间里标识命名元素。注意该属性有0 1J的多重性,以保证没有名称的可能性(这与名称为空不同)。可见性属性提供了这样的含义:在模型的不同命名空间里,约束对命名元素的使用。要把它与引人和泛化机制一起使用。记法元。命名空间(来自内核包)Namespace C from Kernel) J 命名空间是模型中的一个元素,它包含一组可用名称识别的命名元素。描述命名空间是能够拥有其他命名元素的命名元素。每个命名元素至多只能为-个命名空间所有。命名空间提供了一种靠名称鉴别命名元素的手段。命名空间里靠名称鉴别的命名元素可以是直接属于该命名空间的,也可以是通过其他方法(比如

31、引人或者继承),加入到该命名空间里来的。命名空间是一个抽象元类。命名空间可以包含约束。约束不仅可以作用于命名空间本身,还可以作用于命名空间中的元素。命名空间可以引入一个包中的单个甚至所有成员,因此可以在引人命名空间中不加限定地引用命名元素。在冲突的情况下,则应通过限定名或别名消除歧义。属性无添加的属性。关联3.3.3 Element: : ownedElement 子集。/importedMember: PackageableElement 讲一一一引用为该命名空间的成员的可打包元素,作为包引人或成员引人。Nmesace: member子集。/ member: NamedElement 侨一一

32、命名空间内可识别的命名元素集合,可以是空间本身包含的,也可以是通过引人或继承等加入的。这是一个派生联合。/ownedMember: NamedElem巳nt赘一一出命名空间拥有的命名元素集合。Element: ownedElement和Namesce: member子集。是一个派生联合。ownedRule: Constraint得一一指定命名空间拥有的一组约束。Namesace: ownedMember elementImport: ElementImport * J一一命名空间拥有的引人元素。a) ) hu c) d) Element , , 子集。packageImport: Packag

33、eImport 祷一对由命名空间拥有的包引入的引用。ownedElem ent子集。e) f) J可holi-aaassa-gyd一个命名空间中的所有成员在其中都是可识别的;membersAreDistinguishableC) importedMember性质是由元素引入和包引人派生的。s巳lf.importedMember一includesAll (self. importedMembers C self. elementImport. import edElement. asSet()一union (self. packageImport. importedPackage一collect

34、 C p I p. visible 9 a) 、,ED 约束GB/T 28174.2-2011 Members() ) 附加操作a) getNamesOfMember()返回一个成员在命名空间中的所有名称。一般而言,如果一个成员用不同的别名被引人多次,那么它在命名空间中将有多个名称。i亥操作考虑引入,返回元素在引人命名空间中的名称,这分三种情况:1) 属于该空间;2) 不属于该空间而是被单拙引用;3) 所在的包被引人。N amespace: : getNamesOfMember( element: NamedElement) : Set (String) ; 、,。select(ei I ei

35、. import-c) forAll(mem I mem. imp. isDistinguishableFrom( mem , self) d) excl udeCollisions()排除了在命名空间中不可识别的可打包元素。Namespace: : excludeCollisions ( imps: Set ( PackageableElements ): Set ( PackageableEle ments) ; excludeCollisions= imps一reject(impllimps. exists(imp21 not impl. isDistinguishableFrom (i

36、mp2 , self) i吾义命名空间提供了容纳命名元素的一个容器,提供了名称冲突的解决方法,如namel: : name2 : : name30用形如N:的复合名称,mernber关联识别命名空间N中的所有命名元素。注意这与在N中不用限定名的名称不同,因为该集合还包含封闭命名空间中的非隐藏成员。10 GB/T 28174.2-20门一个命名空间中的命名元素根据不同规则与其他命名元素区别。默认的规则是,如果两个元素类型不相关,或者类型相关但不同名,则它们是不同的元素。特定情况下可以覆盖该规则,比如根据签名识别的操作。命名空间的ownedRule约束表示用于被约束元素的良构规则。在判定模型元素是

37、否是良构的时候,计算这些规则。i己法元添加的记法。具体的子类定义自己特定的记法。3.3.4 可打包元素(来自内核)PackageableElement (from Kernel) J 语义关联约束语义无添加的语义。a) importedPackage: Package 1J一一成员被引人命名空间的包。Di时ctedRelatonshi. .阳rget子集。b) importingNamespace: Namespace 1J一从包中引入成员的命名空间。DirectedRelationsh i户: source和IElement: :owner子集。a) 包引人的可见性要么是public,要么是

38、privateoself. visibility :# public or self. visibility = :# private 包引人是包和引人命名空间之间的一种关系,表明引人命名空间将该包的成员名称加入到自己的命名空间中。从概念上讲,包引入等同于引人每个单独成员,除非已经有了单独定义的元素引人。 h屿, 腼GB/T 28174.2-2011 记法包引入用带箭头的虚线表示,箭头从引人命名空间指向被引人的包。在箭头附近加关键词表明的是包引入的类型。预定义的关键词是(import,用于公共的包引人,(access用于私有的包引人。表示选项除了带箭头的虚线,还可以用惟一识别被引人元素的文本表

39、示元素引人,并将此文本置于花括号中,跟在命名空间名称的下面或后边。文字表示如下:import 或access 例子图8表示了几个包引入。Types中的元素被引入到ShoppingCart中,又更进一步被引入到WebShop中。而Auxiliary中的元素则只能从ShoppingCart中访问,如果不加限定词WebShop是不能引用的。-,| L r、.、|Typ前十三二ShoppingCart -,、-_ -_ 、-、_ I I 、- . 1胁bShopI 图8公开和私有包引入的例子3.3.6 可见性类型(来自内核包)VisibilityKindC from Kernel) 可见性类型是枚举类

40、型,用于定义模型元素的可见性的文字。描述可见性类型是以下文字值的枚举:a) public; b) pnvate; c) protected; d) package。附加操作语义a) bestVisibilityO检查一组仅包括public和pnvate的可见性类型,并且返回可见性public作为首选。VisibilityKind: : bestVisibilityC vis: SetC VisibilityKind) : VisibilityKind; pre: not vis一includesC# protected)and not vis一includesC# package) bestV

41、isibility = if vis -includesC # public)then # public else # private endif 可见性类型用于在和Imports,Generalizations和Package等包关联时指定可见性。具体语义与这些机制相关。如果包的可见性脱离这些包而使用,这些文字值将表示其他意义,或者根本没有意义。a) public元素对所有有权访问它所属的命名空间的元素都是可见的;b) private元素仅在它所属于的命名空间内部可见;c) protected元素对与它所属于的命名空间具有泛化关系的元素可见;12 GB/T 28174.2-20门packag

42、e元素被非包的命名空间拥有,对同一包(作为它的拥有命名空间)中的元素可见。只有不为包所拥有的命名元素才能被设定为package可见性(给其他拥有元素适当的可见性)。任何可见性为package的元素对同一个最小闭包中的元素可见,对该最小闭包之外的元素不可见。在一个命名元素具有多重可见性的情况下,比如被多次引人,public可见性覆盖pnvate可见性。也即,如果一个元素被两次引入到同一命名空间中,一次用public引人,一次用private引人,其结果还是public的。d) 内核一多重性图(Kernel-theMultiplicities Diagram) 3.4 Kernel包的多重性图如图

43、9所示。Element i MultiplicityElement ValueSpecification +upperValue 01 subsets ownedElement +ownerUpper subsets owne叶01 +口wnerLowersubsets owner isOrdered: Boolean =false isUnique:Boolean=true jupper:UnlimtedNatural 01 jlower:lnteger 01 +lowerValue 01 subsets ownedElement 01 +type 01 Kernel包的多重性图图9要找到图中引用的元类:见“类目“;见“元素“;见“值规约“。a) 、,ED c) (来自内核包)MultiplicityElement (from Kernel) 多重性是定义为一个从非负整数下界到上界(可能是无穷)的区间。多重性元素内嵌该信息,以指定该元素实例的数目的市围。描述多重性元素是一个抽象元类,包含了可选的属性,来定义多重性的边界。多重性元素还包含了对元素实例化值是有序的还是惟

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 标准规范 > 国家标准

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1