Kwan Yong Sim

Learn More
Boolean expressions are widely used to model decisions or conditions of a specification or source program. The MUMCUT, which is designed to detect seven common faults where Boolean expressions under test are assumed to be in Irredundant Disjunctive Normal Form (IDNF), is an efficient fault-based test case selection strategy in terms of the fault-detection(More)
Random Testing (RT) is a fundamental technique of software testing. Adaptive Random Testing (ART) has recently been developed as an enhancement of RT that has better fault detection effectiveness. Several methods (algorithms) have been developed to implement ART. In most ART algorithms, however, the above enhancement diminishes when the dimensionality of(More)
—Financial charting software is widely used for technical analysis of price movements in financial markets. Commercial off-the-shelf charting components are often used to build such software. However, the outputs of some charting components are difficult to be verified because the correct outputs are unknown. In many cases, charting output verification(More)
Fuzzing is an automated black-box testing technique conducted with a destructive aim to crash (that is, to reveal failures in) the software under test. In this paper, we propose an adaptive random approach to fuzz the Out-Of-Memory (OOM) Killer on an embedded Linux distribution. The fuzzing process has revealed OOM Killer failures that cause the Linux(More)
Fault-based testing has been proven to be a cost effective testing technique for software logics and rules expressed in Boolean expressions. It can guarantee the elimination of common faults without exhaustive testing. However, average software testing practitioners may not have in-depth knowledge on Boolean algebra and complex logic derivations required to(More)
Many financial trading and charting software packages provide users with technical indicators to analyze and predict price movements in financial markets. Any computation fault in technical indicator may lead to wrong trading decisions and cause substantial financial losses. Testing is a major software engineering activity to detect computation faults in(More)
Spectrum-based Fault Localization (SBFL) has been widely studied as a debugging technique to reduce time and effort in locating faulty code in software. In SBFL, execution profiles (spectra) of pass and fail test cases are analyzed with SBFL metric to rank software code according to their likeliness to be faulty. However, there are significantly more pass(More)
—Financial charting software is widely used in share, commodity and foreign currency exchange markets to visualize and analyze price movements. Its quality is critical because incorrect outputs may lead to wrong analysis and trading decisions, and consequently substantial financial losses. Human visual judgment is often required to test financial charting(More)
Forecasting price volatility of financial time series has been a major challenge confronting investors, speculators, businesses and also governmental organization in view of its impacts, not only on financial aspect, but also social and possibly political aspects. While businesses have been struggling in making financial decision to hedge their risk against(More)