分享
2023年面向服务架构SOA汽车软件研发体系.docx
下载文档

ID:936165

大小:20.14KB

页数:5页

格式:DOCX

时间:2023-04-16

收藏 分享赚钱
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
2023 面向 服务 架构 SOA 汽车 软件 研发 体系
面向效劳架构SOA汽车软件研发体系   Page 10  面向效劳架构(SOA)的汽车软件研发体系  目 录   TOC \o "1-3" \h \z \u 一、 概述 3   二、 为什么要引入SOA汽车软件 3   三、 如何有效的开发SOA汽车软件 6   四、 SOA汽车软件创新平台 13  概述  随着汽车智能化、网联化、共享化的趋势,终端用户对车辆功能的预期也悄然发生着改变,汽车在实现高等级自动驾驶/辅助驾驶功能的同时,也更趋向于提升用户体验,例如满足快速的功能更新和升级,可以提供个性化、人性化、差异化的功能与效劳等。  面向效劳的软件架构(Service-Oriented Architecture)正为未来的车辆软件效劳提供良好的解决方案。不同于传统汽车电子电气架构中面向信号的架构,面向效劳的软件架构(SOA)通过标准化的效劳接口,松耦合的效劳机制以及可组合扩展的效劳特性,结合未来以高性能计算平台——域控制器——为核心的集中化电子电气架构,将成为未来汽车领域“软件驱动创新〞的技术根底。  为什么要引入SOA汽车软件  SOA是一种软件架构,同时也是一种软件设计方法和理念,在IT领域已有数十年的应用经验。SOA具备〞松耦合〞、〞接口标准可访问〞和〞易于扩展〞等特点,使得开发人员能以最小的软件变更应对迭代多变的客户需求。  在智能网联汽车中,大量的功能需要控制器〔ECU〕间的协调工作来实现,当前ECU 间基于信号(Signal-Oriented)的点对点通讯将会变得异常复杂,且不具备灵活性和扩展性,微小的功能改动都会引起整车通讯矩阵的改动(图1)。  因此,联合电子将SOA引入到当前汽车软件设计中(图2),车辆功能被以面向效劳的设计理念架构为不同的效劳组件,有别于面向信号的传统架构,SOA中的每个效劳都具有唯一且独立互不影响的身份标识(ID),并通过效劳中间件(Service Middleware)完成自身的发布,对其他效劳的订阅以及与其他效劳的通讯工作。由此,SOA良好的解决了传统架构中因个别功能增减/变更而导致整个通讯矩阵与路由矩阵都要变更的问题。更进一步,由于其〞接口标准可访问〞的特性,效劳组件的部署不再依赖于具体特定的操作系统和编程语言,在一定程度上实现了组件的〞软硬别离〞。  图1 面向信号的架构(Signal-Oriented Architecture)  图2 面向效劳的架构(Service-Oriented Architecture)  如何有效的开发SOA汽车软件  对于汽车行业而言,SOA是一套新引入的技术,需要一套有效的流程、方法和工具,用以解决如下三个问题:1) 如何分析和设计效劳架构,2) 如何建模和记录效劳架构,3)如何部署和实现面向效劳的软件。  1) 如何分析和设计面向效劳的架构  “分析和设计效劳架构〞的过程是从客户需求到SOA软件架构产出的分析过程,相对于传统汽车软件开发采用的基于功能分解的面向过程分析方法,“用例驱动的开发方法〞和“面向效劳架构的设计方法〞是SOA软件架构开发的两个主要特点。  用例(Use Case)驱动的开发方法(图3)指从用户的角度而非开发人员的角度考虑功能需求和系统实现,重视从系统外部观察对系统的使用。由用例驱动的开发活动,可以建立需求和系统功能之间清晰的追溯关系,更好的应对智能网联产品需求的快速迭代更新。  面向效劳的分析方法(图4)那么是以业务为中心,在由用例分析得到系统功能需求的根底上,对业务逻辑进行抽象和封装,从业务角度寻找候选效劳〔Service Candidate〕,从架构角度强调效劳的重用性(reusable)、自主性(autonomous)以及组合扩展性(composable)特点,充分发挥SOA设计理念的优势,而不是仅仅作为技术实现方式。  图3 用例驱动的开发方法  图4 面向效劳的分析方法  2) 如何建模和记录面向效劳的架构  标准化的建模语言和统一化的文档结构,对提升架构的开发质量、实现架构内容的有效传递具有重要作用。SysML语言和Arc42模板可以作为SOA软件架构的标准语言和文档结构模板。  系统建模语言SysML〔System Modeling Language〕是由统一建模语言UML〔Unified Modeling Language〕扩展而来的标准化系统建模语言,能够准确表达系统及其组件的需求、行为、结构和属性。Rhapsody软件支持SysML建模,并提供了自动化功能,提高建模效率,同时保证与用例的追溯关系。Arc42明确定义了架构文档的结构,通过统一化的文档,提升开发团队中的信息传递效率和质量。  如以下列图5显示,联合电子使用SysML语言,Rhapsody建模工具以及Arc42架构模板进行应用效劳架构的开发。  图5 SysML语言,Rhapsody工具和ARC42开发模板  3) 如何部署和实现面向效劳的软件  “部署和实现面向效劳架构的软件〞的过程是以SOA软件架构为设计输入,最终开发实现出软件产品的工作过程(图6)。主要包括 1)对效劳接口行为的开发和实现,完成效劳接口与效劳主体逻辑的绑定;2) 针对目标运行环境,完成对效劳接口参数,效劳主体运行参数的配置;3)效劳接口与应用程序策略逻辑的集成编译。  AUTOSAR Adaptive 组件封装了SOA软件底层的通讯细节(包括SOME/IP协议,IPC等),同时提供代理(Proxy)-骨架(Skeleton)模型,该模型以C++面向对象语言描述,方便上层应用开发人员调用标准效劳接口(API)进行开发。Application Design Model是该模型另一种可配置的呈现,开发人员通过使用相应的配置工具对Application Design Model进行描述和配置,即可实现基于SOA效劳架构的软件落地和部署。联合电子使用AUTOSAR Adaptive组件完成SOA效劳架构软件的开发(图7):  图6 部署和实现面向效劳的软件  图7 应用软件设计模型  SOA汽车软件创新平台  联合电子开发的域控制器XCU ,提供了部署SOA汽车软件的平台。在硬件方面,XCU具备高算力处理器芯片和多路车规级以太网通道;在软件方面,XCU搭载POSIX操作系统和AUTOSAR Adaptive平台。  根据SOA软件开发方法,可从两个切入点开展SOA汽车软件平台的开发。  1)自下至上,从车辆根底功能/信号出发,将已有的应用功能逻辑/信号(eg:车辆车速信息)抽象或封装成效劳组件,这类组件被称为根底效劳层(Basic/Platform Service Layer)组件,具有最高的可复用性和可组合性,这些组件将为上层(业务效劳层Business Service Layer)的效劳组件提供最根底的支持。  2)自上而下,从整车业务逻辑和用例出发,结合各领域的核心业务知识,设计业务效劳层(Business Service Layer)的效劳组件;同时,遵循效劳组件的复用性和自主性等原那么,向下设计规划根底效劳层(Basic/Platform Service Layer)的效劳组件(图8)。  图8 基于域控制器(XCU)的SOA效劳架构

此文档下载收益归作者所有

下载文档
你可能关注的文档
收起
展开