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 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 is 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 cases are 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, machine learning in TCP (Mece, Binjaku, & Paci, 2020). Most researches conduct the study by implementing metaheuristic algorithm to
detect faults and time execution performance (Padmnav, Pahwa, Singh, & Bansal, 2019).
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 enables to find good solutions with less computational effort. Evolutionary computation, genetic algorithms and particle swarm optimization are population based metaheuristic (Soghrati & Moeini, 2020).
Swarm Intelligence (SI) is a new research area inspired by 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 problem 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) and etc. From these studies, the results shown to be that the algorithms implemented was 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 time execution.
ABC is a metaheuristic and swarm 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 swarm intelligence algorithm inspired by a real-life ant monitoring behaviour. This algorithm is an example of how computer scientists are stimulating 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 time execution for web applications. The results will then be compared to determine the effectiveness of both ABC and ACO algorithms.
CS 340 Milestone One Guidelines and Rubric Overview: For this assignment, you will implement the fundamental operations of create, read, update,
Retail Transaction Programming Project Project Requirements: Develop a program to emulate a purchase transaction at a retail store. This
7COM1028 Secure Systems Programming Referral Coursework: Secure
Create a GUI program that:Accepts the following from a user:Item NameItem QuantityItem PriceAllows the user to create a file to store the sales receip
CS 340 Final Project Guidelines and Rubric Overview The final project will encompass developing a web service using a software stack and impleme