Test Case Prioritization Using Swarm Intelligence Algorithm To Improve Fault Coverage And Time For Web Applications: Software Engineering Dissertation, UTM, Malaysia
|University||Universiti Teknologi Malaysia (UTM)|
1.1 Research Background
Software testing is one of the important and primary parts of software quality assurance (SQA). Testing a product or application is the main stage of the Software Development Life Cycle (SDLC). It assumes an extremely fundamental part in choosing the quality and usefulness of the product and guarantees that the finished result is according to the customers’ interest. The Testing of the product is done to identify flaws and mistakes in its functionality, based on which the performance and features of the product are enhanced further. The least known aspect of the software development process is software testing. Software testing is performed repeatedly, and it is often done in a rush due to time constraints and limited resources (Khatibsyarbini, Isa, Jawawi, Hamed, & Mohamed Suffian, 2019).
Test Case Prioritization (TCP) application appears to enhance the test viability in software testing activity (Khatibsyarbini et al., 2019). Test Case Prioritization (TCP) is a technique whereby each test case is assigned a priority. TCP orders the test cases on some properties so that highly ranked test cases execute at a higher priority (Bajaj & Sangwan, 2019). It enables a way to execute highly significant test cases initially and produce the ideal result, such as identifying flaws prior and giving feedback to the testers.
It likewise assists with tracking down the ideal permutation of a progression of test cases and could be executed in a reliable manner (Khatibsyarbini, Isa, Jawawi, & Tumeng, 2018). TCP techniques are very popular in the industry and are the focus of the study (Prado Lima & Vergilio, 2020). The number of publications related to the test case prioritization is still growing in recent years which includes the interest in the application of artificial intelligence, and machine learning in TCP (Mece, Binjaku, & Paci, 2020). Most researchers conduct the study by implementing metaheuristic algorithms to detect faults and time execution performance (Padmnav, Pahwa, Singh, & Bansal, 2019).
A metaheuristic is a significant level structure to create heuristic optimization algorithms that may give an adequate proper solution for an optimization problem, particularly with inadequate data (Padmnav et al., 2019). When compared to optimization algorithms, iterative approaches, or simple heuristics, metaheuristics enable us to find good solutions with less computational effort. Evolutionary computation, genetic algorithms and particle swarm optimization are population-based metaheuristics (Soghrati & Moeini, 2020).
Swarm Intelligence (SI) is a new research area inspired by the collective intelligence of social insects or animals in groups, such as ant colonies, bee colonies, bird flocking, fish schooling and animal herding (Chakraborty & Kar, 2017). The term collective intelligence was first used to describe how insects and animals self-organize and behave intelligently (Kumar, Kumar, & Jarial, 2017). Recent studies in TCP problems implemented swarm intelligence algorithms like Firefly Algorithm (FA (Khatibsyarbini et al., 2019), Ant Colony Optimization (ACO) (Panwar, Tomar, Harsh, & Siddique, 2018) and Artificial Bee Colony (ABC) (Padmnav et al., 2019), etc. From these studies, the results show to be that the algorithms implemented were a success for fault coverage. Hence, this research is going to focus on two swarm intelligence algorithms which are ABC and ACO to compare which is a better algorithm in terms of fault coverage and timely execution.
ABC is a metaheuristic and swarms intelligence algorithm proposed by Karaboga in 2015 (Huo & Liu, 2018). ABC is a bee-based optimization strategy that takes into account how groups of bees behave in the real world. In the actual Bee colony, there are mainly three kinds of bees which are Scout, Worker and Onlooker Bees (Kabra & Birajdar, 2016). A possible arrangement of the optimization problem is addressed by the placement of a food source, and the consistency of the solution is referred to as fitness (Xue, Jiang, Zhao, & Ma, 2018). The ABC algorithm is an evolutionary optimization method that is simple, efficient, reliable, and robust.
ABC has emerged as a possible appliance for resolving both local and global optimization issues which can also be implemented in TCP (Wen, Shao, Fang, & Xue, 2015). ACO algorithm is also a metaheuristic and swarms intelligence algorithm inspired by a real-life ant monitoring behaviour. This algorithm is an example of how computer scientists are simulating real ants in artificial ants (Agrawal & Kaur, 2018).
While each ant is visually impaired, fragile, and insignificant on its own, the province of ants demonstrates complex activities by allowing them to assist one another. One of them is the ability to lay down special chemicals called pheromones to find the quickest path to a food source or other interesting landmark (Srivastava et al., 2016).
More pheromone deposits on a path increase the likelihood that the path will be followed based on the maximum pheromone deposit from the start node, and the path will be evaluated for optimality (S & S S, 2020). The ACO algorithm is suitable to identify faults early as it has a special technique to find the quickest path. Thus, in this research, we proposed a study on TCP using ABC and ACO algorithms to improve fault coverage and timely execution for web applications. The results will then be compared to determine the effectiveness of both ABC and ACO algorithms.
Test Case Prioritization (TCP) is a technique that assigns a priority to each test case. Priority is assigned based on a set of criteria, and the highest-priority test cases are scheduled first. The criterion might be that the test case with the fastest fault coverage receives the highest priority. This method has the advantage of neither discarding nor permanently removing test cases from the test suite (Raamesh, 2016).
Recently, several researchers performed a study on test case prioritization by implementing Genetic Algorithm (GA), Firefly Algorithm (FA), Bat Algorithm (BA), etc. The study outcome showed various results based on the domains used as well as the algorithms. The Firefly Algorithm showed a good response however, it slightly outperformed in terms of execution time (Khatibsyarbini et al., 2019).
Besides that, the research that was carried out to test the effectiveness between GA and ACO showed a positive outcome that ACO was a better algorithm when implemented in a time-constrained environment (Panwar et al., 2018). Hence, this research will be carried out to test and compare the effectiveness of two different algorithms under Swarm Intelligence, where ABC and ACO algorithms will be implemented in the study. The test will be executed to find the fault coverage and time execution when both algorithms are implemented as these are the curial aspects in software testing to
ensure good quality products are produced within the timeline.
Besides that, this research also will be carried out on web application test cases. As web applications or dynamic websites are commonly used by the broad population around the world for information, e-commerce, and e-learning, this is to test the effectiveness of both algorithms on the test cases (Pradesh & Pradesh, 2017). This would help to improve fault coverage and timely execution as these are the most crucial aspects in software testing to maintain good quality assurance within a proposed period.
Objectives and Aims
The research aims to implement a swarm intelligence algorithm for test case prioritization to improve fault coverage and timely execution for web applications. To achieve the aim, the following are the objectives of this research:
I To implement Artificial Bee Colony (ABC) and Ant Colony Optimization (ACO) in test case prioritization for web applications.
ii To compare the effectiveness of ABC and ACO algorithm to improve the fault coverage and timely execution for a web application scope of Research
The scopes of the study are:
I Conduct the study by using web application test cases datasets.
ii The algorithms that will be used are artificial bee colony and ant colony
iii To improve fault coverage and the time of execution.
This study conducts a comparative analysis between two TCP algorithms under swarm intelligence, ABC and ACO algorithms. The significance of the proposed algorithm is to evaluate the effectiveness of the algorithms implemented in improving fault coverage and timely execution. The result was then compared to identify the better algorithm. To the best of our knowledge, there are no attempts made by researchers previously by comparing two algorithms under swarm intelligence for web applications. Hence, research gives a new contribution to TCP.
Get Solution of this Assessment. Hire Experts to solve this assignment for you Before Deadline.
Get Help By Expert
Malaysia Assignment Help offers top quality dissertation writing help to rank high in university. our writers have amazing skills to write perfect quality answers on essay writing, report writing, research paper, coursework writing, etc many more services as per your university guideline.
Recent Solved Questions
- SFUF0393: Discuss the basic psychology of human behavior. Apply the appropriate reasoning processes in arriving at conclusions: Fundamental in Psychology Essay, UIU, Malaysia
- MBM3783: A local woman claims to have been cheated of over RM1.4 mil after meeting someone online who claimed to be a South African engineer: Social Marketing Case Study, UoTS, Malaysia
- What is cash budgeting and why it is important to a business or What kind of cash budgeting strategies may be adopted in a business: Cash Budgeting Strategies Impact on a Business Thesis, WU, Malaysia
- Describes the clinical evaluation process and outcome for creating a tool: Nursing Assignment, UIM, Malaysia
- SEMM3023 Given that the eigenvalue for matrix [A] in equation (2) is = −cos(𝛽𝑛): Applied Numerical Method Report, UTM, Malaysia
- Discuss how small changes in the brain can create a difference in the action of an individual more precisely in the person’s behavior: Neuroscience Assignment, UPM, Malaysia
- You are asked to develop a program for Mobile Soft Inc. to calculate the year-end promotion price that should be paid by its customers: Programming Assignment, HU, Malaysia
- Explain1 of the risk exposure that you are able to hedge by using a listed derivative with appropriate justification: Finance Assignment, TU, Malaysia
- In Malaysia, there are two different types of mediation practices Firstly, mediation is available in the court: Alternative dispute resolution Essay, IIUM, Malaysia
- BBF305/03: Explain the differences in how modern and traditional theories of a portfolio management approach the issue of diversification: Investment and Portfolio Management Assignment, WOU, Malaysia