Salmi Baharom
Universiti Putra Malaysia
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Salmi Baharom.
Engineering Applications of Artificial Intelligence | 2017
Kamal Z. Zamli; Fakhrud Din; Salmi Baharom; Bestoun S. Ahmed
The teaching learning-based optimization (TLBO) algorithm has shown competitive performance in solving numerous real-world optimization problems. Nevertheless, this algorithm requires better control for exploitation and exploration to prevent premature convergence (i.e., trapped in local optima), as well as enhance solution diversity. Thus, this paper proposes a new TLBO variant based on Mamdani fuzzy inference system, called ATLBO, to permit adaptive selection of its global and local search operations. In order to assess its performances, we adopt ATLBO for the mixed strength t-way test generation problem. Experimental results reveal that ATLBO exhibits competitive performances against the original TLBO and other meta-heuristic counterparts.
Information & Software Technology | 2011
Salmi Baharom; Zarina Shukur
Context: Testing a module that has memory using the black-box approach has been found to be expensive and relatively ineffective. Instead, testing without knowledge of the specifications (white-box approach) may not be effective in showing whether a program has been properly implemented as stated in its specifications. We propose instead a grey-box approach called Module Documentation-based Testing or MD-Test, the heart of which is an automatic generation of the test oracle from the external and internal views of the module. Objective: This paper presents an empirical analysis and comparison of MD-Test against three existing testing tools. Method: The experiment was conducted using a mutation-testing approach, in two phases that assess the capability of MD-Test in general and its capability of evaluating test results in particular. Results: The results of the general assessment indicate that MD-Test is more effective than the other three tools under comparison, where it is able to detect all faults. The second phase of the experiment, which is significant to this study, compares the capabilities of MD-Test and JUnit-black using the test evaluation results. Likewise, an analysis of the test evaluation results shows that MD-Test is more effective and efficient, where MD-Test is able to detect at least the same number of faults as, or is at par with, the black-box approach. Conclusion: It is concluded that test evaluation using grey-box approach is more effective and efficient that the black-box approach when testing a module that has memory.
international symposium on information technology | 2008
Salmi Baharom; Zarina Shukur
Testing plays an important role to assure the quality of software. Testing is a process of detecting errors that can be highly effective if performed rigorously. The use of formal specifications provides significant opportunity to develop effective testing techniques. Grey-box testing approach usually based on knowledge obtains from specification and source code while seldom the design specification is concerned. In this paper, we propose an approach for testing a module with internal memory from its formal specification based on grey-box approach. We use formal specifications that are documented using Parnas’s Module Documentation (MD) method. The MD provides us with the information of external and internal view of a module that can be useful in greybox testing approach.
international conference on electrical engineering and informatics | 2009
Salmi Baharom; Zarina Shukur
This paper describes the test oracle generation from an abstraction relation document that is documented using Parnass Module Documentation (MD) method. This work is part of on-going research that addresses the problem of improving the effectiveness of fault detection. We focus our work on unit/module testing where each module may consist of several programs. The aim of our project is to investigate the strategies and techniques to automate module testing. In particular, we investigate the use of MD that is written in standard mathematical notation to automate the process of test oracle generation and test execution.
international conference on information science and applications | 2017
Johanna Ahmad; Salmi Baharom
One of the main challenges in software development is the complex structure of a system. The software development for event sequences is complex. It is a challenge to define a complexity metric for event sequences application. Lack of knowledge in complexity metric can lead to issues such as rises in software cost and delays in project timing. Numerous complexity metrics have been proposed and published, such as information flow complexity, lines of code, function points, and unique complexity metric. However, in the context of the event sequences, most of the research focuses on measuring web graphs, measuring the web traffic and how the complexity of the web impacts the customer. In this paper, the researchers studied and compared five different software complexity metrics. This paper describes the on-going research that addresses the issue to produce a unique weight to prioritise event sequences test cases.
international conference on information systems security | 2016
Asmaa Ammar; Salmi Baharom; Abdul Azim Abd Ghani; Jamilah Din
Regression testing is an integral and expensive part in software testing. To reduce its effort, test case prioritization approaches were proposed. The problem with most of the existing approaches is the random ranking of test cases with equal weight. In this paper, an enhanced weighted method to prioritize the full test suite without using random ranking is presented. In addition, a controlled experiment was executed to evaluate the effectiveness of the proposed method. The results show an improved performance in terms of prioritizing test cases and recording higher APFD values over the original weighted method. In future, a larger experiment would be executed to generalize the results.
Journal of Computer Science | 2016
Mohd Zanes Sahid; Abu Bakar Sultan; Abdul Azim Abdul Ghani; Salmi Baharom
Software Product Line (SPL) is a software engineering paradigm that is inspired by the concept of reusability of common features, formulated for different software product. Complete testing on entire SPL is known to be unfeasible, due to the very large number of possible products to be produced, configured using a subset or all possible features in the SPL. This paper reports a systematic mapping study (SMS) of relevant primary studies as the evidence on the application of Combinatorial Interaction Testing (CIT) for SPL. In CIT, one has to construct a covering array, which is a set of configurations having valid feature combinations and every combination of t features appears at least once in the array. This is also known as t-wise testing. By following the systematic mapping study guidelines, we have selected and filtered 44 primary studies for review. The most prominent CIT techniques in aiding SPL testing are those based on greedy algorithms followed by meta-heuristics algorithms. The motivation of SPL testing is to anticipate the feature interaction problem, in which the majority of the works were reported to leverage test configuration selection approach, while some employed test configuration prioritization approach. Numerous works have been reported, but only few works managed to demonstrate their scalability, as most primary studies only deal with low strength (t is less than 4) of t-wise testing.
international conference on testing software and systems | 2015
Ammar Mohammed Sultan; Salmi Baharom; Abdul Azim Abdul Ghani; Jamilah Din; Hazura Zulzalil
Software testing is the most crucial phase in software development life cycle which intends to find faults as much as possible. Test case generation leads the research in software testing. So, many techniques were proposed for the sake of automating the test case generation process. State sensitivity partitioning is a technique that partitions the entire states of a module. The generated test cases are composed of sequences of events. However, there is an infinite set of sequences with no upper bound on the length of a sequence. Thus, a lengthy test sequence might be encountered with redundant data states, which will increase the size of test suite and, consequently, the process of testing will be ineffective. Therefore, there is a need to optimize those test cases generated by SSP. GA has been identified as the most common potential technique among several optimization techniques. Thus, GA is investigated to integrate it with the existing SSP. This paper addresses the issue on deriving the fitness function for optimizing the sequence of events produced by SSP.
IOSR Journal of Computer Engineering | 2014
Samaila Musa; Abu Bakar Sultan; Abdul Azim Abd Ghani; Salmi Baharom
Regression testing is very important process in software maintenance. Unfortunately, it is costly and time consuming to allow for the re-execution of all test cases during regression testing. The challenge in regression testing is the selection of best test cases from the existing test suite.This paper presents an evolutionary regression test case prioritization for object-oriented software based on extended system dependence graph model of the affected program using genetic algorithm. The approach is based on optimization of selected test case from dependency analysis of the source codes. The goal is to identify changes in a methods body due to data dependence, control dependence and dependent due to object relation such as inheritance and polymorphism, select the test cases based on affected statements and ordered them based on their fitness by using GA.The number of affected statements determined how fit a test case is good for regression testing. A case study is reported to provide evidence of the feasibility of the approach and its benefits in increasing the rate of fault detection and reduction in regression testing effort compared with retest-all. It was shown that our approach needs 30% of the test cases to cover all the faults, while 80% is needed to cover all the faults using retest-all, which is time consuming and costly.
international conference on instrumentation, communications, information technology, and biomedical engineering | 2011
Myzatul Akmam Sapaat; Salmi Baharom
Testing is crucial in software development. Continuous researches being done to discover effective approaches in testing that capable to detect faults despite of reducing cost. Previous work in State-Sensitivity Partitioning (SSP) technique, which based on all-transition coverage criterion, has been introduced to avoid exhaustively testing the entire data states of a module by partitioning it based on states sensitivity towards events, conditions and action. The test data for that particular module testing is in form of event sequences (or test sequence) and sets of test sequences in test cases will perform SSP test suite. The problem occurs in SSP test suite is data state redundancy that leads towards suite growth. This paper aims to discuss an initial step of our ongoing research in enhancing prior SSP test suite. Our work will try to find out the best way in removing redundant data state in order to minimize the suite size but yet capable to detect faults introduced by five selective mutation operators effectively as the original suite.