SOA如何应用于经典的软件开发流程

2023-06-02 0 597

(function definition)、构架表述(System Architecture)、掌控普莱邦设计(System Design)、商品结构设计(Product Design)两个大的各方面。而新一代智能驾驶掌控系统须要面向全国服务项目展开适当的机能结构设计和合作开发,同时实现硬件解耦。这种合作Attichy将对整个智能驾驶来说造成革命性的影响,比如说高性能排序网络平台HPC包涵多核直链处理商业模式,通过Hypervisor控制技术同时实现对硬件抽象化,Inter-Core通信控制技术使余篇和单面多核同时实现重要信息互联互通,排序模块趋于“云排序+中央排序+边缘排序结合等数个各方面的变革。如上这些结构设计准则更多的是基于SOA的构架展开的,这就大大增强了网络平台的可拓展性,可扩展性。当前更多的整车厂选择在智能驾驶中采用SOA的合作开发商业模式,这能更加快速的同时实现从底层、第二层到网络层的应用软件结构设计,且相对非常多的应用软件只要接口表述得当,就能同时实现应用软件既存和机能的迁移,同时能大大的降低合作开发阶段和成本。SOA如何应用于经典的软件开发流程对SOA的结构设计操作过程来讲,其服务项目结构设计准则包括宠信、抽象化、PCB、协同在内的数个微观。比如说对智能驾驶机能合作开发来说,如果须要多次用到某一方法论原素比如说匝Rampur等环境重要信息,则如果将匝Rampur检验组件创建为宠信(比如说PCB到Building Block中),则对该匝Rampur检验源(如不同方位的探头)展开调整,则由此对匝Rampur检验造成的任何更新改变单厢机能的掌控方法论能在手动激活后调用促发西厄县相关的总体规划掌控组件展开车控。因此,促发西厄县的总体规划决策掌控方法论模块能完全应用于手动西厄县组件。掌控系统技师只须要保证表述的接口适用于于促发西厄县已经发布或预定的报文即可。对手动驾驶域控模块相关人士来说,如果保持方法论掌控普莱邦间的协同和宠信,包涵对公共池内的原素对齐,对积分算子模块中的方法论构造,布吕马间的资源或组件调度等。本文将以智能驾驶掌控系统合作开发结构设计示例来讲解和分析适当的SOA为依据下的构架结构设计和应用软件结构设计。

面向全国ASPICE业务流程的SOA应用软件构架业务流程

适用于于SOA构架的ASPICE应用软件结构设计操作过程也是在敏捷合作开发的商业模式下展开的掌控系统合作开发业务流程。从智能驾驶机能合作开发微观上讲,如前所述SOA构架合作开发商业模式包括了掌控系统机能、掌控系统构架、应用软件机能、应用软件构架两个各方面。其中依次由依次称之为商品相关人士Product Owner、机能相关人士Function Owner、构架相关人士Architect Owner、子组件相关人士Module Owner的两个角色共同承担。机能结构设计是搭建机能构架图和依据商品技师输出的商品需求表述展开机能分解表述,构架相关人士则根据整车构架及机能相关人士输出的要素重要信息制定合适的硬件构架。这里须要说明的是很多情况下,机能相关人士和构架相关人士往往是同一个人。组件相关人士则是根据机能表述编制适当的掌控系统硬件组件、零部件硬件组件以同时实现上层表述的机能需求。各相关人士间的角色定位将在其中,各阶段的合作开发输出机能操作过程如下:1、项目机能表述项目机能原素(function element)包涵与顶层结构设计相关的不同属性,例如车辆类型、预期市场、项目机能以及机能发布计划等。在实际合作开发中,这类输出一般是商品策划部门或市场部输出的整车机能合作开发需求或整车装备需求。本文将以合作开发智能驾驶掌控系统机能中的点对点手动驾驶NOP为例展开详细的分析说明如前所述SOA的构架结构设计是如何应用于手动驾驶掌控系统合作开发的。如下图举例中,表示了同时实现新一代手动驾驶掌控系统NOP场景表述需求。SOA如何应用于经典的软件开发流程2、掌控系统构架结构设计阶段(System Architecture Design)这个阶段涉及商品能力表述及组件表述。用于描述智能汽车中的用户机能,通过表述适当的函数来指出使用哪些子掌控系统或者零部件具备适当的商品能力(Product Capabilities,PC)并对其展开适当的示例化来同时实现此机能。(1)商品能力PC:这种称之为商品能力的组件主要是用于表述想要同时实现该机能组件的传感器或执行器所具备的能力,这也是位于各个时序图上各个节点的能力描述。通常,该商品能力的表述主要由商品技师牵头,机能所有者、构架师和组件所有者/结构设计者的跨职能小组共同决定。(2)商品能力示例化PC Instance:商品能力能被认为是一种高级服务项目,一些须要在汽车中同时实现的机能,但它没有描述如果如何同时实现。商品能力示例是 PC 的简单示例化,能在网络平台中拥有 PC 的不同变体。如果须要 PC 的不同变体示例以及在何处使用不同的示例,则组件所有者负责。掌控系统构架师负责表述掌控系统中表述了商品能力PC的不同类型,并确定哪些 PC 须要由跨职能团队才能完成。通过将当前表述的 PC 和其他的须要PC 建立依赖关系,我们能建模一个完整的机能构架,该机能层级的架构无需研究实际的同时实现机制。这对表述须要哪些高级服务项目 (PC) 以及分配谁(哪个组件)负责实施每个 PC 非常有帮助。如上操作过程一般是通过各种图表(包涵用例图、序列图、活动图等)来完成的。如下图表示了一种活动图所示意的掌控系统交互方式。SOA如何应用于经典的软件开发流程由于在表述操作过程中还建立了与机能间的连接,因此我们能使用该组件来总体规划须要同时实现 PC 的顺序,以便我们在每个版本的集成阶段合作开发出正确的机能。(3)组件及示例Module Instance:组件是整个模型甚至整个组织中非常核心的原素。从SOA的构架结构设计上讲,每个结构设计的 PC 都被分配到一个并且只有一个组件(或者称之为函数),该组件负责同时实现 PC,但在整个网络平台生命周期内维护和发展 PC,总体规划 PC 的演进步骤,提供路线图等。PC 表述的机能在 Component 中同时实现,组件示例能确保在网络平台中拥有组件的不同变体。掌控系统构架师负责表述掌控系统中存在哪些组件,但组件所有者负责领导组件内的工作,并负责维护和发展组件。组件所有者还负责是否须要组件的不同变体示例以及在何处使用等。同时,组件中的相关参数是在对应构建的掌控系统机能规范中同时实现表述的。SOA如何应用于经典的软件开发流程3、应用软件构架结构设计阶段应用软件组件Software Component:组件是组件的实际结构设计和同时实现。组件能是应用软件或硬件组件,但在SOA的应用软件构架中,我们将主要处理应用软件组件,组件表述了组件须要哪些接口以及提供哪些接口。其中接口将包括SOA构架所要求的服务项目、属性和事件。在硬件组件上,接口能是螺孔或电线连接器。应用软件包Software Package:应用软件包是将部署到特定运行环境时的所有应用软件组件、清单文件等的集合。为了同时实现面向全国SOA的构架结构设计和合作开发操作过程,须要重点表述。4、底层驱动结构设计阶段中央掌控模块ECU/处理器Processor/虚拟机Virtual Machine:一个 ECU 能由一个或数个处理器组成,一个处理器能运行一个或数个虚拟机。不必对每个组件展开建模,例如,如果 ECU 仅包涵一个处理器,则仅对 ECU 展开建模就足够了。能将各个应用软件包部署到如上运行时环境中的任何一个。网络及连接器Network Connector:表述网络以及连接到它的运行时环境。运行时环境能由一个或数个网络连接组成,这些网络连接能是 CAN、CAN FD、以太网、VLAN、LIN 等。严格说来,底层驱动结构设计如果属于应用软件构架结构设计的其中一个部分,面向全国底层应用软件结构设计部分,通常与顶层应用软件结构设计团队不是一伙人,且具有较大区别,该合作开发操作过程由顶层应用软件结构设计人员对底层应用软件结构设计人员单独提出需求及建议。一般的需求包括网络平台应用软件总体构架及对相关AUTOSAR标准组件和复杂驱动的调度框架结构设计、合作开发和集成要求;内存、非易失性存储、任务、中断等等资源和权限分配;上下电业务流程和管理的结构设计;掌控系统运行状态监控、异常处理等机能的结构设计等各方面。

如前所述SOA构架模型结构设计分工

如前所述SOA应用软件模型构架的结构设计操作过程实际是在研究如何在合作开发业务流程中展开硬件解耦。包括构建不同的分层来隔离硬件与应用软件机能和服务项目。例如,将手动驾驶相关的传感器和执行器方法论与应用程序方法论分开,则能够在中央掌控系统中分配应用程序,同时保持传感器/执行器尽可能的具体。程序间能利用SOA的服务项目商业模式同时实现应用软件包的调用,传感器和执行器也能作为组件或模组来展开边缘采购,性能则是集中管控,中央掌控系统能将战略应用软件展开分开,这就更容易展开应用软件组件移植和处理。这一操作过程实际就是在提高上层网络层应用软件关键机能的复用性,瞄准硬件机能与方法论掌控分离。这里须要说明的是,硬件间的协同和调度是通过中间件来同时实现。从如下图所示,SOA的构架从下至上依次底层驱动机能管理,物理层机能管理,车辆掌控服务项目,面向全国用户的应用服务项目,云端远程管理。SOA如何应用于经典的软件开发流程底层驱动机能管理:用于同时实现包涵诊断、日志记录、存储管理、驱动管理等相关机能。物理层机能管理:主要是设置I/O接口将原始传感器数据展开输出,同时也是执行到车端的掌控模块(如电机、制动卡钳等);车辆掌控服务项目:车端掌控包涵上层ADAS发送的执行指令到掌控执行器执行该指令的适当ECU(如掌控电机的VCU、HCU或ESP),该车辆掌控服务项目是综合考虑了车身稳定性与动力学反馈模型得出的。网络层服务项目:该层服务项目就是智能驾驶面向全国用户级别的顶层合作开发机能,主要用于同时实现包涵传统的智能驾驶机能,比如说HWP、NOP、TJP以及ALC等。云端管理服务项目:该层服务项目主要是面向全国远程监控,远程掌控,大数据存储等特殊场景。通常该服务项目须要如前所述4G/5G网络展开远程连接。人机交互管理机能:人机交互管理机能一般是针对不同的车型呈现出不同的商业模式的,因此,这一块一般是独立于SOA的机能构架。SOA通常只涉及底层对车辆掌控方法论,对网络平台化车型机能合作开发来说,这一块是无法为用户所感知的。而HMI的显示设置则是用户能够真切感知和掌控的,因此,不同车型肯定是有极大的不同之处。因此,从协议上分析不难看出,SOA内部的网络构架一般是如前所述以太网为依据的交互方式,采用Some/ip的协议展开通信掌控。而如果在网络平台化车型的合作开发操作过程中,HMI这一块的通常仍然按照原始CAN/CANFD信号商业模式的通信协议展开交互掌控。这么做的原因是,智能驾驶的HMI行为比核心应用机能更容易改变,特别是在不同车型合作开发后期通常会选择不同的显示和交互方式。同时,由于合作开发核心应用软件和HMI结构设计需要不同的能力技能,因此,将HMI机能与其他网络层应用软件机能分离,为了同时实现这一点,一般须要使用Model-View-Controller,用户输出由Controller处理,Controller用于解释用户的意图并操作模型。

SOA服务项目同时实现操作过程

随着车载以太网控制技术的日益成熟,国内大部分OEM都已经着手SOA的结构设计工作,并将以太网通信矩阵生成ARXML文件,用于项目前期的网络行为仿真和后期测试验证。对已经完成构架搭建的SOA来讲,须要将其建模后的成品导入到应用软件团队展开服务项目同时实现。其操作过程包涵:以Some/Ip协议导入Service  ARXML,导入后新增ETH、TCP/IP、Some/IP组件(BSW工程),建立与Service Handler SWC(网络层)中Port Interface连接,为所有Service Handler SWC增加可运行时间,表述Windows Service Handler SWC 和Feature SWC到Simulink/Stateflow。通过符合Autosar的ARXML和Simulink展开交互,将由应用软件结构设计技师继续展开算法结构设计并手动生成代码。SOA如何应用于经典的软件开发流程

总 结

本文从SOA应用软件构架模型的构建角度出发讲解了适当同时实现操作过程原理,利用了如前所述模型、集成式的可视化合作开发工具PREEvision展开了智能汽车行业及相关领域E/E构架合作开发并支持以太网SOA的构架合作开发结构设计,本文以介绍SOA构架结构设计模型为依据展示了如何在Enterprise Architect中展开SOA建模。同时,以掌控系统技师的角度说明如何利用Enterprise Architect构建SOA掌控系统及应用软件构架设计、机能结构设计Function Design 和组件结构设计Module Design。对SOA在整个智能驾驶掌控普莱邦设计原理有个清晰的把控。

推荐阅读

奔驰重要信息娱乐掌控系统—MBUX拆解梳理汽车E/E构架的网络安全分析一文搞懂AUTOSAR的DEM组件一文搞懂CAN总线的AUTOSAR网络管理谈谈在V模型业务流程中引入敏捷合作开发深度解读汽车域掌控器谈谈在V模型业务流程中引入敏捷合作开发手动驾驶域掌控器重要信息梳理手动驾驶中的路径总体规划汽车应用软件结构设计的下一个阶段是什么样的?深度分析整车掌控域现状与发展谈谈对汽车OTA的理解小鹏P7内部ECU控制技术重要信息梳理保时捷Taycan的电子电气构架详解欧阳明高院士:滑板底盘将给汽车带来一场革命何写一份牛X的汽车应用软件需求关于对汽车ECU应用软件测试的理解特斯拉最新中央排序组件(CCM)解析2021款特斯拉Model Y ECU接口梳理详解CANoe之CAPL编程如前所述UDS的Bootloder详解关于整车上下电业务流程的理解DoIP协议介绍,资料分享!一文了解汽车嵌入式AUTOSAR构架|附下载

分享不易,恳请点个【👍和【在

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务