当前位置: 首页 > 专利查询>SAP欧洲公司专利>正文

用于实现微服务之间的接口设计一致性的应用评估系统技术方案

技术编号:26890210 阅读:28 留言:0更新日期:2020-12-29 16:05
用于实现微服务之间的接口设计一致性的方法和系统。作为示例,接收至少包括参考对象集合的用户界面(UI)训练请求,该参考对象集合至少包括参考UI集合。用户界面行为参考模型(UIBRM)被训练成通过分析响应于与参考UI集合的交互而呈现在浏览器上的参考UI显示来生成经训练的UIBRM。接收到至少包括开发对象集合的UI显示评估请求,该开发对象集合至少包括开发UI集合。执行UI显示评估,以通过将经训练的UIBRM与响应于至少与开发UI集合的子集的交互而呈现在浏览器上的开发UI显示进行比较,来生成对开发UI显示的评估。

【技术实现步骤摘要】
用于实现微服务之间的接口设计一致性的应用评估系统
本公开涉及用于实现微服务之间的接口设计一致性的一致性评估系统。
技术介绍
在基于微服务(mirco-services-based)的体系结构中,应用(例如,分布式应用)可以被结构化为耦合服务的集合,这可以为每个相应服务启用并行开发工作。对于具有广泛范围和大量接口(例如,应用编程接口(applicationprogramminginterface,API)和用户界面(userinterface,UI)显示)的应用,开发通常被分布到多个团队,这些团队可能包括来自同一组织的团队、不同组织的团队、不同公司的团队或第三方组织的团队。应用消费者期望在整个应用上至少有同构(homogeneous)的UI和一致的API集合。对于应用,不能再假设只有单个具有相同的准则(guideline)、小部件集合和可重用样式表的UI库可以用于应用以提供同构的用户体验。为了满足应用消费者的期望,需要开发和检查一致性准则。这通常通过手动检查一致性准则来实现。
技术实现思路
本公开描述了用于实现微服务之间的接口设计一致性的一致性评估系统。在实施方式中,一种用于实现微服务之间的接口设计一致性的计算机实施的方法。由一致性评估基础设施(consistencyassessmentinfrastructure,CAI)接收用户界面(UI)训练请求,UI训练请求至少包括与参考应用相关联的参考对象集合,参考对象集合至少包括含有参考UI集合的参考代码。由CAI训练用户界面行为参考模型(userinterfacebehaviorreferencemodel,UIBRM),以通过分析由参考应用响应于与参考UI集合的交互而呈现在浏览器上的参考UI显示来生成经训练的UIBRM。由CAI接收UI显示评估请求,UI显示评估请求至少包括与开发应用相关联的开发对象集合,开发对象集合至少包括含有开发UI集合的开发代码。由CAI执行UI显示评估,以通过将经训练的UIBRM与由开发应用响应于至少与开发UI集合的子集的交互而呈现在浏览器上的开发UI显示进行比较,来生成对开发UI显示的评估。由CAI向客户端系统发送对开发UI显示的评估。所描述的主题可以使用计算机实施的方法来实施:一种存储计算机可读指令以执行计算机实施的方法的非暂时性计算机可读介质;以及一种计算机实施的系统,其包括与一个或多个计算机互操作地耦合的一个或多个计算机存储设备,并且具有存储指令的有形非暂时性的机器可读介质,当该指令被一个或多个计算机运行时,执行存储在非暂时性计算机可读介质上的计算机实施的方法/计算机可读指令。本说明书中描述的主题可以被实施以实现一个或多个以下优点。首先,为了实现微服务之间的接口设计一致性,只有与至少一个参考应用相关联的包括参考代码、参考应用编程接口(API)和参考UI的参考对象需要被开发,或者只需要从要被评估一致性的开发对象和相关联的开发应用的最佳实践对象中进行选择,这最小化或消除了对依赖于编写准则和/或准则的人工控制的需要。其次,通过使用至少一种机器学习算法来训练和利用UIBRM和代码参考模型(codereferencemodel,CRM),以将新开发的代码与最佳实践参考对象进行比较,并返回偏差分数和偏差信息,使得一致性验证能够被添加到持续集成流水线开发过程中,并将代码检查扩展到同构用户体验问题。在具体实施方式、权利要求和附图中阐述了本说明书主题的一个或多个实施方式的细节。根据具体实施方式、权利要求和附图,本主题的其他特征、方面和优点对于本领域普通技术人员来说将变得显而易见。附图说明图1是示出根据本公开的实施方式的用于实现微服务之间的接口设计一致性的示例应用评估系统(applicationassessmentsystem,AAS)计算系统的框图。图2是示出根据本公开的实施方式的用于使用一致性应用基础设施对参考应用进行学习时间训练的方法的序列图,该一致性应用基础设施用于在微服务之间的接口的设计中实现接口设计一致性。图3是示出根据本公开的实施方式的用于使用一致性应用基础设施对新应用进行评价时间评估的方法的序列图,该一致性应用基础设施用于实现微服务之间的接口设计一致性。图4是示出根据本公开的实施方式的用于使用一致性应用基础设施对用户界面显示进行评价时间评估的方法的序列图,该一致性应用基础设施用于实现微服务之间的接口设计一致性。图5是示出根据本公开的实施方式的用于实现微服务之间的接口设计一致性的计算机实施的方法的示例的流程图。图6是示出根据本公开的实施方式的用于提供与所描述的算法、方法、功能、过程、流程和程序相关联的计算功能的计算机实施的系统的示例的框图。不同附图中相同的附图标记和名称指示相同的元件。具体实施方式以下具体实施方式描述了用于实现微服务之间的接口设计一致性的应用评估系统(AAS),并且被呈现为使得本领域的任何技术人员能够在一个或多个特定实施方式的上下文中制作和使用所公开的主题。在不脱离本公开的范围的情况下,可以对所公开的实施方式进行各种修改、变更和置换,并且这些修改、变更和置换对于本领域普通技术人员来说是显而易见的,并且所定义的一般原理可以应用于其他实施方式和应用。在一些情况下,对于获得对所描述的主题的理解来说是不必要的并且在本领域普通技术人员的技能范围内的一个或多个技术细节可以被省略,以便不会模糊一个或多个所描述的实施方式。本公开不旨在限于所描述或示出的实施方式,而是符合与所描述的原理和特征一致的最宽范围。出于本公开的目的,典型的应用(例如,分布式科学、教育、金融或娱乐应用)可以基于微服务体系结构,并且被构造为耦合服务的集合,这可以为每个相应服务启用并行开发工作。对于具有广泛范围和大量接口的应用(例如,应用编程接口(API)和用户界面(UI)显示(或显示)),开发通常分布到多个团队,其中可能包括来自同一组织的团队、不同组织的团队、不同公司的团队或第三方组织的团队。一大群分布式开发者可能会在分布式应用的开发中利用异构(heterogeneous)的技术、语言和库。应用消费者期望在整个应用上至少有同构的UI以及一致的代码和API。可以为应用创建新的API集合,并且这个新的API集合可以用于扩展应用或将其嵌入另一解决方案场景。当与新的API集合相关联的特性是异构的和不一致的时候,扩展应用或将其嵌入到另一解决方案场景中的努力可能是困难的,甚至是不可能的。对于应用,不能再假设具有相同的准则、小部件集合和可重用样式表的仅单个UI库可以用于应用以提供同构的用户体验。在典型的方法中,为了开发满足消费者期望的应用,需要开发和检查一致性准则。这通常通过手动检查一致性准则来实现。在应用的某些特性不能由一种机制来指定的情况下,诸如在整个应用上是否一致地使用调色板或样式表中的字体,需要在应用的测试期间手动检查这些特性。这种活动可能很麻烦、容易出错,并且可能会显著增加测试的成本。在其他情况下,特定特性可能无法通过内容或代码来定义,例如,在UI显示上平衡本文档来自技高网...

【技术保护点】
1.一种计算机实施的方法,包括:/n由一致性评估基础设施(CAI)接收用户界面(UI)训练请求,所述UI训练请求至少包括与参考应用相关联的参考对象集合,所述参考对象集合至少包括含有参考UI集合的参考代码;/n由所述CAI训练用户界面行为参考模型(UIBRM),以通过分析由所述参考应用响应于与所述参考UI集合的交互而呈现在浏览器上的参考UI显示来生成经训练的UIBRM;/n由所述CAI接收UI显示评估请求,所述UI显示评估请求至少包括与开发应用相关联的开发对象集合,所述开发对象集合至少包括含有开发UI集合的开发代码;/n由所述CAI执行UI显示评估,以通过将所述经训练的UIBRM与由所述开发应用响应于至少与所述开发UI集合的子集的交互而呈现在所述浏览器上的开发UI显示进行比较,来生成对所述开发UI显示的评估;和/n由所述CAI向客户端系统发送对所述开发UI显示的评估。/n

【技术特征摘要】
20190627 US 16/455,0721.一种计算机实施的方法,包括:
由一致性评估基础设施(CAI)接收用户界面(UI)训练请求,所述UI训练请求至少包括与参考应用相关联的参考对象集合,所述参考对象集合至少包括含有参考UI集合的参考代码;
由所述CAI训练用户界面行为参考模型(UIBRM),以通过分析由所述参考应用响应于与所述参考UI集合的交互而呈现在浏览器上的参考UI显示来生成经训练的UIBRM;
由所述CAI接收UI显示评估请求,所述UI显示评估请求至少包括与开发应用相关联的开发对象集合,所述开发对象集合至少包括含有开发UI集合的开发代码;
由所述CAI执行UI显示评估,以通过将所述经训练的UIBRM与由所述开发应用响应于至少与所述开发UI集合的子集的交互而呈现在所述浏览器上的开发UI显示进行比较,来生成对所述开发UI显示的评估;和
由所述CAI向客户端系统发送对所述开发UI显示的评估。


2.根据权利要求1所述的计算机实施的方法,其中,将所述经训练的UIBRM与呈现在所述浏览器上的开发UI显示进行比较还包括:
读取与呈现在所述浏览器上的所述开发UI显示中的开发UI显示相关联的交互前UI图像;
使用图像识别来识别所述开发UI显示的UI元素;
将所述经训练的UIBRM与所述UI元素进行比较,以生成对所述开发UI显示的UI元素的视觉外观和布局一致性评估;
向所述浏览器发送至少一个事件以与所述UI元素中的至少一个UI元素进行交互,其中,所述至少一个事件可以包括鼠标事件、键盘事件或触摸事件;
在向所述浏览器发送所述至少一个事件之后,读取与由所述开发应用呈现在所述浏览器上的开发UI显示相关联的交互后UI图像;
使用图像识别将所述交互前UI图像与所述交互后UI图像进行比较,以确定所述至少一个UI元素的导航行为结果;和
将所述经训练的UIBRM与所述导航行为结果进行比较,以生成对所述至少一个UI元素的导航行为一致性评估。


3.根据权利要求2所述的计算机实施的方法,其中,对所述开发UI显示的评估还包括对所述开发UI显示的UI元素的视觉外观和布局一致性评估,以及对所述开发UI显示的所述至少一个UI元素的导航行为一致性评估。


4.根据权利要求1所述的计算机实施的方法,还包括:
接收代码和应用编程接口(API)训练请求,所述代码和API训练请求至少包括与所述参考应用相关联的所述参考对象集合,其中,所述参考代码还包括参考API集合,并且其中,所述参考对象集合至少还包括与所述参考API集合相关联的参考API定义集合;
训练代码参考模型(CRM),以使用所述参考代码和所述参考API定义集合生成经训练的CRM;
接收代码和API一致性检查请求,所述代码和API一致性检查请求至少包括与所述开发应用相关联的所述开发对象集合,其中,所述开发代码还包括开发API集合,并且其中,所述开发对象集合至少还包括与所述开发API集合相关联的开发API定义集合;
执行代码和API一致性检查,以通过将所述经训练的CRM与所述开发代码和所述开发API定义集合进行比较来生成对所述开发代码和所述开发API集合的代码和API一致性评估;和
向所述客户端系统发送所述代码和API一致性评估。


5.根据权利要求4所述的计算机实施的方法,其中,执行代码和API一致性检查还包括:
读取所述开发代码以识别所述开发API集合;和
读取所述开发API定义集合,以从所述开发API集合的每个开发API中识别API参数集合,其中,将所述经训练的CRM与所述开发代码和所述开发API定义集合进行比较还包括将所述经训练的CRM与来自所述开发API集合的每个开发API的所述API参数集合进行比较。


6.根据权利要求5所述的计算机实施的方法,其中,来自每个开发API的所述API参数集合包括所述开发API的API类型、认证定义、分页定义以及报头和有效载荷中的参数中的至少一个。


7.根据权利要求4所述的计算机实施的方法,其中,执行所述代码和API一致性检查以生成对所述开发代码和所述开发API集合的代码和API一致性评估还包括使用机器学习算法,并且其中,所述机器学习算法包括使用神经网络的聚类算法或监督学习算法中的至少一种。


8.一种存储可由计算机系统运行以执行操作的一个或多个指令的非暂时性计算机可读介质,所述操作包括:
由一致性评估基础设施(CAI)接收用户界面(UI)训练请求,所述UI训练请求至少包括与参考应用相关联的参考对象集合,所述参考对象集合至少包括含有参考UI集合的参考代码;
由所述CAI训练用户界面行为参考模型(UIBRM),以通过分析由所述参考应用响应于与所述参考UI集合的交互而呈现在浏览器上的参考UI显示来生成经训练的UIBRM;
由所述CAI接收UI显示评估请求,所述UI显示评估请求至少包括与开发应用相关联的开发对象集合,所述开发对象集合至少包括含有开发UI集合的开发代码;
由所述CAI执行UI显示评估,以通过将所述经训练的UIBRM与由所述开发应用响应于至少与所述开发UI集合的子集的交互而呈现在所述浏览器上的开发UI显示进行比较,来生成对所述开发UI显示的评估;和
由所述CAI向客户端系统发送对所述开发UI显示的评估。


9.根据权利要求8所述的非暂时性计算机可读介质,其中,将所述经训练的UIBRM与呈现在所述浏览器上的开发UI显示进行比较还包括:
读取与呈现在所述浏览器上的所述开发UI显示中的开发UI显示相关联的交互前UI图像;
使用图像识别来识别所述开发UI显示的UI元素;
将所述经训练的UIBRM与所述UI元素进行比较,以生成对所述开发UI显示的UI元素的视觉外观和布局一致性评估;
向所述浏览器发送至少一个事件以与所述UI元素中的至少一个UI元素进行交互,其中,所述至少一个事件可以包括鼠标事件、键盘事件或触摸事件;
在向所述浏览器发送所述至少一个事件之后,读取与由所述开发应用呈现在所述浏览器上的开发UI显示相关联的交互后UI图像;
使用图像识别将所述交互前UI图像与所述交互后UI图像进行比较,以确定所述至少一个UI元素的导航行为结果;和
将所述经训练的UIBRM与所述导航行为结果进行比较,以生成对所述至少一个UI元素的导航行为一致性评估。


10.根据权利要求9所述的非暂时性计算机可读介质,其中,对所述开发UI显示的评估还包括对所述开发UI显示的UI元素的视觉外...

【专利技术属性】
技术研发人员:P埃伯莱因V德里森
申请(专利权)人:SAP欧洲公司
类型:发明
国别省市:德国;DE

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1