The Experts below are selected from a list of 132 Experts worldwide ranked by ideXlab platform

Jeff Offutt - One of the best experts on this subject based on the ideXlab platform.

  • Improving logic-based testing
    Journal of Systems and Software, 2013
    Co-Authors: Gary Kaminski, Paul Ammann, Jeff Offutt
    Abstract:

    Logic-based testers design tests from logical expressions that appear in software artifacts such as source code, design models, and requirements specifications. This paper presents three improvements to logic-based test design. First, in the context of mutation testing, we present fault hierarchies for the six Relational Operators. Applying the ROR mutation Operator causes each Relational Operator to generate seven mutants per clause. The fault hierarchies show that only three of these seven mutants are needed. Second, we show how to bring the power of the ROR Operator to logic-based test criteria such as the widely used Multiple Condition-Decision Coverage (MCDC) test criterion. Third, we present theoretical results supported by empirical data that show that the more recent coverage criterion of minimal-MUMCUT can find significantly more faults than MCDC. The paper has three specific recommendations: (1) Change the way the ROR mutation Operator is defined in existing and future mutation systems. (2) Augment logic-based test criteria to incorporate Relational Operator replacement from mutation. (3) Replace the use of MCDC with minimal-MUMCUT, both in practice and in standards documents like FAA-DO178B.

  • Better predicate testing
    2011
    Co-Authors: Gary Kaminski, Paul Ammann, Jeff Offutt
    Abstract:

    Mutation testing is widely recognized as being extremely powerful, but is considered difficult to automate enough for practical use. This paper theoretically addresses two pos-sible reasons for this: the generation of redundant mutants and the lack of integration of mutation analysis with other test criteria. By addressing these two issues, this paper brings an important mutation Operator, Relational-Operator-replacement (ROR), closer to practical use. First, we de-velop fault hierarchies for the six Relational Operators, each of which generates seven mutants per clause. These hierar-chies show that, for any given clause, only three mutants are necessary. This theoretical result can be integrated easily into mutation analysis tools, thereby eliminating generation of 57 % of the ROR mutants. Second, we show how to bring the power of the ROR Operator to the widely used Multiple Condition-Decision Coverage (MCDC) test criterion. This theoretical result includes an algorithm to transform any MCDC-adequate test set into a test set that also satisfies RORG, a new version of ROR appropriate for the MCDC context. The transformation does not use traditional muta-tion analysis, so can easily be integrated into existing MCDC tools and processes

  • AST - Better predicate testing
    Proceeding of the 6th international workshop on Automation of software test - AST '11, 2011
    Co-Authors: Gary Kaminski, Paul Ammann, Jeff Offutt
    Abstract:

    Mutation testing is widely recognized as being extremely powerful, but is considered difficult to automate enough for practical use. This paper theoretically addresses two possible reasons for this: the generation of redundant mutants and the lack of integration of mutation analysis with other test criteria. By addressing these two issues, this paper brings an important mutation Operator, Relational-Operator-replacement (ROR), closer to practical use. First, we develop fault hierarchies for the six Relational Operators, each of which generates seven mutants per clause. These hierarchies show that, for any given clause, only three mutants are necessary. This theoretical result can be integrated easily into mutation analysis tools, thereby eliminating generation of 57% of the ROR mutants. Second, we show how to bring the power of the ROR Operator to the widely used Multiple Condition-Decision Coverage (MCDC) test criterion. This theoretical result includes an algorithm to transform any MCDC-adequate test set into a test set that also satisfies RORG, a new version of ROR appropriate for the MCDC context. The transformation does not use traditional mutation analysis, so can easily be integrated into existing MCDC tools and processes.

Jayant R Haritsa - One of the best experts on this subject based on the ideXlab platform.

  • root rank a Relational Operator for kws result ranking
    International Conference Data Science and Management, 2019
    Co-Authors: Vinay M S, Jayant R Haritsa
    Abstract:

    A popular approach to hosting Keyword Search Systems (KWS) on Relational DBMS platforms is to employ the Candidate Network framework. The quality of a Candidate Network-based search is critically dependent on the scoring function used to rank the relevant answers. In this paper, we first demonstrate, through a detailed empirical study, that the Labrador scoring function provides the best user relevance among contemporary Candidate Network scoring functions. Efficiently incorporating the Labrador function, however, is rendered difficult due to its Result Set Dependent (RSD) characteristic, wherein the distribution of keywords in the query results influences the ranking. In this paper, we investigate addressing the RSD challenge through inclusion of custom Operators within the database engine. Specifically, we propose and evaluate an Operator called Root Rank, which performs result ranking in the root of the query execution plan. The Root Rank Operator has been implemented on a PostgreSQL codebase, and its performance profiled over real-world data sets, including DBLP and Wikipedia. Our experimental observations indicate that the Root Rank Operator is highly successful in delivering processing times that are comparable to, or better than, those of non-RSD implementations. We expect these results to aid in the organic hosting of KWS functionality on database systems.

  • COMAD/CODS - Root Rank: A Relational Operator for KWS Result Ranking
    Proceedings of the ACM India Joint International Conference on Data Science and Management of Data, 2019
    Co-Authors: Vinay M S, Jayant R Haritsa
    Abstract:

    A popular approach to hosting Keyword Search Systems (KWS) on Relational DBMS platforms is to employ the Candidate Network framework. The quality of a Candidate Network-based search is critically dependent on the scoring function used to rank the relevant answers. In this paper, we first demonstrate, through a detailed empirical study, that the Labrador scoring function provides the best user relevance among contemporary Candidate Network scoring functions. Efficiently incorporating the Labrador function, however, is rendered difficult due to its Result Set Dependent (RSD) characteristic, wherein the distribution of keywords in the query results influences the ranking. In this paper, we investigate addressing the RSD challenge through inclusion of custom Operators within the database engine. Specifically, we propose and evaluate an Operator called Root Rank, which performs result ranking in the root of the query execution plan. The Root Rank Operator has been implemented on a PostgreSQL codebase, and its performance profiled over real-world data sets, including DBLP and Wikipedia. Our experimental observations indicate that the Root Rank Operator is highly successful in delivering processing times that are comparable to, or better than, those of non-RSD implementations. We expect these results to aid in the organic hosting of KWS functionality on database systems.

Anastassia Ailamaki - One of the best experts on this subject based on the ideXlab platform.

  • qpipe a simultaneously pipelined Relational query engine
    International Conference on Management of Data, 2005
    Co-Authors: Stavros Harizopoulos, Vladislav Shkapenyuk, Anastassia Ailamaki
    Abstract:

    Relational DBMS typically execute concurrent queries independently by invoking a set of Operator instances for each query. To exploit common data retrievals and computation in concurrent queries, researchers have proposed a wealth of techniques, ranging from buffering disk pages to constructing materialized views and optimizing multiple queries. The ideas proposed, however, are inherently limited by the query-centric philosophy of modern engine designs. Ideally, the query engine should proactively coordinate same-Operator execution among concurrent queries, thereby exploiting common accesses to memory and disks as well as common intermediate result computation.This paper introduces on-demand simultaneous pipelining (OSP), a novel query evaluation paradigm for maximizing data and work sharing across concurrent queries at execution time. OSP enables proactive, dynamic Operator sharing by pipelining the Operator's output simultaneously to multiple parent nodes. This paper also introduces QPipe, a new Operator-centric Relational engine that effortlessly supports OSP. Each Relational Operator is encapsulated in a micro-engine serving query tasks from a queue, naturally exploiting all data and work sharing opportunities. Evaluation of QPipe built on top of BerkeleyDB shows that QPipe achieves a 2x speedup over a commercial DBMS when running a workload consisting of TPC-H queries.

  • SIGMOD Conference - QPipe: a simultaneously pipelined Relational query engine
    Proceedings of the 2005 ACM SIGMOD international conference on Management of data - SIGMOD '05, 2005
    Co-Authors: Stavros Harizopoulos, Vladislav Shkapenyuk, Anastassia Ailamaki
    Abstract:

    Relational DBMS typically execute concurrent queries independently by invoking a set of Operator instances for each query. To exploit common data retrievals and computation in concurrent queries, researchers have proposed a wealth of techniques, ranging from buffering disk pages to constructing materialized views and optimizing multiple queries. The ideas proposed, however, are inherently limited by the query-centric philosophy of modern engine designs. Ideally, the query engine should proactively coordinate same-Operator execution among concurrent queries, thereby exploiting common accesses to memory and disks as well as common intermediate result computation.This paper introduces on-demand simultaneous pipelining (OSP), a novel query evaluation paradigm for maximizing data and work sharing across concurrent queries at execution time. OSP enables proactive, dynamic Operator sharing by pipelining the Operator's output simultaneously to multiple parent nodes. This paper also introduces QPipe, a new Operator-centric Relational engine that effortlessly supports OSP. Each Relational Operator is encapsulated in a micro-engine serving query tasks from a queue, naturally exploiting all data and work sharing opportunities. Evaluation of QPipe built on top of BerkeleyDB shows that QPipe achieves a 2x speedup over a commercial DBMS when running a workload consisting of TPC-H queries.

Gary Kaminski - One of the best experts on this subject based on the ideXlab platform.

  • Improving logic-based testing
    Journal of Systems and Software, 2013
    Co-Authors: Gary Kaminski, Paul Ammann, Jeff Offutt
    Abstract:

    Logic-based testers design tests from logical expressions that appear in software artifacts such as source code, design models, and requirements specifications. This paper presents three improvements to logic-based test design. First, in the context of mutation testing, we present fault hierarchies for the six Relational Operators. Applying the ROR mutation Operator causes each Relational Operator to generate seven mutants per clause. The fault hierarchies show that only three of these seven mutants are needed. Second, we show how to bring the power of the ROR Operator to logic-based test criteria such as the widely used Multiple Condition-Decision Coverage (MCDC) test criterion. Third, we present theoretical results supported by empirical data that show that the more recent coverage criterion of minimal-MUMCUT can find significantly more faults than MCDC. The paper has three specific recommendations: (1) Change the way the ROR mutation Operator is defined in existing and future mutation systems. (2) Augment logic-based test criteria to incorporate Relational Operator replacement from mutation. (3) Replace the use of MCDC with minimal-MUMCUT, both in practice and in standards documents like FAA-DO178B.

  • Better predicate testing
    2011
    Co-Authors: Gary Kaminski, Paul Ammann, Jeff Offutt
    Abstract:

    Mutation testing is widely recognized as being extremely powerful, but is considered difficult to automate enough for practical use. This paper theoretically addresses two pos-sible reasons for this: the generation of redundant mutants and the lack of integration of mutation analysis with other test criteria. By addressing these two issues, this paper brings an important mutation Operator, Relational-Operator-replacement (ROR), closer to practical use. First, we de-velop fault hierarchies for the six Relational Operators, each of which generates seven mutants per clause. These hierar-chies show that, for any given clause, only three mutants are necessary. This theoretical result can be integrated easily into mutation analysis tools, thereby eliminating generation of 57 % of the ROR mutants. Second, we show how to bring the power of the ROR Operator to the widely used Multiple Condition-Decision Coverage (MCDC) test criterion. This theoretical result includes an algorithm to transform any MCDC-adequate test set into a test set that also satisfies RORG, a new version of ROR appropriate for the MCDC context. The transformation does not use traditional muta-tion analysis, so can easily be integrated into existing MCDC tools and processes

  • AST - Better predicate testing
    Proceeding of the 6th international workshop on Automation of software test - AST '11, 2011
    Co-Authors: Gary Kaminski, Paul Ammann, Jeff Offutt
    Abstract:

    Mutation testing is widely recognized as being extremely powerful, but is considered difficult to automate enough for practical use. This paper theoretically addresses two possible reasons for this: the generation of redundant mutants and the lack of integration of mutation analysis with other test criteria. By addressing these two issues, this paper brings an important mutation Operator, Relational-Operator-replacement (ROR), closer to practical use. First, we develop fault hierarchies for the six Relational Operators, each of which generates seven mutants per clause. These hierarchies show that, for any given clause, only three mutants are necessary. This theoretical result can be integrated easily into mutation analysis tools, thereby eliminating generation of 57% of the ROR mutants. Second, we show how to bring the power of the ROR Operator to the widely used Multiple Condition-Decision Coverage (MCDC) test criterion. This theoretical result includes an algorithm to transform any MCDC-adequate test set into a test set that also satisfies RORG, a new version of ROR appropriate for the MCDC context. The transformation does not use traditional mutation analysis, so can easily be integrated into existing MCDC tools and processes.

Olivier Pivert - One of the best experts on this subject based on the ideXlab platform.