1、ICS 35.080 L77 道B和国国家标准11: -、中华人民GB/T 25644-2010 信息技术软件工程可复用资产规范Information technology一Software engineering-Reusable asset specification 2010-12-01发布2011-04-01实施数E马防伪中华人民共和国国家质量监督检验检疫总局中国国家标准化管理委员会发布GB/T 25644-2010 目次前言.1 1 范围2 规范性引用文件3 术语和定义、缩略语.1 3. 1 术语和定义3.2 缩略语.34 约定4. 1 文档约定-4.2 UML建模约定5 可复用资产
2、.4 5.1 导引45.2 RAS的基本模型45.3 默认剖面5.4 默认构件剖面.18 5.5 默认WebService剖面21附录A(资料性附录资产的打包.24 A. 1 资产的打包方式.24 A.2 . ras文件格式.25 附录B(规范性附录)默认剖面的XMLSchema . 26 参考文献.34 目。吕本标准的附录A为资料性附录,附录B为规范性附录。本标准由全国信息技术标准化技术委员会提出并归口。GB/T 25644-2010 本标准主要起草单位:上海计算机软件技术开发中心、上海宝信软件股份有限公司、万达信息股份有限公司、上海市软件行业协会。本标准主要起草人:宗宇伟、张敬周、葛孝望、
3、冯惠、郑红、丛力群、张纯、朱三元、李光亚、欧阳树生、钱乐秋、王二卫。I GB/T 25644-2010 信息技术软件工程可复用资产规范1 范围本标准规定了可复用软件资产的结构、内容和描述方法。本标准适用于可复用软件资产的设计、开发、管理、组装、使用等活动,并适用于从事可复用软件资产管理、开发以及实施基于资产开发方式的各类软件组织。2 规范性引用文件下列文件中的条款通过本标准的引用而成为本标准的条款。凡是注日期的引用文件,其随后所有的修改单(不包括勘误的内容)或修订版均不适用于本标准,然而,鼓励根据本标准达成协议的各方研究是否可使用这些文件的最新版本。凡是不注日期的引用文件,其最新版本适用于本标
4、准。GB/T 18793-2002信息技术可扩展置标语言(XML)1. 0 ISO/IEC 19501-2005信息技术开放分布处理统一建模语言(UML)(版本1.4. 2) 3 术语和定义、缩略语下列术语和定义、缩略语适用于本标准。3. 1 术语和定义3. 1. 1 制品artifact 在软件开发或使用过程中所形成的一种信息的物理件。一个物理上的制品对应于文件系统中的一个文件,一个逻辑上的制品是文件系统中若干相关文件的一个集合。制品的实例如模型、实例或二进制可执行文件等。3. 1. 2 问题problem 在软件开发生存周期中的一个障碍。要满足目标应用的需求,则必须解决(或者避免)开发生存
5、周期中遇到的问题。一个可复用资产完全或部分的解决了软件开发生存周期中遇到的问题。3. 1. 3 资产asset 资产是解决软件开发中某问题的一组制品集合,该问题可与系统制品的演化有关,或直接与所开发系统的领域问题有关。本标准中将资产的制品集合称为解决方案。3. 1.4 可复用资产reusable asset 可复用资产是对重复出现的问题的解决方案。可复用资产是基于复用思想开发的资产。3. 1.5 白盒资产white box asset 资产的一种类型,其内部全部可见,并可供查看或修改。3.1.6 黑盒资产black box asset 资产的一种类型,该类型资产的内部制品对消费者来说是不可见的
6、。1 GB/T 25644-2010 3.1.7 净盒资产clear box asset 资产的一种类型,该类型资产的内部制品对消费者是可见的,但消费者不能对其进行任何方式的改变或修正。对外显示资产内部的目的是帮助消费者理解该资产,以便更好地使用和调试。3. 1.8 灰盒资产gray box asset 资产的一种类型,其内部一部分对用户是隐蔽的,另一部分对用户是可见的、并可被更改的。灰盒资产的可变性介于黑盒资产和白盒资产之间。3.1.9 构件component 资产的一种类型。构件是软件系统中具有相对独立功能、可以明确辨识、接口由契约指定、和语境有明显依赖关系、可独立部署的可组装软件实体。3
7、. 1. 10 基于资产的开发(ABD)asset based development (ABD) 软件开发过程中的一种方法。基于资产的开发是一套促进资产复用的过程、活动和标准,它没有涵盖软件开发过程的全部。基于资产的开发以体系结构为中心。3. 1. 11 提取harvest 一个ABD活动,用于从已有的、未被废弃的系统中创建资产。提取的执行者是资产生产者。提取活动首先是在已有系统中寻找那些有复用价值的组成元素,然后经少量加工将其转换为可复用资产。3. 1. 12 应用资产applyasset 消费者使用可复用资产解决一个问题的ABD活动,资产的应用通常要遵循资产规范中的用法指南。3. 1.
8、13 生产者producer ABD中的一个角色,负责可复用资产的创建。生产者可从现有系统中提取资产,或者针对重复出现的问题,从零开始开发可复用资产。3. 1. 14 消费者consumer ABD中的一个角色。消费者是个应用可复用资产的软件开发者。3. 1. 15 目标应用target application 带有可复用资产可解决的问题的一个应用或系统。可复用资产的消费者将该资产应用到目标应用中。3. 1. 16 核心RAScore RAS 可复用资产规范(RAS)的基本描述模型。3. 1. 17 剖面profiIe 一组语义约束和一个XMLSchema的集合,用以验证一个实体描述文挡。剖面
9、定义了特定类型资产的实体描述文档中哪些信息是必需的,哪些是可选的。3. 1. 18 实体描述manifest 描述可复用资产的结构和组成等信息的一个元信息文档,该文档包含了特定资产的具体描述信息。2 GB/T 25644-2010 按本标准打包的每个资产必须有一个实体描述文档,它是一个经该资产类型的剖面验证有效的XML文档。3. 1. 19 描述子descriptor 描述资产信息的一个键/值对。描述子名称是键,通常是人易理解的一两个关键词。值是人易理解的一个句子或一两段文字。3. 1. 20 描述子组descriptor group 一组相关的描述子。3. 1. 21 可变点variabil
10、ity point 制品中的一个点,当该制品所属的资产被应用于目标应用时,可在该点上进行修改或定制,以满足目标应用的个性化需求。3. 1. 22 周境context 一个框架性的引用或概念上的边界范围,为与其相关的事物确定含义。3. 1. 23 包package组成资产的所有制品(文件)的集合。一个包可以实现为文件系统中的一个目录,或者一个存档文件。3. 1. 24 根目录root context 一个资产包的顶级目录,它定义了一个资产所有制品的边界(在允许以URL方式链接制品时除外)。3. 1. 25 工具处理tooling 用于描述对RAS实体描述文档和RAS资产包进行处理和管理的软件程序
11、的一个通用术语。Rational XDE就是一个可创建和使用RAS资产的商业化工具的实例。3.2 缩略语ABD 基于资产的开发(Asset-BasedDevelopment) RAS 可复用资产规范(ReusableAsset Specification) UML 统一建模语言(UniformModeling Language) XML 可扩展置标语言(EXtensibleMarkup Language) URL 统一资源定位符(UniformResource Locator) 4 约定下列约定适用于本标准。4. 1 文档约定文档约定如下za) (描述子-组元素:带有定界符()的术语代表一个X
12、MLSchema中的元素;b) 届世z斜体加粗的术语是一个元素的属性;c) 所有的节点和属性名称只能用小写字母表示;d) 如果用多个单词作为一个节点或属性的名称,在字和字之间要使用连字符,比如artifact-type。4.2 UML建模约定UML建模约定如下:a) 类名一一类名由大写字母开头,用连字号(-)连接多个独立的单词;3 GB/T 25644-2010 b) 关联、标识符、容器一一所有的关联被声明为传值(by-value)关联。这表示被包含的类是一个XMLSchema中的子元素。因此,在需要保持持久性关联的地方,拥有者类要包含一个标识符(I)属性;c) 关联的基数一一类之间的基数使用
13、UML的表示风格下限上限来表示。在上限是无限的情况下,使用祷表示zd) 属性一一属性名与类名使用同样的规则,以小写字母开头,用连字号_,连接多个独立的单词。属性类型使用与编程语言元关的方式来声明,使用小写字母,例如string,int。属性的必选/可选信息在属性的文档窗口中获取,值可以是required,optional。属性的可见性在默认情况下被声明为私有的,但这些语义并不直接转换到XMLSchema中。5 可复用资产5. 1 导引可复用软件资产(简称资产)提供了在一个给定的周境下对某问题的解决方案(solution)。图1是可复用资产的一个抽象描述。资产可有可变点,资产的消费者可在可变点上
14、进行客户化。资产具有用于指导该资产如何使用的规则。明费时解时吨以际O部 使用规则图1资产的基本概念资产是一组制品的集合,制品可以是软件开发生存周期中的任何工作产品,例如需求文档、模型、源代码文件、部署描述子、测试用例或脚本等。5.2 RAS的基本模型5.2. 1 导引一个资产蕴含了丰富的信息,不同类型的资产有不同的规约要求。本标准提供了规范各类资产的一个核心模型,在此称之为核心RAS,并给出了基于核心RAS的扩展机制,基于核心RAS及其扩展机制来支持对特定类型资产的规约。本标准给出了针对两种资产类型的扩展:默认构件剖面和默认WebService剖面(详见5.4和5.5)。本条主要阐述核心RAS
15、及剖面扩展机制。5.2.2 核心RAS模型及扩展机制核心RAS是用于规范各类资产的一个核心模型,定义了用于规范各类资产的基本组成及其之间的关系。图2左边部分标识了核心RAS的一些主要部分,左图的顶端是一些资产级的属性。图2右边部分显示了核心RAS的主要组成部分之间的关系。核心RAS由4个主要部分组成:a) 分类部分(Classificationsection),提供了一组用于资产分类的描述子以及与资产相关的周境描述;b) 解决方案部分(Solutionsection) ,描述资产的制品;c) 用法部分(Usage Section) ,包含安装、定制和使用资产的规则;d) 相关资产部分(Rela
16、ted-Assetssection) ,描述了与其他资产的关系。4 周境领域、开发、泌试部署.噩噩噩噩噩嚣蹋噩噩噩解决方案制品-需求模型、代码马测试、文档照法使用指导和活动填充可变点Z蜀噩噩噩嚣嚣-=相关资产聚合、相似、依赖、父图2核心RAS的主要部分G/T 25644-2010 Asset是一个抽象类.核心RAS是一个抽象元模型.剖面对核心RAS进行扩展,通过引入附加语义约束描述特定类型的资产.本标准采用UML表示核心RAS模型,如图3所示。模型中的每个类代表一个资产元素,类间的聚合关系表示元素的拥有者和包含者之间的关系。关联关系描述了资产元素的关联,一般用标识符来保持关联关系。对核心RAS
17、各个类的详细阐述见5.2. 75. 2.15。related-profile name:stnng 岛id:stringversion-major:int 岛verslOn-mmor:mt龟reference:string自导parent-id:stringname:stnng 岛id:string屯date:dateas set 1 I电state:string马verslOn:stnng马access-right:string岛short-description:string0.1 0.1 生_,_!_jdescription 0.1 I 0.1 图3核心RAS的UML模型related-
18、asset O. . Iname:stnng id:string 自reference: urIReference relationship-type:string usage id:string task:string 自reference:stringrole:string 理task-type:string5 GB/T 25644-2010 通过对核心RAS进行扩展可得到某特定类型资产的描述模型。核心RAS模型采用与UML相同的扩展机制,这种扩展是增加或扩大基本模型信息的一种方法。一个描述模型可扩展核心RAS或其他描述模型,通过扩展可引人一些更为严格的语义和约束,但不能减少被扩展的描述模
19、型中所规定的语义及约束。可以在新扩展的描述模型中增加新的类,但当前描述模型中的类及其上的约束不能减少。例如,扩展得到的新描述模型可使当前模型的可选类成为必选类,但父模型中的约束不能被去除,现有类在新模型中的约束不能少于该类在父模型中的约束。可以在新扩展的描述模型中增加当前类的属性,但当前类的属性及其上的约束不能减少。例如,一个新模型可使当前可选属性变为必选属性,且该属性在父模型中的约束不能被去除,现有属性在新模型中的约束不能少于该属性在父模型中的约束。5.2.3 剖面XMLSchema及扩展机制核心RAS以及对其扩展得到的资产描述模型是一个抽象的模型,是非实例化的,不能直接用于资产的描述。剖面
20、提供了资产描述模型的一个XMLSchema实现,以核心RAS模型为例,图3模型中的每个类可用XMLSchema元素来表示,根据该模型可派生出一个XMLSchema文档,图4为该文档的主要部分,附加的语义约束见5.2.150该XMLSchema连同附加的语义约束,提供了核心RAS的一个实现,即默认剖面。采用核心RAS模型规范资产时,可通过默认剖面定义资产的实体描述文档结构、语法和语义约束,从而可具体描述一个特定的资产。一个描述性容器/包,包括资产的制品(模型、源代码、需求、测试用例等及指导如何使用该资产的文档.资产的制品是指实际使用中被复用的部分.整个资产包还提供相关信息,为用户决定是否要使用该
21、资产提供帮助.一个剖面标识了资产的具体类型例如z服务、构件等).剖面还包含了剖面变更的历史信息,从而说明了该剖面是由谁创建的.-2_ _;JJJJ-1;-一川提供资产的文字概要描述b :ypfj-fFYE哩_: I 包含对资产的关键特性和行为进行分类的描述子,-_-_1如资产相关领域、作者、关键字和复用范围等.classification 1+1 包含了组成该资产的具体制品例如iG求、模型、接口solution EEI - - - - - t -.1规约、消息、源代码、以及其他制品)的位置.资产的这些制品集合提供了一个特定问题的解决方案. usa段日-一一一-1一|提供关于如何使用该资产的信息
22、.这些指导信息可以针: .-.-飞1 1对整个资产,也可以针对资产中的某个特定制品.I I .-. _ _才related-asset: .JJJJJJJJ二-. -. -.-. -. o. . 描述资产与其他资产之间的关系.有四种关系=聚合、相似、依赖和父关系.图4默认剖面的XMLSchema概览剖面采用与UML相同的扩展机制,这种扩展是增加或扩大基本(默认)规约信息的一种方法。个剖面可扩展核心RAS或其他剖面,通过扩展可引人一些更为严格的语义和约束,但不能改变核心RAS或其他剖面所规定语义及约束。可以在新扩展的剖面中增加新的元素,但当前剖面中的元素及其上的约束不能减少。例如,扩展得到的新剖
23、面可使当前剖面的可选元素成为必选元素,但父剖面中的约束不能被去除,现有元素在新剖面中的约束不能少于该元素在父剖面中的约束。6 GB/T 25644-2010 可以在新扩展的剖面中增加当前元素的属性,但当前元素的属性及其上的约束不能减少。例如,一个新剖面可使当前可选属性变为必选属性,且该属性在父剖面中的约束不能被去除,现有属性在新剖面中的约束不能少于该属性在父剖面中的约束。如图5所示,默认剖面是核心RAS的一个实现,默认构件剖面和默认WebService剖面都派生自默认剖面。剖面派生信息可从剖面历史中得到,详见5.2.9.1。| 核心RAS1 甲默认剖面是对抽象的核心阳S的实现.使用基本构件语义
24、对默认剖面扩展.采用基本WebService客户端语义对默认剖面扩展.图5核心RAS与剖面扩展示例本标准通过剖面扩展机制来支持对各类型资产(如构件、webservices、模式和框架等)的描述。针对某特定资产类型,可通过对核心RAS或其他剖面的扩展得到一个适用于该类型资产描述的剖面,扩展后的剖面保留并扩展了核心RAS的语义及约束。剖面的扩展关系形成了剖面的谱系,默认剖面是所有具有Xmlschema实现的剖面的祖先。一个具体的剖面对应一个资产类型,用于对该类型中所有资产的描述,该剖面通过定义该类型资产实体描述文档的结构、语法和语义约束,来指导该类型中某特定资产的描述。一个按本标准打包的特定资产必
25、须包含一个实体描述文档,该文档包含了资产的具体描述信息。剖面XMLSchema文件一般与实体描述文档一起存放,也可采用URL引用方式,通过网络对其访问。本标准中,核心RAS模型中的每个类对应了默认剖面的一个XMLSchema元素,因此,在本标准后续的内容中,若无特别声明,对核心RAS模型中类的阐述同样适用于默认剖面中相应XMLSchema 元素的阐述,反之亦然。例如,对核心RAS中的Asset类的阐述,同样适用于默认剖面 (artifact id = dsp type=1?roject Fi1e j) (artifact id = dsr type=但因alBasic Designer Mod
26、ule j) (artifact id = dtd type口DocumentType Definition j) (artifact id = dun type=l)ialup Netw。由ingFile j) (artifact id = dv type=DV /) (artifact id = DVD type= DVD / (artifact id = ecs type= Exchange Server Ct四tSrcej) (artifact id = elm type= Microsoft Office Themes File j) (artifact id = 四1type= I
27、nternet耳MailMessage j) (artifact id = ent type= Externa1 Entity j) (artifact id = enx type= Rationa1 XDE Unit j) (artifact id = exc type= Text j) (artifact id = 皿dxtype= XDE Mode1 j) (artifact id = ifx type= Rational XDE Unit j) (artifact id = i血type= Rationa1 XDE Unit j) 这个列表是动态可变的,供工具生产商使用,以使他们可提供
28、对制品的正确处理。(artifact id=testcase type=Test Case/ (artifact id= reqmodel type= Analysis Model / (artifact id=designmodel type=Design Model/ (artifact id= implmodel type= Implementation Model / (artifact id=testmodel type=Test Model/ (artifact id= busncncptmodel type= Business Concept Model / (artifact
29、id= usecasemodel type= Use Case Model / (artifact id= busntyp四odeltype=Bus且essType Model / (artifact id=intfacespecmodel type=Interface Spec Model/ (artifact id= websvcintermodel type= Web Service Interactions Model / (artifact id=analysisset type=Analysis Artifact Set/ (artifact id=designset type=D
30、esign Artifact Set/ (artifact id= implset type= Impl四entationArtifact Set/ (artifact id= testset type= Test Artifact Set / (artifact id=扛nplset type= Impl四entationArtifact Set/ 13 GB/T 25644-2010 (artifact id=testset type=Test Artifact Set/ (artifact id= intfacespecdiag type=工nterfaceSpec Diagr四/(ar
31、tifact id= usecasediag type= Use Case Diagr四/(artifact id= co皿pinterdiagtype= Component Interaction Diagram / 以上列表是动态可变的,工具生产商应根据该列表对制品提供正确的处理。5.2. 12 Usage(用法)5.2.12.1 导引用法部分描述了应用资产时应执行的活动,一般采用轻载的活动或工作流模型来描述。指导资产如何使用的活动有几种形式:一些活动适用于整个资产,另一些活动适用于资产的某个制品,还有些活动与特定的周境相关。特定周境下的一个制品可包含相关的可变点。如图7所示。1.指导一组
32、制品如何使用的活动可以是周绩无关的.3.每个制品可对应多个指导其使用的活动.有些活动依赖于特定周撞.动二活二:民L一无一统一周2.每个周密可关联一组活动,该活动集只在该周搅下起作用.活动集中的每个活动可关联多个制品.0. 0. n 0. n可变点绑定规则L-一一一_J每个可变点至少对应一个活动,该活动用于说明如何绑定可变点.图7用法部分的领域模型(usage元素是一个容器元素,用于对过程或用法的指导。该元素只定义了一个属性reference,它指向一个外部文档,这个文档可以是对用法部分的总体解释,或是对该资产所有使用活动的总结。用法元素有三类子元素,每一类都包含一组将资产应用到目标应用时应遵循
33、的活动。每一个子元素可能有多个实例,这意味着可能有多个(artifact-activity、(context-reO和(asset-activity 子元素。Usage可引用一个Artifact,用于为Usage提供更进一步的背景和解释。5. 2. 12. 2 ArtifactActivity(制品活动)(artifact-acti vi ty 元素是一个容器,包括一组与特定制品相关的活动。它包括两个属性:ar.叫声ctid (制品标识符)和context-id(周境标识符)0 artifact-id属性是必选的,它指定了一个实体描述文档中某制品的标识符。一个制品可有多个活动,活动可与周境相关
34、联。属性context-id的值必须是实体G/T 25644-2010 描述文档中的某个(context)元素的标识符。(artifact-activi ty)至少应包含一个(activity)元素,它指定了将资产应用到目标应用中时,用户或工具应执行的具体活动。见5.2.11.2的(artifact)元素说明。5. 2. 12. 3 ContextRef(周境引用)( context-ref元素是一个与特定周境相关联的活动的容器。context:-id属性是必选的,它指定了一个在实体描述文档中定义的周境。(con text-ref至少应包含一个(activity)元素,它指定了将资产应用到目标
35、应用中时,用户或工具应执行的具体活动。见5.2.11.2的(artifact)元素说明。5.2. 12.4 AssetActivity(资产活动)(asset-activity)元素是一个与整个资产相关联的活动的容器。资产活动元素没有定义任何属性。5. 2. 12.5 Activity(活动)活动指定了使用资产时用户或工具对该资产进行的具体操作。(activity)元素包括两个必选属d性:id手I:ltask(任务)。属性id应包含一个标识符,用于支持工具处理,该标识符在实体描述文件的所有活动中是唯一的。属1主task以简短说明或关键字的形式描述活动的意图或目标。对活动更详尽的说明可通过(de
36、scription)子元素或reference属性(可选)所指向的外部文档来提供。reference属性也可指向一个供工具使用的、包含可执行代码或脚本的文件。一些活动可能与某些资产消费者角色相关,因此role属性声明了该活动与哪种资产消费者角色相关。task:-type(任务类型)属性对活动类型进行划分。该属性可供工具使用,并说明了如何执行当前活动。一些任务类型可提示工具载入并执行一段脚本,或运行一个可执行程序,而另一些任务类型则可能仅仅指示该活动应在消费者的ToDo List(操作列表)中被引用。除了(description)元素外,(activity)元素可包含子(activity)元素和
37、(varia bili ty-poin t-binding)元素。(variability-point-bindi吨是对制品中定义的可变点的引用,并规定了绑定规则。绑定规则是关于可变点和活动之间关系的简短说明。Activity可引用一个Artifact,用于为Activity提供更进一步的背景和解释。5. 2. 12. 6 VariabilityPointinding(可变点绑定)(variabili ty-point-binding)有两个属性,属性var-point-id指定了一个实体描述文件中定义的可变点标识符,属性binding-rule(绑定规则)是可变点特性的简短描述,该属性提供了
38、将(activity)作用于( variability-point)时资产消费者应遵循的额外规则和指示说明。下面是一个部分文法的样例:(solution) (usage) (artifact) name: Design Model , id: 100 ,reference : model/designmodel. mdx (variability-point) name : Design Model: User且ccountM四ag四ent: Use Case Create New User Account ,id : 1 (artifact-activity) artifact-id : 1
39、00 (activity) id: 5,国sk: Specify the alternate flows (variability-point-binding) variability-point-id : 1, binding-rule : Provide a description of invalid database connection flow. ( variability-po扫t-binding)variability-point-id, 1 , binding-rule , Do not create new rela-tionships to existing pacl仨a
40、ges.在这个例子中,(variability-point)标识了(artifact)中实施客户化的具体位置。(activity)标识了资产消费者实施客户化时的应该做什么,(variability-point-binding)描述了资产消费者实施客户化时的规则、约束和附加的指导。15 GB/T 25644-2010 5.2. 13 RelatedAsset(相关资产)资产通常与其他资产存在某种关系,资产的关系信息将有助于减少复用成本。一个资产可拥有任意数目的相关资产。每个相关资产通过一个(related-asset)元素来规约。一个相关资产可以是当前资产范围之外的资产。当资产复用扩大至大粒度或
41、者粗粒度级别时,(related-asset)元素是必选的,在该级别上,以资产族或资产集的形式来定义或复用资产。属性name包含相关资产的名称。属性relationship-type(关系类型)可以是任意值,但对于一些特定的关系类型本标准定义了相应的保留值,这些关系类型以及对应的保留值如下:a) 聚合(aggregation):表示当前资产包含了相关资产,该包含关系可通过传值或引用来实现;b) 相似(similar):表示其他资产有与当前资产相似的特性;c) 依赖(dependency):表示当前资产引用或依赖于该相关资产的某些服务或制品;d) 父(parent):表示该相关资产包含或拥有当前
42、资产。包含多个资产的资产包可使用聚合关系和父关系类型来组织被包含的资产。属性asset:-id指定了该相关资产的资产标识符。属性reference指定了该相关资产的位置。可以采用URL或文件路径方式指定资产位置,也可以是对相关资产的一个说明文挡的引用。属性assetVersion(资产版本)指明了该相关资产的版本。RelatedAsset可引用一个Artifact,用于为RelatedAsset提供更进一步的背景和解释。RelatedAsset可包含Description,用于对RelatedAsset提供额外注释。5. 2. 14 AssetIdentity(资产身份)某个特定的资产可通过资
43、产标识符和版本号唯一确定。一旦资产标识符改变,它就成为一个全新的资产。当资产演变为一个全新的资产时,建议在新资产的实体描述中的(rela ted-asset)部分引用原资产。在资产标识符(id)不变的情况下,通过版本号标识资产的演化关系,资产的版本是一个任意的字符串。建议用一个统一的数字标号系统来表示版本,标号系统应便于对名称/标识符相同的资产进行版本字符串的比较,便于区分版本的新旧,在新版本中,资产的名称、简短说明或其他元数据信息都可能会改变。5.2. 15 核心RAS语义约束语义约束是关于资产实体描述中不能通过标准XMLSchemas表示的规则。以下的约束加上剖面的XMLSchema,完整
44、定义了一个有效的实体描述文件。约束1实体描述文件必须是经剖面XMLSchema验证有效的。约束2在资产的解决方案元素内必须至少有一个引用属性和name属性均为非空的制品元素。约束3一个资产中的一个文件最多只能与一个(artifact)元素相关联。约束4(artifact-context)、(descriptor)、(artifact-dependency )、(variability-point)、(context-ref 和(artifact-activity)元素的context:-id属性指定的周境元素必须出现在同一个实体描述文档中。约束5(artifact-activity)和(art
45、ifact-dependency)元素中的artifact:-id属性指定的(artifact)元素必须出现在同一个实体描述文档中。约束6(variability-point-binding)元素的variability-point-id属性指定的(variability-point)元素必须出现在同一个实体描述文档中。16 GB/T 25644-2010 约束7如果digest-name:string digest-value:string i!ib access-rights:string a岛d副19熙est-name二幻tnng画岛导d副ig段es引t-value:strin吨1屯E
46、豆a岛!la肌cce四s臼卧s坠-吨M恤s:s归tn口nn吨g 0. . operatIon 1.才每name:stnng岛initiates-transaction:boolean description: string 0. 圄8默认构件剖面的UML模型GB/T 25644-2010 0. 0. model 部na丽豆豆丽ngi!ib type:string 0. .岛reference:string一-斗龟.id:stringo. . 1ll7 version:string 。digest-name:string吨.digest-value:string 岛access-rights:string0. Requirements类没有指定任何属性,但它与Model(模型)、Diagram(图)、UseCase(用况)和Artifact类相关联。 (/xsd:attribute) (xsd: attribute name= classif icationSchema type= xsd: string 1 (/xsd:complexType) (xsd: element name口Desct:iptorGrouptype= dfaultprof ile: Descript