• No results found

A survey on software quality improvement By test suit Optimization using ABC

N/A
N/A
Protected

Academic year: 2022

Share "A survey on software quality improvement By test suit Optimization using ABC "

Copied!
5
0
0

Loading.... (view fulltext now)

Full text

(1)

A survey on software quality improvement By test suit Optimization using ABC

Prachi Singh

School of computing science and engineering Galgotias University

Greater Noida, UP India

[email protected]

Abstract

Artificial Bee Colony (ABC) algorithm is newly raised define Optimization Algorithm Motivated by the intelligent behavior of honey Bees. The performance of ABC is compare with the other Modern heuristic Algorithm. Such as Genetic algorithm, Differential Evolution, particle swarm optimization (PSO).This is like a optimization tool. Generate a population Based search procedure. In ABC system artificial bee consist three group of bees: employed bees, Onlooker and Scouts. This research work deal with improvement in quality of software by software test suit optimization using Artificial Bee Colony based novel search technique. In this approach ABC combine both global search method done by scout bees and local method done by employed bees and onlooker bees. This Project also presents an approach for the automated generation of feasible independent test path based on the priority of all edge coverage criteria.

Keywords – ABC Algorithm, Genetic Algorithm, Test suit.

Introduction-

Software quality is the shows that the Explicitly, Implicitly, Requirement and expectation. Explicitly means Cleary defined and documented. Implicitly means not clearly defined and implemented but indirectly suggested. Requirement means business or product or software requirements. Expectation means mainly end user expectation. Software testing is a process of executing a program for finding the software error.

It’s also stated the validating an verifying that software application or program. Software testing is important technique for accessing the quality of a software application or product. It is a separate discipline from software development.

Software testing tends to be considered a part of development Software testing is process and discipline. Its a part of software development process, but it will not be consider part of software development. With the help of software testing find the problem and fix them to improve the product quality.

Software testing is a iterative process . Iterative process include the Designing tests, executing tests, Identifying problem and getting problem fixed[5].

There are following objective of software testing:

 Provide surety product works with negligible risks.

 Find out defect in product.

 Demonstrate the lack of quality.

 Client or End user never find out bugs.

 Detect programming errors

 Establish confidence in the product.

Global Optimization-

In engineering, economic and technical studies, perceptible decisions are rapidly modelled by applying optimization concepts and tools. The decision maker or modeller typically wants to find the „absolutely best‟ decision which corresponds to the minimum (or maximum) of a suitable Impartial function, while it agree with a given collection of feasibility constraints.

GO methodology and software, followed by a discussion of test error and illustrative applications. It is easy not only to

‘fabricate’ very challenging test Difficulties, but also to search naturalistic global Optimization problems that present a redoubtable task for any algorithm of today (and of tomorrow).

These test difficulties frequently originate from real-world applications, Even if especially in the GO community a number of exaclty academic test Difficulties are also in use.

The objective function expresses overall (modelled) system Act, such as benefit, usability, dropping, bugs or error. The Global optimization works in to solve the scheduling problems, too. The problem is to similar Tasks and slots (time intervals, machines, rooms, etc.) such that each task is solve in exactly one slot with extra constraints being fulfilled. If there is several feasible similarities, one that reduce some cost or not satisfied measure is sought out[4].

Software Test Suit Optimization-

A test suite is a set of several test cases for a component or test all system application, where the post condition of one test is often used as the precondition for the in order one [5]. The test suite optimization process includes generation of efficient test cases in a test suite that can cover the given SUT within less time.

Irregularly test cases are developed by a random walk in the Software under Test (SUT) initially starting at any source node and completed at a ending node or sink node constrained by

(2)

the edge probabilities. But this leads to anunlimited source of tests in which the selection of efficient test cases is very difficult [3].

Artificial Bee Colony optimization

Artificial Bee Colony is one of the most recently defined algorithms by Dervis Karaboga in 2005, provoke by the intelligent nature of honey bees. It's as easy as Particle Swarm Optimization (PSO) and Differential Evolution (DE) algorithms, and uses prenominal common control parameters such as colony size and maximum cycle number [6].

ABC as an optimization tool generate a population-based search procedure in which individuals called foods positions are modified by the artificial bees with time and the bee’s aim is to discover the places of food sources with high nectar amount and finally the one with the highest nectar [6]. In ABC, a population depend algorithm, the position of a food source express a possible solution to the optimization difficulties and the fitness value of a food source corresponds to the quality (fitness) of the affiliate solution. The number of the employed bees is equal to the number of solutions in the population. At the first step, a irregularly distributed initial population (food source positions) is produced. After initialization, the population is subjected to repeat the cycles of the search processes of the employed, onlooker, and scout bees, appropriately. An employed bee generates a modification on the source position in her memory and discovers a new food source position. Generated that the nectar amount of the new one is higher than that of the previous source, the bee memorizes the newly source solution and forgets the previous one. After all employed bees finish the search process; they share the solution information of the sources with the onlookers on the dance area. Each onlooker evaluates the fitness information taken from all employed bees and then chooses a food source depending on the fitness value of sources.

The main components of this model as below:

1. Food Sources: In order to choose a food source, a forager bee valuates several properties related with the food source such as its closeness to the store, richness of the energy, taste of its fitness, and the ease or hardly of take out this energy.

For the simplicity, the quality of a food source can be represented by only one quantity even if it depends on various parameters.

2. Employed foragers: An employed forager is employed at a particularly food source which she is currently utilize. She carries information about this particularly source and shares it with other bees waiting in the hive. The information consist the distance, the direction and the profit of the food source.

3. Unemployed foragers: A forager bee that looks for a food source to exploit is called unemployed.It can be handle a scout who find the environment irregularly or an onlooker who tries to search a food source by means of the information given by the employed bee. The mean number of scouts is about 5–

10%.

The Interchange of information among bees is the important occurrence in the design of collective knowledge. While examining the entire beehive it is possible to distinguish some parts that commonly exist in entire beehives. The most important part of the beehive with respect to interchange information is the dancing area. Exchanging information among bees related to the quality of food sources occurs in the dancing area. the direction the bee moves in relation to the hive indicates direction; if it moves vertically upwards the direction to the source is directly getting closer the Sun, the time-period of the waggle part of the dance signifies the distance. its knows as waggle dance. Since information about all the current rich sources is available to an onlooker on the dance floor, maybe she could watch numerous dances and select to employ herself at the most profitable source. There is a larger probability of onlookers choosing more profitable sources since more information is exchanging about the more profitable sources. Employed foragers exchange their information with a probability which is relatively to the profitability of the food source, and the exchanging of this information Through waggle dancing is longer in time-period.

Hence, the recruitment is relatively to profitability of a food source.

The ABC algorithm –

1: Initialize the population of solutions xi,j , i = 1 ...SN,j = 1 ...D

2: Evaluate the population 3: cycle=1

4: repeat

5: Produce new solutions υi,j for the employed bees by using (2) and evaluate them

6: Apply the greedy selection process

7: Calculate the probability values Pi,j for the solutions xi,j by (1) 8: Produce the new solutions υi,j for a onlookers from the

solutions xi,j selected depending on Pi,j and evaluate them 9: Apply the greedy selection process

10: Determine the abandoned solution for the scout, if present , and replace it with a new randomly produced solution xi,jby (3)

11: Memorize the better solution achieved so far 12: cycle=cycle+1

13: until cycle=MCN

(3)

After each candidate source position vi,j is produced and then evaluated by the artificial bee, its performance is compared with that of its old one. If the new food has an equal or better nectar than the old source, it is replaced with the old one in the memory. Otherwise, the old one is retained in thememory. In other words, a greedy selection mechanism is employed as the selection operation between the old and the candidate one. It is clear from the above explanation that there are four control parameters used in the ABC: The number of food sources which is equal to the number of employed or onlooker bees (SN), the value of limit, the maximum cycle number(MCN).[12]

There are two possible options for such a bee:

i. It can be a scout and starts searching around the nest spontaneously for food due to some internal motivation or possible external clue.

ii. It can be a recruit after watching the waggle dances and starts searching for a food source.[fig1]

After finding the food source, the bee appropriates its own capability to memorize the location and then immediately starts exploiting it. Hence, the bee will become an employed forager. The prior bee takes a load of fitness from the source and returns to the hive, off-load the fitness to a food store.

After off-load the food, the bee has the following options:

i. It might become an uncommitted follower after abandoning the food source.

ii. It might dance and then recruit nest mates before returning to the same food source.

iii. It might continue to forage at the food source without recruiting bees.

It is important to note that not all bees start foraging all together. The experiments confirmed that new bees begin foraging at a rate proportional to the difference between the eventual total number of bees and the number of bees presently foraging[11].

Related work-

ABC optimization that belongs to non-pheromone based swarm intelligence algorithms is considered suitable for many optimization based problems.

Dervis Karaboga et.al, applied Artificial Bee Colony (ABC) Optimization Algorithm for Solving ConstrainedOptimization Problems. In their paper, they showed higher performance of ABC in solving a set of constrained optimization problems [7].

Dervis Karaboga et.al, proposed the use of ABC in solving numerical function optimization. They compared the proficiency of ABC with other optimization algorithms such as GA, PCO and PS-EA and proved that ABC outstrip them [7].

Dusan Teodorovic et.al, proposed a bees algorithm to solve difficult combinatorial optimization problems. In their paper, in addition to introducing the Bee Colony Optimization (BCO) as a new Meta heuristic, they also identify two BCO algorithms called the bee system (BS) and the fuzzy bee system (FBS). In the case of FBS, the agents (artificial bees) use approximate reasoning and rules of fuzzy logic in their communication and acting. In this way, the FBS is able to solve deterministic combinatorial problems, as well as combinatorial problems qualify by uncertainty [10].

Li-Pei Wong et.al, presented an improved Bee Colony Optimization algorithm with Big Valley landscape exploitation as a biologically inspired approach to solve the Job Shop Scheduling problem. They compared the experimental results of the proposed algorithm with Shifting Bottleneck Heuristic, Tabu find Algorithm and Bee Colony Algorithm with Neighbourhoods Search on Taillard JSSP benchmark and they showed that it is comparable to these approaches [9].

Dušan TEODOROVIĆ et.al, proposed a bee colony optimization approach to complex transportation problems [8].

Adil Baykaso lu et.al, applied Artificial Bee Colony (ABC) Algorithm to Generalized Assignment Problem in the book on Swarm Intelligence: Focus on Ant and Particle Swarm Optimization [11].

Alok Singh applied Artificial Bee Colony (ABC) Algorithm to the leaf constrained minimum spanning tree problem. Given an plan-less, connected, weighted graph, the leaf-constrained minimum spanning tree (LCMST) problem seeks on this graph a spanning tree of minimum weight among all the spanning trees of the graph that have at least ‘l’ leaves. In this research work, they proposed an artificial bee colony (ABC) algorithm for the LCMST problem. They compared the performance of ABC approach against the existing best approaches. They exhibit/demonstrate the superiority of the new ABC approach over all the other approaches based on computational results.

The new approach obtained best quality solutions in shorter time [12].

FIG1.

(4)

R. Srinivasa Rao et.al, applied Artificial Bee Colony Algorithm for Optimization of Distribution Network Configuration for Loss Reduction [13].

Nurhan Kara boga introduced a new design method based on artificial bee colony algorithm for digital IIR filters [14].

Mohammadet.al, have applied honey-bee pair optimization algorithm on clustering in data mining. They applied honey- bee mating/pair technique to avoid local optima in cluster analysis. They also compared the proficiency or efficiency of the approach with other approaches such as GA, SA, TS, and ACO, on several well-known data sets. Their finding shows that the introduced algorithm works well than the best one [15].

The research on software testing problems has centred mainly on the Independent Path Generation and Software Test Suite Optimization. Many intelligent swarm computing software test techniques are extensively introduced and every algorithm has its own strengths and weaknesses. The major observations derived as part of the background study are:

Neural Networks has difficulties in programming and algorithmic complexity and is a black-box data processing structure.

Tabu search has difficulties in the amount of memory required to avoid stuck up at local optima and short term memory to remember all the test cases in the current search.

Genetic Algorithms has difficulties in giving stable results (stuck up at local optima); the convergence is slow and has non-explicit memorization of best individuals.

Ant Colony Optimization has drawbacks of higher length test sequences and repetition of nodes within the same sequence. In initial stages, it starts searching slowly, lacks pheromone and easily tends to local optimum, has premature convergence when quantity is too high.

Conclusion-

This research work is, deals with improvement in quality of software by software Test Suite Optimization using Artificial Bee Colony (ABC) based novel search technique. In this research work, the Functionality of the bee is extended to do the testing and monitoring activity so that it reduces the manual work and improves the confidence on the software by testing it with the coverage of the given software. In this work, the performance of ABC algorithm was compared with GA, PSO, DE and ES optimization algorithms. Although there are several improved versions of GA, DE and PSO in the literature, their standard versions were used since the ABC algorithm presented in this work is its first version i.e. its standard version. Although the performance of ABC algorithm can be improved by integrating useful heuristics, in this work

our purpose was to compare the performance of standard version of ABC with those of other well-known population- based algorithms.

References-

[1] Srivastava P.R., Baby K., Raghurama G., “An Approach of Optimal Path Generation using Ant Colony

Optimization”,TENCON 2009 - 2009 IEEE Region 10 Conference, Jan, 2009, pp. 1-6, 23-26.

[2] Li H., Lam C.P., “Software Test Data Generation using Ant Colony Optimization”, Transactions on Engineering, Computing and Technology, ISSN 1305-5313, 2004.

[3] McMinn, P., Holcombe, M., “The State Problem for Evolutionary Testing”, Proc. GECCO 2003, LNCS Vol. 2724, pp. 2488-2500, Springer Verlag, 2003.

[4] H. Edwin Romeijn, Panos M. Pardalos, “Handbook Of Global Optimization”, Volume 2, Kluwer Academic Publishers, 2002

[5] B. Beizer, “Software Testing Techniques”, Thomson Computer Press, 2nd edition, 1990.

[6] D. Karaboga, B. Basturk, “On The Performance Of Artificial Bee Colony (ABC) Algorithm”, Applied Soft Computing,Volume 8, Issue 1, January 2008, pp. 687- 697,2007

[7] Dervis Karaboga, Bahriye Basturk, “A powerful and efficient algorithm for numerical function optimization:

artificial bee colony (ABC) algorithm”, Journal of Global Optimization, Volume 39, Number 3, pp. 459-471, 2007.

[8] Dusan Teodorovic, Panta Lucic, Goran Markovic, Mauro D Orco, “Bee Colony Optimization: Principles and Applications”, Proceedings of Neural Network Applications in Electrical Engineering, pp. 151-156, 2006.

[9] Li-Pei Wong, Chi Yung Puan, Malcolm Yoke Hean Low, Chin Soon Chong, “Bee colony optimization algorithm with big valley landscape exploitation for job shop scheduling problems”, Applied Soft Computing, Volume 8 , Issue 1,pp.

687-697, 2008.

[10] Dušan Teodorović, Mauro Dell, “Bee Colony Optimization – A Cooperative Learning Approach To Complex Transportation Problems”, Advanced OR and AI Methods in Transportation, pp 51-60, 2006.

[11] Adil Baykasolu, Lale Özbakır and Pınar Tapkan,

“Artificial Bee Colony Algorithm and Its Application to

(5)

Generalized Assignment Problem”, Book on Swarm Intelligence: Focus on Ant and Particle Swarm Optimization, 2007.

[12] Alok Singh, “An artificial bee colony algorithm for the leaf-constrained minimum spanning tree problem”, Applied Soft Computing, Volume 9, Issue 2, pp. 625- 631,2009&http://natcomp.liacs.nl/SWI/papers/artificial.bee.co lony.algorithm/a.comparative.study.of.abc.algorithm.pdf [13] R. Srinivasa Rao, S.V.L. Narasimham, M. Ramalingaraju,

“Optimization of Distribution Network Configuration for Loss Reduction Using Artificial Bee Colony Algorithm”, Proceedings Of World Academy Of Science, Engineering And Technology, Volume 35, pp 709-715, 2008.

[14] Nurhan Karaboga, “A new design method based on artificial bee colony algorithm for digital IIR filters”, Journal of the Franklin Institute, Volume 346, Issue 4, pp. 328-348, 2009.

[15] Mohammad Fathian, Babak Amiri and Ali Maroosi,

“Application of honeybee mating optimization algorithm on clustering”, Applied Mathematics and Computation, Volume 190, Issue 2, pp. 1502-1513, 2007.

References

Related documents

Methods: Thirty nine consecutive patients all with history of chronic stable angina &with positive treadmill test underwent 24 hours holter test to assess heart rate

Estimation of the sensi- tivity of the experiment is undergoing using several hours of data from the direction of Crab nebula, the standard candle source of TeV gamma-ray astronomy,

The above graph shows that increase in dosage of rice husk ash up to 2.5g/lt in synthetic sample decreases the iron content, thus increasing the efficiency. But

1 Total number of funded sites 1 from years 1 to 4 and participants enrolled by state, September 30, 2016: 1 Funded Sites = CDC-recognized organizations delivering the National

elegans corresponds to the frequency of forward mutation expected for an average gene (BRENNER 1974). Four sorts of genetic crosses were performed to position

This method was performed, measuring antenna input impedance using a VNA and was validated through power sensor measurement using the complete measurement system corresponding to a

Intensified covering of short positions and intensified margin-trading turnover are even associated with lower return volatility in both down- and up-market, and these

Asylum law in the EU after the Amsterdam Trea- Asylum law in the EU after the Amsterdam Trea- ty includes the following legal norms: Council Reg- ulation 343/2003 establishing