Research Interests: Electronic Engineering, Electronics, Mutation testing, Sampling techniques, Sampling techniques and survey methodologies, and 10 moreElectronics Engineering, Psychometrics and Test Development, Electronics and Telecommunication Engineering, Mutational Analysis, Test Development, Embedded Systems Education and Applications, Fault Based Mutation Testing in Aspect Oriented Programming, Embedded Test Suites, Test Case Sampling, and MUTATIONS AND SAMPLING
Research Interests: Computer Science, Network Security, Software Testing, Artificial Neural Networks, Integration, and 12 morePhysical Layer Network Coding, Integration of Teaching and Testing English, Automated Software Testing, Cisco Networking, Choosing Automated Software Testing Tools, Automated Testing, Testing the social network, Integration Technology of Automation Systems, Wireless Sensor Networks Physical Layer, Data Integration Testing, Networked cyber physical systems, and Integration Testing
Research Interests: Information Systems, Engineering, Computer Science, Software Engineering, Computer Engineering, and 15 moreDatabase Systems, Systems Engineering, Open Source Software, Software Testing, Stakeholders, Embedded Systems, Software Development, Software Architecture, Software Project Management, Software, Mutation testing, Mutation, Open Source Applications, Test Driven Development, and Test Coverage
Research Interests: Engineering, Computer Architecture, Software Engineering, Architecture, Multiple Intelligences, and 15 moreOpen Source Software, Software Testing, Software Development, Software Architecture, Automated reasoning, Testing, Software Quality Engineering, Software Project Management, Agile Methods (Software Engineering), Software, Tools, Automated Software Testing, Agile software development, Multiple Choice Tests, and Drivers Training and Testing
Research Interests:
Research Interests: Engineering, Computer Science, Design, Computer Engineering, Open Source Software, and 15 moreService Quality, Metrics, Software Development, Software Architecture, Optimization techniques, Optimisation techniques, Separation Techniques, Software, Mutation testing, Mutation, Media Coverage, Coverage, Color Mutations, Analyzing Multimodal Texts, and BRANCH COVERAGE TESTING
Recent progress in acquisition technology has increased the availability and quality of measured appearance data. Although representations based on dimensionality reduction provide the greatest fidelity to measured data, they require... more
Recent progress in acquisition technology has increased the availability and quality of measured appearance data. Although representations based on dimensionality reduction provide the greatest fidelity to measured data, they require assembling a high-resolution and regularly sampled matrix from sparse and non-uniformly scattered input. Constructing and processing this immense matrix becomes a significant computational bottleneck. We describe a technique for performing basis decomposition directly from scattered measurements. Our approach is flexible in how the basis is represented and can accommodate any number of linear constraints on the factorization. Because its time- and space-complexity is proportional to the number of input measurements and the size of the output, we are able to decompose multi-gigabyte datasets faster and at lower error rates than currently available techniques. We evaluate our approach by representing measured spatially-varying reflectance within a reduced...
Research Interests:
Regression testing is frequently performed in a time constrained environment. This paper explains how 0/1 knapsack solvers (e.g., greedy, dynamic programming, and the core algorithm) can identify a test suite reordering that rapidly... more
Regression testing is frequently performed in a time constrained environment. This paper explains how 0/1 knapsack solvers (e.g., greedy, dynamic programming, and the core algorithm) can identify a test suite reordering that rapidly covers the test requirements and always terminates within a specified testing time limit. We conducted experiments that reveal fundamental trade-offs in the (i) time and space costs that are associated with creating a reordered test suite and (ii) quality of the resulting prioritization. We find knapsack-based prioritizers that ignore the overlap in test case coverage incur a low time overhead and a moderate to high space overhead while creating prioritizations exhibiting a minor to modest decrease in effectiveness. We also find that the most sophisticated 0/1 knapsack solvers do not always identify the most effective prioritization, suggesting that overlap-aware prioritizers with a higher time overhead are useful in certain testing contexts.
Research Interests:
Transient faults due to particle strikes are a key challenge in microprocessor design. Driven by exponentially increasing transistor counts, per-chip faults are a growing burden. To protect against soft errors, redundancy techniques such... more
Transient faults due to particle strikes are a key challenge in microprocessor design. Driven by exponentially increasing transistor counts, per-chip faults are a growing burden. To protect against soft errors, redundancy techniques such as redundant multithreading (RMT) are often used. However, these techniques assume that the probability that a structural fault will result in a soft error (i.e., the Architectural Vulnerability Factor (AVF)) is 100 percent, unnecessarily draining processor resources. Due to the high cost of redundancy, there have been efforts to throttle RMT at runtime. To date, these methods have not incorporated an AVF model and therefore tend to be ad hoc. Unfortunately, computing the AVF of complex microprocessor structures (e.g., the ISQ) can be quite involved. To provide probabilistic guarantees about fault tolerance, we have created a rigorous characterization of AVF behavior that can be easily implemented in hardware. We experimentally demonstrate AVF varia...
Research Interests:
Regression test prioritization is often performed in a time constrained execution environment in which testing only occurs for a fixed time period. For example, many organizations rely upon nightly building and regression testing of their... more
Regression test prioritization is often performed in a time constrained execution environment in which testing only occurs for a fixed time period. For example, many organizations rely upon nightly building and regression testing of their applications every time source code changes are committed to a version control repository. This paper presents a regression test prioritization technique that uses a genetic algorithm to reorder test suites in light of testing time constraints. Experiment results indicate that our prioritization approach frequently yields higher average percentage of faults detected (APFD) values, for two case study applications, when basic block level coverage is used instead of method level coverage. The experiments also reveal fundamental trade-offs in the performance of time-aware prioritization. This paper shows that our prioritization technique is appropriate for many regression testing environments and explains how the baseline approach can be extended to op...
Research Interests:
Despite the emerging ubiquity of hardware monitoring mechanisms and prior research work in other fields, the applicability and usefulness of hardware monitoring mechanisms have not been fully scrutinized for software engineering. In this... more
Despite the emerging ubiquity of hardware monitoring mechanisms and prior research work in other fields, the applicability and usefulness of hardware monitoring mechanisms have not been fully scrutinized for software engineering. In this work, we identify several recently developed hardware mechanisms that lend themselves well to structural test coverage analysis and automated fault localization and explore their potential. We discuss key factors impacting the applicability of hardware monitoring mechanism for these software engineering tasks, present novel online analyses leveraging these mechanisms, and provide preliminary results demonstrating the promise of this emerging hardware.
Research Interests:
Regression testing is frequently performed in a time constrained environment. This paper explains how 0/1 knapsack solvers (e.g., greedy, dynamic programming, and the core algorithm) can identify a test suite reordering that rapidly... more
Regression testing is frequently performed in a time constrained environment. This paper explains how 0/1 knapsack solvers (e.g., greedy, dynamic programming, and the core algorithm) can identify a test suite reordering that rapidly covers the test requirements and always terminates within a specified testing time limit. We conducted experiments that reveal fundamental trade-offs in the (i) time and space costs that are associated with creating a reordered test suite and (ii) quality of the resulting prioritization. We find knapsack-based prioritizers that ignore the overlap in test case coverage incur a low time overhead and a moderate to high space overhead while creating prioritizations exhibiting a minor to modest decrease in effectiveness. We also find that the most sophisticated 0/1 knapsack solvers do not always identify the most effective prioritization, suggesting that overlap-aware prioritizers with a higher time overhead are useful in certain testing contexts.
Research Interests:
The prevalence of push notifications for communication between devices is increasing and is vital to Internet of Things (IoT) components. It has been observed that delays of notification receipt vary even for devices that are on the same... more
The prevalence of push notifications for communication between devices is increasing and is vital to Internet of Things (IoT) components. It has been observed that delays of notification receipt vary even for devices that are on the same network and using the same hardware. A closer analysis is needed to understand what is occurring in the hardware when a notification occurs from a cloud service or other application.In this paper, we describe and develop a framework, AHPCap, to better understand application behavior at the hardware level at the time of a notification. We explain the framework and its deployment and capabilities. We then show an example of a hardware profile that can be generated on mobile devices and analyze the time required to capture and record the profile data. Lastly, we discuss some of AHPCap’s potential applications.
Research Interests:
In the linux kernel, SCSI storage drivers are maintained as three different levels; the high level drivers handle device specific code, the middle level is a core layer which provides the primary functionality of the SCSI subsystem, and... more
In the linux kernel, SCSI storage drivers are maintained as three different levels; the high level drivers handle device specific code, the middle level is a core layer which provides the primary functionality of the SCSI subsystem, and the low level drivers (LLD) contain hardware specific code. Since the LLDs are hardware specific, they are predominantly developed by hardware vendors whereas the upper level and middle level drivers are mostly implemented by the open source developers who are responsible for the SCSI subsystem maintenance.In the linux kernel, SCSI storage drivers are maintained as three different levels; the high level drivers handle device specific code, the middle level is a core layer which provides the primary functionality of the SCSI subsystem, and the low level drivers (LLD) contain hardware specific code. Since the LLDs are hardware specific, they are predominantly developed by hardware vendors whereas the upper level and middle level drivers are mostly impl...
The Internet of Things (IoT) is a developing technology which allows any type of network device inside a home to be linked together. IoT is based on older Wireless Sensor Network (WSN) technology and has been reduced to smaller size and... more
The Internet of Things (IoT) is a developing technology which allows any type of network device inside a home to be linked together. IoT is based on older Wireless Sensor Network (WSN) technology and has been reduced to smaller size and scale for home use. However, both the original WSN and developing IoT technology has inherent security flaws. This paper identifies and evaluates security issues and their underlying causes in IoT technology. We focus on IoT reliance on known exploitable network ports and the difficulty of recovering from such attacks. Most IoT implementations utilize Telnet to communicate between devices. We explore the vulnerability of Telnet connections through a simulated IoT environment. Our results show that Telnet vulnerabilities can be exploited by attackers and grant access over IoT devices allowing the modification of devices and subtle spying on any data being transmitted.
Research Interests:
Research Interests: Software Engineering, Design, Web Design, Open Source Software, Software Testing, and 13 moreVideo Game Design, Software Development, Software Architecture, Model-Driven Testing, Astrophysics, Software Developer, Software Project Management, Programming, Software, Expectations, Moot Courts and Mock Trials, Test Driven Development, and Cultural Frameworks
Research Interests:
Research Interests:
Research Interests:
Test case prioritization techniques organize the test cases in a test suite, allowing for an increase in the effectiveness of testing. One performance goal, the fault-detection rate, is a measure of how quickly faults are detected during... more
Test case prioritization techniques organize the test cases in a test suite, allowing for an increase in the effectiveness of testing. One performance goal, the fault-detection rate, is a measure of how quickly faults are detected during the testing process. An improved rate of fault detection can provide faster feedback regarding the quality of the system under test, but frequently, complete testing is too expensive. This is often the case with regression testing, the process of validating modified software to detect whether new errors have ...
Research Interests:
Some counting problems are simple enough to solve by observation, but many require a more sophisticated approach. Burnside's Theorem is a result of group theory that is often used to calculate the number of nonequivalent arrangements... more
Some counting problems are simple enough to solve by observation, but many require a more sophisticated approach. Burnside's Theorem is a result of group theory that is often used to calculate the number of nonequivalent arrangements of colorings of objects in a set under a group of permutations. In this project, we will discuss the notion of an arbitrary group acting on a set, the analysis and several applications of Burnside's Theorem, and a generalization of the theorem.
Test case prioritization techniques organize the test cases in a test suite, allowing for an increase in the effectiveness of testing. One performance goal, the faultdetection rate, is a measure of how quickly faults are detected during... more
Test case prioritization techniques organize the test cases in a test suite, allowing for an increase in the effectiveness of testing. One performance goal, the faultdetection rate, is a measure of how quickly faults are detected during the testing process. An improved rate of fault detection can provide faster feedback regarding the quality of the system under test, but frequently, complete testing is too expensive.
Abstract: Recent progress in acquisition technology has increased the availability and quality of measured appearance data. Although representations based on dimensionality reduction provide the greatest fidelity to measured data, they... more
Abstract: Recent progress in acquisition technology has increased the availability and quality of measured appearance data. Although representations based on dimensionality reduction provide the greatest fidelity to measured data, they require assembling a high-resolution and regularly sampled matrix from sparse and non-uniformly scattered input. Constructing and processing this immense matrix becomes a significant computational bottleneck. We describe a technique for performing basis decomposition directly from ...
Research Interests:
Some counting problems are simple enough to solve by observation, but many require a more sophisticated approach. Burnside's Theorem is a result of group theory that is often used to calculate the number of nonequivalent arrangements... more
Some counting problems are simple enough to solve by observation, but many require a more sophisticated approach. Burnside's Theorem is a result of group theory that is often used to calculate the number of nonequivalent arrangements of colorings of objects in a set under a group of permutations. In this project, we will discuss the notion of an arbitrary group acting on a set, the analysis and several applications of Burnside's Theorem, and a generalization of the theorem.
Abstract Despite the emerging ubiquity of hardware monitoring mechanisms and prior research work in other fields, the applicability and usefulness of hardware monitoring mechanisms have not been fully scrutinized for software engineering.... more
Abstract Despite the emerging ubiquity of hardware monitoring mechanisms and prior research work in other fields, the applicability and usefulness of hardware monitoring mechanisms have not been fully scrutinized for software engineering. In this work, we identify several recently developed hardware mechanisms that lend themselves well to structural test overage analysis and automated fault localization and explore their potential. We discuss key factors impacting the applicability of hardware monitoring mechanism for ...
Research Interests:
Research Interests:
Research Interests:
Research Interests:
Abstract Many applications rely upon a tuple space within distributed system middleware to provide loosely coupled communication and service coordination. This paper describes an approach for measuring the throughput and response time of... more
Abstract Many applications rely upon a tuple space within distributed system middleware to provide loosely coupled communication and service coordination. This paper describes an approach for measuring the throughput and response time of a tuple space when it handles concurrent local space interactions. Furthermore, it discusses a technique that populates a tuple space with tuples before the execution of a benchmark in order to age the tuple space and provide a worst-case measurement of space performance. We apply the tuple space ...
Research Interests:
Test case prioritization techniques organize the test cases in a test suite, allowing for an increase in the effectiveness of testing. One performance goal, the fault-detection rate, is a measure of how quickly faults are detected during... more
Test case prioritization techniques organize the test cases in a test suite, allowing for an increase in the effectiveness of testing. One performance goal, the fault-detection rate, is a measure of how quickly faults are detected during the testing process. An improved rate of fault detection can provide faster feedback regarding the quality of the system under test, but frequently, complete testing is too expensive. This is often the case with regression testing, the process of validating modified software to detect whether new errors have ...
Research Interests:
Abstract: Recent progress in acquisition technology has increased the availability and quality of measured appearance data. Although representations based on dimensionality reduction provide the greatest fidelity to measured data, they... more
Abstract: Recent progress in acquisition technology has increased the availability and quality of measured appearance data. Although representations based on dimensionality reduction provide the greatest fidelity to measured data, they require assembling a high-resolution and regularly sampled matrix from sparse and non-uniformly scattered input. Constructing and processing this immense matrix becomes a significant computational bottleneck. We describe a technique for performing basis decomposition directly from ...