Shmuel Ur - Academia.edu (original) (raw)

Papers by Shmuel Ur

Research paper thumbnail of System, method, and computer program for utilizing a decoy in response to a distributed denial of service (DDOS) attack in a communication network

Research paper thumbnail of Proceedings of the 2007 ACM workshop on Parallel and distributed systems: testing and debugging - PADTAD '07

It is our great pleasure to welcome you to the 5th PADTAD Parallel and Distributed Systems: Testi... more It is our great pleasure to welcome you to the 5th PADTAD Parallel and Distributed Systems: Testing and Debugging -- PADTAD07. When we started PADTAD, only four years ago, it was the only workshop dedicated to the testing of concurrent and distributed software. This field is taking center stage as can be seen by the growing number of workshops that are dedicated to it or give it high visibility. The fact that PADTAD topics are of interest to the industry is indicated by our distinguished list of sponsors that includes IBM, Intel, Microsoft, and TotalView Technologies. In addition, companies like IBM, Intel and Microsoft now have dedicated groups to threading testing tools. The mission of PADTAD is to share the advances in the field of testing/debugging concurrency between the industry and the academic world. This sharing is achieved both through the almost even mix of papers from industry and universities, as well as the many attendees from both backgrounds. Our field is such that the impact of research can go both ways. The academic works go very quickly from theory to practice, and the industrial work is cutting edge and publishable. Our distinguished keynote speaker, Prof. Bill Scherlis, Director, Institute for Software Research (SCS/ISR), Carnegie Mellon University, career shows that one can get to the highest levels both in the industry and academic (as well as government agency) working on problems that addresses.

Research paper thumbnail of On Minimizing Regression-Suites using On-Line Set-Cover

This paper is about t he ex perience gained in IBM Haifa Research Lab (HRL) in creating regressio... more This paper is about t he ex perience gained in IBM Haifa Research Lab (HRL) in creating regression-suites and minimizing their size, while maintaining high quality as measured by coverage. The problem that we solve, while similar to the one addressed in the literature, has a key difference; the c ompaction a lgorithm has to b e implemented on -line

Research paper thumbnail of IBM Haifa Leadership Seminar - Agenda

Research paper thumbnail of Off-The-Shelf Vs. Custom Made Coverage Models, Which Is The One for You?

We compare the benefits and costs of using off-the-shelf coverage tools vs. application specific ... more We compare the benefits and costs of using off-the-shelf coverage tools vs. application specific coverage tools. We start with an overview of coverage, its benefits and its risks. We elaborate on relatively unfamiliar functional coverage as a way to create custom made coverage models. We explain what functional coverage models are, how to create them and their great benefits with an example from our experience. We provide guidelines on how to decide if coverage should be used at all and whether code based or functional coverage (or both) should be used. 1 Introduction Testing is one of the biggest problems of the software industry. The cost of testing is usually between 4080 % of the development process (70% for Microsoft) as compared with less than 20% for the coding itself [4]. The practice of letting the users find the bugs and fixing them in the next release is becoming dangerous and costly for three main reasons: reputation and brand-name are harmed, replacing the software...

Research paper thumbnail of Prediction of Coverage of Expensive Concurrency Metrics Using Cheaper Metrics

Computer Aided Systems Theory – EUROCAST 2017

Testing of concurrent programs is difficult since the scheduling nondeterminism requires one to t... more Testing of concurrent programs is difficult since the scheduling nondeterminism requires one to test a huge number of different thread interleavings. Moreover, a simple repetition of test executions will typically examine similar interleavings only. One popular way how to deal with this problem is to use the noise injection approach, which is, however, parametrized with many parameters whose suitable values are difficult to find. To find such values, one needs to run many experiments and use some metric to evaluate them. Measuring the achieved coverage can, however, slow down the experiments. To minimize this problem, we show that there are correlations between metrics of different cost and that one can find a suitable test and noise setting to maximize coverage under a costly metrics by experiments with a cheaper metrics.

Research paper thumbnail of Off-The-Shelf Vs . Custom Made Coverage Models , Which Is The One for You ?

We compare the benefits and costs of using off-the-shelf coverage tools vs. application specific ... more We compare the benefits and costs of using off-the-shelf coverage tools vs. application specific coverage tools. We start with an overview of coverage, its benefits and its risks. We elaborate on relatively unfamiliar functional coverage as a way to create custom made coverage models. We explain what functional coverage models are, how to create them and their great benefits with an example from our experience. We provide guidelines on how to decide if coverage should be used at all and whether code based or functional coverage (or both) should be used.

Research paper thumbnail of Prediction of Coverage of Expensive Concurrency Metrics Using Cheaper Metrics

Testing of concurrent programs is difficult since the scheduling non-determinism requires one to ... more Testing of concurrent programs is difficult since the scheduling non-determinism requires one to test a huge number of different thread interleavings. Moreover, a simple repetition of test executions will typically examine similar interleavings only. One popular way how to deal with this problem is to use the noise injection approach, which is, however, parametrized with many parameters whose suitable values are difficult to find. To find such values, one needs to run many experiments and use some metric to evaluate them. Measuring the achieved coverage can, however, slow down the experiments. To minimize this problem, we show that there are correlations between metrics of different cost and that one can find a suitable test and noise setting to maximize coverage under a costly metrics by experiments with a cheaper metrics.

Research paper thumbnail of Boosted decision trees for behaviour mining of concurrent programmes

Concurrency and Computation: Practice and Experience

Testing of concurrent programs is difficult since the scheduling non-determinism requires one to ... more Testing of concurrent programs is difficult since the scheduling non-determinism requires one to test a huge number of different thread interleavings. Moreover, repeated test executions that are performed in the same environment will typically examine similar interleavings only. One possible way how to deal with this problem is to use the noise injection approach, which influences the scheduling by injecting various kinds of noise (delays, context switches, etc.) into the common thread behaviour. However, for noise injection to be efficient, one has to choose suitable noise injection heuristics from among the many existing ones as well as to suitably choose values of their various parameters, which is not easy. In this paper, we propose a novel way how to deal with the problem of choosing suitable noise injection heuristics and suitable values of their parameters (as well as suitable values of parameters of the programs being tested themselves). Here, by suitable, we mean such settings that maximize chances of meeting a given testing goal (such as, e.g., maximizing coverage of rare behaviours and thus maximizing chances to find rarely occurring concurrency-related bugs). Our approach is, in particular, based on using data mining in the context of noise-based testing to get more insight about the importance of the different heuristics in a particular testing context as well as to improve fully automated noise-based testing (in combination with both random as well as genetically optimized noise setting).

Research paper thumbnail of Method and system for identifying documents generated by an unauthorized software copy

Research paper thumbnail of Digital Relay for Out of Network Devices

Research paper thumbnail of Detecting Unexpected Impact of Software Changes Using Coverage Analysis

Research paper thumbnail of Toward a Framework and Benchmark for Testing Tools for Multi-Threaded Programs

Multi-threaded code is becoming very common, both on the server side, and very recently for perso... more Multi-threaded code is becoming very common, both on the server side, and very recently for personal computers as well. Consequently, looking for intermittent bugs is a problem that is receiving more and more attention. As there is no silver bullet, research focuses on a variety of partial solutions. We outline a road map for combining the research within the different disciplines of testing multi-threaded programs and on evaluating the quality of this research. We have three main goals. First, to create a benchmark that can be used to evaluate different solutions. Second, to create a framework with open APIs that enables the combination of techniques in the multi-threading domain. Third, to create a focus for the research in this area around which a community of people who try to solve similar problems with different techniques can congregate. We have started creating such a benchmark and describe the lessons learned in the process. The framework will enable technology developers, for example, developers of race detection algorithms, to concentrate on their components and use other ready made components, (e.g., an instrumentor) to create a testing solution.

Research paper thumbnail of Starting simulation from a real situation

실제 상황으로부터 시뮬레이션을 시작하기 위한 기술이 개시된다. 다양한 실시형태들에서, 기술은 가상 콘텍스트에서의 물리적 엔티티의 시뮬레이션에 대응하는 파라미터를 수신하고, 물... more 실제 상황으로부터 시뮬레이션을 시작하기 위한 기술이 개시된다. 다양한 실시형태들에서, 기술은 가상 콘텍스트에서의 물리적 엔티티의 시뮬레이션에 대응하는 파라미터를 수신하고, 물리적 콘텍스트 내의 물리적 엔티티에 대응하는 속성을 수신하며, 자극으로서 속성을 이용하여 가상 콘텍스트에서 물리적 엔티티를 시뮬레이팅한다. 속성은 물리적 콘텍스트 동안 실제 발생을 식별할 수도 있다.

Research paper thumbnail of User-Controlled Download Duration Time

Research paper thumbnail of Remote Movement Guidance

Research paper thumbnail of Facilitating simulated purchases of items by virtual representations of participants in computer-based simulations

Research paper thumbnail of Determining Functional Design/Requirements Coverage of a Computer Code

Research paper thumbnail of Active Lock Information Maintenance and Retrieval

Research paper thumbnail of System and method for social dancing

A system and method for enabling social dancing. The system comprising a movement registration mo... more A system and method for enabling social dancing. The system comprising a movement registration module configured to monitor and identify movements by a participant; and a tactile feedback actuator configured to supply tactile feedback to the participant based on a determination by a logic module. The method performed by a computerized device, the method comprising: monitoring movements by a participant; determining feedback in response to the movements; and instructing a tactile feedback actuator to supply the feedback to the participant.

Research paper thumbnail of System, method, and computer program for utilizing a decoy in response to a distributed denial of service (DDOS) attack in a communication network

Research paper thumbnail of Proceedings of the 2007 ACM workshop on Parallel and distributed systems: testing and debugging - PADTAD '07

It is our great pleasure to welcome you to the 5th PADTAD Parallel and Distributed Systems: Testi... more It is our great pleasure to welcome you to the 5th PADTAD Parallel and Distributed Systems: Testing and Debugging -- PADTAD07. When we started PADTAD, only four years ago, it was the only workshop dedicated to the testing of concurrent and distributed software. This field is taking center stage as can be seen by the growing number of workshops that are dedicated to it or give it high visibility. The fact that PADTAD topics are of interest to the industry is indicated by our distinguished list of sponsors that includes IBM, Intel, Microsoft, and TotalView Technologies. In addition, companies like IBM, Intel and Microsoft now have dedicated groups to threading testing tools. The mission of PADTAD is to share the advances in the field of testing/debugging concurrency between the industry and the academic world. This sharing is achieved both through the almost even mix of papers from industry and universities, as well as the many attendees from both backgrounds. Our field is such that the impact of research can go both ways. The academic works go very quickly from theory to practice, and the industrial work is cutting edge and publishable. Our distinguished keynote speaker, Prof. Bill Scherlis, Director, Institute for Software Research (SCS/ISR), Carnegie Mellon University, career shows that one can get to the highest levels both in the industry and academic (as well as government agency) working on problems that addresses.

Research paper thumbnail of On Minimizing Regression-Suites using On-Line Set-Cover

This paper is about t he ex perience gained in IBM Haifa Research Lab (HRL) in creating regressio... more This paper is about t he ex perience gained in IBM Haifa Research Lab (HRL) in creating regression-suites and minimizing their size, while maintaining high quality as measured by coverage. The problem that we solve, while similar to the one addressed in the literature, has a key difference; the c ompaction a lgorithm has to b e implemented on -line

Research paper thumbnail of IBM Haifa Leadership Seminar - Agenda

Research paper thumbnail of Off-The-Shelf Vs. Custom Made Coverage Models, Which Is The One for You?

We compare the benefits and costs of using off-the-shelf coverage tools vs. application specific ... more We compare the benefits and costs of using off-the-shelf coverage tools vs. application specific coverage tools. We start with an overview of coverage, its benefits and its risks. We elaborate on relatively unfamiliar functional coverage as a way to create custom made coverage models. We explain what functional coverage models are, how to create them and their great benefits with an example from our experience. We provide guidelines on how to decide if coverage should be used at all and whether code based or functional coverage (or both) should be used. 1 Introduction Testing is one of the biggest problems of the software industry. The cost of testing is usually between 4080 % of the development process (70% for Microsoft) as compared with less than 20% for the coding itself [4]. The practice of letting the users find the bugs and fixing them in the next release is becoming dangerous and costly for three main reasons: reputation and brand-name are harmed, replacing the software...

Research paper thumbnail of Prediction of Coverage of Expensive Concurrency Metrics Using Cheaper Metrics

Computer Aided Systems Theory – EUROCAST 2017

Testing of concurrent programs is difficult since the scheduling nondeterminism requires one to t... more Testing of concurrent programs is difficult since the scheduling nondeterminism requires one to test a huge number of different thread interleavings. Moreover, a simple repetition of test executions will typically examine similar interleavings only. One popular way how to deal with this problem is to use the noise injection approach, which is, however, parametrized with many parameters whose suitable values are difficult to find. To find such values, one needs to run many experiments and use some metric to evaluate them. Measuring the achieved coverage can, however, slow down the experiments. To minimize this problem, we show that there are correlations between metrics of different cost and that one can find a suitable test and noise setting to maximize coverage under a costly metrics by experiments with a cheaper metrics.

Research paper thumbnail of Off-The-Shelf Vs . Custom Made Coverage Models , Which Is The One for You ?

We compare the benefits and costs of using off-the-shelf coverage tools vs. application specific ... more We compare the benefits and costs of using off-the-shelf coverage tools vs. application specific coverage tools. We start with an overview of coverage, its benefits and its risks. We elaborate on relatively unfamiliar functional coverage as a way to create custom made coverage models. We explain what functional coverage models are, how to create them and their great benefits with an example from our experience. We provide guidelines on how to decide if coverage should be used at all and whether code based or functional coverage (or both) should be used.

Research paper thumbnail of Prediction of Coverage of Expensive Concurrency Metrics Using Cheaper Metrics

Testing of concurrent programs is difficult since the scheduling non-determinism requires one to ... more Testing of concurrent programs is difficult since the scheduling non-determinism requires one to test a huge number of different thread interleavings. Moreover, a simple repetition of test executions will typically examine similar interleavings only. One popular way how to deal with this problem is to use the noise injection approach, which is, however, parametrized with many parameters whose suitable values are difficult to find. To find such values, one needs to run many experiments and use some metric to evaluate them. Measuring the achieved coverage can, however, slow down the experiments. To minimize this problem, we show that there are correlations between metrics of different cost and that one can find a suitable test and noise setting to maximize coverage under a costly metrics by experiments with a cheaper metrics.

Research paper thumbnail of Boosted decision trees for behaviour mining of concurrent programmes

Concurrency and Computation: Practice and Experience

Testing of concurrent programs is difficult since the scheduling non-determinism requires one to ... more Testing of concurrent programs is difficult since the scheduling non-determinism requires one to test a huge number of different thread interleavings. Moreover, repeated test executions that are performed in the same environment will typically examine similar interleavings only. One possible way how to deal with this problem is to use the noise injection approach, which influences the scheduling by injecting various kinds of noise (delays, context switches, etc.) into the common thread behaviour. However, for noise injection to be efficient, one has to choose suitable noise injection heuristics from among the many existing ones as well as to suitably choose values of their various parameters, which is not easy. In this paper, we propose a novel way how to deal with the problem of choosing suitable noise injection heuristics and suitable values of their parameters (as well as suitable values of parameters of the programs being tested themselves). Here, by suitable, we mean such settings that maximize chances of meeting a given testing goal (such as, e.g., maximizing coverage of rare behaviours and thus maximizing chances to find rarely occurring concurrency-related bugs). Our approach is, in particular, based on using data mining in the context of noise-based testing to get more insight about the importance of the different heuristics in a particular testing context as well as to improve fully automated noise-based testing (in combination with both random as well as genetically optimized noise setting).

Research paper thumbnail of Method and system for identifying documents generated by an unauthorized software copy

Research paper thumbnail of Digital Relay for Out of Network Devices

Research paper thumbnail of Detecting Unexpected Impact of Software Changes Using Coverage Analysis

Research paper thumbnail of Toward a Framework and Benchmark for Testing Tools for Multi-Threaded Programs

Multi-threaded code is becoming very common, both on the server side, and very recently for perso... more Multi-threaded code is becoming very common, both on the server side, and very recently for personal computers as well. Consequently, looking for intermittent bugs is a problem that is receiving more and more attention. As there is no silver bullet, research focuses on a variety of partial solutions. We outline a road map for combining the research within the different disciplines of testing multi-threaded programs and on evaluating the quality of this research. We have three main goals. First, to create a benchmark that can be used to evaluate different solutions. Second, to create a framework with open APIs that enables the combination of techniques in the multi-threading domain. Third, to create a focus for the research in this area around which a community of people who try to solve similar problems with different techniques can congregate. We have started creating such a benchmark and describe the lessons learned in the process. The framework will enable technology developers, for example, developers of race detection algorithms, to concentrate on their components and use other ready made components, (e.g., an instrumentor) to create a testing solution.

Research paper thumbnail of Starting simulation from a real situation

실제 상황으로부터 시뮬레이션을 시작하기 위한 기술이 개시된다. 다양한 실시형태들에서, 기술은 가상 콘텍스트에서의 물리적 엔티티의 시뮬레이션에 대응하는 파라미터를 수신하고, 물... more 실제 상황으로부터 시뮬레이션을 시작하기 위한 기술이 개시된다. 다양한 실시형태들에서, 기술은 가상 콘텍스트에서의 물리적 엔티티의 시뮬레이션에 대응하는 파라미터를 수신하고, 물리적 콘텍스트 내의 물리적 엔티티에 대응하는 속성을 수신하며, 자극으로서 속성을 이용하여 가상 콘텍스트에서 물리적 엔티티를 시뮬레이팅한다. 속성은 물리적 콘텍스트 동안 실제 발생을 식별할 수도 있다.

Research paper thumbnail of User-Controlled Download Duration Time

Research paper thumbnail of Remote Movement Guidance

Research paper thumbnail of Facilitating simulated purchases of items by virtual representations of participants in computer-based simulations

Research paper thumbnail of Determining Functional Design/Requirements Coverage of a Computer Code

Research paper thumbnail of Active Lock Information Maintenance and Retrieval

Research paper thumbnail of System and method for social dancing

A system and method for enabling social dancing. The system comprising a movement registration mo... more A system and method for enabling social dancing. The system comprising a movement registration module configured to monitor and identify movements by a participant; and a tactile feedback actuator configured to supply tactile feedback to the participant based on a determination by a logic module. The method performed by a computerized device, the method comprising: monitoring movements by a participant; determining feedback in response to the movements; and instructing a tactile feedback actuator to supply the feedback to the participant.