SOA架构技术概述及技术规范现状

关注公众号,点击公众号主页右上角“ ··· ”,设置星标,实时关注智能汽车电子与软件最新资讯


来源: 汽车电子与软件


01


SOA架构技术概述

1.1 面向服务计算的目的和价值
面向服务计算的七大战略目标相互联系,具体来说可以分为两组,即战略目标和战略价值(优势)。其中提高组织业务敏捷性、提高投资回报率和减少研发成本(或IT负担)是其他四个目标实现所带来的价值和优势。
在将面向服务持续应用于软件程序设计时,一系列战略目标和优势(如图1所示)共同代表了我们所期望实现的目标状态。理解这些目标和优势是非常有益的,因为它们可以为我们提供连续不断的总体背景和理由,以维持我们长期实现面向服务的投入。

以下简单说明七大战略目标的内涵:
1. 增强本征互操作性:即互操作性指的是数据的共享。软件程序的互操作性越高,其之间的信息交换越容易。
2. 增强联合:即服务的联合。软件资源和应用程序联合在一起,同时保持其各自的自主性和自治性。
3. 增加供应商多元化选择:即供应商多元化能力,指组织必须选择“最佳品种"的供应商产品和技术创新。
4. 同步提升业务与技术领域:即应用程序的设计和实现不仅要满足初始业务需求,也应满足未来随业务性质和方向变化时的业务需求。
5. 提高投资回报率:即衡量自动化解决方案投资回报率(ROI)是决定应用程序或系统实际成本效益的关键因素。
6. 提高组织的业务敏捷性:即组织能够对变化做出反应的效率,以适应行业变化并超越竞争对手。
7. 减少研发成本(IT成本):即减少浪费和冗余,缩小规模和运营成本,减少与其治理和演进相关开销等。
1.2 SOA架构特征及优缺点
SOA是一个组件化模型,它将应用程序的不同功能单元(服务)通过这些服务间良好的接口和契约联系起来。其中,服务(Service)是一个粗颗粒度的、可发现的软件实体,以一个单独实例存在,通过一组松耦合和基于消息的模型与其他应用或服务交互。接口是采用中立的方式进行定义的,独立于实现服务的硬件平台、操作系统和编程语言,使得构建在这样的系统中的服务可以以一种统一和通用的方式进行交互。
交互的服务大致由三个实体组成:服务请求者、服务提供者和服务注册表。其中实体间的操作包括:服务发布、服务发现、服务绑定和调用。
面向服务架构是众多软件架构风格中的一种,是微服务架构的一种。因面向服务架构风格具有基于标准、松散耦合、共享服务和粗粒度等优势,表现出易于集成现有系统、具有标准化的架构、提升开发效率、降低开发维护复杂度等特征,更符合智能网联化时代车载系统对软件架构的要求,所以被汽车行业引入和采用。
SOA因组件化和服务化模型特征,有其自身的优缺点,具体分析如下(仅针对IT行业业务特征和实施环境):

优点分析:

  • 灵活性,根据需求变化,可重新编排服务或应用程序

  • 对IT资产的复用

  • 使企业的信息化建设真正以业务或应用为核心,业务人员根据需求编排服务,不需要考虑技术细节
缺点分析:
  • 服务划分很困难

  • 服务的编排是否得当

  • 如果选择的接口标准有问题,会带来系统的额外开销和不稳定性

  • 对IT硬件资产还谈不上复用

  • 主流实现方式接口很多,很难统一

  • 主流实现方式只局限于不带界面的服务的共享

1.3 SOA国内外技术应用现状
在IT行业,国外于1996年由Gartner第一次提出SOA思想,2005年SOA开始推广和普及,2007年应用厂商希望通过发布标准来推动SOA的实施,如SCA和SDO通过OASIS审核,WS-POLICY、W3C成为W3C标准等,如今SOA在国外IT行业、通讯行业、政府部门得到广泛系统性应用。其中,欧美实现SOA架构的关键任务是:对已有系统中的功能进行提取和包装,形成标准化的“服务”。
在国内,2006年之前是技术萌芽;2006-2008年是过热期;2009年度过了幻灭期;从2010年开始进入复苏期,现在正处于由复苏期迈向成熟期。其中,国内近30年的IT建设多为生产型系统,服务型系统普遍未开始建设,大量"服务"需要全新标准化构造。
在汽车行业,因汽车智能化和网联化需求,尤其是自动驾驶系统研发应用的需要,车载系统SOA软件架构技术受到国内外整车企业的关注。国外,2010年以宝马、电装、大众等为首的欧、美、日汽车产业巨头便开始车载SOA软件架构的研究工作,形成一定理论基础和实践成果,并对传统汽车电子系统进行革命性创新。当前,大众、奥迪、宝马、福特等汽车巨头自成联盟,进行SOA软件架构技术和规范的应用研究,预计2023前后将开始应用于量产车型。国内,整车企业有加入和使用的意愿,但考虑软件架构规范核心实施技术不给予开放,后期产品技术和产品生态会高度依赖国外技术平台和标准规范,将会严重制约车企自身创新发展。其中, 一汽、东风和上汽等部分头部OEM己意识到SOA软件架构的重要性,在寻找自主解决方案。同时,软件架构技术属于行业共性技术,属于开发式共性平台,因国内缺少行业协同和协作机制,在共性平台和生态建设方面发展缓慢。


02


SOA技术规范现状

2.1 Web服务SOA相关技术规范概述
Web服务作为SOA架构技术发展的典型和成熟代表,其促进了SOA架构技术的发展和推广,其标准体系的开发方式和开发内容对于车载SOA软件架构技术规范开发具有深入的指导意义。
2. 1. 1技术标准组织
SOA架构的WEB服务相关的标准化组织主要有三家,分别为万维网联盟(World Wide Web Consortium, W3C)、结构信息标准化促进组织(Organisation for the Advancement of Structured Information Standards, OASIS)和Web服务互操作组织(Web Service Interoperability Organisation,WS-I)
W3C是一个专注于开发基于Web的行业技术标准的国际联盟。它的使命是通过开发协议和指导方针,确保万维网作为一种多功能媒体的长期增长,使万维网充分发挥其潜力。1994年Tim Berners-Lee创建了W3C,因为跨网络分割的风险变得越来越明显(特别是在多个版本的HTML同时工作时)。从那时起,W3C就开始优先开发核心的Web技术(HTML、XML等),以及相关的样式化语言(CSS 、XSLT等)。如今,Web服务严重依赖于W3C开发的技术,W3C委员会制作Web服务技术

主要由以下几部分:

• XML 架构1.0;
• WSDL 1.1, 2.0;
• SOAP 1.1, 1.2;
• WS-Addressing 1.0;
• WS-Policy 1.5;
OASIS
OASIS成立于1993年,是一家非营利性的国际协会,旨在开发、整合和推厂包括Web服务、安全、商业事务、供应链、电子政务、互操作性等所需的标准。OASIS对Web服务的贡献包括对UDDI(Universal Description Discovery and Integration)规范的标准化,以及对WS-BPEL规范的标准化。此外OASIS也推出了诸如面向服务的架构参考模型和面向服务架构的相关规范等。OASIS和W3C不同,他的主要兴趣在于制定附加规范以及支持不同的行业,与应用领域的关系更为密切。
WS-I

WS-I成立于2002年,其目的不是建立新的标准,而是旨在推动Web服务的互操作性。具体目包括三个方面:

  • 为客户的网络服务应用提供实施指导和培训;
  • 促进跨平台、跨应用软件和跨程序语言的网络服务的一致和兼容,并保证可靠兼容;
  • 致力于使网络服务协同成为本行业共同遵守的准则,以帮助客户在网络服务技术的选择上轻松决策,提高网络服务的应用范围和水平,并确保网络服务技术的持续发展。
2. 1. 2技术标准的形成
标准如何被开发出来?
为了充分利用Web服务技术,最大潜力发掘其技术价值,理解将技术规范开发为已批准的行业标准的过程是很重要的。
这一切都始于新技术的原创想法,当社区对这个想法有足够的兴趣时,W3C就会举行一个开放的研讨会,相关方聚在一起讨论技术解决的范围和技术提出的解决方案。
就Web服务而言,供应商组织通常倡议他们独立或合作开发的技术,虽然这些技术常常用来解决那些对供应商来说很重要的问题,但人们希望让它们成为非专有的Web服务框架的一部分。如果W3C参与者之间有足够的协议,那么这些所提出的技术将成为创建行业标准的基础。
标准开发流程是怎样的?
W3C技术规范声明周期的第一步是成立一个负责定义目标标准的工作组。该组将由W3C成员组成,他们通常由供应商代表和从业者组成。W3C还提供了支持的技术人员,帮助确保该技术将完全补充其他已经开发的行业标准。然后,该组通过以下阶段开发一个规范:
l.工作草案——这是一个定期发布的规范的快照,以让社区了解工作组所采取的方向,并收集早期的意见。
2.最后一次呼叫工作草案——当工作组认为该规范满足其所有原始要求时,它将发布此文件并正式请求社区的意见。这一步骤通常至少持续三周。
3.候选推荐——纳入前一阶段的反馈后,工作组要求实施规范,以确保规范实际上是可实现和互操作的。
4.建议——证明规范巳以互操作方式成功实施,已提交W3C咨询委员会批准,这一步骤至少会持续四周。
5.建议——规范为W3C建议,通常称为“行业标准”。整个过程的持续时间因所开发规范的范围和复杂程度而不同。从一个工作组成立的那一刻起,它可能需要18个月到几年的时间来提交W3C建议。在这些阶段,公众可以通过提交工作组有义务回应的反馈,对正在制定的技术规范发表评论。工作组成员之间的所有通信和工作组的所有交付成果都发布为公开访问。
W3C的一个特殊性是,它的过程是基于共识的,这意味着整个工作组在做出决定之前需要就解决方案达成一致。投票只有在有严重分歧的情况下才会进行投票,而通过投票作出的任何决定通常会在剩下的过程中进行仔细审查。
2.2 AUTOSAR-AP平台SOA相关技术规范概述
AUTOSAR-AP平台采用SOA方法论,主要涉及一种自适应软件产品的开发,是一套包括软件分析、设计、开发、部署在内的复杂工作流程。主要包括两个方面:工作流定义与成果物定义(如图2-2)。具体描述如下:
2.21 流程定义
AP平台的方法论作为CP平台的扩展,其引入了新的概念,AP平台软件的实例是在进程的上下文中执行。AP平台引入了“机器”(Machine)的概念,“机器”是虚拟化的ECU,一个可以部署软件的实体。它可以是真实存在的处理器,也可以是一个虚拟机,AP软件则运行在某一特定的“机器”上。
(1)开发服务接口(Service Interface)
AP平台是一个面向服务的软件架构(SOA),基于AP平台的软件开发,首先需要进行服务接口的设计。服务接口可以由事件(Events)、方法(Methods)和字段(Fields)组成,是生成软件组件头文件的基础。
(2)开发通信结构(Communication Structure)
OEM在设计阶段需要指定预期“机器”(Machine)的通信结构以及相应的配置参数,包括机器的所有网络端点和服务发现地址端口等。这一步将产生一个可交付的“机器设计”(Machine Design),一个特定的“机器”模型将引用一个特定的“机器设计“ 模型。
(3)开发自适应应用软件(Adaptive Application Software)
自适应应用软件开发从软件组件(SW component)的设计开始,软件组件是通过其端口(Port)定义的,每个端口实现一个服务接口。基于服务接口描述,生成包含实现软件组件的头文件。开发人员在此基础上实现软件组件的核心功能。
(4)开发自适应平台软件(Adaptive Platform Software)
与应用级软件类似,平台级软件可以由基于标准化服务接口的软件组件组成,也可以直接实现而不需要软件组件模型。
(5)定义和配置机器
包括了功能组状态和每个状态超时的定义,进程到特定机器的映射,以及平台服务(例如NM、DoIP) 和基础模块(例如日志)配置等。此过程会产生一个独立于服务实例或应用程序的机器清单(Machine Manifest)
(6)集成软件
软件的实现和编译完成后,需要集成到一个可执行文件CExecutable)中。通过进程来定义特定机器上可执行文件的实例化,每一个进程会产生一个执行清单CExecution Manifest),其中包括了进程及其启动配置。
(7)定义和配置服务实例(Service Instance)
首先对服务接口进行部署,然后定义服务接口的实例,并决定是否提供或使用该服务实例。其次要建立服务实例到机器的映射,以及服务实例到端口的映射。此过程会产生进程所需的所有服务实例清单(Service Instance Manifest)
(8)生成软件包(Software Package)
将可执行文件及所需清单整合为软件包上传到机器上,而无需重新刷写。OEM可以将软件包存储在后端服务器中进行统一管理。
2.22 成果物定义
由于AUTOSAR的工作流包含了整个汽车软件开发流程,涉及多个开发角色,因此需要各个开发角色之间有信息交互,为了保证信息不出现二义性,需要对各个环节的工作成果物规则进行定义。同时为了信息的保存、传输、交互的需求,需要定义这些成果物的载体,ARXML就是定义了不同流程成果物的载体,使用不同的标签来表示不同的信息及流程,这些标签的定义就是AUTOSAR的数据元模型(如下图)。
MO: 使用Ml级规则生成的可运行软件实体,例如车门控制的可自行软件组件
Ml: 使用M2级规则定义软件组件,例如车门控制的软件组件,软件组件的表现形式可以是ARXML,C/C++语言或各类文档。一般情况下会使用工具链以ARXML的形式定义软件组件的框架,然后导入下游工具链生成目标语言。或直接生成目标语言框架,然后手写代码的形式完成整体的软件组件;
M2: 使用M3级规则定义使用AUTOSAR开发的元素、语法及规则,例如软件组件,port口,机器,清单等。该级别的元素与具体的功能无关,类似于各类开发语言的语法;
M3: 用于定义M2的元模型

关注公众号,点击公众号主页右上角“ ··· ”,设置星标,实时关注智能汽车电子与软件最新资讯

智能汽车电子与软件 专注于汽车电子领域的信息交融平台,涵盖汽车电子行业资讯、市场动态、技术干货、知识见解、行业趋势等资讯深度覆盖。
评论
  • 11-29学习笔记11-29学习笔记习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习笔记&记录学习习笔记&记学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&学习学习笔记&记录学习学习笔记&记录学习学习笔记&记
    youyeye 2024-12-02 23:58 52浏览
  • RDDI-DAP错误通常与调试接口相关,特别是在使用CMSIS-DAP协议进行嵌入式系统开发时。以下是一些可能的原因和解决方法: 1. 硬件连接问题:     检查调试器(如ST-Link)与目标板之间的连接是否牢固。     确保所有必要的引脚都已正确连接,没有松动或短路。 2. 电源问题:     确保目标板和调试器都有足够的电源供应。     检查电源电压是否符合目标板的规格要求。 3. 固件问题: &n
    丙丁先生 2024-12-01 17:37 86浏览
  •         温度传感器的精度受哪些因素影响,要先看所用的温度传感器输出哪种信号,不同信号输出的温度传感器影响精度的因素也不同。        现在常用的温度传感器输出信号有以下几种:电阻信号、电流信号、电压信号、数字信号等。以输出电阻信号的温度传感器为例,还细分为正温度系数温度传感器和负温度系数温度传感器,常用的铂电阻PT100/1000温度传感器就是正温度系数,就是说随着温度的升高,输出的电阻值会增大。对于输出
    锦正茂科技 2024-12-03 11:50 70浏览
  • 最近几年,新能源汽车愈发受到消费者的青睐,其销量也是一路走高。据中汽协公布的数据显示,2024年10月,新能源汽车产销分别完成146.3万辆和143万辆,同比分别增长48%和49.6%。而结合各家新能源车企所公布的销量数据来看,比亚迪再度夺得了销冠宝座,其10月新能源汽车销量达到了502657辆,同比增长66.53%。众所周知,比亚迪是新能源汽车领域的重要参与者,其一举一动向来为外界所关注。日前,比亚迪汽车旗下品牌方程豹汽车推出了新车方程豹豹8,该款车型一上市就迅速吸引了消费者的目光,成为SUV
    刘旷 2024-12-02 09:32 101浏览
  • 光伏逆变器是一种高效的能量转换设备,它能够将光伏太阳能板(PV)产生的不稳定的直流电压转换成与市电频率同步的交流电。这种转换后的电能不仅可以回馈至商用输电网络,还能供独立电网系统使用。光伏逆变器在商业光伏储能电站和家庭独立储能系统等应用领域中得到了广泛的应用。光耦合器,以其高速信号传输、出色的共模抑制比以及单向信号传输和光电隔离的特性,在光伏逆变器中扮演着至关重要的角色。它确保了系统的安全隔离、干扰的有效隔离以及通信信号的精准传输。光耦合器的使用不仅提高了系统的稳定性和安全性,而且由于其低功耗的
    晶台光耦 2024-12-02 10:40 105浏览
  • 学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习笔记&记录学习习笔记&记学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&
    youyeye 2024-11-30 14:30 73浏览
  • 《高速PCB设计经验规则应用实践》+PCB绘制学习与验证读书首先看目录,我感兴趣的是这一节;作者在书中列举了一条经典规则,然后进行详细分析,通过公式推导图表列举说明了传统的这一规则是受到电容加工特点影响的,在使用了MLCC陶瓷电容后这一条规则已经不再实用了。图书还列举了高速PCB设计需要的专业工具和仿真软件,当然由于篇幅所限,只是介绍了一点点设计步骤;我最感兴趣的部分还是元件布局的经验规则,在这里列举如下:在这里,演示一下,我根据书本知识进行电机驱动的布局:这也算知行合一吧。对于布局书中有一句:
    wuyu2009 2024-11-30 20:30 106浏览
  • 概述 说明(三)探讨的是比较器一般带有滞回(Hysteresis)功能,为了解决输入信号转换速率不够的问题。前文还提到,即便使能滞回(Hysteresis)功能,还是无法解决SiPM读出测试系统需要解决的问题。本文在说明(三)的基础上,继续探讨为SiPM读出测试系统寻求合适的模拟脉冲检出方案。前四代SiPM使用的高速比较器指标缺陷 由于前端模拟信号属于典型的指数脉冲,所以下降沿转换速率(Slew Rate)过慢,导致比较器检出出现不必要的问题。尽管比较器可以使能滞回(Hysteresis)模块功
    coyoo 2024-12-03 12:20 71浏览
  • 遇到部分串口工具不支持1500000波特率,这时候就需要进行修改,本文以触觉智能RK3562开发板修改系统波特率为115200为例,介绍瑞芯微方案主板Linux修改系统串口波特率教程。温馨提示:瑞芯微方案主板/开发板串口波特率只支持115200或1500000。修改Loader打印波特率查看对应芯片的MINIALL.ini确定要修改的bin文件#查看对应芯片的MINIALL.ini cat rkbin/RKBOOT/RK3562MINIALL.ini修改uart baudrate参数修改以下目
    Industio_触觉智能 2024-12-03 11:28 45浏览
  • 戴上XR眼镜去“追龙”是种什么体验?2024年11月30日,由上海自然博物馆(上海科技馆分馆)与三湘印象联合出品、三湘印象旗下观印象艺术发展有限公司(下简称“观印象”)承制的《又见恐龙》XR嘉年华在上海自然博物馆重磅开幕。该体验项目将于12月1日正式对公众开放,持续至2025年3月30日。双向奔赴,恐龙IP撞上元宇宙不久前,上海市经济和信息化委员会等部门联合印发了《上海市超高清视听产业发展行动方案》,特别提到“支持博物馆、主题乐园等场所推动超高清视听技术应用,丰富线下文旅消费体验”。作为上海自然
    电子与消费 2024-11-30 22:03 86浏览
  • 当前,智能汽车产业迎来重大变局,随着人工智能、5G、大数据等新一代信息技术的迅猛发展,智能网联汽车正呈现强劲发展势头。11月26日,在2024紫光展锐全球合作伙伴大会汽车电子生态论坛上,紫光展锐与上汽海外出行联合发布搭载紫光展锐A7870的上汽海外MG量产车型,并发布A7710系列UWB数字钥匙解决方案平台,可应用于数字钥匙、活体检测、脚踢雷达、自动泊车等多种智能汽车场景。 联合发布量产车型,推动汽车智能化出海紫光展锐与上汽海外出行达成战略合作,联合发布搭载紫光展锐A7870的量产车型
    紫光展锐 2024-12-03 11:38 68浏览
  • 作为优秀工程师的你,已身经百战、阅板无数!请先醒醒,新的项目来了,这是一个既要、又要、还要的产品需求,ARM核心板中一个处理器怎么能实现这么丰富的外围接口?踌躇之际,你偶阅此文。于是,“潘多拉”的魔盒打开了!没错,USB资源就是你打开新世界得钥匙,它能做哪些扩展呢?1.1  USB扩网口通用ARM处理器大多带两路网口,如果项目中有多路网路接口的需求,一般会选择在主板外部加交换机/路由器。当然,出于成本考虑,也可以将Switch芯片集成到ARM核心板或底板上,如KSZ9897、
    万象奥科 2024-12-03 10:24 41浏览
我要评论
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦