软件分析平台制造技术

技术编号:20117296 阅读:33 留言:0更新日期:2019-01-16 11:59
一种设备可以接收与在设备上执行的软件程序相关联的信息,并且可以基于与软件程序相关联的信息来生成事件记录。设备可以标识与事件记录相关联的模式信息,并且可以对事件记录和模式信息执行数据分析,以标识与软件程序相关联的一个或多个缺陷,以及确定软件程序的预期行为。设备可以基于与软件程序相关联的一个或多个缺陷以及软件程序的预期行为来生成一个或多个报告,并且可以提供一个或多个报告。

Software Analysis Platform

A device can receive information associated with a software program executed on the device and generate event records based on information associated with the software program. The device can identify the schema information associated with the event record and perform data analysis on the event record and schema information to identify one or more defects associated with the software program and determine the expected behavior of the software program. The device can generate one or more reports based on one or more defects associated with the software program and the expected behavior of the software program, and can provide one or more reports.

【技术实现步骤摘要】
软件分析平台
技术介绍
随着面向软件的解决方案的推进,软件编程正确性、缺陷标识和解析时间需要缩短。因为硬件正在成为商品,并且作为商用现货(COTS)硬件或者开放硬件而可得到,因而软件程序质量对于赢得和保留客户是重要的。基于规模和部署,在做出很少改变或者不做改变的情况下,软件程序现在需要运行在许多平台(例如,Windows、UNIX、Linux、网络设备平台、其他硬件平台、虚拟平台等等)上,并且现在对错误或者缺陷更加灵敏。另外,软件程序部署在第三方经由可编程接口而可访问的虚拟环境中。
技术实现思路
根据一些可能的实现,一种设备可以包括一个或多个处理器,其用于:接收与在另一设备上执行的软件程序相关联的信息;基于与软件程序相关联的信息来生成事件记录;标识与事件记录相关联的模式信息;对事件记录和模式信息执行数据分析,以标识与软件程序相关联的一个或多个缺陷以及确定软件程序的预期行为(expectedbehavior);基于与软件程序相关联的一个或多个缺陷以及软件程序的预期行为来生成一个或多个报告;以及提供一个或多个报告。根据一些可能的实现,一种非暂时性计算机可读介质可以存储一个或多个指令,其在由一个或多个处理器执行时使得一个或多个处理器:接收与在设备上执行的软件程序相关联的信息;基于与软件程序相关联的信息来生成事件记录;标识与事件记录相关联的模式信息;对事件记录和模式信息执行数据分析,以标识与软件程序相关联的一个或多个缺陷以及确定软件程序的预期行为;基于与软件程序相关联的一个或多个缺陷以及软件程序的预期行为来生成一个或多个报告;以及提供一个或多个报告。根据一些可能的实现,一种方法可以包括:由设备接收与在另一设备上执行的软件程序相关联的信息;由该设备基于与软件程序相关联的信息来生成事件记录;由该设备标识与事件记录相关联的模式信息;由该设备对事件记录和模式信息执行数据分析,以标识与软件程序相关联的一个或多个缺陷以及确定软件程序的预期行为;由该设备基于与软件程序相关联的一个或多个缺陷以及软件程序的预期行为来生成一个或多个报告;以及由该设备提供一个或多个报告。附图说明图1A和图1B是本文描述的示例实现的概述的示图;图2是本文描述的系统和/或方法可以在其中实现的示例环境的示图;图3是图2的一个或多个设备的示例组件的示图;图4是用于标识软件程序中的缺陷和软件程序的预期行为的示例过程的流程图;图5A-图5E是用于标识软件程序中的缺陷和软件程序的预期行为的示例实现的示图;图6是用于协商与待分析的软件程序相关联的信息的检索(retrieval)的示例过程的流程图;以及图7A-图7E是用于协商与待分析的软件程序相关联的信息的检索的示例实现的示图。具体实施方式示例实现的以下详细描述参考附图。不同附图中的相同参考标号可以标识相同或者相似的元件。软件程序的预期行为是非常主观的,并且确定预期行为所需的信息经常不易得到。开发者通常使用调试和错误日志来标识、隔离和解决在软件程序的测试期间或者在软件程序的实际使用期间报告的软件程序缺陷。然而,开发者使用的技术不能确定软件程序的预期行为。本文描述的一些实现可以提供自动化软件分析平台,其使用调试和错误日志来确定软件程序的预期行为。例如,软件分析平台可以使用调试和错误日志来标识软件程序中的缺陷,并且记录软件程序的预期行为中的改变。在一些实现中,软件分析平台可以生成事件记录和日志模式,并且可以对事件记录和日志模式执行数据分析。在一些实现中,软件分析平台可以基于对事件记录和日志模式的数据分析来标识软件程序的预期行为的特性。在一些实现中,软件分析平台可以验证软件程序的配置(例如,确定软件程序是否满足基于要实现软件程序的平台和/或拓扑的要求)。在一些实现中,软件分析平台可以分析针对编程错误和/或行为改变的软件程序改变(例如,可以接收并且注释一些软件程序改变,以辅助软件程序的正确性和/或预期行为的分析)。在一些实现中,软件分析平台可以基于与软件程序的先前发布的调试和错误日志的比较,来分析调试和错误日志中的非预期行为、事件信息、错误等等。在一些实现中,软件分析平台可以使用如下来分析软件程序:调试和错误日志(例如,其包括错误、资源中断信息、接口和输入/输出(I/O)信息等等)、系统日志(例如,其用于监测系统,诸如网络中的交换机或者服务器)、来自网络监测系统的信息、来自网络供应系统的信息等等。在一些实现中,软件分析平台可以提供集中式日志记录平台,其与远程设备交互,并且协商远程设备(例如,网络设备、计算设备、存储设备等等)的日志记录能力。在一些实现中,软件分析平台可以由在线数据分析系统、离线数据分析系统等等来使用。在一些实现中,软件分析平台可以提供开放日志记录框架、数据收集框架、监测和校正框架等等。在一些实现中,软件分析平台可以使用一个或多个方法(例如,基于类型长度值(TLV)的方法),来与一个或多个计算设备协商和交换日志记录能力,并且可以将从一个或多个计算设备接收的数据和错误日志转换为可以被数据分析技术更加容易地使用的结构化信息。图1A和图1B是本文描述的示例实现100的概述的示图。如图所示,示例实现100可以包括软件分析平台、第一平台类型(例如,Windows平台)计算设备、第二平台类型(例如,网络平台)计算设备和第三平台类型(例如,UNIX平台)计算设备。如图1A所示,软件分析平台可以确定第一平台类型计算设备与第一协议相关联。因此,软件分析平台可以使用第一协议来执行与第一平台类型计算设备的属性协商。属性可以包括与第一平台类型计算设备正在执行的软件程序相关联的信息(例如,数据和错误日志)。基于属性协商,软件分析平台可以从第一平台类型计算设备获得第一属性集合。如图1A进一步所示,软件分析平台可以确定第二平台类型计算设备与第二协议相关联。因此,软件分析平台可以使用第二协议来执行与第二平台类型计算设备的属性协商。属性可以包括与第二平台类型计算设备正在执行的软件程序相关联的信息(例如,数据和错误日志)。基于属性协商,软件分析平台可以从第二平台类型计算设备获得第二属性集合。另外,如图1A所示,软件分析平台可以确定第三平台类型计算设备与第三协议相关联。因此,软件分析平台可以使用第三协议来执行与第三平台类型计算设备的属性协商。属性可以包括与第三平台类型计算设备正在执行的软件程序相关联的信息(例如,数据和错误日志)。基于属性协商,软件分析平台可以从第三平台类型计算设备获得第三属性集合。在一些实现中,软件分析平台可以将第一属性集合、第二属性集合和/或第三属性集合转换为可以由数据分析技术更加容易使用的格式(例如,结构化属性)。如图1B所示,软件分析平台可以包括数据收集元件、数据提取元件和数据分析元件。软件分析平台的数据收集元件可以从计算设备接收第一属性集合、第二属性集合和/或第三属性集合,并且可以存储接收到的信息。软件分析平台的数据提取元件可以从第一属性集合、第二属性集合和/或第三属性集合提取特定数据,举例而言,诸如可以用于数据分析的数据。软件分析平台的数据分析元件可以对特定数据执行数据分析。如图1B进一步所示,软件分析平台可以基于对特定数据执行数据分析,来确定(例如,与计算设备执行的软件程序相关联的)自动回复信息、缺陷发现信息、本文档来自技高网...

【技术保护点】
1.一种设备,包括:用于接收与在另一设备上执行的软件程序相关联的信息的装置;用于基于与所述软件程序相关联的所述信息来生成事件记录的装置;用于标识与所述事件记录相关联的模式信息的装置;用于对所述事件记录和所述模式信息执行数据分析,以标识与所述软件程序相关联的一个或多个缺陷以及确定所述软件程序的预期行为的装置;用于基于与所述软件程序相关联的所述一个或多个缺陷以及所述软件程序的所述预期行为来生成一个或多个报告的装置;以及用于提供所述一个或多个报告的装置。

【技术特征摘要】
2017.07.05 US 15/641,8231.一种设备,包括:用于接收与在另一设备上执行的软件程序相关联的信息的装置;用于基于与所述软件程序相关联的所述信息来生成事件记录的装置;用于标识与所述事件记录相关联的模式信息的装置;用于对所述事件记录和所述模式信息执行数据分析,以标识与所述软件程序相关联的一个或多个缺陷以及确定所述软件程序的预期行为的装置;用于基于与所述软件程序相关联的所述一个或多个缺陷以及所述软件程序的所述预期行为来生成一个或多个报告的装置;以及用于提供所述一个或多个报告的装置。2.根据权利要求1所述的设备,还包括:用于确定用于解决与所述软件程序相关联的所述一个或多个缺陷的一个或多个推荐的装置;以及用于在所述一个或多个报告中提供指示所述一个或多个推荐的信息的装置。3.根据权利要求1所述的设备,还包括:用于确定用于解决与所述软件程序相关联的所述一个或多个缺陷的一个或多个校正的装置;以及用于使得所述另一设备在所述软件程序中实现所述一个或多个校正的装置。4.根据权利要求1所述的设备,还包括:用于确定与所述另一设备相关联的平台的装置;用于选择与所述平台兼容的协议的装置;以及用于经由所述协议与所述另一设备协商将要由所述另一设备提供的所述软件程序的属性的装置。5.根据权利要求4所述的设备,其中用于接收与所述软件程序相关联的所述信息的装置包括:用于基于协商所述软件程序的所述属性而从所述另一设备接收与所述软件程序相关联的所述信息的装置,所述软件程序的所述属性对应于与所述软件程序相关联的所述信息。6.根据权利要求1所述的设备,还包括:用于接收第一格式的与所述软件程序相关联的所述信息的装置;以及用于将与所述软件程序相关联的所述信息从所述第一格式转换为与所述第一格式不同的第二格式的装置。7.根据权利要求1所述的设备,其中所述数据分析包括以下中的一个或多个:机器学习技术,人工智能技术,数据挖掘技术,建模技术,或者神经网络技术。8.一种存储指令的非暂时性计算机可读介质,所述指令包括:一个或多个指令,所述一个或多个指令在由一个或多个处理器执行时使得所述一个或多个处理器:接收与在设备上执行的软件程序相关联的信息;基于与所述软件程序相关联的所述信息来生成事件记录;标识与所述事件记录相关联的模式信息;对所述事件记录和所述模式信息执行数据分析,以标识与所述软件程序相关联的一个或多个缺陷以及确定所述软件程序的预期行为;基于与所述软件程序相关联的所述一个或多个缺陷以及所述软件程序的所述预期行为来生成一个或多个报告;以及提供所述一个或多个报告。9.根据权利要求8所述的非暂时性计算机可读介质,其中所述指令还包括:一个或多个指令,所述一个或多个指令在由所述一个或多个处理器执行时,使得所述一个或多个处理器:确定用于解决与所述软件程序相关联的所述一个或多个缺陷的一个或多个推荐;以及在所述一个或多个报告中提供指示所述一个或多个推荐的信息。10.根据权利要求8所述的非暂时性计算机可读介质,其中所述指令还包括:一个或多个指令,所述一个或多个...

【专利技术属性】
技术研发人员:V·K·古普塔R·贾恩M·塔尔拉普拉加达
申请(专利权)人:瞻博网络公司
类型:发明
国别省市:美国,US

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

1