首页> 中国专利> 一种管理整车面向服务架构的服务清单的系统及方法

一种管理整车面向服务架构的服务清单的系统及方法

摘要

本发明公开了一种管理整车面向服务架构的服务清单的系统及方法,该系统包括云端和车机端;车机端包括软件管理模块,用于读取车机端上所有的应用软件信息并上传到云端;云端包括服务定义模块、基准应用软件定义模块、快照生成模块和信息匹配模块,服务定义模块用于各个服务的元数据进行定义并保存;基准应用软件定义模块用于对各个基准应用软件的信息进行定义并保存;快照生成模块用于在生成软件框架代码的同时对服务和基准应用软件生成相应的快照并保存;信息匹配模块用于将车机端上传的应用软件信息于基准应用软件信息进行匹配。本发明能够对车辆上的SOA服务清单进行有效管理,同时能够降低SOA软件架构的开发难度,提高开发效率。

著录项

  • 公开/公告号CN114816508A

    专利类型发明专利

  • 公开/公告日2022-07-29

    原文格式PDF

  • 申请/专利权人 重庆长安汽车股份有限公司;

    申请/专利号CN202210467580.X

  • 发明设计人 周小波;郝金隆;史建波;

    申请日2022-04-29

  • 分类号G06F8/71;G06F8/30;G06F11/30;G06F16/901;

  • 代理机构重庆博凯知识产权代理有限公司;

  • 代理人项晓丹

  • 地址 400020 重庆市江北区建新东路260号

  • 入库时间 2023-06-19 16:08:01

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2022-07-29

    公开

    发明专利申请公布

说明书

技术领域

本发明涉及汽车软件技术领域,具体涉及一种管理整车面向服务架构的服务清单的系统及方法。

背景技术

随着汽车智能化功能逐渐增加,软件定义汽车渐成潮流,基于面向服务架构(SOA:Service Oriented Architecture))的汽车软件架构被行业内当作整车软件架构开发的设计标准。

在SOA架构下,车辆功能被设计成一个个不同的服务,供其它软件模块重复使用,很好的解决了传统架构中因个别功能增加/变更从而导致整个通讯矩阵,上下游模块都有跟随变更的问题,但也带来了新的问题,主要有:

1、基于SOA的软件架构实现复杂度增加,传统的手写代码的方式将降低开发人员的开发效率。

2、由于车辆功能配置差异,不同车型提供的服务清单也会各不相同,加上每个车辆OTA的策略差异,会造成即使同一车型的不同车辆中的服务清单也有所差异。因此如何有效管理每辆车上当前提供的SOA服务清单变得更加困难。

发明内容

针对现有技术存在的上述不足,本发明要解决的技术问题是:如何提供一种能够对车辆上的SOA服务清单进行有效管理,同时能够降低SOA软件架构的开发难度,提高开发效率的管理整车面向服务架构的服务清单的系统及方法。

为了解决上述技术问题,本发明采用如下技术方案:

一种管理整车面向服务架构的服务清单的系统,包括云端和车机端;

所述车机端包括软件管理模块,所述软件管理模块应用读取所述车机端上所有的应用软件信息并上传到云端;

所述云端包括服务定义模块、基准应用软件定义模块、快照生成模块和信息匹配模块,所述服务定义模块用于各个服务的元数据进行定义并保存;所述基准应用软件定义模块用于对各个基准应用软件的信息进行定义并保存;所述快照生成模块用于在生成软件框架代码的同时对服务和基准应用软件生成相应的快照并保存;所述信息匹配模块用于将所述车机端上传的应用软件信息于基准应用软件信息进行匹配。

一种管理整车面向服务架构的服务清单的方法,采用上述的管理整车面向服务架构的服务清单的系统,包括以下步骤:

步骤1)所述云端的服务定义模块对各个服务的元数据进行定义并保存;

步骤2)所述云端的基准应用软件定义模块对各个基准应用软件的信息进行定义并保存,且每个基准应用软件包括一个或多个步骤1)中的服务;

步骤3)各个基准应用软件基于其管理的服务生成对应的软件框架代码及配置文件,配置文件包括生成软件框架代码过程中由所述快照生成模块生成的服务和基准应用软件的快照;

步骤4)车辆启动时,所述软件管理模块将车辆上的应用软件信息传递到云端,所述云端的信息匹配模块将车辆上传的应用软件信息与基准应用软件的信息进行匹配,根据匹配成功的基准应用软件信息得到当前整车的服务清单。

优选的,步骤1)中对服务的元数据定义的内容包括服务编号、服务名称、服务名称代码、以及服务中包含的方法,方法包括方法名称、方法名称代码、输入参数、以及返回值,且一个服务包括一个或多个方法。

优选的,步骤1)中,云端对服务的元数据进行保存时,还基于当前的服务自动生成一个与该服务相对应的哈希值并保存在云端,参与该哈希值计算的参数包含:服务名称代码、方法名称代码、输入参数、以及返回值。

优选的,步骤2)中对基准应用软件的信息进行定义的内容包括:基准应用软件件号、基准应用软件所属车型、基准应用软件版本号、以及该基准应用软件关联的服务清单。

优选的,步骤3)中,服务快照的生成方法为:

根据当前基准应用软件关联的服务清单,生成服务清单内所有服务的服务快照表并进行保存;

服务清单中某个服务是否需要生成服务快照的判断方法为:根据服务编号获取到该服务的哈希值,并判断该哈希值是否在服务快照表中,若是则不生成该服务的快照,若否则将该服务的元数据信息进行快照并存储。

优选的,步骤3)生成软件框架代码过程中基准应用软件快照的生成方法为:将每次生成代码时的基准应用软件信息进行快照并保存,同时产生一个对应的基准应用软件快照编号,将基准应用软件快照编号与服务清单内所有的服务快照编号的关联关系进行保存,并将基准应用软件快照编号、基准应用软件件号、基准应用软件版本号三个数据存储到生成的软件框架代码文件中。

优选的,步骤4)中,车辆启动时上传到云端的信息包括车辆识别码、应用软件件号、应用软件版本号、应用软件快照编号。

一种存储介质,所述存储介质存储有一个或者多个程序,所述一个或者多个程序被处理器运行时,执行上述的管理整车面向服务架构的服务清单的方法。

与现有技术相比,本发明具有以下优点:

1、本发明通过在云端对服务定义及基准应用软件定义进行统一的管理,并在此基础上以基准应用软件的维度实现SOA框架代码生成,快照存储功能,再结合车机端上报的应用软件清单及版本信息便可实现对整车SOA服务清单及服务定义的有效管理。

2、本发明定义好基准应用软件信息后,基于该基准应用软件关联的SOA服务清单,自动生成相关的软件SOA框架代码,开发人员只需要在该软件框架代码中实现自己的业务功能逻辑即可,通过该方法可大大提高开发人员在SOA架构下的软件开发效率。

附图说明

图1为本发明管理整车面向服务架构的服务清单的系统的系统框图;

图2为本发明管理整车面向服务架构的服务清单的方法的流程图;

图3为本发明管理整车面向服务架构的服务清单的方法中后台数据库的实体关系图。

具体实施方式

下面将结合附图及实施例对本发明作进一步说明。

如附图1所示,一种管理整车面向服务架构的服务清单的系统,包括云端和车机端;

车机端包括软件管理模块,软件管理模块用于读取车机端上所有的应用软件信息并上传到云端;

云端包括服务定义模块、基准应用软件定义模块、快照生成模块和信息匹配模块,服务定义模块用于各个服务的元数据进行定义并保存;基准应用软件定义模块用于对各个基准应用软件的信息进行定义并保存;快照生成模块用于在生成软件框架代码的同时对服务和基准应用软件生成相应的快照并保存;信息匹配模块用于将车机端上传的应用软件信息于基准应用软件信息进行匹配。

如附图2所示,一种管理整车面向服务架构的服务清单的方法,采用上述的管理整车面向服务架构的服务清单的系统,包括以下步骤:

步骤1)云端的服务定义模块对各个服务的元数据进行定义并保存。对服务的元数据定义的内容应至少包括服务编号(服务ID)、服务名称、服务名称代码(服务名称CODE)、以及服务中包含的方法,方法至少包括方法名称、方法名称代码(方法名称CODE)、输入参数、以及返回值,且一个服务包括一个或多个方法。为了实现对服务定义信息的变化管理,云端对服务的元数据进行保存时,还基于当前的服务自动生成一个与该服务相对应的哈希值(HASH值)并保存在云端的数据库,参与该哈希值计算的参数包含:服务名称代码、方法名称代码、输入参数、以及返回值,生成规则是将服务名称CODE及该服务下所有的方法名称CODE、输入参数、返回值拼接成一个字符串,然后计算该字符串的HASH值为最终该服务的HASH值。

步骤2)云端的基准应用软件定义模块对各个基准应用软件的信息进行定义并保存,且每个基准应用软件包括一个或多个步骤1)中的服务。一个车辆中往往会有多个基准应用软件,每个基准应用软件又要实现多个SOA服务,为了实现服务的统一管理目的,需在云端进行基准应用软件的定义;对基准应用软件的信息进行定义的内容至少应包括:基准应用软件件号、基准应用软件所属车型、基准应用软件版本号、以及该基准应用软件关联的服务清单。

步骤3)各个基准应用软件基于其管理的服务生成对应的软件框架代码及配置文件,配置文件包括生成软件框架代码过程中由快照生成模块生成的服务和基准应用软件的快照。在步骤2)中对基准应用软件定义完成后,可基于当前基准应用软件关联的服务信息,自动生成相关的软件SOA框架代码,开发人员只需要在该框架代码中实现自己的业务功能逻辑即可,通过该方法可大大提高开发人员在SOA架构下的软件开发效率。在生成代码的同时需对当前应用的所有信息生成相应的快照并保存。

具体的,服务快照的生成方法为:

根据当前基准应用软件关联的服务清单,生成服务清单内所有服务的服务快照表并进行保存到数据库中,用于后续管理使用;

服务清单中某个服务是否需要生成服务快照的判断方法为:根据服务编号获取到该服务的哈希值(HASH值),并判断该哈希值是否在服务快照表中,若是则不生成该服务的快照,若否则将该服务的元数据信息进行快照并存储。

具体的,基准应用软件快照的生成方法为:将每次生成代码时的基准应用软件信息进行快照并保存,同时产生一个对应的基准应用软件快照编号(基准应用软件快照ID),将基准应用软件快照编号与服务清单内所有的服务快照编号的关联关系进行保存,并将基准应用软件快照编号、基准应用软件件号、基准应用软件版本号三个数据以json文件存储到生成的软件框架代码文件中,后续在安装基准应用软件到车辆中时需将该文件一起安装,其存储格式为:

{

"app_id":"基准应用软件快照ID",

"app_no":"基准应用软件件号",

"app_version":"基准应用软件版本号"

}。

具体的,每个基准应用软件会存在多个基准应用软件快照,每个基准应用软件快照中会有多个服务快照,通过基准应用软件的快照ID可查询到与该基准应用软件关联的所有服务快照信息。

步骤4)车辆启动时,软件管理模块将车辆上的应用软件信息传递到云端,云端的信息匹配模块将车辆上传的应用软件信息与基准应用软件的信息进行匹配,根据匹配成功的基准应用软件信息得到当前整车的服务清单,车辆启动时上传到云端的信息包括车辆识别码(VIN码)、应用软件件号、应用软件版本号、应用软件快照编号(应用软件快照ID)。

具体的,待开发人员将应用软件开发完成后,可通过预置或者OTA方式将应用软件安装到车辆上,车辆上的软件管理模块通过读取各个应用软件模块目录下json文件的方式,可实现对整车的应用软件清单及版本信息的管理,每次车辆启动后将当前车辆的应用软件清单及版本信息上报给云端,其上传方式可通过调用云端提供的HTTP接口来实现,云端为每台车辆建立相应的数据记录并保存。上传的信息至少包括:车辆VIN码,应用软件件号,应用软件版本信息,以及应用软件快照ID。其上传的数据包格式为:

{

"vin":"车辆VIN码",

"app_data":[

{

"app_id":"应用1软件快照ID ",

"app_no":"应用1软件件号",

"app_version":"应用1软件版本号"

},

{

"app_id":"应用2软件快照ID",

"app_no":"应用2软件件号",

"app_version":"应用2软件版本号"

},

...

]

}

云端接受到上传的数据后,转换为结构化的数据进行存储,其存储结构示例如下:

基于以上数据,便可查询任意车辆当前有那些应用软件,及每个应用软件的版本信息,再结合与该车辆应用软件快照ID相匹配的基准应用软件快照ID在步骤3)中关联的服务快照ID信息,便可实现对任意车辆的当前提供的SOA服务清单的查询管理。

具体的,如附图3所示,一个车辆上对应有n个应用软件,一个应用软件对应有n个服务和n个应用软件快照,一个服务对应有n个方法和n个服务快照,一个应用软件快照对应n个服务快照,一个服务快照对应n个方法。

另外,本方案还提供一种存储介质,存储介质存储有一个或者多个程序,一个或者多个程序被处理器运行时,执行上述的管理整车面向服务架构的服务清单的方法。

与现有技术相比,本发明通过在云端对服务定义及基准应用软件定义进行统一的管理,并在此基础上以基准应用软件的维度实现SOA框架代码生成,快照存储功能,再结合车机端上报的应用软件清单及版本信息便可实现对整车SOA服务清单及服务定义的有效管理。本发明定义好基准应用软件信息后,基于该基准应用软件关联的SOA服务清单,自动生成相关的软件SOA框架代码,开发人员只需要在该软件框架代码中实现自己的业务功能逻辑即可,通过该方法可大大提高开发人员在SOA架构下的软件开发效率。

最后需要说明的是,以上实施例仅用以说明本发明的技术方案而非限制技术方案,本领域的普通技术人员应当理解,那些对本发明的技术方案进行修改或者等同替换,而不脱离本技术方案的宗旨和范围,均应涵盖在本发明的权利要求范围当中。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号