Linking Software Users Sharing Common Traits
    1.
    发明申请
    Linking Software Users Sharing Common Traits 审中-公开
    链接软件用户共享常见的特征

    公开(公告)号:US20100287109A1

    公开(公告)日:2010-11-11

    申请号:US12463128

    申请日:2009-05-08

    IPC分类号: G06Q99/00 G06Q50/00

    摘要: A method for the establishing of connections between software users based on a pattern of use and/or a characteristic of content related to the users and the software. The interaction of a software user with the software is monitored and a characteristic of content related to the user and the software is determined. When the user needs customer support, he or she is routed to a fellow user of the same software who is capable of providing help. The helping user is selected based on the way in which the first user interacts with the software and/or the characteristic of content related to the first user and the software.

    摘要翻译: 一种用于基于使用模式和/或与用户和软件相关的内容的特征来建立软件用户之间的连接的方法。 监视软件用户与软件的交互,并确定与用户和软件相关的内容的特征。 当用户需要客户支持时,他或她被路由到能够提供帮助的同一软件的同一用户。 基于第一用户与软件交互的方式和/或与第一用户和软件相关的内容的特征来选择帮助用户。

    Super nested block method to minimize coverage testing overhead
    2.
    发明授权
    Super nested block method to minimize coverage testing overhead 有权
    超级嵌套块方法来最大限度地减少覆盖测试开销

    公开(公告)号:US08739145B2

    公开(公告)日:2014-05-27

    申请号:US12056026

    申请日:2008-03-26

    IPC分类号: G06F9/45 G06F9/44

    CPC分类号: G06F11/3676 G06F11/3644

    摘要: A method for determining the number and location of instrumentation probes to be inserted into a program is disclosed. The method advantageously inserts the minimum number of probes that are required to obtain execution coverage for every node in the program's control-flow graph. In addition, the method requires only one bit to store each probe and does not require the assignment of weights to arcs or nodes of the control-flow graph. In the illustrative embodiment, the nodes of a control-flow graph are partitioned into non-empty sets, where each non-empty set corresponds to a super nested block of the program.

    摘要翻译: 公开了一种用于确定要插入到程序中的仪器探针的数量和位置的方法。 该方法有利地插入了程序控制流程图中为每个节点获得执行覆盖所需的最少数量的探针。 此外,该方法仅需要一个位来存储每个探针,并且不需要将权重分配给控制流图的弧或节点。 在说明性实施例中,控制流图的节点被划分为非空集合,其中每个非空集合对应于节目的超嵌套块。

    Efficient encoding of instrumented data in real-time concurrent systems
    3.
    发明授权
    Efficient encoding of instrumented data in real-time concurrent systems 有权
    仪器化数据在实时并发系统中的高效编码

    公开(公告)号:US08356289B2

    公开(公告)日:2013-01-15

    申请号:US12240868

    申请日:2008-09-29

    IPC分类号: G06F9/44 G06F9/45

    CPC分类号: G06F11/3676

    摘要: A mechanism for encoding and reporting instrumented data is disclosed that requires less storage space and incurs less processor overhead than other methods of the prior art. In accordance with the illustrative embodiment, a bit vector in shared memory corresponds to nodes of a program's control-flow graph that have been instrumented, and the contents of the vector indicate which of these nodes have executed; in addition, character strings in shared memory indicate what file, class, and method each node belongs to. A process that executes concurrently with those of the program under test transmits instrumented data from the shared memory to a database. The illustrative embodiment enables efficient, rapid reporting and storage of instrumented data, and is therefore especially well-suited for run-time analysis of real-time concurrent systems.

    摘要翻译: 公开了一种编码和报告仪器化数据的机制,与现有技术的其它方法相比,其需要较少的存储空间并且导致较少的处理器开销。 根据说明性实施例,共享存储器中的位矢量对应于已经被装配的程序的控制流程图的节点,并且向量的内容指示这些节点中的哪一个已经执行; 此外,共享内存中的字符串表示每个节点所属的文件,类和方法。 与被测程序同时执行的进程将从共享存储器传送到数据库的检测数据。 说明性实施例能够有效,快速地报告和存储仪器化数据,因此特别适用于实时并发系统的运行时分析。

    Off-line program analysis and run-time instrumentation
    4.
    发明授权
    Off-line program analysis and run-time instrumentation 有权
    离线程序分析和运行时仪表

    公开(公告)号:US08291399B2

    公开(公告)日:2012-10-16

    申请号:US12056064

    申请日:2008-03-26

    IPC分类号: G06F9/45

    CPC分类号: G06F11/3644 G06F11/3676

    摘要: A technique is disclosed for determining off-line the number and location of instrumentation probes to be inserted into a program under testing, and subsequently instrumenting the program at run-time based on the off-line analysis. In accordance with the illustrative embodiment, an off-line analyzer first determines instrumentation locations for a program under test in accordance with a method called the Super Nested Block Method. After the instrumentation locations have been determined, a testing/monitoring tool executes the program and a run-time instrumenter in parallel. The run-time instrumenter accordingly inserts probes into the program, removes probes after they have been executed once, and generates and reports information about code coverage based on the probes.

    摘要翻译: 公开了一种用于确定要插入到测试程序中的仪器探针的数量和位置离线的技术,以及随后基于离线分析在运行时对程序进行测试。 根据说明性实施例,离线分析仪首先根据称为超级嵌套块方法的方法确定被测程序的仪表位置。 在确定仪器位置后,测试/监控工具并行执行程序和运行时调试器。 运行时仪器相应地将探针插入程序,在执行一次后将其移除,并根据探针生成和报告有关代码覆盖的信息。

    Automatic generation of run-time instrumenter
    5.
    发明授权
    Automatic generation of run-time instrumenter 失效
    自动生成运行时仪器

    公开(公告)号:US08752007B2

    公开(公告)日:2014-06-10

    申请号:US12056063

    申请日:2008-03-26

    IPC分类号: G06F9/44 G06F9/45

    CPC分类号: G06F11/3644 G06F11/3624

    摘要: A method and apparatus for automatically generating a run-time instrumenter are disclosed. In accordance with the illustrative embodiment, an off-line analyzer first determines instrumentation locations for a program under test in accordance with a method called the Super Nested Block Method. After the instrumentation locations have been determined, source code for a run-time instrumenter is automatically generated based on the source code for the program under test and the instrumentation locations. The source code for the program under test and the run-time instrumenter are then compiled into executables, and a testing tool then executes the program under test and the run-time instrumenter in parallel.

    摘要翻译: 公开了一种用于自动生成运行时调度器的方法和装置。 根据说明性实施例,离线分析仪首先根据称为超级嵌套块方法的方法确定被测程序的仪表位置。 在确定仪器位置后,将根据被测程序的源代码和仪器位置自动生成运行时调度器的源代码。 然后将被测程序的源代码和运行时调度程序编译成可执行程序,然后测试工具并行执行被测程序和运行时调度程序。

    Code-coverage guided prioritized test generation
    6.
    发明授权
    Code-coverage guided prioritized test generation 有权
    代码覆盖引导优先测试生成

    公开(公告)号:US08108826B2

    公开(公告)日:2012-01-31

    申请号:US10953849

    申请日:2004-09-29

    IPC分类号: G06F9/44 G06F9/45

    CPC分类号: G06F11/3676

    摘要: A method for generating test cases for a program is disclosed. The method combines features of path-oriented and goal-oriented software testing. The illustrative embodiment constructs a control-flow graph with nodes that correspond to invocations of subroutines, and constructs control-flow graphs for the source code of such nodes as well. A metric that is based on the topology of the control-flow graph is evaluated recursively for nodes of the graph and for control-flow graphs that correspond to invoked subroutines. In the illustrative embodiment, the metric employed is the length of a shortest path from the starting node to a particular node. A node n with the highest metric value is then selected as a goal, and a path from the starting node to the ending node that passes through node n is generated via backtracking.

    摘要翻译: 公开了一种用于生成程序的测试用例的方法。 该方法结合面向路径和面向目标的软件测试功能。 说明性实施例构造具有对应于子例程的调用的节点的控制流图,并且还构建这些节点的源代码的控制流图。 基于控制流图的拓扑的度量被递归地评估用于图的节点和对应于被调用的子例程的控制流图。 在说明性实施例中,采用的度量是从起始节点到特定节点的最短路径的长度。 然后选择具有最高度量值的节点n作为目标,并且通过回溯生成从起始节点到通过节点n的结束节点的路径。

    Efficient Program Instrumentation
    7.
    发明申请
    Efficient Program Instrumentation 有权
    高效程序仪表

    公开(公告)号:US20090249309A1

    公开(公告)日:2009-10-01

    申请号:US12240876

    申请日:2008-09-29

    IPC分类号: G06F9/44

    CPC分类号: G06F11/3676 G06F11/3636

    摘要: A method for determining the number and location of instrumentation probes to be inserted into a program is disclosed. The method advantageously inserts the minimum number of probes that are required to obtain execution coverage for every node in the program's control-flow graph. In addition, the method requires only type of node marking and one bit to store each probe, and does not require the assignment of weights to arcs or nodes of the control-flow graph. In the illustrative embodiment, the nodes of a control-flow graph are partitioned into non-empty sets, where each non-empty set corresponds to a super nested block of the program.

    摘要翻译: 公开了一种用于确定要插入到程序中的仪器探针的数量和位置的方法。 该方法有利地插入了程序控制流程图中为每个节点获得执行覆盖所需的最少数量的探针。 此外,该方法仅需要节点标记的类型和一个位来存储每个探针,并且不需要对控制流图的弧或节点分配权重。 在说明性实施例中,控制流图的节点被划分为非空集合,其中每个非空集合对应于节目的超嵌套块。

    Efficient Encoding of Instrumented Data in Real-Time Concurrent Systems
    8.
    发明申请
    Efficient Encoding of Instrumented Data in Real-Time Concurrent Systems 有权
    实时并发系统中仪表数据的高效编码

    公开(公告)号:US20090249308A1

    公开(公告)日:2009-10-01

    申请号:US12240868

    申请日:2008-09-29

    IPC分类号: G06F9/44

    CPC分类号: G06F11/3676

    摘要: A mechanism for encoding and reporting instrumented data is disclosed that requires less storage space and incurs less processor overhead than other methods of the prior art. In accordance with the illustrative embodiment, a bit vector in shared memory corresponds to nodes of a program's control-flow graph that have been instrumented, and the contents of the vector indicate which of these nodes have executed; in addition, character strings in shared memory indicate what file, class, and method each node belongs to. A process that executes concurrently with those of the program under test transmits instrumented data from the shared memory to a database. The illustrative embodiment enables efficient, rapid reporting and storage of instrumented data, and is therefore especially well-suited for run-time analysis of real-time concurrent systems.

    摘要翻译: 公开了一种编码和报告仪器化数据的机制,与现有技术的其它方法相比,其需要较少的存储空间并且导致较少的处理器开销。 根据说明性实施例,共享存储器中的位矢量对应于已经被装配的程序的控制流程图的节点,并且向量的内容指示这些节点中的哪一个已经执行; 此外,共享内存中的字符串表示每个节点所属的文件,类和方法。 与被测程序同时执行的进程将从共享存储器传送到数据库的检测数据。 说明性实施例能够有效,快速地报告和存储仪器化数据,因此特别适用于实时并发系统的运行时分析。

    Efficient program instrumentation
    9.
    发明授权
    Efficient program instrumentation 有权
    高效的程序设备

    公开(公告)号:US08484623B2

    公开(公告)日:2013-07-09

    申请号:US12240876

    申请日:2008-09-29

    IPC分类号: G06F9/44 G06F9/45

    CPC分类号: G06F11/3676 G06F11/3636

    摘要: A method for determining the number and location of instrumentation probes to be inserted into a program is disclosed. The method advantageously inserts the minimum number of probes that are required to obtain execution coverage for every node in the program's control-flow graph. In addition, the method requires only type of node marking and one bit to store each probe, and does not require the assignment of weights to arcs or nodes of the control-flow graph. In the illustrative embodiment, the nodes of a control-flow graph are partitioned into non-empty sets, where each non-empty set corresponds to a super nested block of the program.

    摘要翻译: 公开了一种用于确定要插入到程序中的仪器探针的数量和位置的方法。 该方法有利地插入了程序控制流程图中为每个节点获得执行覆盖所需的最少数量的探针。 此外,该方法仅需要节点标记的类型和一个位来存储每个探针,并且不需要对控制流图的弧或节点分配权重。 在说明性实施例中,控制流图的节点被划分为非空集合,其中每个非空集合对应于节目的超嵌套块。

    Off-Line Program Analysis and Run-Time Instrumentation
    10.
    发明申请
    Off-Line Program Analysis and Run-Time Instrumentation 有权
    离线程序分析和运行时间仪表

    公开(公告)号:US20090249306A1

    公开(公告)日:2009-10-01

    申请号:US12056064

    申请日:2008-03-26

    IPC分类号: G06F9/44

    CPC分类号: G06F11/3644 G06F11/3676

    摘要: A technique is disclosed for determining off-line the number and location of instrumentation probes to be inserted into a program under testing, and subsequently instrumenting the program at run-time based on the off-line analysis. In accordance with the illustrative embodiment, an off-line analyzer first determines instrumentation locations for a program under test in accordance with a method called the Super Nested Block Method. After the instrumentation locations have been determined, a testing/monitoring tool executes the program and a run-time instrumenter in parallel. The run-time instrumenter accordingly inserts probes into the program, removes probes after they have been executed once, and generates and reports information about code coverage based on the probes.

    摘要翻译: 公开了一种用于确定要插入到测试程序中的仪器探针的数量和位置离线的技术,以及随后基于离线分析在运行时对程序进行测试。 根据说明性实施例,离线分析仪首先根据称为超级嵌套块方法的方法确定被测程序的仪表位置。 在确定仪器位置后,测试/监控工具并行执行程序和运行时调试器。 运行时仪器相应地将探针插入程序,在执行一次后将其移除,并根据探针生成和报告有关代码覆盖的信息。