【OSLC】OSLC Overview

Log4j JSON ezmoph:结构化日志在IBM Jazz与OSLC中的应用 本文还有配套的精品资源,点击获取 简介:Log4j是一个Java日志框架,提供灵活的日志配置与处理。本课程探讨了在IBM Jazz和OSLC(开放服务生命周期协作)项目中,Log4j如何与JSON数据格式及ezmoph库结合使用,以实现结构化日志记录。通过Log4j的配置,日志信息能以JSON格式输出,利用JSON的易读性和结构化特性,便于后续的数据分析。ezmorph库则... 阅读详情
AI摘要

本文介绍了OSLC(Open Services for Lifecycle Collaboration)的概念与原理,探讨了系统集成中的信息孤岛问题及传统集成方式的局限性,并详细阐述了OSLC如何通过Linked Data等技术手段解决这些问题。

1. 引言

相信大家凡是查看到这篇博文,大多的可能是从事系统集成工作,又或者是从事软件工程相关的咨询工作,想要了解OSLC的基本概念以及原理。作者将以一系列的博文对OSLC的方方面面进行介绍。

2. 相关背景

2.1 信息孤岛与跨生命周期协作的冲突

我们说, OSLC解决的是系统集成问题,那么,我们需要先从系统集成的源头说起。

企业信息化的过程向来不是“一蹴而就”,而是通过迭代、渐进的方式展开。基于企业研发业务的需要,各个生命周期阶段的信息化逐步提上日程。然而,产品的生命周期跨越多个工程领域,典型的如需求管理、配置管理、质量管理、变更管理等等。要实现“一键式”的快速自动化是一个复杂的、漫长的过程。因此,企业信息化的过程往往是从某一个或几个工程领域展开,然后通过迭代的方式逐步完善。

信息化的落地实施离不开软件工具的支撑,因此,在信息化过程中,企业一般会基于业务和成本等综合因素,采购并实施一系列的商业化或开源软件工具。工具的研发往往是领域业务驱动,用于解决特定领域存在的问题。因此,多领域工具间往往天然的存在隔离关系。即使有一些大的工具厂商会开发某些大的平台产品,以实现基于同一平台的多领域工具间的有效协同,这种背景下的工具平台在功能层面往往也是多方面受限的。首先是成本问题。传统的工具开发商往往是在特定的一个或多个领域比较强势,例如达索在三维模型,IBM在配置管理、需求管理等等。而平台化战略可能不仅仅局限于开发商擅长的领域,这同具体的平台战略规划和市场业务驱动相关。因此,开发商不得不投入大量的人力用于平台工具研发。这本身带来一定的成本以及风险。其次是产品发布周期。不同的工程领域往往都有着占据较大市场份额或认可度的公司,竞争关系异常激烈。如何快速的将工具推向市场是开发商是否能取得成功的决定性因素之一。

如下图所示,众多的软件工具存在如下特性:
信息孤岛

  1. 不同工具厂商:

    一般企业采购工具会出现厂商来源多元化特点,工具大多来自多个公司。同时,任何一个商业公司也不可能做到 “面面俱到”,研发所有的领域工具并做到独占市场。

  2. 异构数据库

    不同工具可能依赖于不同的数据库,有的可能是免费版的MySQL,有的可能是商业化的Oracle、SqlServer等,有的可能是自己实现的特定的数据库。

  3. 工具类型

    有些工具可能是商业化的,有些可能是开源的,有些可能是企业内部自研的。

  4. 异构平台

    有的是基于Windows平台,有些事基于Linux。有些事基于C/S模式,有些工具可能是基于B/S模式。

  5. 不同的UI和风格

    不同厂商的工具用户界面各异,操作风格也显著不同。

  6. 其他……

总之,企业信息化过程中大多会存在这样的问题:信息孤岛。每个领域工具在各自领域内发挥了巨大作用,但领域工具间的数据和工作流彼此割裂,无法在软件的全生命周期内实现数据共享和一致的工作流。由此导致了企业内部信息孤岛的形成。

随着企业的成熟度越高,提升研发管理能力也必然会成为管理者着重考虑的问题。而横亘在各个独立领域的信息孤岛则成了进一步提升研发能力的障碍。

2.2 传统的系统集成方式及弊端

解决信息孤岛的方式有很多,最为符合实际也最为常用的方式是“P2P”集成。“点到点”工具的集成通过已有工具对外提供的API,通过扩展开发的形式实现工具间的数据交互。点对点的集成具有直接、灵活的特点。

P2P集成

该种方式虽然受限于工具对外提供的API支撑能力,但其可以基于业务需要,在API功能允许的情况下,便捷的实现两款工具间的集成,实现数据的交互,而不必考虑更多的例如通用性、复用性的细节。但,点对点集成的缺点是明显的。

  数据复制而非链接:典型的情况下,点对点集成的数据利用方式是复制,由此极易导致数据冗余和不一致。

  开发成本高:开发人员需要了解集成两端的工具的集成机制,包括平台、语言、API,集成前期的预研和学习成本较高。

  维护成本高:如果发生工具替换或者版本升级,则API的变化或不稳定必然影响对已有集成工作的返工,极大的提高维护成本。

  扩展性不好:如果引入新的工具,则集成点会议N方级别增长,由此导致繁重的成本。

  可复用性差:点对点集成依赖于特定工具的特定API,和工具紧密耦合,很难实现高效率的复用。

3. OSLC应运而生

3.1 什么是OSLC

  OSLC,全称 “Open Services for Lifecycle Collaboration”,是由IBM提出的一套技术规范,该规范主要用于解决生命周期工具的集成问题。OSLC规范由核心规范和领域规范组成。核心规范用于对核心的集成技术及通用概念进行描述。领域规范则是对具体的工程领域展开。

所谓领域,就是我们所熟悉的例如需求管理、配置管理、质量管理、资产管理、变更管理等传统软件工程领域。OSLC规范的制定由OSLC社区的工作组完成,根据制定规范所属领域不同,工作组又可以分为核心工作组和领域工作组。顾名思义,核心工作组专注于核 心规范的制定。领域工作组则专注于不同的工程领域的OSLC规范制定。

OSLC规范

3.2 OSLC技术规范剖析
3.2.1 OSLC的核心思想-Linked Data

OSLC核心思想是”链接数据”,即“Linked Data” ,其规则如下(来自 http://www.w3.org/DesignIssues/LinkedData.html):

1. 使用URI作为事物的名字标识
2. 使用HTTP URI 以便用户能够查询这些名字
3. 当用户查询某个URI时,使用标准格式(RDF*, SPARQL)提供有用信息。
4. 包含到其他URI的链接,以便用户能发现更多信息。

“Linked Data”规则可概述为:

事物都通过HTTP URI进行标识,用户通过请求能够获取通过标准形式表述的有用信息,并且允许事物间的链接,使得用户能够发现更多的信息。

OSLC正是基于这一基础思想,将软件研发生命周期的工件进行资源化,例如一条需求、一个测试用例、一个开发计划等都是HTTP URI标识的资源。用户通过HTTP协议对这些资源进行访问。OSLC中对资源的表述强制要求具备RDF的提供能力,同时也可以支持例如JSON/HTML等其他资源格式。

OSLC核心规范定义了一些简单的HTTP和RDF的使用模式以及最小级化的资源类型,用于确保工具的集成。OSLC的领域规范基于OSLC核心规范的核心技术,定义了面向特定领域的资源形式。

OSLC中的集成技术

OSLC的存在是为了解决生命周期工具集成问题,那么它是如何从规范的层面实现的呢?

OSLC提供了两种主要的集成技术:基于HTTP CRUD(Linking data via HTTP)和基于HTML UI(“Linking Data via HTML User Interface”)

  1. 基于HTTP协议的CRUD.
    OSLC通过标准的资源表述以及HTTP协议实现对资源的C.R.U.D操作。
    HTTP CRUD.

  2. 基于HTML界面的集成

除了在基础数据操作的层面提供支持,OSLC还提供了崭新的集成方式,即“UI的无缝集成”。OSLC规定的UI集成方式包括“UI Preview” 和 “Delegated UI”。“UI Preview” 主要用于信息的预览。“Delegated UI” 主要用于工件的选择和创建。

3.3 OSLC核心规范详解
3.3.1 服务发现

服务发现是OSLC重要特性之一,也是不太容易理解的地方。OSLC技术规范中的服务接口不是以“固定API”的形式标识,而是通过服务发现的方式由客户端进行层层解析得出。对于客户端而言,只需要知道基础服务的入口地址,即可根据OLSC协议,逐步发现所需要的服务。
OSLC Discovery.

3.3.2 标准化资源表述

例如,请求资源: http://example.com/blogs/entry/1, 返回如下RDF/XML数据。

<rdf:RDF    
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   xmlns:dcterms="http://purl.org/dc/terms/"    
   xmlns:foaf="http://xmlns.com/foaf/0.1/"    
   xmlns:oslc_blog="http://open-services.net/ns/bogus/blogs#">

   <oslc_blog:Entry
      rdf:about="http://example.com/blogs/entry/1">

      <dcterms:title>I love trash</dcterms:title>
      <dcterms:modified>2002-10-10T12:00:00-05:00</dcterms:modified>
      <dcterms:content>
         Anything dirty or dingy or dusty. 
         Anything ragged or rotten or rusty.
      </dcterms:content>
      <dcterms:creator>
         <foaf:Person>
             <foaf:name>Oscar T. Grouch</foaf:name>
         </foaf:Person>
      </dcterms:creator>

   </oslc_blog:Entry>

</rdf:RDF>
3.3.3 基于HTTP协议的C.R.U.D

OSLC规范定义的服务是基于Rest风格。Rest风格的架构的特点是资源化。领域数据的资源要进行统一的资源化表述,对外暴露的接口也是资源化的URL。同时,Rest架构直接利用了HTTP协议的语义用于对资源的存储操作。

OSLC Discovery.

3.3.4 资源查询

OSLC规范针对复杂查询定义了查询机制,使得客户端可以灵活对远程资源进行查询。例如:

http://example.com/bugs?oslc.where=cm:severity="high" and dcterms:created >"2010-04-01"
3.3.5 Delegated UI Dialog

基于Delegated UI Dialog典型的集成场景:
场景A: 用户希望在工具A中选择并链接工具B中的资源。

UI-SELECT

场景B: 用户希望在工具A中无缝的创建工具B中的资源。

UI-CREATE

3.3.6 UI Preview

UI Preview 主要是用于解决跨工具的数据预览问题。假设存在需求管理工具A和测试管理工具B,两款工具间存在一条从测试用例到需求的链接关系。如下图:

那么,用户期望从测试管理工具中查看用例所关联的需求的信息。如何才能实现:用户在测试管理工具中能够直接获得与之关联的需求信息,而不需要进入到需求管理系统中查看呢???基于这种场景,我们称之为 “数据预览”。而OSLC中的UI Preview正是满足了这一场景。基于 UI Preview 实现的集成场景如下图所示:
SystemEngineeringLab

更多请关注微信公众号
SystemEngineeringLab

OSLC-handbook:有关遵守最常见的开源许可证的实用信息的数据存储和手册 开源许可证合规手册 该手册提供了有关如何在一组特定用例下遵守一些更常见的开源许可证的信息。 此处的目的是为开发人员和工程师提供一些“自助服务”信息,以促进开源许可证合规性的最终目标,并确定一些较复杂的开源许可证合规性方面,可以与开源法律顾问进行协商。被推荐。 使用本手册之前,请先阅读。 贡献 分叉( ) 创建功能分支( git checkout -b feature/fooBar ) 阅读我们的和 提交更改( git commit -am 'Add some fooBar' ) 推送到分支( git push origin feature/fooBar ) 创建一个新的拉取请求 注意:只有与FINOS签署了有效的,已执行的个人贡献者许可协议(ICLA)的参与者,或与FINOS签署的现有和有效的企业贡献许可协议(CCLA)所涵盖的参与者,才会接受对FINOS信息库的提交和拉取请求 立即下载

相关推荐

OSLC简介

NULL 博文链接:https://kaqi.iteye.com/blog/1178021

OSLC助力系统工程的全生命周期整合 (转)

对于全生命周期中的数据进行整合,可以打破产品研发过程中遇到的不用领域间的数据和工作流的壁垒,可以极大地帮助企业进行信息化改革,降低研发过程中的交流、管理成本,从而加快产品研发效率。例如,FMI为联合仿真过程中的,数据交互格式,OSLC在生命周期过程中,数据的集成作用与FMI在联合仿真的过程中的功类似。本文使用OSLC技术解决生命周期数据的集成问题,打通物理空间与虚拟空间之间的数据交流,支持实时数据的集成和管理,为整个系统的生命周期提升数据管理、整合能力,为企业未来以数据为核心智能开发奠定基础。

Iris_xuexi的博客 1620

IBM Rational OSLC Adapter for Atlassian JIRA

IBM Rational OSLC Adapter for Atlassian JIRA OSSEZ.COM

【亲测免费】 探索开放服务链接:OSLC UI

探索开放服务链接:OSLC UI OSLC(Open Services for Lifecycle Collaboration)UI是一个基于Eclipse Lyo的开源项目,致力于提供直观且可定制化的用户界面组件,以支持生命周期协作工具之间的数据交互与共享。通过这个项目,你可以轻松地在你的应用程序中集成高质量的OSLC选择器和预览功能。 项目技术分析 该项目构建于Angular CLI之上,利用...

gitblog_00428的博客 557

MOSFET导通电阻Rdson全解析:物理组成、公式推导与工程选型要点

在功率电子设计中,MOSFET作为核心开关器件,其导通电阻Rdson直接决定导通损耗与系统效率。从半导体物理角度看,Rdson并非单一固定值,而是由源极电阻、沟道电阻、累积层电阻、JFET区电阻、漂移区电阻及衬底电阻等多个分量串联而成,并随栅极驱动电压、结温以及击穿电压等级发生显著变化。理解Rdson的物理来源与数学表达,有助于工程师在低压大电流与高压小电流等不同场景中合理选型、优化驱动电压并准确估算热损耗。文章从沟道电阻公式出发,深入剖析耐压与导通电阻的物理矛盾、温度系数的影响规律,并给出数据手册参数的正

weixin_29163857的博客 198

RDM协议控制端实战:从数据包构造到高效设备发现算法

本文深入探讨了RDM协议控制端的核心开发流程,涵盖从数据包构造、发送到响应解析的全过程。重点解析了如何利用二分搜寻算法高效实现网络设备发现,并分享了组包、解包中的关键代码实现与常见调试技巧,为舞台灯光与智能硬件领域的嵌入式开发提供实战指导。

week9的博客 458

需求管理工具_基于OSLC集成需求管理工具 IBM DOORS

DOORS是汽车、军工等行业普遍使用的需求管理工具,第三方系统与DOORS集成以打通需求与其他生命周期工件的链路,一般来说具有比较高的业务价值。DOORS对OSLC的支持为集成人员提供了便捷的集成实现方式,同时,也为终端用户提供良好的用户体验。DOORS功能简介DOORS是使用非常普遍的需求管理工具。其核心功能包括:需求条目化管理需求的最小粒度:需求条目强大的自定义属性功能需求状态管理灵...

weixin_39737240的博客 2930

psasp和matlab,PSASP与Matlab/SimPowerSystems联合仿真接口方法研究

[1]李亚楼,吴中习.Matlab模型接入PSASP暂态稳定计算模块的方法[J].电网技术,2008,32(19):31-36.Li Yalou,Wu Zhongxi.An Approach to Interface Matlab Model with PSASP Transient Stability Module [J].Power System Technology,2008,32(19):...

weixin_39636245的博客 1082

SysML到OSLC资源的转换方法

SysML到OSLC资源的转换方法 涉及到SysML到OSLC资源的转换,需要使用其进行转换使用 OSLC资源的表现形式为的RDF,RDF是一种主谓宾的形式的三元组。使用这种标准的资源属性促进了资源的可操作性质。客户端只需要的理解所检索的资源属性语义,OSLC适配器需要理解所传入更新的资源属性语义。 OSLC对需求的资源shape具有标准化的属性 oslc_rm:elaboratedBy oslc_rm:elabroates oslc_rm:speicfiedBy oscl_rm:specifies OS

Wildec 930

SD--根据订单创建出库单(相关的函数列表的介绍系列篇(2))

创建订单样例代码参见:http://blog.youkuaiyun.com/CompassButton/archive/2007/05/09/1601712.aspx 可以根据一个订单或者部分订单项来创建出库单,代码如下:* Populating the item data lx_sales_item-ref_doc = l_vbeln. lx_sales_item-ref_item = c_000010

SAP BLOG--Jack Wu 6227

STM32驱动WS2812B实现音乐频谱可视化系统

本文详细介绍了基于STM32驱动WS2812B灯带实现音乐频谱可视化系统的设计与实现。通过FFT算法实时分析音频信号,将频谱映射到炫彩灯光控制系统,结合PWM和DMA技术实现低延迟响应。系统支持多模式切换和动态亮度调节,适用于创意灯光秀和智能家居场景。

weixin_29171129的博客 302

oslc_大规模数据集成,探索OSLC示例

存档日期:2019年5月13日 | 首次发布:2015年9月2日 探索简单而有用的示例,说明本系列到目前为止介绍的概念层如何组合在一起,以轻松,无缝地跨各种工具集成信息。 这些示例使用了生命周期协作开放服务(OSLC)词汇表和标准,但对于希望快速连接信息以在整个数据存储中寻找价值的任何参与者组,它们同样有用。 此内容不再被更新或维护。 全文以PDF格式“按原样”提供。 随着技术的飞速发...

cusi77914的博客 543

【无人机对抗】基于matlab无人机红蓝对抗仿真【含Matlab源码 4436期】

无人机红蓝对抗仿真 完整代码,包运行;可提供运行操作视频!适合小白!

Matlab3024528700的博客 1380

Eclipse Lyo OSLC 测试套件:提升OSLC解决方案质量的利器

Eclipse Lyo OSLC 测试套件:提升OSLC解决方案质量的利器 项目介绍 Eclipse Lyo OSLC 测试套件 是一个由Eclipse Lyo项目提供的JUnit测试集合,旨在针对特定领域(如变更管理CM、质量管理QM和资源管理RM)的OSLC服务提供商进行测试,确保其符合OSLC核心规范及相应领域规范。该测试套件不仅作为OSLC评估工具,还扮演着质量验证和加速采用的角色,通过提...

gitblog_00043的博客 479

OpenCode:开源代码智能代理平台的全面解析

OpenCode是一个开源代码智能代理平台,采用模块化微服务架构,支持多种AI模型集成。该系统包含前端交互层、代理服务层和模型集成层,提供Build、Plan和General三种代理模式,分别负责代码编写、分析和复杂任务处理。OpenCode支持跨平台安装,具备权限验证、上下文感知等安全机制,并集成LSP协议实现深度代码理解。相比竞品,其开源特性、终端优先设计和提供商无关架构具有明显优势,适用于个人开发、团队协作等多种场景,为开发者提供强大的AI辅助编程能力。

Aaron_945的博客 1425

GPU服务器选购避坑指南:从硬件配置到场景化性能调优

本文提供GPU服务器选购的全面指南,涵盖硬件架构解析、应用场景配置策略和性能调优实践。针对大模型训练、推理服务和科学计算等场景,详细分析GPU选型、内存带宽匹配和散热设计等关键因素,帮助技术决策者避免常见配置误区,实现成本效益最大化。

peace的博客 1031

matlab可以当作eclipse,如何将MATLAB与Eclipse集成

1. OSLC支持工具截至今天,只有少数工具支持OSLC开箱即用.您可能通过检查他们的产品页面(或搜索源代码,如果可用)找到.但是,有几个提供OSLC库的计划,您可以使用它们将任何工具与适当的API集成.其中一个就是Eclipse Lyo平台.另一个例子是Rational Jazz.Eclipse Lyo还有一个OSLC Simulink适配器(Eclipse wiki / Lyo / Simul...

weixin_36331336的博客 609

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

【云计算】IBM开放云架构

IBM 的开放云架构 通过改变业务和社会运行的方式,云计算开启了丰富的创新途径。开发人员现在正将记录系统与参与性系统相结合,一种新的基于云的应用程序风格正在出现:交互系统。这些应用程序要可持续发展,云计算需要构建于开源和开放标准之上。本文仅做一些铺垫工作。 Angel Diaz, 副总裁,软件标准和云实验室, IBM 2013 年 9 月 05 日 ...

weixin_30455067的博客 605

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

常用物联网应用协议汇总

智能家居的电力供给,发电厂的发动机组的监控可以使用DDS协议;在服务策略的帮助下,DDS能够有效地控制和管理网络带宽、内存空间等资源的使用,同时也能控制数据的可靠性、实时性和数据的生存时间,通过灵活使用这些服务质量策略,DDS不仅能在窄带的无线环境上,也能在宽带的有线通信环境上开发出满足实时性需求的数据分发系统。以上这几种协议都已被广泛应用,并且每种协议都有至少10种以上的代码实现,都宣称支持实时的发布/订阅的物联网协议,但是在具体物联网系统架构设计时,需考虑实际场景的通信需求,选择合适的协议。

u014507573的博客 832

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

OSL

1,SimpleColorShader: shader gamma(color cin = color(0,0,0),output color Cout=color(0,0,0)) { Cout = cin; } Katana启动时候会自动编译: Arnold里bin文件夹里有oslc编译osl文件。但是在centos的GLIB不是2.14,所以单独运行...

weixin_33923148的博客 585

解读数字主线(Digital Thread)

构建订单数字主线,通过将CRM中的用户及订单数据、PLM中的产品设计数据、ERP中的生产计划和物料数据、交付的物理产品及服务数据都串联起来,建立用户、订单、设计产品、供应商、实物产品等模型之间的关联,形成订单数字链路,通过用户订单追溯到订单产品、实物产品的生产序列号及供应间供货记录等,通过实物产品的序列号追溯到产品设计数据、生产批次以及对应的客户订单等(如下图)。相反,数字主线实现了任务自动化,功能单元的互联、集成和链接,因此用户可以在任何时间、任何地点快速访问、共享和管理整个产品生命周期内的项目细节。

Iris_xuexi的博客 3219

MBSE 深度解析,基于模型的系统工程

⭐在大规模复杂系统快速发展的背景下,协同开发与全生命周期管理的需求日益增强。传统以文档为中心的系统工程方法正面临诸多挑战,如效率低下、可追溯性差、跨团队沟通不畅等问题日益突出。为应对这些痛点,MBSE(Model-Based Systems Engineering,基于模型的系统工程)应运而生。作为一种新兴的系统工程理念与实践范式,MBSE通过以模型为核心替代传统的文档驱动方式,显著提升了系统设计的规范性、可视化程度和协作效率。该方法已在国际工程领域获得广泛关注

AI Agent 全栈架构师(AI + GIS + Backend)& 数字芯片系统架构师(FPGA),NorthCity Smile的博客(NcSmile,博主域名:https://ncmile.blog.youkuaiyun.com) 4363

运用 REST API 集成及扩展 IBM Rational Team Concert

沈 锐, 软件工程师, IBM 简介:从 IBM Rational Team Concert 2.0 开始,REST API 得到了正式地支持(实验版发布在RTC 1.0.1)。虽然目前 REST API 提供的功能还...

coolsun0922的博客 587
上一篇: 【HLA】初识HLA/RTI
下一篇: 【MBSE】系统工程的本质
系统工程实验室
博客等级 码龄10年 258粉丝 38原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值