Rational Asset Manager 中可复用资产的生命周期及策略管理

闫 哲, 软件工程师, IBM
 
漆 驰, 高级软件工程师, IBM
 
付 夷山, 软件工程师, IBM
 

简介: 

虽然业界涌现出各种软件方法,可复用资产一直是系统架构师和项目管理者非常重视的因素之一,因而建立一个高质量的可复用资产库被视为提高软件开发效率的有效手段。IBM Rational Asset Manager(RAM)提供了强大的资产管理能力,可以实现资产的创建、提交、审核、检索等管理操作,便于资产的分发和复用。RAM 符合 OMG RAS 规范,最新的7.2.0.2版本提供了生命周期管理功能,进入 RAM 的资产需要经过相关人员的审核,并根据状态实施相应的动作;结合策略机制,以相比 Asset Type 更加灵活的约束方式,来保证资产的完整性。

本文介绍 IBM Rational Asset Manager(RAM)中的生命周期和策略管理,通过实例展示如何结合策略定制生命周期实例,从而有效保证可复用资产的完整性,文章还探讨了通过 Rational Team Concert(RTC)扩展生命周期和策略的高级话题。

背景介绍

在业务日益复杂的今天,如何快速开发满足业务需求的高质量应用系统,成为软件开发厂商成败的关键,而建立可复用资产库被视为提高软件开发效率的有效手段。在此之上基于资产进行开发,以最大化利用投资,加速软件开发,降低成本。资产是相关制品的集合,为特定问题提供解决方案,它可以通过变化点进行定制,以达到复用的目的。为了更好的开发和复用资产,OMG 定义了可复用资产规范 Reusable Asset Specification,对软件资产的结构、内容和描述进行了规约。资产中的制品可以是各种类型,比如模型、设计文档、构件、框架、web 服务、测试计划、测试脚本等,它们都是与解决某问题相关的。

资产需要进行管理,这包括采用适当形式描述资产,利用存储库来保存资产,资产的提交、审批、发布等生命周期管理,提供搜索和消费资产功能等。IBM Rational Asset Manager 正是这样一款产品,它帮助企业创建、修改、监管、搜索、复用各种软件资产,目前最新版本是 7.2.0.2。RAM 支持 OMG RAS 规范,可以对资产的各种标准信息进行管理。

RAS 规范

Reusable Asset Specification 是 OMG 关于可复用资产的标准,当前版本是 2.2。RAS 对资产的规约可分为 Core RAS 和 Profile 两部分。Core RAS 规约资产的基础元素,Profile 针对特定领域描述扩展部分,只有基于 Core RAS 的 Profile 才能创建实例加以使用,RAM 的元模型相当于扩展 Profile。

下图描述了 Core RAS 的基本元素(摘自 RAS 标准)。Classification 给出用于资产分类和上下文相关的描述,如 RAM 中资产的 ID、名称、版本、日期、状态等。Solution 列出资产包含的制品,在 RAM 中可以包含文件、文件夹和 URL。Usage 描述安装、定制、使用资产时的规则。相关资产描述资产之间的关系,RAM 中可以使用内置关系,也可以自定义关系。


图 1. Core RAS 的基本元素
图 1 Core RAS 的基本元素

RAS 是对可复用资产的规约,它并不涉及资产的开发和发布过程。RAM 作为资产管理工具,除了记录和管理资产的标准信息之外,还管理资产的评审过程,通过生命周期管理,更新资产的状态,最终发布为可以被复用的资产。

RAS 还描述了 RAS 存储库服务,它提供 HTTP 接口,支持资产的搜索、浏览和获取操作。外部应用可以向该服务提交请求,获得满足条件的 ras 描述,进而分析资产的信息及所包含制品,如下图所示(摘自 RAS 标准)。RAM 将这种服务进行封装,发布为 Web Service 服务,提供了资产的增删改查以及资产库配置等功能。


图 2. RAS 存储库服务
图 2 RAS 存储库服务 

定义生命周期及其策略

RAM 对资产的管理包括其生命周期管理(Lifecycle),在早期版本中称为评审过程(Review Process)。通过定义生命周期,管理资产的各种状态以及状态之间的迁移动作,这些动作一般是由参与者对资产进行审核之后做出的。在这里,生命周期看上去就像一个状态机,但它比状态机更复杂,除了状态和变迁之外,还可以定义策略(Policy)、条件以及参与者。RAM 内置了 Simple、Standard、Business Solution 等多个生命周期模板,在社区中可以使用这些模板创建特定的生命周期实例,当提交资产时,就会按照符合条件的生命周期实例进行管理了。

这里列出 RAM 中的两个生命周期模板以供参考。


图 3. RAM 的 Simple 模板
图 3 RAM 的 Simple 模板

图 3 是 RAM 的简单模板,包含两个状态“已提交”和“已批准”,它们之间可以通过“发布”、“恢复”完成状态变迁。


图 4. RAM 的 Standard 模板:
图 4 RAM 的 Standard 模板:

图 4 是 RAM 的标准模板,包含“草稿”、“评审”、“目前状态”、“已批准”四个状态,它们之间可以通过“审核”、“提交”、“批准”、“恢复”等完成状态变迁。

从以上示例可以发现,生命周期模板只是提供了简单的状态机模型,更多的细节还需要在生命周期实例中定制。下图描述了一个基于 Simple 模板的生命周期实例。在该实例中,通过条件指明生命周期作用于类型为 Bundle 的资产之上,通过在状态上定义策略来规范资产的完整性,通过变迁条件确保资产满足策略。


图 5. 基于 Simple 模板的生命周期实例
图 5 基于 Simple 模板的生命周期实例

这里的策略跟 SOA 治理中的策略类似,即当满足约束条件时将执行特定动作。动作一般是对资产的操作,并非必填项,当没有定义动作时整个策略简化为条件验证。策略和生命周期结合在一起,可以大大提高后者的表达能力。如果把策略简单看作条件验证,那么它跟资产类型规约有很多相似之处,比如都可以规范资产包含什么样的制品,资产需要有什么属性,资产之间具有什么关系。但两者之间也有明显不同,主要体现在下表中。


表 1. 策略和资产类型约束的对比

策略 资产类型约束
前提条件 无需定义资产类型 需要定义资产类型
作用结果:提交资产 当不满足时也可以提交资产 当不满足时无法提交资产
作用结果:提示 当不满足时给出警告 当不满足时提示错误
作用域 资产类型或者基于术语的分类 资产类型
作用时机 灵活应用于生命周期的各种状态 从提交资产开始

RAM 中内置了多种策略,包括制品验证、属性验证、关系验证、追加制品、修改所有者等。我们这里以关系验证为例简单介绍。该策略要求被测资产存在与某一资产类型的某种关系,例如 Bundle 资产包含模型资产。在该策略作用下,当提交 Bundle 资产时如果没有包含模型资产,则给出警告信息。但是单凭策略无法限制对资产的操作,于是结合生命周期给出完整的约束。

回到上文中的生命周期实例,在初始状态上添加关系验证策略,检测并提示满足关系约束;然后定义变迁条件,限制只有满足策略才能进入下一状态。这样 Bundle 资产既可以提交,又能保证经过审批后符合约束条件。

扩展生命周期模板与自定义策略

RAM 提供多种接口,为了自定义生命周期模板,可以使用 Rational Team Concert Eclipse 客户端,也可以通过 RAM API。下图展示了 RAM 的内部结构及其与外部应用的交互方式。其中最常用的方式是用户通过浏览器访问 Web 管理控制台,或者二次开发应用调用 Web 服务接口,这可以完成大部分的管理操作。对于复杂的功能扩展(如评审过程和策略),RAM 预留了扩展点,开发人员可以开发 java 扩展应用,通过 Web 界面集成进来。此外,RAM 针对可定制的生命周期资源,还提供了 Jazz 存储库及其应用,允许外部将 RAM 看作一个开发交付环境,扩展的生命周期可以直接被 RAM 使用。


图 6. RAM 与外部应用的交互示意图
图 6 RAM 与外部应用的交互示意图

IBM Rational Team Concert (RTC) 是构建在 IBM Rational 面向软件交付技术的下一代协作平台 Jazz 平台上的第一个商用产品、一个协作式的软件开发环境。RAM 提供了一个 jazz 存储库,允许开发人员连接到 RAM Lifecycle 项目区,从而进行生命周期扩展。RAM 的存储库路径为 http://:/jazz/,这可以在 RAM 控制台的管理 / 配置中找到。连接后就可以在 Process Configuration 中添加新的 Workflow 过程了。下图展示了在 RTC 中 Simple Asset Workflow 的设置,通过状态、操作、过渡等定义了一个完整的生命周期过程。


图 7. 通过 RTC 客户端定制生命周期模板
图 7 通过 RTC 客户端定制生命周期模板

查看图 7 大图

RAM 还可以通过插件扩展的方式,开发自定义评审过程。不过它是 RAM 早先版本的扩展方法,在最新版本中推荐使用 RTC 方式扩展生命周期模板。

而策略的扩展还需要通过插件扩展来完成。RAM 提供了基类 PolicyGovernor 和 AssetPolicy,PolicyGovenor 对若干策略(Policy)进行管理,AssetPolicy 定义如何执行策略,针对 Asset 内容验证其结果。策略开发代码可以参考 RAM Web 应用路径下的 SampleGovernor.jar 文件。同时 RAM 控制台提供了集成该扩展应用的途径,可以在“管理 / 自定义扩展”中将其注册,随后应用在某生命周期实例中。

总结

RAM 中的生命周期,既可以保证经过评审的资产具有正确的状态,又可以根据业务需要进行定制,同时借助 RTC 客户端的管理方式增加了扩展的便利性。在此基础上,通过策略的引入,以更加灵活的方式验证业务规则,有效保证资产的完整性,使得经过评审的资产更好的得到复用。

RAM 提供了比较丰富的生命周期模板和策略,因此在具体业务应用中,建议首先考虑使用现有生命周期及策略,如有必要再进行扩展。而后通过 RAM 控制台为资产设计生命周期实例,它直接作用于进入 RAM 中的资产,应结合业务需求和技术概念综合考虑。完成 RAM 社区的配置后,就可以发布和管理资产了,一般可以通过控制台或者 API 调用来进行。

原文链接:http://www.ibm.com/developerworks/cn/rational/r-cn-ramreuseassetlifecycle/index.html

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/14780914/viewspace-670098/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/14780914/viewspace-670098/

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
东南亚位于我国倡导推进的“一带一路”海陆交汇地带,作为当今全球发展最为迅速的地区之一,近年来区域内生产总值实现了显著且稳定的增长。根据东盟主要经济体公布的最新数据,印度尼西亚2023年国内生产总值(GDP)增长5.05%;越南2023年经济增长5.05%;马来西亚2023年经济增速为3.7%;泰国2023年经济增长1.9%;新加坡2023年经济增长1.1%;柬埔寨2023年经济增速预计为5.6%。 东盟国家在“一带一路”沿线国家的总体GDP经济规模、贸易总额与国外直接投资均为最大,因此有着举足轻重的地位和作用。当前,东盟与国已互相成为双方最大的交易伙伴。国-东盟贸易总额已从2013年的443亿元增长至 2023年合计超逾6.4万亿元,占国外贸总值的15.4%。在过去20余年,东盟国家不断在全球多变的格局里面临挑战并寻求机遇。2023东盟国家主要经济体受到国内消费、国外投资、货币政策、旅游业复苏、和大宗商品出口价企稳等方面的提振,经济显现出稳步增长态势和强韧性的潜能。 本调研报告旨在深度挖掘东南亚市场的增长潜力与发展机会,分析东南亚市场竞争态势、销售模式、客户偏好、整体市场营商环境,为国内企业出海开展业务提供客观参考意见。 本文核心内容: 市场空间:全球行业市场空间、东南亚市场发展空间。 竞争态势:全球份额,东南亚市场企业份额。 销售模式:东南亚市场销售模式、本地代理商 客户情况:东南亚本地客户及偏好分析 营商环境:东南亚营商环境分析 本文纳入的企业包括国外及印尼本土企业,以及相关上下游企业等,部分名单 QYResearch是全球知名的大型咨询公司,行业涵盖各高科技行业产业链细分市场,横跨如半导体产业链(半导体设备及零部件、半导体材料、集成电路、制造、封测、分立器件、传感器、光电器件)、光伏产业链(设备、硅料/硅片、电池片、组件、辅料支架、逆变器、电站终端)、新能源汽车产业链(动力电池及材料、电驱电控、汽车半导体/电子、整车、充电桩)、通信产业链(通信系统设备、终端设备、电子元器件、射频前端、光模块、4G/5G/6G、宽带、IoT、数字经济、AI)、先进材料产业链(金属材料、高分子材料、陶瓷材料、纳米材料等)、机械制造产业链(数控机床、工程机械、电气机械、3C自动化、工业机器人、激光、工控、无人机)、食品药品、医疗器械、农业等。邮箱:market@qyresearch.com

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值