Yuen-Tak Yu

dblp:07/4012 · DBLP profile ↗
← Back
46ranked-venue papers
7as first author
1since 2021 · last 2024
0000-0002-6548-5446ORCID · verified

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 35 · 5 first-authorApplied, interdisciplinary, general and emerging computing · 14 · 2 first-author · 1 since 2021Databases, data management, data science and information retrieval · 2Human-computer interaction and ubiquitous computing · 2Theory of computation · 1

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
7 papers
Software testing · 25% Program analysis · 24% Concurrent programming · 24%
Computer architecture, parallel and distributed computing, and storage systems
1 paper
Cloud and datacenter computing · 100%

Topics — the 17 heaviest of 19, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Program analysis
dynamic analysis
0.312017
SDA-CLOUD: A Multi-VM Architecture for Adaptive Dynamic Data Race Detection · IEEE Trans. Serv. Comput. 2017
Concurrent programming › concurrency bug detection › data race detection
dynamic race detection
0.312017
SDA-CLOUD: A Multi-VM Architecture for Adaptive Dynamic Data Race Detection · IEEE Trans. Serv. Comput. 2017
Cloud and datacenter computing
virtualization
0.312017
SDA-CLOUD: A Multi-VM Architecture for Adaptive Dynamic Data Race Detection · IEEE Trans. Serv. Comput. 2017
Requirements engineering and software design
design patterns
0.112007
Do Maintainers Utilize Deployed Design Patterns Effectively? · ICSE 2007
Empirical software engineering
mining software repositories
0.112007
Do Maintainers Utilize Deployed Design Patterns Effectively? · ICSE 2007
Software maintenance and evolution
refactoring
0.112006
Work experience versus refactoring to design patterns: a controlled experiment · SIGSOFT FSE 2006
Software testing
fault-based testing
0.112005
An extended fault class hierarchy for specification-based testing · ACM Trans. Softw. Eng. Methodol. 2005
Software testing › fault-based testing
fault class hierarchy
0.112005
An extended fault class hierarchy for specification-based testing · ACM Trans. Softw. Eng. Methodol. 2005
Software testing
specification-based testing
0.112005
An extended fault class hierarchy for specification-based testing · ACM Trans. Softw. Eng. Methodol. 2005
Software testing › regression testing
test case prioritization
0.112005
An extended fault class hierarchy for specification-based testing · ACM Trans. Softw. Eng. Methodol. 2005
Software testing
random testing
0.021996
On the Expected Number of Failures Detected by Subdomain Testing and Random Testing · IEEE Trans. Software Eng. 1996
On the Relationship Between Partition and Random Testing · IEEE Trans. Software Eng. 1994
Empirical software engineering
controlled experiment
0.012006
Work experience versus refactoring to design patterns: a controlled experiment · SIGSOFT FSE 2006
Empirical software engineering › developer studies
developer experience
0.012006
Work experience versus refactoring to design patterns: a controlled experiment · SIGSOFT FSE 2006
Empirical software engineering › software engineering research methodology
industrial case study
0.012006
Procurement of enterprise resource planning systems: experiences with some Hong Kong companies · ICSE 2006
Software testing › black-box testing
subdomain testing
0.011996
On the Expected Number of Failures Detected by Subdomain Testing and Random Testing · IEEE Trans. Software Eng. 1996
Software testing
partition testing
0.011994
On the Relationship Between Partition and Random Testing · IEEE Trans. Software Eng. 1994
Software testing › test optimization
test case selection
0.021996
On the Expected Number of Failures Detected by Subdomain Testing and Random Testing · IEEE Trans. Software Eng. 1996
On the Relationship Between Partition and Random Testing · IEEE Trans. Software Eng. 1994

Methods — techniques the papers use, named apart from their topics

race detection · 0.6dynamic analysis · 0.6empirical study · 0.1qualitative analysis · 0.1controlled experiment · 0.1case study · 0.1fault detection condition analysis · 0.1analytical comparison · 0.0p-measure · 0.0e-measure · 0.0
YearPublicationVenuePosition
2024 Spreadsheet quality assurance: a literature review
abstract
Abstract Spreadsheets are very common for information processing to support decision making by both professional developers and non-technical end users. Moreover, business intelligence and artificial intelligence are increasingly popular in the industry nowadays, where spreadsheets have been used as, or integrated into, intelligent or expert systems in various application domains. However, it has been repeatedly reported that faults often exist in operational spreadsheets, which could severely compromise the quality of conclusions and decisions based on the spreadsheets. With a view to systematically examining this problem via survey of existing work, we have conducted a comprehensive literature review on the quality issues and related techniques of spreadsheets over a 35.5-year period (from January 1987 to June 2022) for target journals and a 10.5-year period (from January 2012 to June 2022) for target conferences. Among other findings, two major ones are: (a) Spreadsheet quality is best addressed throughout the whole spreadsheet life cycle, rather than just focusing on a few specific stages of the life cycle. (b) Relatively more studies focus on spreadsheet testing and debugging (related to fault detection and removal) when compared with spreadsheet specification, modeling, and design (related to development). As prevention is better than cure, more research should be performed on the early stages of the spreadsheet life cycle. Enlightened by our comprehensive review, we have identified the major research gaps as well as highlighted key research directions for future work in the area.
Pak-Lok Poon, Man Fai Lau, Yuen-Tak Yu, Sau-Fun Tang
Frontiers Comput. Sci.3
2018 GBRAD: A General Framework to Evaluate Design Strategies for Hybrid Race Detection
abstract
Data race detection is a method in testing multithreaded programs to ensure their reliability against concurrency errors. In this paper, we present the GBRAD framework to support the initialization of various hybrid race detection techniques, which also supports the evaluation of these strategies at two decision points based on two major design factors of hybrid race detectors. In the GBRAD frame-work, one decision point consists of six skipping strategies and another decision point consists of eight reduction strategies. By combining these strategies, 48 hybrid detection techniques are initialized. We report a controlled experiment on the PARSEC benchmark suite as well as four real-world applications to evaluate these 48 techniques and their strategies in terms of runtime slowdown, memory overhead, and race detection effectiveness. The experiment identified 9 previously unknown techniques that are comparable to the state-of-the-art hybrid race detection technique.
Wing Kwong Chan, Yuen-Tak Yu, Jacky W. Keung
COMPSAC (1)3
2017 Theoretical, Weak and Strong Accuracy Graphs of Spectrum-Based Fault Localization Formulas
abstract
Driven by the need to know which spectrum-based fault localization techniques are more effective in locating faults, many studies have sought to compare the accuracy of different formulas used in these techniques, resulting in findings of both theoretical and empirical accuracy relations of these formulas. Theoretical accuracy relations are independent of the specific programs and other settings involved, but limited by underlying assumptions and manual work in proofs. An accuracy graph can be constructed to holistically represent the proved relations. On the other hand, empirical studies are free of specific theoretical assumptions and can be highly automatable and scalable. A recent study has developed a systematic methodology based on statistical tests to reveal consistent and statistically sound empirical accuracy relations. That work has demonstrated the merits of empirical accuracy graphs in revealing relations that can be hard to prove. In this paper, we propose to use a stronger criterion for comparing formulas, describe an exploratory experiment to construct accuracy graphs based on the criterion, and report interesting relations found from the resulting accuracy graphs.
Chung Man Tang, Wing Kwong Chan, Yuen-Tak Yu
COMPSAC (2)3
2017 An Artificial Intelligence Approach toIdentifying Skill Relationship
Tak-Lam Wong, Yuen-Tak Yu, Chung Keung Poon, Haoran Xie 0001, Fu Lee Wang, Chung Man Tang
ICCE2
2017 Adoption of Computer Programming Exercises for Automatic Assessment - Issues and Caution
Yuen-Tak Yu, Chung Man Tang, Chung Keung Poon, Jacky W. Keung
ICCE1
2017 An Empirical Analysis of Three-Stage Data-Preprocessing for Analogy-Based Software Effort Estimation on the ISBSG Data
abstract
Analogy-based software effort estimation is a method to estimate the project cost of an unseen project based on analogies against previous projects sharing selected features. The validity of the selected features depends on many factors, and one of most crucial factors is the effectiveness of the datapreprocessing techniques applied to the datasets of the previous projects. In this paper, we report the first controlled experiment that studies the class of three-stage data-preprocessing techniques with stages of missing data imputation, data normalization, and feature selection for analogy-based effort estimation. We conducted our investigation on the ISBSG data. The experimental results show that three-stage data-preprocessing techniques have significant impacts on the resultant effort estimation accuracy. The results also indicate that the combined use of Z-Score normalization, kNN imputation and mutual information based feature weighting can be an effective choice for analogy-based effort estimation.
Jianglin Huang, Yan-Fu Li, Jacky W. Keung, Yuen-Tak Yu, Wing Kwong Chan
QRS4
2017 Cross-validation based K nearest neighbor imputation for software quality datasets: An empirical study
Jianglin Huang, Jacky W. Keung, Federica Sarro, Yan-Fu Li, Yuen-Tak Yu, Wing Kwong Chan, Hongyi Sun
J. Syst. Softw.5
2017 Accuracy Graphs of Spectrum-Based Fault Localization Formulas
abstract
The effectiveness of spectrum-based fault localization techniques primarily relies on the accuracy of their fault localization formulas. Theoretical studies prove the relative accuracy orders of selected formulas under certain assumptions, forming a graph of their theoretical accuracy relations. However, it is unclear whether in such a graph the relative positions of these formulas may change when some assumptions are relaxed. On the other hand, empirical studies can measure the actual accuracy of any formula in controlled settings that more closely approximate practical scenarios but in less general contexts. In this paper, we propose an empirical framework of accuracy graphs and their construction that reveal the relative accuracy of formulas. Our work not only evaluates the association between certain assumptions and the theoretical relations among formulas, but also expands our knowledge to reveal new potential accuracy relationships of other formulas which have not been discovered by theoretical analysis. Using our proposed framework, we identified a list of formula pairs in which a formula is consistently statistically more accurate than or similar in accuracy to another, enlightening directions for further theoretical analysis.
Chung Man Tang, Wing Kwong Chan, Yuen-Tak Yu, Zhenyu Zhang 0004
IEEE Trans. Reliab.3
2017 SDA-CLOUD: A Multi-VM Architecture for Adaptive Dynamic Data Race Detection
abstract
A concrete service consists of a number of program components, each of which is integrated to the service at either design time or runtime. In testing a concrete service, testers should validate the correctness of each of its components under diverse service consumption scenarios. Analyzing the program executions of these components under different configurations allows developers to compare and pinpoint issues therein. There is surprisingly little work in bridging this gap. In this paper, to the best of our knowledge, we propose the first work in designing dynamic analysis-as-a-service using a multi-virtual machine (multi-VM) approach to dynamic data race detection. Almost all existing work on dynamic data race detection focuses on improving detection precision, efficiency, or coverage of thread interleaving scenarios on the same but single compiled concurrent program component. Our model continually selects VM instances, each hosting a different compiled version of the same program component and running a state-of-the-art detector to detect data races. As such, our model innovatively takes existing race detectors as building blocks and operates at a higher level of abstraction. We have evaluated our proposal through an experiment. The experiment reveals that the multi-VM approach is feasible in monitoring multiple compiled versions and can detect different races both in amount and in detection probability. Under a limited execution budget constraint, the multi-VM approach is also significantly more effective in detecting races than approaches that use single compiled versions only. Some races hidden deeply in one compiled version have been found to be significantly more detectable in some other compiled versions of the same service component.
Changjiang Jia, Chunbai Yang, Wing Kwong Chan, Yuen-Tak Yu
IEEE Trans. Serv. Comput.4
2016 Toward More Robust Automatic Analysis of Student Program Outputs for Assessment and Learning
abstract
Automated analysis and assessment of students' programs, typically implemented in automated program assessment systems (APASs), are very helpful to both students and instructors in modern day computer programming classes. The mainstream of APASs employs a black-box testing approach which compares students' program outputs with instructor-prepared outputs. A common weakness of existing APASs is their inflexibility and limited capability to deal with admissible output variants, that is, outputs produced by acceptable correct programs that differ from the instructor's. This paper proposes a more robust framework for automatically modelling and analysing student program output variations based on a novel hierarchical program output structure called HiPOS. Our framework assesses student programs by means of a set of matching rules tagged to the HiPOS, which produces a better verdict of correctness. We also demonstrate the capability of our framework by means of a pilot case study using real student programs.
Chung Keung Poon, Tak-Lam Wong, Yuen-Tak Yu, Victor C. S. Lee, Chung Man Tang
COMPSAC3
2016 DFL: Dual-Service Fault Localization
abstract
In engineering a service, software developers often construct and deploy a newer (forthcoming) version of the service to replace the current version. A forthcoming version is often placed online for users to consume and report feedback. In the case of observed failures, the forthcoming version should be debugged and further evolved. In this paper, we propose the model of dual-service fault localization (DFL) to aid this evolution process. Many prior research studies on spectrum-based fault localization (SBFL) consider each version separately. The DFL model correlates the dynamic execution spectra of the current and the forthcoming versions of the same service placed for live test of the forthcoming version, and dynamically generates an adaptive fault localization formula to estimate the code regions in the forthcoming service responsible for the observed failures. We report an experiment in which we initialized the DFL model into six instances, each using an ensemble technique dynamically composed from 11 existing SBFL formulas, and applied the model to four benchmarks. The results show that DFL is feasible and multiple instances are statistically more effective than, if not as effective as, the best of these individual SBFL formulas on each benchmark.
Chung Man Tang, Jacky W. Keung, Yuen-Tak Yu, Wing Kwong Chan
QRS3
2016 5W+1H pattern: A perspective of systematic mapping studies and a case study on cloud software testing
Changjiang Jia, Yan Cai 0001, Yuen-Tak Yu, T. H. Tse
J. Syst. Softw.3
2014 Extending the Theoretical Fault Localization Effectiveness Hierarchy with Empirical Results at Different Code Abstraction Levels
abstract
Spectrum-based fault localization techniques are semi-automated program debugging techniques that address the bottleneck of finding suspicious program locations for diagnosis. They assess the fault suspiciousness of individual program locations based on the code coverage data achieved by executing the program under debugging over a test suite. A program location can be viewed at different abstraction levels, such as a statement in the source code or an instruction compiled from the source code. In general, a program location at one code abstraction level can be transformed into zero to more program locations at another abstraction level. Although programmers usually debug at the source code level, the code is actually executed at a lower level. It is unclear whether the same techniques applied at different code abstraction levels may achieve consistent results. In this paper, we study a suite of spectrum-based fault localization techniques at both the source and instruction code levels in the context of an existing theoretical hierarchy to assess whether their effectiveness is consistent across the two levels. Our study extends the theoretical hierarchy with empirically validated relationships across two code abstraction levels toward an integration of the theory and practice of fault localization.
Chung Man Tang, Wing Kwong Chan, Yuen-Tak Yu
COMPSAC3
2014 Is XML-Based Test Case Prioritization for Validating WS-BPEL Evolution Effective in Both Average and Adverse Scenarios?
abstract
In real life, a tester can only afford to apply one test case prioritization technique to one test suite against a service-oriented workflow application once in the regression testing of the application, even if it results in an adverse scenario such that the actual performance in the test session is far below the average. It is unclear whether the factors of test case prioritization techniques known to be significant in terms of average performance can be extrapolated to adverse scenarios. In this paper, we examine whether such a factor or technique may consistently affect the rate of fault detection in both the average and adverse scenarios. The factors studied include prioritization strategy, artifacts to provide coverage data, ordering direction of a strategy, and the use of executable and non-executable artifacts. The results show that only a minor portion of the 10 studied techniques, most of which are based on the iterative strategy, are consistently effective in both average and adverse scenarios. To the best of our knowledge, this paper presents the first piece of empirical evidence regarding the consistency in the effectiveness of test case prioritization techniques and factors of service-oriented workflow applications between average and adverse scenarios.
Changjiang Jia, Lijun Mei, Wing Kwong Chan, Yuen-Tak Yu, T. H. Tse
ICWS4
2012 Human and program factors affecting the maintenance of programs with deployed design patterns
Tsz Hin Ng, Yuen-Tak Yu, Shing-Chi Cheung, Wing Kwong Chan
Inf. Softw. Technol.2
2012 Fault-based test suite prioritization for specification-based testing
Yuen-Tak Yu, Man Fai Lau
Inf. Softw. Technol.1
2012 An empirical evaluation of several test-a-few strategies for testing particular conditions
abstract
SUMMARY Existing specification‐based testing techniques often generate comprehensive test suites to cover diverse combinations of test‐relevant aspects. Such a test suite can be prohibitively expensive to execute exhaustively because of its large size. A pragmatic strategy often adopted in practice, called test‐once strategy, is to identify certain particular conditions from the specification and to test each such condition once only. This strategy is implicitly based on the uniformity assumption that the implementation will process a particular condition uniformly, regardless of other parameters or inputs. As the decision of adopting the test‐once strategy is often based on the specification, whether the uniformity assumption actually holds in the implementation needs to be critically assessed, or else the risk of inadequate testing could be non‐negligible. As viable alternatives to reduce such a risk, a family of test‐a‐few strategies for the testing of particular conditions is proposed in this paper. Two rounds of experiments that evaluate the effectiveness of the test‐a‐few strategies as compared with the test‐once strategy are further reported. Our experiments do the following: (1) provide clear evidence that the uniformity assumption often, but not always, holds and that the assumption usually fails to hold when the implementation is faulty; (2) demonstrate that all our proposed test‐a‐few strategies are statistically more reliable than the test‐once strategy in revealing faulty programs; (3) show that random sampling is already substantially more effective than the test‐once strategy; and (4) indicate that, compared with other test‐a‐few strategies under study, choice coverage seems to achieve a better trade‐off between test effort and effectiveness. Copyright © 2011 John Wiley & Sons, Ltd.
Eric Ying Kwong Chan, Wing Kwong Chan, Pak-Lok Poon, Yuen-Tak Yu
Softw. Pract. Exp.4
2011 A web search-centric approach to recommender systems with URLs as minimal user contexts
Wing Kwong Chan, Yuen Yau Chiu, Yuen-Tak Yu
J. Syst. Softw.3
2011 Non-parametric statistical fault localization
Zhenyu Zhang 0004, Wing Kwong Chan, T. H. Tse, Yuen-Tak Yu, Peifeng Hu
J. Syst. Softw.4
2010 An Experimental Prototype for Automatically Testing Student Programs using Token Patterns
Chung Man Tang, Yuen-Tak Yu, Chung Keung Poon
CSEDU (2)2
2010 Investigating ERP systems procurement practice: Hong Kong and Australian experiences
Pak-Lok Poon, Yuen-Tak Yu
Inf. Softw. Technol.2
2008 On the Online Parameter Estimation Problem in Adaptive Software Testing
abstract
Software cybernetics is an emerging area that explores the interplay between software and control. The controlled Markov chain (CMC) approach to software testing supports the idea of software cybernetics by treating software testing as a control problem, where the software under test serves as a controlled object modeled by a controlled Markov chain and the software testing strategy serves as the corresponding controller. The software under test and the corresponding software testing strategy form a closed-loop feedback control system. The theory of controlled Markov chains is used to design and optimize the testing strategy in accordance with the testing/reliability goal given explicitly and a priori. Adaptive software testing adjusts and improves software testing strategy online by using the testing data collected in the course of software testing. In doing so, the online parameter estimations play a key role. In this paper, we study the effects of genetic algorithm and the gradient method for doing online parameter estimation in adaptive software testing. We find that genetic algorithm is effective and does not require prior knowledge of the software parameters of concern. Although genetic algorithm is computationally intensive, it leads the adaptive software testing strategy to an optimal software testing strategy that is determined by optimizing a given testing goal, such as minimizing the total cost incurred for removing a given number of defects. On the other hand, the gradient method is computationally favorable, but requires appropriate initial values of the software parameters of concern. It may lead, or fail to lead, the adaptive software testing strategy to an optimal software testing strategy, depending on whether the given initial parameter values are appropriate or not. In general, the genetic algorithm should be used instead of the gradient method in adaptive software testing. Simulation results show that adaptive software testing does work and outperforms random testing.
Kai-Yuan Cai, Tsong Yueh Chen, Yong-Chao Li, Yuen-Tak Yu
Int. J. Softw. Eng. Knowl. Eng.4
2007 Requirements and Design of a Web-Based Tool for Supporting Blended Learning of Software Project Development
Yuen-Tak Yu, Marian Choy, Eric Ying Kwong Chan, Y. T. Lo
ICCE1
2007 Do Maintainers Utilize Deployed Design Patterns Effectively?
abstract
One claimed benefit of deploying design patterns is facilitating maintainers to perform anticipated changes. However, it is not at all obvious that the relevant design patterns deployed in software will invariably be utilized for the changes. Moreover, we observe that many well-known design patterns consist of three types of programming elements (called participants), and that performing an anticipated change typically entails multiple tasks related to different types of participants. This paper studies empirically whether maintainers utilize deployed design patterns, and when they do, which tasks they more commonly perform. Our experiments show that almost all subjects perform the task of adding new concrete participants, fewer perform the tasks involving clients, whereas even fewer perform the tasks involving abstract participants. Furthermore, utilizing deployed design patterns (by performing whichever of the corresponding tasks) is found to be statistically associated with the delivery of less faulty codes.
Tsz Hin Ng, Shing-Chi Cheung, Wing Kwong Chan, Yuen-Tak Yu
ICSE4
2006 On Detection Conditions of Double Faults Related to Terms in Boolean Expressions
abstract
Detection conditions of specific classes of faults have recently been studied by many researchers. Under the assumption that at most one of these faults occurs in the software under test, these fault detection conditions were mainly used in two ways. First, they were used to develop test case selection strategies for detecting corresponding classes of faults. Second, they were used to study fault class hierarchies, where a test case that detects a particular class of faults can also detect some other classes of faults. In this paper, we study detection conditions of double faults. Besides developing new test case selection strategies and studying new fault class hierarchies, our analysis provides further insights to the effect of fault coupling. Moreover, these fault detection conditions can be used to compare effectiveness of existing test case selection strategies (which were originally developed for the detection of single occurrence of certain classes of faults) in detecting double faults that may be present in the software
Man Fai Lau, Yuen-Tak Yu
COMPSAC (1)3
2006 Procurement of enterprise resource planning systems: experiences with some Hong Kong companies
abstract
Many cases of adoption of Enterprise Resource Planning (ERP) systems have been reported in the literature. Some of the adopted ERP systems fail to satisfy the customer's requirements, despite the high spending and substantial efforts that have been put into the adoption exercise. This is undoubtedly unsatisfactory. A way to avoid this problem is to adopt a well planned, managed, and controlled ERP procurement process. This paper describes our studies of three Chinese companies in Hong Kong which have adopted ERP systems. We report the experience of these companies, and discuss how the Chinese culture might have shaped the procurement practices in their ERP adoption exercises.
Pak-Lok Poon, Yuen-Tak Yu
ICSE2
2006 Work experience versus refactoring to design patterns: a controlled experiment
abstract
Program refactoring using design patterns is an attractive approach for facilitating anticipated changes. Its benefit depends on at least two factors, namely the effort involved in the refactoring and how effective it is. For example, the benefit would be small if too much effort is required to translate a program correctly into a refactorized form, and whether such a form could effectively guide maintainers to complete anticipated changes is unknown. A metric of effectiveness is the maintainers' performance, which can be affected by their work experience, in realizing the changes. Hence, an interesting question arises. Is program refactoring to introduce additional patterns beneficial regardless of the work experience of the maintainers? In this paper, we report a controlled experiment on maintaining JHotDraw, an open source system deployed with multiple patterns. We compared maintainers with and without work experience. Our empirical results show that, to complete a maintenance task of perfective nature, the time spent even by the inexperienced maintainers on a refactorized version is much shorter than that of the experienced subjects on the original version. Moreover, the quality of their delivered programs, in terms of correctness, is found to be comparable.
Tsz Hin Ng, Shing-Chi Cheung, Wing Kwong Chan, Yuen-Tak Yu
SIGSOFT FSE4
2006 A comparison of MC/DC, MUMCUT and several other coverage criteria for logical decisions
Yuen-Tak Yu, Man Fai Lau
J. Syst. Softw.1
2006 Automatic generation of test cases from Boolean specifications using the MUMCUT strategy
Yuen-Tak Yu, Man Fai Lau, Tsong Yueh Chen
J. Syst. Softw.1
2005 An extended fault class hierarchy for specification-based testing
abstract
Kuhn, followed by Tsuchiya and Kikuno, have developed a hierarchy of relationships among several common types of faults (such as variable and expression faults) for specification-based testing by studying the corresponding fault detection conditions. Their analytical results can help explain the relative effectiveness of various fault-based testing techniques previously proposed in the literature. This article extends and complements their studies by analyzing the relationships between variable and literal faults, and among literal, operator, term, and expression faults. Our analysis is more comprehensive and produces a richer set of findings that interpret previous empirical results, can be applied to the design and evaluation of test methods, and inform the way that test cases should be prioritized for earlier detection of faults. Although this work originated from the detection of faults related to specifications, our results are equally applicable to program-based predicate testing that involves logic expressions.
Man Fai Lau, Yuen-Tak Yu
ACM Trans. Softw. Eng. Methodol.2
2004 On the Testing of Particular Input Conditions
abstract
Generating test cases from a specification can be done at an early stage. However, so many important aspects relevant to testing can be identified from the specification that exhaustively testing their combinations can be very costly. A common approach to reduce testing costs is to identify some particular input conditions and test each of them only once. We argue that such an approach should be used judiciously, or else inadequate tests may result. This paper explores several alternatives to assess the validity of the tester's hypothesis that a particular condition can be tested adequately with only one test case. These alternatives help to test the particular conditions more reliably and, hence, reduce the risk of not revealing the existence of faults.
Eric Ying Kwong Chan, Pak-Lok Poon, Yuen-Tak Yu
COMPSAC3
2004 On the testing methods used by beginning software testers
Yuen-Tak Yu, Sebastian Ng, Pak-Lok Poon, Tsong Yueh Chen
Inf. Softw. Technol.1
2002 Promoting the Use of Information Technology in Education via Lightweight Authoring Tools
abstract
The potential benefits of using information technology in classrooms for enhancing students' learning have been well known, but the realisation of these benefits is often hindered by a number of factors, notably the lack of knowledge/skills of teachers, the lack of appropriate software, insufficient teacher time, and the limitation of hardware and network infrastructure. In this paper, we introduce the approach of using lightweight authoring tools to address the difficulties faced by teachers. This approach has been adopted on many occasions for the continuing development of primary school teachers in Hong Kong, including many workshops and a formal in-service teacher education course. This paper describes how the approach works, and reports our experiences and the very encouraging feedback we received with the use of lightweight authoring tools.
B. C. Chiu, Yuen-Tak Yu
ICCE2
2002 Special Issue for the Second Asia-Pacific Conference on Quality Software
Tsong Yueh Chen, T. H. Tse, Yuen-Tak Yu
Inf. Softw. Technol.3
2002 A decision-theoretic approach to the test allocation problem in partition testing
abstract
A partition testing strategy consists of two components: a partitioning scheme which determines the way in which the program's input domain is partitioned into subdomains; and an allocation of test cases which determines the exact number of test cases selected from each subdomain. This paper investigates the problem of determining the test allocation when a particular partitioning scheme has been chosen. We show that this problem can be formulated as a classic problem of decision-making under uncertainty, and analyze several well known criteria to resolve this kind of problem. We present algorithms that solve the test allocation problem based on these criteria, and evaluate these criteria by means of a simulation experiment. We also discuss the applicability and implications of applying these criteria in the context of partition testing.
Tsong Yueh Chen, Yuen-Tak Yu
IEEE Trans. Syst. Man Cybern. Part A2
2001 A Study on a Path-based Strategy for Selecting Black-box Generated Test Cases
abstract
Various black-box methods for the generation of test cases have been proposed in the literature. Many of these methods, including the category-partition method and the classification-tree method, follow the approach of partition testing, in which the input domain is partitioned into subdomains according to important aspects of the specification, and test cases are then derived from the subdomains. Though comprehensive in terms of these important aspects, execution of all the test cases so generated may not be feasible under the constraint of tight testing resources. In such circumstances, there is a need to select a smaller subset of test cases from the original test suite for execution. In this paper, we propose the use of white-box information to guide the selection of test cases from the original test suite generated by a black-box testing method. Furthermore, we have developed some techniques and algorithms to facilitate the implementation of our approach, and demonstrated its viability and benefits by means of a case study.
Yuen-Tak Yu, Sau-Fun Tang, Pak-Lok Poon, Tsong Yueh Chen
Int. J. Softw. Eng. Knowl. Eng.1
2001 On the maximin algorithms for test allocations in partition testing
Tsong Yueh Chen, Yuen-Tak Yu
Inf. Softw. Technol.2
2001 Proportional sampling strategy: a compendium and some insights
Tsong Yueh Chen, T. H. Tse, Yuen-Tak Yu
J. Syst. Softw.3
2000 The universal safeness of test allocation strategies for partition testing
Tsong Yueh Chen, Yuen-Tak Yu
Inf. Sci.2
1997 On the Criteria of Allocating Test Cases under Uncertainty
abstract
A partition testing strategy consists of two components: a partitioning scheme which determines the way in which the program's input domain is partitioned into subdomains, and an allocation of test cases which determines the exact number of test cases selected from each subdomain. Whereas previous research studies have suggested many partitioning schemes, there have been few guidelines as to how the test allocations should be chosen, and in practice allocations are often done in an ad hoc manner. This paper investigates the problem of determining the test allocation when a particular partitioning scheme has been chosen. We show that this problem can be formulated as a classic problem of decision-making under uncertainty, and analyze the several most common criteria used to resolve this kind of problem. We also discuss the applicability and implications of applying these criteria in the context of partition testing.
Tsong Yueh Chen, Yuen-Tak Yu
APSEC2
1996 Constraints for Safe Partition Testing Strategies
abstract
Although previous studies have shown that partition testing strategies are not always very effective, with appropriate restrictions on the test allocation they can be guaranteed to be safe, in the sense that they will never be less reliable in detecting at least one failure than random testing. Several sufficient conditions for this have already been established in the literature. In particular, the proportional sampling strategy, which allocates test cases in proportion to the size of the subdomains from which they are selected, has been proved to be safe for all programs. In practice, since the number of test cases must be positive integers, often the proportional sampling strategy can only be approximated. This paper examines the necessary conditions for safe partition testing strategies. We also prove that, when the input domain is large enough with respect to the numbers of failure-causing inputs and test cases, a safe partition testing strategy cannot deviate from the proportional sampling strategy other than rounding due to integral constraints.
Tsong Yueh Chen, Yuen-Tak Yu
Comput. J.2
1996 Proportional sampling strategy: guidelines for software testing practitioners
F. T. Chan, Tsong Yueh Chen, I. K. Mak, Yuen-Tak Yu
Inf. Softw. Technol.4
1996 A More General Sufficient Condition for Partition Testing to be Better than Random Testing
Tsong Yueh Chen, Yuen-Tak Yu
Inf. Process. Lett.2
1996 On the Expected Number of Failures Detected by Subdomain Testing and Random Testing
abstract
We investigate the efficacy of subdomain testing and random testing using the expected number of failures detected (the E-measure) as a measure of effectiveness. Simple as it is, the E-measure does provide a great deal of useful information about the fault detecting capability of testing strategies. With the E-measure, we obtain new characterizations of subdomain testing, including several new conditions that determine whether subdomain testing is more or less effective than random testing. Previously, the efficacy of subdomain testing strategies has been analyzed using the probability of detecting at least one failure (the P-measure) for the special case of disjoint subdomains only. On the contrary, our analysis makes use of the E-measure and considers also the general case in which subdomains may or may not overlap. Furthermore, we discover important relations between the two different measures. From these relations, we also derive corresponding characterizations of subdomain testing in terms of the P-measure.
Tsong Yueh Chen, Yuen-Tak Yu
IEEE Trans. Software Eng.2
1995 On the Analysis of Subdomain Testing Strategies
abstract
Weyuker and Jeng (1991) have investigated the conditions that affect the performance of partition testing and have compared analytically the fault-detecting ability of partition testing and random testing. Chen and Yu (1994) have generalized some of Weyuker and Jeng's results. We extend the analysis to subdomain testing in which subdomains may overlap. We derive several results for a special case and demonstrate a technique to extend some of our results to more general cases. We believe that this technique should be very useful in further investigating the behaviour of subdomain testing.
Tsong Yueh Chen, Hing Leung, Yuen-Tak Yu
APSEC3
1994 On the Relationship Between Partition and Random Testing
abstract
Weyuker and Jeng (ibid., vol. SE-17, pp. 703-711, July 1991) have investigated the conditions that affect the performance of partition testing and have compared analytically the fault-detecting ability of partition testing and random testing. This paper extends and generalizes some of their results. We give more general ways of characterizing the worst case for partition testing, along with a precise characterization of when this worst case is as good as random testing. We also find that partition testing is guaranteed to perform at least as well as random testing so long as the number of test cases selected is in proportion to the size of the subdomains.>
Tsong Yueh Chen, Yuen-Tak Yu
IEEE Trans. Software Eng.2