Repository of Publications on Search Based Software EngineeringThis page is maintained by Yuanyuan Zhang, CREST, Department of Computer Science, University College London (UCL), London, UK.
Email: yuanyuan.zhang [AT] cs.ucl.ac.uk
The SBSE authors' information can be found in Who's Who.
Click on any column header to sort
Support for global search, search per column, selection per year, reference type and application.
| Time Stamp | Author | Title | Year | Journal / Proceedings / Book | BibTeX Type | Application |
|---|---|---|---|---|---|---|
| 2010.08.25 | Wasif Afzal, Richard Torkar, Robert Feldt & Tony Gorschek Chis, M. (Hrsg.) | Genetic Programming for Cross-release Fault Count Predictions in Large and Complex Software Projects ( Evolutionary Computation and Optimization Algorithms in Software Engineering: Applications and Techniques ) | 2010 | Evolutionary Computation and Optimization Algorithms in Software Engineering: Applications and Techniques | Inbook | Management |
| Abstract: Software fault prediction can play an important role in ensuring software quality through efficient resource allocation. This could, in turn, reduce the potentially high consequential costs due to faults. Predicting faults might be even more important with the emergence of short-timed and multiple software releases aimed at quick delivery of functionality. Previous research in software fault prediction has indicated that there is a need i) to improve the validity of results by having comparisons among number of data sets from a variety of software, ii) to use appropriate model evaluation measures and iii) to use statistical testing procedures. Moreover, cross-release prediction of faults has not yet achieved sufficient attention in the literature. In an attempt to address these concerns, this paper compares the quantitative and qualitative attributes of 7 traditional and machine-learning techniques for modeling the cross-release prediction of fault count data. The comparison is done using extensive data sets gathered from a total of 7 multi-release open-source and industrial software projects. These software projects together have several years of development and are from diverse application areas, ranging from a web browser to a robotic controller software. Our quantitative analysis suggests that genetic programming (GP) tends to have better consistency in terms of goodness of fit and accuracy across majority of data sets. It also has comparatively less model bias. Qualitatively, ease of configuration and complexity are less strong points for GP even though it shows generality and gives transparent models. Artificial neural networks did not perform as well as expected while linear regression gave average predictions in terms of goodness of fit and accuracy. Support vector machine regression and traditional software reliability growth models performed below average on most of the quantitative evaluation criteria while remained on average for most of the qualitative measures. | ||||||
BibTeX:
@inbook{AfzalTFG10,
author = {Wasif Afzal and Richard Torkar and Robert Feldt and Tony Gorschek},
title = {Evolutionary Computation and Optimization Algorithms in Software Engineering: Applications and Techniques},
publisher = {IGI Global, Hershey, USA},
year = {2010},
doi = {http://dx.doi.org/10.4018/978-1-61520-809-8}
}
|
||||||
| 2010.08.25 | Elisabetta Di Nitto, Massimiliano Di Penta, Alessio Gambi, Gianluca Ripa & Maria Luisa Villani | Negotiation of Service Level Agreements: An Architecture and a Search-Based Approach | 2007 | Proceedings of the 5th international conference on Service-Oriented Computing (ICSOC '07), pp. 295-306, Vienna Austria, 17-20 September | Inproceedings | Management |
| Abstract: Software systems built by composing existing services are more and more capturing the interest of researchers and practitioners. The envisaged long term scenario is that services, offered by some competing providers, are chosen by some consumers and used for their own purpose, possibly, in conjunction with other services. In the case the consumer is not anymore satisfied by the performance of some service, he can try to replace it with some other service. This implies the creation of a global market of services and poses new requirements concerning validation of exploited services, security of transactions engaged with services, trustworthiness, creation and negotiation of Service Level Agreements with these services. In this paper we focus on the last aspect and present our approach for negotiation of Service Level Agreements. Our architecture supports the actuation of various negotiation processes and offers a search-based algorithm to assist the negotiating parts in the achievement of an agreement. | ||||||
BibTeX:
@inproceedings{DiNittoDGRV07,
author = {Elisabetta Di Nitto and Massimiliano Di Penta and Alessio Gambi and Gianluca Ripa and Maria Luisa Villani},
title = {Negotiation of Service Level Agreements: An Architecture and a Search-Based Approach},
booktitle = {Proceedings of the 5th international conference on Service-Oriented Computing (ICSOC '07)},
publisher = {Springer},
year = {2007},
pages = {295-306},
address = {Vienna, Austria},
month = {17-20 September},
doi = {http://dx.doi.org/10.1007/978-3-540-74974-5_24}
}
|
||||||
| 2010.08.25 | Klaus Krogmann, Michael Kuperberg & Ralf Reussner | Using Genetic Search for Reverse Engineering of Parametric Behaviour Models for Performance Prediction | To appear | IEEE Transactions on Software Engineering | Article | Distribution and Maintenance |
BibTeX:
@article{KrogmannKR,
author = {Klaus Krogmann and Michael Kuperberg and Ralf Reussner},
title = {Using Genetic Search for Reverse Engineering of Parametric Behaviour Models for Performance Prediction},
journal = {IEEE Transactions on Software Engineering},
year = {To appear},
doi = {http://dx.doi.org/10.1109/TSE.2010.69}
}
|
||||||
| 2010.08.25 | Brian Mitchell, Martin Raverso & Spiros Mancoridis | An Architecture for Distributing the Computation of Software Clustering Algorithms | 2001 | Proceedings of the Working IEEE/IFIP Conference on Software Architecture (WICSA '01), pp. 181-190, Amsterdam The Netherlands, 28-31 August | Inproceedings | Design Tools and Techniques |
| Abstract: Collections of general purpose networked workstations offer processing capability that often rivals or exceeds supercomputers. Since networked workstations are readily available in most organizations, they provide an economic and scalable alternative to parallel machines. In this paper we discuss how individual nodes in computer network can be used as a collection of connected processing elements to improve the performance of software engineering tool that we developed. Our tool, called Bunch, automatically clusters the structure of software systems into hierarchy of subsystems. Clustering helps developers understand complex systems by providing them with high-level abstract (clustered)views of the software structure. The algorithms used by Bunch are computationally intensive and, hence, we would like to improve our tool's performance in order to cluster very large systems. This paper describes how we designed and implemented distributed version of Bunch, which is useful for clustering large systems. | ||||||
BibTeX:
@inproceedings{MitchellRM01,
author = {Brian Mitchell and Martin Raverso and Spiros Mancoridis},
title = {An Architecture for Distributing the Computation of Software Clustering Algorithms},
booktitle = {Proceedings of the Working IEEE/IFIP Conference on Software Architecture (WICSA '01)},
publisher = {IEEE},
year = {2001},
pages = {181-190},
address = {Amsterdam, The Netherlands},
month = {28-31 August},
doi = {http://dx.doi.org/10.1109/WICSA.2001.948427}
}
|
||||||
| 2010.08.25 | Robert Nilsson, Jeff Offutt & Jonas Mellin | Test Case Generation for Mutation-based Testing of Timeliness | 2006 | Electronic Notes in Theoretical Computer Science, Vol. 164(4), pp. 97-114, October | Article | Testing and Debugging |
| Abstract: Temporal correctness is crucial for real-time systems. Few methods exist to test temporal correctness and most methods used in practice are ad-hoc. A problem with testing real-time applications is the response-time dependency on the execution order of concurrent tasks. Execution order in turn depends on execution environment properties such as scheduling protocols, use of mutual exclusive resources as well as the point in time when stimuli is injected. Model based mutation testing has previously been proposed to determine the execution orders that need to be verified to increase confidence in timeliness. An effective way to automatically generate such test cases for dynamic real-time systems is still needed. This paper presents a method using heuristic-driven simulation to generate test cases. | ||||||
BibTeX:
@article{NilssonOM06,
author = {Robert Nilsson and Jeff Offutt and Jonas Mellin},
title = {Test Case Generation for Mutation-based Testing of Timeliness},
journal = {Electronic Notes in Theoretical Computer Science},
year = {2006},
volume = {164},
number = {4},
pages = {97-114},
month = {October},
doi = {http://dx.doi.org/10.1016/j.entcs.2006.10.010}
}
|
||||||
| 2010.08.25 | José Carlos Bregieiro Ribeiro, Mário Alberto Zenha-Rela & Francisco Fernández de Vega | Adaptive Evolutionary Testing: An Adaptive Approach to Search-Based Test Case Generation for Object-Oriented Software | 2010 | Proceedings of the International Workshop on Nature Inspired Cooperative Strategies for Optimization, pp. 185-197, Granada Spain, 12-14 May | Inproceedings | Testing and Debugging |
| Abstract: Adaptive Evolutionary Algorithms are distinguished by their dynamic manipulation of selected parameters during the course of evolving a problem solution; they have an advantage over their static counterparts in that they are more reactive to the unanticipated particulars of the problem. This paper proposes an adaptive strategy for enhancing Genetic Programming-based approaches to automatic test case generation. The main contribution of this study is that of proposing an Adaptive Evolutionary Testing methodology for promoting the introduction of relevant instructions into the generated test cases by means of mutation; the instructions from which the algorithm can choose are ranked, with their rankings being updated every generation in accordance to the feedback obtained from the individuals evaluated in the preceding generation. The experimental studies developed show that the adaptive strategy proposed improves the test case generation algorithm’s efficiency considerably, while introducing a negligible computational overhead. | ||||||
BibTeX:
@inproceedings{RibeiroZV10,
author = {José Carlos Bregieiro Ribeiro and Mário Alberto Zenha-Rela and Francisco Fernández de Vega},
title = {Adaptive Evolutionary Testing: An Adaptive Approach to Search-Based Test Case Generation for Object-Oriented Software},
booktitle = {Proceedings of the International Workshop on Nature Inspired Cooperative Strategies for Optimization},
publisher = {Springer},
year = {2010},
pages = {185-197},
address = {Granada, Spain},
month = {12-14 May},
doi = {http://dx.doi.org/10.1007/978-3-642-12538-6_16}
}
|
||||||
| 2010.07.19 | Alexander P. Conrad, Robert S. Roos & Gregory M. Kapfhammer | Empirically Studying the Role of Selection Operators during Search-based Test Suite Prioritization | 2010 | Proceedings of the 12th Annual Conference on Genetic and Evolutionary Computation (GECCO '10), pp. 1373-1380, Portland Oregon USA, 7-11 July | Inproceedings | Testing and Debugging |
| Abstract: Regression test suite prioritization techniques reorder test cases so that, on average, more faults will be revealed earlier in the test suite's execution than would otherwise be possible. This paper presents a genetic algorithm-based test prioritization method that employs a wide variety of mutation, crossover, selection, and transformation operators to reorder a test suite. Leveraging statistical analysis techniques, such as tree model construction through binary recursive partitioning and kernel density estimation, the paper's empirical results highlight the unique role that the selection operators play in identifying an effective ordering of a test suite. The study also reveals that, while truncation selection consistently outperformed the tournament and roulette operators in terms of test suite effectiveness, increasing selection pressure consistently produces the best results within each class of operator. After further explicating the relationship between selection intensity, termination condition, fitness landscape, and the quality of the resulting test suite, this paper demonstrates that the genetic algorithm-based prioritizer is superior to random search and hill climbing and thus suitable for many regression testing environments. | ||||||
BibTeX:
@inproceedings{ConradRK10,
author = {Alexander P. Conrad and Robert S. Roos and Gregory M. Kapfhammer},
title = {Empirically Studying the Role of Selection Operators during Search-based Test Suite Prioritization},
booktitle = {Proceedings of the 12th Annual Conference on Genetic and Evolutionary Computation (GECCO '10)},
publisher = {ACM},
year = {2010},
pages = {1373-1380},
address = {Portland, Oregon, USA},
month = {7-11 July},
doi = {http://dx.doi.org/10.1145/1830483.1830735}
}
|
||||||
| 2010.07.19 | Alexander P. Conrad, Robert S. Roos & Gregory M. Kapfhammer | Empirically Studying the Role of Selection Operators during Search-based Test Suite Prioritization | 2010 | Proceedings of the 12th Annual Conference on Genetic and Evolutionary Computation (GECCO '10), pp. 1373-1380, Portland Oregon USA, 7-11 July | Inproceedings | Testing and Debugging |
| Abstract: Regression test suite prioritization techniques reorder test cases so that, on average, more faults will be revealed earlier in the test suite's execution than would otherwise be possible. This paper presents a genetic algorithm-based test prioritization method that employs a wide variety of mutation, crossover, selection, and transformation operators to reorder a test suite. Leveraging statistical analysis techniques, such as tree model construction through binary recursive partitioning and kernel density estimation, the paper's empirical results highlight the unique role that the selection operators play in identifying an effective ordering of a test suite. The study also reveals that, while truncation selection consistently outperformed the tournament and roulette operators in terms of test suite effectiveness, increasing selection pressure consistently produces the best results within each class of operator. After further explicating the relationship between selection intensity, termination condition, fitness landscape, and the quality of the resulting test suite, this paper demonstrates that the genetic algorithm-based prioritizer is superior to random search and hill climbing and thus suitable for many regression testing environments. | ||||||
BibTeX:
@inproceedings{ConradRK10,
author = {Alexander P. Conrad and Robert S. Roos and Gregory M. Kapfhammer},
title = {Empirically Studying the Role of Selection Operators during Search-based Test Suite Prioritization},
booktitle = {Proceedings of the 12th Annual Conference on Genetic and Evolutionary Computation (GECCO '10)},
publisher = {ACM},
year = {2010},
pages = {1373-1380},
address = {Portland, Oregon, USA},
month = {7-11 July},
doi = {http://dx.doi.org/10.1145/1830483.1830735}
}
|
||||||
| 2010.07.19 | Matthew Evett, Pei der Chien, Taghi Khoshgoftar & Edward Allen | GP-based Software Quality Prediction | 1998 | Proceedings of the 3rd Annual Genetic Programming Conference | Inproceedings | Management |
| Abstract: Software development managers use software quality prediction methods to determine to which modules expensive reliability techniques should be applied. In this paper we describe a genetic pro- gramming (GP) based system for target- ting software modules for reliability en- hancement. The paper describes the GP system, and provides a case study using software quality data from two actual industrial projects. The system is shown to be robust enough for use in industrial domains. | ||||||
BibTeX:
@inproceedings{EvettCKA98,
author = {Matthew Evett and Pei-der Chien and Taghi Khoshgoftar and Edward Allen},
title = {GP-based Software Quality Prediction},
booktitle = {Proceedings of the 3rd Annual Genetic Programming Conference},
year = {1998},
url = {http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.8.3690&rep=rep1&type=pdf}
}
|
||||||
| 2010.07.19 | Mathew Hall, Phil McMinn & Neil Walkinshaw | Superstate Identification for State Machines using Search-based Clustering | 2010 | Proceedings of the 12th Annual Conference on Genetic and Evolutionary Computation (GECCO '10), pp. 1381-1388, Portland Oregon USA, 7-11 July | Inproceedings | Distribution and Maintenance |
| Abstract: State machines are a popular method of representing a system at a high level of abstraction that enables developers to gain an overview of the system they represent and quickly understand it. Several techniques have been developed to reverse engineer state machines from software, so as to produce a concise and up-to-date document of how a system works. However, the machines that are recovered are usually flat and contain a large number of states. This means that the abstract picture they are supposed to provide is often itself very complex, requiring effort to understand. This paper proposes the use of search-based clustering as a means of overcoming this problem. Clustering state machines opens up the possibility of recovering the structural hierarchy of a state machine, such that superstates may be identified. An evaluation study is performed using the Bunch search-based clustering tool, which demonstrates the usefulness of the approach. |
||||||
BibTeX:
@inproceedings{HallMW10,
author = {Mathew Hall and Phil McMinn and Neil Walkinshaw},
title = {Superstate Identification for State Machines using Search-based Clustering},
booktitle = {Proceedings of the 12th Annual Conference on Genetic and Evolutionary Computation (GECCO '10)},
publisher = {ACM},
year = {2010},
pages = {1381-1388},
address = {Portland, Oregon, USA},
month = {7-11 July},
doi = {http://dx.doi.org/10.1145/1830483.1830736}
}
|
||||||
| 2010.07.19 | Adam C. Jensen & Betty H.C. Cheng | On the Use of Genetic Programming for Automated Refactoring and the Introduction of Design Patterns | 2010 | Proceedings of the 12th Annual Conference on Genetic and Evolutionary Computation (GECCO '10), pp. 1341-1348, Portland Oregon USA, 7-11 July | Inproceedings | Distribution and Maintenance |
| Abstract: Maintaining an object-oriented design for a piece of software is a difficult, time-consuming task. Prior approaches to automated design refactoring have focused on making small, iterative changes to a given software design. However, such approaches do not take advantage of composition of design changes, thus limiting the richness of the refactoring strategies that they can generate. In order to address this problem, this paper introduces an approach that supports composition of design changes and makes the introduction of design patterns a primary goal of the refactoring process. The proposed approach uses genetic programming and software engineering metrics to identify the most suitable set of refactorings to apply to a software design. We illustrate the efficacy of this approach by applying it to a large set of published models, as well as a real-world case study. | ||||||
BibTeX:
@inproceedings{JensenC10,
author = {Adam C. Jensen and Betty H.C. Cheng},
title = {On the Use of Genetic Programming for Automated Refactoring and the Introduction of Design Patterns},
booktitle = {Proceedings of the 12th Annual Conference on Genetic and Evolutionary Computation (GECCO '10)},
publisher = {ACM},
year = {2010},
pages = {1341-1348},
address = {Portland, Oregon, USA},
month = {7-11 July},
doi = {http://dx.doi.org/10.1145/1830483.1830731}
}
|
||||||
| 2010.07.19 | He Jiang, Jifeng Xuan & Zhilei Ren | Approximate Backbone based Multilevel Algorithm for Next Release Problem | 2010 | Proceedings of the 12th Annual Conference on Genetic and Evolutionary Computation (GECCO '10), pp. 1333-1340, Portland Oregon USA, 7-11 July | Inproceedings | Requirements/Specifications |
| Abstract: The next release problem (NRP) aims to effectively select software requirements in order to acquire maximum customer profits. As an NP-hard problem in software requirement engineering, NRP lacks efficient approximate algorithms for large scale instances. The backbone is a new tool for tackling large scale NP-hard problems in recent years. In this paper, we employ the backbone to design high performance approximate algorithms for large scale NRP instances. Firstly we show that it is NP-hard to obtain the backbone of NRP. Then, we illustrate by fitness landscape analysis that the backbone can be well approximated by the shared common parts of local optimal solutions. Therefore, we propose an approximate backbone based multilevel algorithm (ABMA) to solve large scale NRP instances. This algorithm iteratively explores the search spaces by multilevel reductions and refinements. Experimental results demonstrate that ABMA outperforms existing algorithms on large instances in terms of solution quality and running time. | ||||||
BibTeX:
@inproceedings{JiangXR10,
author = {He Jiang and Jifeng Xuan and Zhilei Ren},
title = {Approximate Backbone based Multilevel Algorithm for Next Release Problem},
booktitle = {Proceedings of the 12th Annual Conference on Genetic and Evolutionary Computation (GECCO '10)},
publisher = {ACM},
year = {2010},
pages = {1333-1340},
address = {Portland, Oregon, USA},
month = {7-11 July},
doi = {http://dx.doi.org/10.1145/1830483.1830730}
}
|
||||||
| 2010.07.19 | Thomas Kremmel, Jiří Kubalik & Stefan Biffl | Multiobjective Evolutionary Algorithm for Software Project Portfolio Optimization | 2010 | Proceedings of the 12th Annual Conference on Genetic and Evolutionary Computation (GECCO '10), pp. 1389-1390, Portland Oregon USA, 7-11 July | Inproceedings | Management |
| Abstract: Large software companies have to plan their project portfolio to maximize potential portfolio return and strategic alignment, while balancing various preferences, and considering limited resources. However, software project portfolios are challenging to describe for optimization in a practical way that allows efficient optimization. In this paper we propose an approach to describe software project portfolios with a set of multiobjective criteria for portfolio managers using the COCOMO II model and introduce a multiobjective evolutionary approach, mPOEMS, to find the Pareto-optimal front efficiently. The proposed approach was evaluated on a set of 50 projects that follow the validated COCOMO II model criteria. Major results are: the proposed project portfolio management approach was found usable and useful; the mPOEMS algorithm shows capabilities for efficiently solving the combinatorial optimization problem of this type. | ||||||
BibTeX:
@inproceedings{KremmelKB10,
author = {Thomas Kremmel and Jiří Kubalik and Stefan Biffl},
title = {Multiobjective Evolutionary Algorithm for Software Project Portfolio Optimization},
booktitle = {Proceedings of the 12th Annual Conference on Genetic and Evolutionary Computation (GECCO '10)},
publisher = {ACM},
year = {2010},
pages = {1389-1390},
address = {Portland, Oregon, USA},
month = {7-11 July},
doi = {http://dx.doi.org/10.1145/1830483.1830738}
}
|
||||||
| 2010.07.19 | James Kukunas, Robert D. Cupper & Gregory M. Kapfhammer | A Genetic Algorithm to Improve Linux Kernel Performance on Resource-constrained Devices | 2010 | Proceedings of the 12th Annual Conference on Genetic and Evolutionary Computation (GECCO '10), pp. 2095-2096, Portland Oregon USA, 7-11 July | Inproceedings | Coding Tools and Techniques |
| Abstract: As computers become increasingly mobile, users demand more functionality, longer battery-life, and better performance from mobile devices. In response, chipset fabricators are focusing on elegant architectures to provide solutions that are both low-power and high-performance. Since these architectures rely on unique x86 extensions rather than fast clock speeds and large caches, careful thought must be placed into effective optimization strategies for not only user applications, but also the kernel itself, as the typical default optimizations used by modern compilers do not often take advantage of these specialized features. Focusing on the Intel Diamondville platform, this paper presents a genetic algorithm that evolves the compiler flags needed to build a Linux kernel that exhibits reduced response times. | ||||||
BibTeX:
@inproceedings{KukunasCK10,
author = {James Kukunas and Robert D. Cupper and Gregory M. Kapfhammer},
title = {A Genetic Algorithm to Improve Linux Kernel Performance on Resource-constrained Devices},
booktitle = {Proceedings of the 12th Annual Conference on Genetic and Evolutionary Computation (GECCO '10)},
publisher = {ACM},
year = {2010},
pages = {2095-2096},
address = {Portland, Oregon, USA},
month = {7-11 July},
doi = {http://dx.doi.org/10.1145/1830761.1830879}
}
|
||||||
| 2010.07.19 | Rui Li, Michel R.V. Chaudron & René C. Ladan | Towards Automated Software Architectures Design using Model Transformations and Evolutionary Algorithms | 2010 | Proceedings of the 12th Annual Conference on Genetic and Evolutionary Computation (GECCO '10), pp. 1333-1340, Portland Oregon USA, 7-11 July | Inproceedings | Design Tools and Techniques |
| Abstract: The design of software architecture is one of the large challenges in modern software engineering. It requires software architects to address a large number of non-functional requirements related to performance, safety, availability and cost quality attributes. Moreover, these quality attributes often conflict with each other, for instance, improving system performance often needs more powerful hardware nodes, which increases the production cost and power consumption in the meantime. In this paper, we present the PETUT-MOO tool (Performance-Enhancing Tool using UML Transformations and Multi-objective Optimizations) which can analyze a given software architecture, propose alternatives to it, and do architecture optimization to improve its non-functional properties in an automatic way. | ||||||
BibTeX:
@inproceedings{LiCL10,
author = {Rui Li and Michel R. V. Chaudron and René C. Ladan},
title = {Towards Automated Software Architectures Design using Model Transformations and Evolutionary Algorithms},
booktitle = {Proceedings of the 12th Annual Conference on Genetic and Evolutionary Computation (GECCO '10)},
publisher = {ACM},
year = {2010},
pages = {1333-1340},
address = {Portland, Oregon, USA},
month = {7-11 July},
doi = {http://dx.doi.org/10.1145/1830761.1830880}
}
|
||||||
| 2010.07.19 | Gregory M. Kapfhammer Zachary D. Williams | Using Synthetic Test Suites to Empirically Compare Search-based and Greedy Prioritizers | 2010 | Proceedings of the 12th Annual Conference on Genetic and Evolutionary Computation (GECCO '10), pp. 2119-2120, Portland Oregon USA, 7-11 July | Inproceedings | Testing and Debugging |
| Abstract: The increase in the complexity of modern software has led to the commensurate growth in the size and execution time of the test suites for these programs. In order to address this alarming trend, developers use test suite prioritization to reorder the test cases so that faults can be detected at an early stage of testing. Yet, the implementation and evaluation of greedy and search-based test prioritizers requires access to case study applications and their associated test suites, which are often difficult to find, configure, and use in an empirical study. This paper presents two types of synthetically generated test suites that support this process of experimentally evaluating prioritization methods. Using synthetic test suites affords greater control over test case characteristics and supports the identification of empirical trends that contradict the established wisdom about search-based and greedy prioritization. For instance, we find that the hill climbing algorithm often exhibits a lower time overhead than the greedy test suite prioritizer while often producing test orderings with comparable effectiveness scores. | ||||||
BibTeX:
@inproceedings{WilliamsK10,
author = {Zachary D. Williams, Gregory M. Kapfhammer},
title = {Using Synthetic Test Suites to Empirically Compare Search-based and Greedy Prioritizers},
booktitle = {Proceedings of the 12th Annual Conference on Genetic and Evolutionary Computation (GECCO '10)},
publisher = {ACM},
year = {2010},
pages = {2119-2120},
address = {Portland, Oregon, USA},
month = {7-11 July},
doi = {http://dx.doi.org/10.1145/1830761.1830891}
}
|
||||||
| 2010.07.19 | Andreas Windisch | Search-based Test Data Generation from Stateflow Statecharts | 2010 | Proceedings of the 12th Annual Conference on Genetic and Evolutionary Computation (GECCO '10), pp. 1349-1356, Portland Oregon USA, 7-11 July | Inproceedings | Testing and Debugging |
BibTeX:
@inproceedings{Windisch10,
author = {Andreas Windisch},
title = {Search-based Test Data Generation from Stateflow Statecharts},
booktitle = {Proceedings of the 12th Annual Conference on Genetic and Evolutionary Computation (GECCO '10)},
publisher = {ACM},
year = {2010},
pages = {1349-1356},
address = {Portland, Oregon, USA},
month = {7-11 July},
doi = {http://dx.doi.org/10.1145/1830483.1830732}
}
|
||||||
| 2010.07.19 | Zhihong Xu, Myra B. Cohen & Gregg Rothermel | Factors Affecting the use of Genetic Algorithms in Test Suite Augmentation: | 2010 | Proceedings of the 12th Annual Conference on Genetic and Evolutionary Computation (GECCO '10), pp. 1365-1372, Portland Oregon USA, 7-11 July | Inproceedings | Testing and Debugging |
| Abstract: Test suite augmentation techniques are used in regression testing to help engineers identify code elements affected by changes, and generate test cases to cover those elements. Researchers have created various approaches to identify affected code elements, but only recently have they considered integrating, with this task, approaches for generating test cases. In this paper we explore the use of genetic algorithms in test suite augmentation. We identify several factors that impact the effectiveness of this approach, and we present the results of a case study exploring the effects of one of these factors: the manner in which existing and newly generated test cases are utilized by the genetic algorithm. Our results reveal several ways in which this factor can influence augmentation results, and reveal open problems that researchers must address if they wish to create augmentation techniques that make use of genetic algorithms. | ||||||
BibTeX:
@inproceedings{XuCR10,
author = {Zhihong Xu and Myra B. Cohen and Gregg Rothermel},
title = {Factors Affecting the use of Genetic Algorithms in Test Suite Augmentation:},
booktitle = {Proceedings of the 12th Annual Conference on Genetic and Evolutionary Computation (GECCO '10)},
publisher = {ACM},
year = {2010},
pages = {1365-1372},
address = {Portland, Oregon, USA},
month = {7-11 July},
doi = {http://dx.doi.org/10.1145/1830483.1830734}
}
|
||||||
| 2010.07.19 | Josh L. Wilkerson & Daniel Tauritz | Coevolutionary Automated Software Correction | 2010 | Proceedings of the 12th Annual Conference on Genetic and Evolutionary Computation (GECCO '10), pp. 1391-1392, Portland Oregon USA, 7-11 July | Inproceedings | Testing and Debugging |
| Abstract: This paper presents the Coevolutionary Automated Software Correction system, which addresses in an integral and fully automated manner the complete cycle of software artifact testing, error location, and correction phases. It employs a coevolutionary approach where software artifacts and test cases are evolved in tandem. The test cases evolve to better find flaws in the software artifacts and the software artifacts evolve to better behave to specification when exposed to the test cases, thus causing an evolutionary arms race. Experimental results are presented on the same test problem employed in the published results on the previous state-of-the-art automated software correction system. | ||||||
BibTeX:
@inproceedings{,
author = {Josh L. Wilkerson and Daniel Tauritz},
title = {Coevolutionary Automated Software Correction},
booktitle = {Proceedings of the 12th Annual Conference on Genetic and Evolutionary Computation (GECCO '10)},
publisher = {ACM},
year = {2010},
pages = {1391-1392},
address = {Portland, Oregon, USA},
month = {7-11 July},
doi = {http://dx.doi.org/10.1145/1830483.1830739}
}
|
||||||
| 2010.06.06 | Andrea Arcuri | It Does Matter How You Normalise the Branch Distance in Search Based Software Testing | 2010 | Proceedings of IEEE International Conference on Software Testing, Verification and Validation (ICST '10), pp. 205-214, Paris France, 4-7 May | Inproceedings | Testing and Debugging |
| Abstract: The use of search algorithms for test data generation has seen many successful results. For structural criteria such as branch coverage, heuristics have been designed to help the search. The most common heuristic is the use of approach level (usually represented with an integer) to reward test cases whose executions get close (in the control flow graph)to the target branch. To solve the constraints of the predicates in the control flow graph, the branch distance is commonly employed. These two measures are linearly combined. Because the approach level is more important, the branch distance is normalised, often in the range [0,1]. In this paper, we analyse different types of normalising functions. We found out that the one that is usually employed in the literature has several flaws. We hence propose a different normalizing function that is very simple and that does not suffer of these limitations. We carried out empirical and analytical analyses to compare these two functions. In particular, we studied their effect on two commonly used search algorithms, namely Simulated Annealing and Genetic Algorithms. | ||||||
BibTeX:
@inproceedings{Arcuri10,
author = {Andrea Arcuri},
title = {It Does Matter How You Normalise the Branch Distance in Search Based Software Testing},
booktitle = {Proceedings of IEEE International Conference on Software Testing, Verification and Validation (ICST '10)},
publisher = {IEEE},
year = {2010},
pages = {205-214},
address = {Paris, France},
month = {4-7 May},
doi = {http://dx.doi.org/10.1109/ICST.2010.17}
}
|
||||||
| 2010.06.06 | Kiran Lakhotia | Search–Based Testing | 2009 | School: King's College London, UK | Phdthesis | Testing and Debugging |
| Abstract: This thesis is concerned with the problem of automatic test data genera- tion for structural testing criteria, in particular the branch coverage ade- quacy criterion, using search–based techniques. The primary objective of this thesis is to advance the current state–of–the–art in automated search– based structural testing. Despite the large body of work within the field of search–based testing, the accompanying literature remains without con- vincing solutions for several important problems, including: support for pointers, dynamic data structures, and loop–assigned flag variables. Fur- thermore, relatively little work has been done to extend search–based testing to multi–objective problem formulations. One of the obstacles for the wider uptake of search–based testing has been the lack of publicly available tools, which may have contributed to the lack of empirical studies carried out on real–world systems. This thesis presents AUSTIN, a prototype structural test data generation tool for the C lan- guage. The tool is built on top of the CIL framework and combines a hill climber with a custom constraint solver for pointer type inputs. AUSTIN has been applied to five large open source applications, as well as eight non– trivial, machine generated C functions drawn from three real–world embed- ded software modules from the automotive sector. Furthermore, AUSTIN has been compared to a state–of–the–art Evolutionary Testing Framework and a dynamic symbolic execution tool, CUTE. In all cases AUSTIN was shown to be competitive, both in terms of branch coverage and efficiency. To address the problem of loop–assigned flags, this thesis presents a testa- bility transformation along with a tool that transforms programs with loop– assigned flags into flag–free equivalents, so that existing search–based test data generation approaches can successfully be applied. |
||||||
BibTeX:
@phdthesis{Lakhotia09,
author = {Kiran Lakhotia},
title = {Search–Based Testing},
school = {King's College London, UK},
year = {2009}
}
|
||||||
| 2010.06.06 | Yuanyuan Zhang | Multi-Objective Search-based Requirements Selection and Optimisation | 2010 | School: King's College London, UK | Phdthesis | Requirements/Specifications |
| Abstract: Most software product developments are iterative and incremental processes that are seldom completed in a single release. It is critical but challenging to select the requirements from a large number of candidates for the achievement of overall busi- ness goal and the goals of multiple stakeholders, each of whom may have competing and often conflicting priorities. This thesis argues that search-based techniques can be applied to the optimisation problem during the requirements selection and analysis phase for release planning problem. Search-based techniques offer significant advantages; they can be used to seek robust, scalable solutions, to investigate trade-offs, to yield insight and to provide feedback explaining choices to the decision maker. The thesis reports the results of experiments using different multi-objective evo- lutionary optimisation algorithms with real world data sets as well as synthetic data sets in three studies of the applications of this framework: Value/Cost Trade- off in Requirements Selection, Requirements Interaction Management and Multi- Stakeholder Requirements Analysis and Optimisation. Empirical validation includes a statistical analysis of the performance of the algorithms as well as simple graph- ical methods to visualise the discovered solutions in the multi-dimensional solution space. Though these visualisations are not novel in themselves, the thesis is the first to use them for visualisation of requirements optimisation spaces. |
||||||
BibTeX:
@phdthesis{Zhang10,
author = {Yuanyuan Zhang},
title = {Multi-Objective Search-based Requirements Selection and Optimisation},
school = {King's College London, UK},
year = {2010}
}
|
||||||
| 2010.06.04 | Fatemeh Asadi, Massimiliano Di Penta, Giuliano Antoniol & Yann-Gaäl Guéhéneuc | A Heuristic-based Approach to Identify Concepts in Execution Traces | 2010 | Proceedings of the 14th European Conference on Software Maintenance and Reengineering (CSMR '10), Madrid Spain, 15-18 March | Inproceedings | Distribution and Maintenance |
| Abstract: Concept or feature identification, i.e., the identifi- cation of the source code fragments implementing a particular feature, is a crucial task during software understanding and maintenance. This paper proposes an approach to identify concepts in execution traces by finding cohesive and decoupled fragments of the traces. The approach relies on search-based optimization techniques, textual analysis of the system source code using latent semantic indexing, and trace compression techniques. It is evaluated to identify features from execution traces of two open source systems from different domains, JHotDraw and ArgoUML. Results show that the approach is always able to identify trace segments implementing concepts with a high precision and, for highly cohesive concepts, with a high overlap with the manually-built oracle. | ||||||
BibTeX:
@inproceedings{AsadiDA,
author = {Fatemeh Asadi and Massimiliano Di Penta and Giuliano Antoniol and Yann-Gaäl Guéhéneuc},
title = {A Heuristic-based Approach to Identify Concepts in Execution Traces},
booktitle = {Proceedings of the 14th European Conference on Software Maintenance and Reengineering (CSMR '10)},
publisher = {IEEE},
year = {2010},
address = {Madrid, Spain},
month = {15-18 March},
url = {http://www.rcost.unisannio.it/mdipenta/papers/csmr2010-feature.pdf}
}
|
||||||
| 2010.06.04 | Arthur I. Baars, Tanja E.J. Vos & Dimitar M. Dimitrov | Using Evolutionary Testing to find Test Scenarios for Hard to Reproduce Faults | 2010 | Proceedings of the 3rd International Workshop on Search-Based Software Testing (SBST) in conjunction with ICST 2010, pp. 173-181, Paris France, 6 April | Inproceedings | Testing and Debugging |
| Abstract: In industrial practice, developers are often unable to reproduce errors that are encountered by end-users or testers. Evidently, reproducibility is important for investigating the root cause of the error, since without knowing what causes the error, a developer cannot repair the software. This paper reports on the successful application of evolutionary testing by Rila Solution EAD to solve two real reproducibility problems they encountered. Rila's software application, the ChatPC, suffered from memory and data corruption faults, that were reported by users in the field but could not be reproduced in-house after considerable effort. This paper presents two case studies that show how evolutionary testing resulted in finding execution scenarios that could reliably reproduce the mentioned faults observed in the application. | ||||||
BibTeX:
@inproceedings{BaarsVD10,
author = {Arthur I. Baars and Tanja E.J. Vos and Dimitar M. Dimitrov},
title = {Using Evolutionary Testing to find Test Scenarios for Hard to Reproduce Faults},
booktitle = {Proceedings of the 3rd International Workshop on Search-Based Software Testing (SBST) in conjunction with ICST 2010},
publisher = {IEEE},
year = {2010},
pages = {173-181},
address = {Paris, France},
month = {6 April},
doi = {http://dx.doi.org/10.1109/ICSTW.2010.30}
}
|
||||||
| 2010.06.04 | Mathew Hall, Phil McMinn & Neil Walkinshaw |
Superstate Identification for State Machines Using Search-Based Clustering
[BibTeX] |
2010 | Proceedings of the 12th Annual Conference on Genetic and Evolutionary Computation (GECCO '10), Portland USA, 7-11 July | Inproceedings | |
BibTeX:
@inproceedings{HallMW10,
author = {Mathew Hall and Phil McMinn and Neil Walkinshaw},
title = {Superstate Identification for State Machines Using Search-Based Clustering},
booktitle = {Proceedings of the 12th Annual Conference on Genetic and Evolutionary Computation (GECCO '10)},
publisher = {ACM},
year = {2010},
address = {Portland, USA},
month = {7-11 July}
}
|
||||||
| 2010.06.04 | Mark Harman, Yue Jia & William B. Langdon |
A Manifesto for Higher Order Mutation Testing
[BibTeX] |
2010 | Proceedings of the 5th International Workshop on Mutation Analysis (MUTATION '10), Paris France, 6 April | Inproceedings | Testing and Debugging |
BibTeX:
@inproceedings{HarmanJL10,
author = {Mark Harman and Yue Jia and William B. Langdon},
title = {A Manifesto for Higher Order Mutation Testing},
booktitle = {Proceedings of the 5th International Workshop on Mutation Analysis (MUTATION '10)},
year = {2010},
address = {Paris, France},
month = {6 April}
}
|
||||||
| 2010.06.04 | Mark Harman, Sung Gon Kim, Kiran Lakhotia, Phil McMinn & Shin Yoo | Optimizing for the Number of Tests Generated in Search Based Test Data Generation with an Application to the Oracle Cost Problem | 2010 | Proceedings of the 3rd International Workshop on Search-Based Software Testing (SBST) in conjunction with ICST 2010, pp. 182-191, Paris France, 6 April | Inproceedings | Testing and Debugging |
| Abstract: Previous approaches to search based test data generation tend to focus on coverage, rather than oracle cost. While there may be an aspiration that systems should have models, checkable specifications and/or contract driven development, this sadly remains an aspiration; in many real cases, system behaviour must be checked by a human. This painstaking checking process forms a significant cost, the oracle cost, which previous work on automated test data generation tends to overlook. One simple way to reduce oracle cost consists of reducing the number of tests generated. In this paper we introduce three algorithms which do this without compromising coverage achieved. We present the results of an empirical study of the effectiveness of the three algorithms on five benchmark programs containing non trivial search spaces for branch coverage. The results indicate that it is, indeed, possible to make reductions in the number of test cases produced by search based testing, without loss of coverage. | ||||||
BibTeX:
@inproceedings{HarmanKLMY10,
author = {Mark Harman and Sung Gon Kim and Kiran Lakhotia and Phil McMinn and Shin Yoo},
title = {Optimizing for the Number of Tests Generated in Search Based Test Data Generation with an Application to the Oracle Cost Problem},
booktitle = {Proceedings of the 3rd International Workshop on Search-Based Software Testing (SBST) in conjunction with ICST 2010},
publisher = {IEEE},
year = {2010},
pages = {182-191},
address = {Paris, France},
month = {6 April},
doi = {http://dx.doi.org/10.1109/ICSTW.2010.31}
}
|
||||||
| 2010.06.04 | Yue Jia & Mark Harman | An Analysis and Survey of the Development of Mutation Testing | 2010 | IEEE Transactions on Software Engineering. | Article | Testing and Debugging |
| Abstract: Mutation Testing is a fault–based software testing technique that has been widely studied for over three decades. The literature on Mutation Testing has contributed a set of approaches, tools, developments and empirical results. This paper provides a comprehensive analysis and survey of Mutation Test- ing. The paper also presents the results of several development trend analyses. These analyses provide evidence that Mutation Testing techniques and tools are reaching a state of maturity and applicability, while the topic of Mutation Testing itself is the subject of increasing interest. | ||||||
BibTeX:
@article{JiaH10,
author = {Yue Jia and Mark Harman},
title = {An Analysis and Survey of the Development of Mutation Testing},
journal = {IEEE Transactions on Software Engineering.},
year = {2010}
}
|
||||||
| 2010.06.04 | AbdulSalam Kalaji, Robert Mark Hierons & Stephen Swift | Generating Feasible Transition Paths for Testing from an Extended Finite State Machine (EFSM) with the Counter Problem | 2010 | Proceedings of the 3rd International Workshop on Search-Based Software Testing (SBST) in conjunction with ICST 2010, pp. 230-239, Paris France, 6 April | Inproceedings | Testing and Debugging |
| Abstract: The problem of testing from an extended finite state machine (EFSM) can be expressed in terms of finding suitable paths through the EFSM and then deriving test data to follow the paths. A chosen path may be infeasible and so it is desirable to have methods that can direct the search for appropriate paths through the EFSM towards those that are likely to be feasible. However, generating feasible transition paths (FTPs) for model based testing is a challenging task and is an open research problem. This paper introduces a novel fitness metric that analyzes data flow dependence among the actions and conditions of the transitions of a path in order to estimate its feasibility. The proposed fitness metric is evaluated by being used in a genetic algorithm to guide the search for FTPs. | ||||||
BibTeX:
@inproceedings{KalajiHS10,
author = {AbdulSalam Kalaji and Robert Mark Hierons and Stephen Swift},
title = {Generating Feasible Transition Paths for Testing from an Extended Finite State Machine (EFSM) with the Counter Problem},
booktitle = {Proceedings of the 3rd International Workshop on Search-Based Software Testing (SBST) in conjunction with ICST 2010},
publisher = {IEEE},
year = {2010},
pages = {230-239},
address = {Paris, France},
month = {6 April},
doi = {http://dx.doi.org/10.1109/ICST.2009.29}
}
|
||||||
| 2010.06.04 | Felix Lindlar, Andreas Windisch & Joachim Wegener | Integrating Model-Based Testing with Evolutionary Functional Testing | 2010 | Proceedings of the 3rd International Workshop on Search-Based Software Testing (SBST) in conjunction with ICST 2010, pp. 163-172, Paris France, 6 April | Inproceedings | Testing and Debugging |
| Abstract: Evolutionary Functional Testing (EFT) is a relatively recent approach to automating the testing process. The research presented in this paper aims at increasing the acceptability of EFT in industrial settings. An approach suitable for efficiently and effectively testing complex continuous control systems is introduced. The main focus is on generating realistic test stimuli, enabling interactivity between test driver and test object, and facilitating the process of designing a suitable fitness function. This is accomplished by integrating EFT with model-based testing methodologies resulting in an intuitive testing approach that enables even testers not familiar with search based testing to achieve good results with limited effort. A test environment optimized for deployment in the industrial domain is introduced. Features of the test environment include the capability of automatically generating realistic continuous test data sets, interacting with the system under test during test execution, and automatically executing and evaluating large numbers of tests. A thorough case study using an adaptive cruise control system from the automotive domain is performed to assess the approach. Results of this work indicate high usability, efficiency, and effectiveness of the proposed method for testing complex embedded systems. | ||||||
BibTeX:
@inproceedings{LindlarWW10,
author = {Felix Lindlar and Andreas Windisch and Joachim Wegener},
title = {Integrating Model-Based Testing with Evolutionary Functional Testing},
booktitle = {Proceedings of the 3rd International Workshop on Search-Based Software Testing (SBST) in conjunction with ICST 2010},
publisher = {IEEE},
year = {2010},
pages = {163-172},
address = {Paris, France},
month = {6 April},
doi = {http://dx.doi.org/10.1109/ICSTW.2010.10}
}
|
||||||
| 2010.06.04 | Paul Massey, John A Clark & Susan Stepney |
A Genetic Programming Approach to Evolving Quantum Programs and Circuits
[BibTeX] |
2010 | Applied Soft Computing Journal | Article | |
BibTeX:
@article{MasseyCS10,
author = {Paul Massey and John A Clark and Susan Stepney},
title = {A Genetic Programming Approach to Evolving Quantum Programs and Circuits},
journal = {Applied Soft Computing Journal},
year = {2010}
}
|
||||||
| 2010.06.04 | Phil McMinn, Mark Stevenson & Mark Harman |
Reducing Qualitative Human Oracle Costs associated with Automatically Generated Test Data
[BibTeX] |
2010 | Proceedings of the 1st International Workshop on Software Test Output Validation (STOV '10), Trento Italy, 13 July | Inproceedings | Testing and Debugging |
BibTeX:
@inproceedings{McMinnSH10,
author = {Phil McMinn and Mark Stevenson and Mark Harman},
title = {Reducing Qualitative Human Oracle Costs associated with Automatically Generated Test Data},
booktitle = {Proceedings of the 1st International Workshop on Software Test Output Validation (STOV '10)},
year = {2010},
address = {Trento, Italy},
month = {13 July}
}
|
||||||
| 2010.06.04 | Simon Poulding & John A. Clark | Efficient Software Verification: Statistical Testing Using Automated Search | 2010 | IEEE Transactions on Software Engineering | Article | |
BibTeX:
@article{PouldingC10,
author = {Simon Poulding and John A. Clark},
title = {Efficient Software Verification: Statistical Testing Using Automated Search},
journal = {IEEE Transactions on Software Engineering},
year = {2010},
doi = {http://dx.doi.org/10.1109/TSE.2010.24}
}
|
||||||
| 2010.06.04 | Kata Praditwong, Mark Harman & Xin Yao |
Software Module Clustering as a Multi-Objective Search Problem
[BibTeX] |
2010 | IEEE Transactions on Software Engineering. | Article | Design Tools and Techniques |
BibTeX:
@article{PraditwongHY10,
author = {Kata Praditwong and Mark Harman and Xin Yao},
title = {Software Module Clustering as a Multi-Objective Search Problem},
journal = {IEEE Transactions on Software Engineering.},
year = {2010}
}
|
||||||
| 2010.06.04 | Jan Staunton & John Clark | Searching for Safety Violations using Estimation of Distribution Algorithms | 2010 | Proceedings of the 3rd International Workshop on Search-Based Software Testing (SBST) in conjunction with ICST 2010, pp. 212-221, Paris France, 6 April | Inproceedings | Testing and Debugging |
| Abstract: Using aspects of model checking to analyse multi- threaded software is a promising method for finding common concurrent errors such as deadlock. Traditional model checking tools exhaustively search the state space of a concurrent system in order to find faults. Unfortunately, model checking suffers from the state space explosion problem, limiting the applicability of the approach to commercial software. Metaheuristic search mechanisms have been used in an attempt to overcome this issue with good results. Techniques such as Genetic Algorithms (GAs) and Estimation of Distribution Algorithms (EDAs) focus the search of the state space on areas that are more likely to contain errors. In this work, a novel EDA-based approach to exploring the state space of a model is outlined. Experiments are performed on an implementation using the Java PathFinder (JPF) model checker and the ECJ toolkit. The EDA-based approach is shown to perform well against standard search procedures such as depth-first search, whilst also outperforming random search on a benchmark problem. On larger problems, the EDA is shown to be the only effective technique of those compared. | ||||||
BibTeX:
@inproceedings{StauntonC10,
author = {Jan Staunton and John Clark},
title = {Searching for Safety Violations using Estimation of Distribution Algorithms},
booktitle = {Proceedings of the 3rd International Workshop on Search-Based Software Testing (SBST) in conjunction with ICST 2010},
publisher = {IEEE},
year = {2010},
pages = {212-221},
address = {Paris, France},
month = {6 April},
doi = {http://dx.doi.org/10.1109/ICSTW.2010.24}
}
|
||||||
| 2010.06.04 | K. Tang Z. Wang & Xin Yao |
Multi-objective Approaches to Optimal Testing Resource Allocation in Modular Software Systems
[BibTeX] |
2010 | IEEE Transactions on Reliability | Article | Testing and Debugging |
BibTeX:
@article{WangTY10,
author = {Z. Wang, K. Tang and Xin Yao},
title = {Multi-objective Approaches to Optimal Testing Resource Allocation in Modular Software Systems},
journal = {IEEE Transactions on Reliability},
year = {2010}
}
|
||||||
| 2010.06.04 | Benjamin Wilmes & Andreas Windisch | Considering Signal Constraints in Search-Based Testing of Continuous Systems | 2010 | Proceedings of the 3rd International Workshop on Search-Based Software Testing (SBST) in conjunction with ICST 2010, pp. 202-211, Paris France, 6 April | Inproceedings | Testing and Debugging |
| Abstract: This paper presents a technique to consider constraints on input signals of continuous systems when applying search-based testing. The signal constraints are described using a logic based on Signal Temporal Logic. We developed a distance-oriented evaluation technique for these constraints that provides an exact rating of the amount of constraint violation, thus allowing a ranking of the generated solutions in terms of constraint violation. An adaptive penalty function is then used to incorporate the evaluation results into the optimization. Finally, the overall method is shown to be capable of considering signal constraints appropriately when experimentally applied to search-based black-box testing of a MATLAB SIMULINK model of an automatic transmission controller. | ||||||
BibTeX:
@inproceedings{WilmesW10,
author = {Benjamin Wilmes and Andreas Windisch},
title = {Considering Signal Constraints in Search-Based Testing of Continuous Systems},
booktitle = {Proceedings of the 3rd International Workshop on Search-Based Software Testing (SBST) in conjunction with ICST 2010},
publisher = {IEEE},
year = {2010},
pages = {202-211},
address = {Paris, France},
month = {6 April},
doi = {http://dx.doi.org/10.1109/ICSTW.2010.22}
}
|
||||||
| 2010.06.04 | Thaise Yano, Eliane Martins & Fabiano L. De Sousa | Generating Feasible Test Paths from an Executable Model Using a Multi-Objective Approach | 2010 | Proceedings of the 3rd International Workshop on Search-Based Software Testing (SBST) in conjunction with ICST 2010, pp. 236-239, Paris France, 6 April | Inproceedings | Testing and Debugging |
| Abstract: Search-based testing techniques using meta-heuristics, like evolutionary algorithms, has been largely used for test data generation, but most approaches were proposed for white-box testing. In this paper we present an evolutionary approach for test sequence generation from a behavior model, in particular, Extended Finite State Machine. An open problem is the production of infeasible paths, as these should be detected and discarded manually. To circumvent this problem, we use an executable model to obtain feasible paths dynamically. An evolutionary algorithm is used to search for solutions that cover a given test purpose, which is a transition of interest. The target transition is used as a criterion to get slicing information, in this way, helping to identify the parts of the model that affect the test purpose. We also present a multi-objective search: the test purpose coverage and the sequence size minimization, as longer sequences require more effort to be executed. | ||||||
BibTeX:
@inproceedings{YanoMD10,
author = {Thaise Yano and Eliane Martins and Fabiano L. De Sousa},
title = {Generating Feasible Test Paths from an Executable Model Using a Multi-Objective Approach},
booktitle = {Proceedings of the 3rd International Workshop on Search-Based Software Testing (SBST) in conjunction with ICST 2010},
publisher = {IEEE},
year = {2010},
pages = {236-239},
address = {Paris, France},
month = {6 April},
doi = {http://dx.doi.org/10.1109/ICSTW.2010.52}
}
|
||||||
| 2010.06.04 | Shin Yoo | Extending the Boundaries in Regression Testing: Complexity, Latency, and Expertise | 2009 | School: King's College London, UK | Phdthesis | Testing and Debugging |
| Abstract: Automated test case management techniques have been studied in order to aid regression testing tasks by reducing their cost and improving their efficiency. However, the current state-of-art test case management techniques remain limited in several aspects. First, the existing techniques share a scalability problem, not only in terms of the size of the test suites and SUT (System Under Test), but also in terms of complexity of the constraints expressible in the process of regression testing, because the problem is often formulated without considering additional constraints. Second, there is no guarantee that the reduced effort does not compromise the fault detection capability of the test suite. Finally, the existing techniques do not provide any means for the human testers to contribute their important domain knowledge. This domain knowledge is hard to capture algorithmically. This thesis aims to reformulate test case management techniques in these regards by presenting new concepts, algorithms, approaches and combinations of techniques. In order to deal with the complexity of real world regression testing, multi-objective for- mulation of test case management is presented, allowing the human tester to apply test case management techniques while meeting to multiple objectives. The thesis introduces the concept of latency, which is used to measure the redundancy in a test suite system- atically so that the tester can make an informed decision on the appropriate size of test suites. It also shows that the latency of a test suite can be improved automatically using search-based test data augmentation techniques, which can be significantly more efficient compared to existing test data generation techniques. Finally, the thesis considers the combination of clustering and pair-wise comparison approaches to efficiently incorporate the domain knowledge of human tester into test case management. |
||||||
BibTeX:
@phdthesis{Yoo09,
author = {Shin Yoo},
title = {Extending the Boundaries in Regression Testing: Complexity, Latency, and Expertise},
school = {King's College London, UK},
year = {2009}
}
|
||||||
| 2010.06.04 | Shin Yoo | Metamorphic Testing of Stochastic Optimisation | 2010 | Proceedings of the 3rd International Workshop on Search-Based Software Testing (SBST) in conjunction with ICST 2010, pp. 192-201, Paris France, 6 April | Inproceedings | Testing and Debugging |
| Abstract: Testing stochastic optimisation algorithms presents an unique challenge because of two reasons. First, these algorithms are non-testable programs, i.e. if the test oracle was known, there wouldn't have been the need for those algorithms in the first place. Second, their performance can vary depending on the problem instances they are used to solve. This paper applies the statistical metamorphic testing approach to stochastic optimisation algorithms and investigates the impact that different problem instances have on testing optimisation algorithms. The paper presents an empirical evaluation of the approach using instances of Next Release Problem (NRP). The effectiveness of the testing method is evaluated using mutation testing. The result shows that, despite the challenges from the stochastic nature of the optimisation algorithm, metamorphic testing can be effective in testing them. | ||||||
BibTeX:
@inproceedings{Yoo10,
author = {Shin Yoo},
title = {Metamorphic Testing of Stochastic Optimisation},
booktitle = {Proceedings of the 3rd International Workshop on Search-Based Software Testing (SBST) in conjunction with ICST 2010},
publisher = {IEEE},
year = {2010},
pages = {192-201},
address = {Paris, France},
month = {6 April},
doi = {http://dx.doi.org/10.1109/ICSTW.2010.26}
}
|
||||||
| 2010.06.04 | Shin Yoo & Mark Harman |
Regression Testing Minimisation, Selection and Prioritisation: A Survey
[BibTeX] |
2010 | Journal of Software Testing, Verification and Reliability | Article | Testing and Debugging |
BibTeX:
@article{YooH10b,
author = {Shin Yoo and Mark Harman},
title = {Regression Testing Minimisation, Selection and Prioritisation: A Survey},
journal = {Journal of Software Testing, Verification and Reliability},
year = {2010}
}
|
||||||
| 2010.06.04 | Ruilian Zhao, Mark Harman & Zheng Li | Empirical Study on the Efficiency of Search Based Test Generation for EFSM Models | 2010 | Proceedings of the 3rd International Workshop on Search-Based Software Testing (SBST) in conjunction with ICST 2010, pp. 222-231, Paris France, 6 April | Inproceedings | Testing and Debugging |
| Abstract: Experimental work in software testing has generally focused on evaluating the effectiveness and efficiency on various source code programs. However, an important issue of testing efficiency on the model level has not been sufficiently addressed, and hitherto, no empirical studies exist. This paper presents an automated test data generation system for feasible transition paths (FTP) on Extended Finite State Machines (EFSM) models and investigates the statistical properties of testing efficiency using statistical tests for correlation and formalisation according to the test data generated by applying the system on four widely used EFSM models. An important and encouraging finding is a close positive correlation between test generation cost and the number of numerical equal operators in conditions (NNEOC) on a FTP. In addition, as the NNEOC increases, there is a raising correlation between the test generation cost and the length of path with events variables (LPEV) or the number of numerical event variables on a path (NNEV), and NNEV increases linearly with the LPEV. Furthermore, empirical study shows that there is very strong exponential relationship between test generation cost and NNEV or LPEV only when NNEOC is considerable. The results provide a significant guide to predict the testing efficiency for EFSM models. | ||||||
BibTeX:
@inproceedings{ZhaoHL10,
author = {Ruilian Zhao and Mark Harman and Zheng Li},
title = {Empirical Study on the Efficiency of Search Based Test Generation for EFSM Models},
booktitle = {Proceedings of the 3rd International Workshop on Search-Based Software Testing (SBST) in conjunction with ICST 2010},
publisher = {IEEE},
year = {2010},
pages = {222-231},
address = {Paris, France},
month = {6 April},
doi = {http://dx.doi.org/10.1109/ICSTW.2010.44}
}
|
||||||
| 2010.06.02 | Yuanyuan Zhang, Enrique Alba, Juan J. Durillo, Sigrid Eldh & Mark Harman | Today/Future Importance Analysis | 2010 | Proceedings of the 12th Annual Conference on Genetic and Evolutionary Computation (GECCO '10), pp. 1357-1364, Portland USA, 7-11 July | Inproceedings | Requirements/Specifications |
| Abstract: SBSE techniques have been widely applied to requirements selection and prioritization problems in order to ascertain a suitable set of requirements for the next release of a system. Unfortunately, it has been widely observed that requirements tend to be changed as the development process proceeds and what is suitable for today, may not serve well into the future. Though SBSE has been widely applied to requirements analysis, there has been no previous work that seeks to balance the requirements needs of today with those of the future. This paper addresses this problem. It introduces a multi-objective formulation of the problem which is implemented using multi-objective Pareto optimal evolutionary algorithms. The paper presents the results of experiments on both synthetic and real world data. | ||||||
BibTeX:
@inproceedings{ZhangADEH10,
author = {Yuanyuan Zhang and Enrique Alba and Juan J. Durillo and Sigrid Eldh and Mark Harman},
title = {Today/Future Importance Analysis},
booktitle = {Proceedings of the 12th Annual Conference on Genetic and Evolutionary Computation (GECCO '10)},
publisher = {ACM},
year = {2010},
pages = {1357-1364},
address = {Portland, USA},
month = {7-11 July}
}
|
||||||
| 2010.05.24 | Ahmed Al-Emran, Dietmar Pfahl & Günther Ruhe | A Hybrid Method for Advanced Decision Support in Strategic Product Release Planning | 2010 | (088/2010), March | Techreport | Requirements/Specifications |
| Abstract: DECIDERelease is a hybrid method that combines simulation-based robustness analysis and multi-criteria decision analysis with existing strategic release planning approach EVOLVE*. The purpose of DECIDERelease is to qualify decision-making by pro-actively exploring the robustness of the operational plans of upcoming releases. Based on this analysis, the strategic release plan that is the most robust against assumed changes in planning parameters at operational level can be selected. In this technical report we present the computational details of robustness analysis and multi-criteria decision analysis with a case example. | ||||||
BibTeX:
@techreport{Al-EmranPR10,
author = {Ahmed Al-Emran and Dietmar Pfahl and Günther Ruhe},
title = {A Hybrid Method for Advanced Decision Support in Strategic Product Release Planning},
year = {2010},
number = {088/2010},
month = {March},
url = {http://people.ucalgary.ca/~aalemran/re2010/SEDS-TR%20088_2010.pdfs}
}
|
||||||
| 2010.05.24 | Jim McElroy & Günther Ruhe | When-to-release Decisions for Features with Time-dependent Value Functions | 2010 | Requirements Engineering | Article | Requirements/Specifications |
| Abstract: Release planning is of key importance for incremental software product development. With the increasing size and complexity of software products, as well as with the growing demands for transparency and objectivity of decision-making, intuition alone is no longer sufficient for release planning. EVOLVE+ is a systematic method for release planning, which combines the strengths of formalization and computational efficiency with the expertise of the human experts. From a given set of candidate features, the most attractive ones are selected and assigned to a sequence of releases. In this paper, we consider three extensions to the current systematic planning approach EVOLVE+: (a) value functions describing the estimated value of the feature are continuous functions of time, (b) the actual release dates are no longer fixed but can be varied in some pre-defined interval. As a consequence, the available resource capacities are also functions of time. (c) Calculation of trade-off solutions balancing the risk with the potential additional value of early release. All three extensions substantially increase the complexity of the release planning problem. We have developed a solution method using genetic algorithms that is able to accommodate the additional complexity of the advanced model. A hypothetical case study is conducted as a proof-of-concept for the applicability of the method. The applicability of the method is demonstrated by analyzing six detailed planning scenarios. | ||||||
BibTeX:
@article{McElroyR10,
author = {Jim McElroy and Günther Ruhe},
title = {When-to-release Decisions for Features with Time-dependent Value Functions},
journal = {Requirements Engineering},
year = {2010},
url = {http://www.springerlink.com/content/w548831rj2n42n46/}
}
|
||||||
| 2010.05.24 | David R. White | Genetic Programming for Low-Resource Systems | 2009 | , December School: University of York, UK | Phdthesis | |
| Abstract: Embedded systems dominate the computing landscape. This dominance is increasing with the advent of ubiquitous computing whereby lightweight, low-resource systems are being deployed on a vast scale. These systems present new engineering challenges: high-volume production places a stronger emphasis on absolute cost, resources available to executing software are highly constrained, and physical manufacturing capabilities approach hard limits. Add to this the sensitive nature of many of these systems, such as smartcards used for financial transactions, and the development of these systems becomes a formidable engineering challenge. For the software engineer, the incentive to produce efficient and resource-aware software for these platforms is great, yet existing tools do not support them well in this task. It is difficult to assess the impact of decisions made at the source code level in terms of how they change a system’s resource consumption. Existing toolchains, together with the very complex interactions of software and their host processors, can produce unforeseen implications at run-time of even small changes. We could describe such a situation as an instance of programming the unprogrammable, and Genetic Programming is one solution method used for such problems. Genetic Programming, inspired by nature’s ability to solve problems involving complex interactions and strong pressures on resource consumption, is a clear candidate for attacking the challenges presented in these systems. Genetic Programming facilitates the creation and manipulation of source code in a way that grants us fine control over its measurable characteristics. In this thesis, I investigate the potential of Genetic Programming as a tool in controlling the non-functional properties of software, as a new method of designing code for low-resource systems. I demonstrate the feasibility of this approach, and investigate some of the ways Genetic Programming could be utilised by a practitioner. In doing so, I also identify key components that any application of Genetic Programming to such a domain will require. I review current low-resource system optimisation, Genetic Programming and methods for simultaneously handling multiple requirements. I present a series of empirical investigations designed to provide evidence for and against a set of hypotheses regarding the success of Genetic Programming in solving problems within the low-resource systems domain. These experiments include the creation of new software, the improvement of existing software and the fine-grained control of resource usage in general. To conclude, I review the progress made, reassess my hypotheses, and outline how these new methods can be carried forward to a wide range of applications. |
||||||
BibTeX:
@phdthesis{White09,
author = {David R. White},
title = {Genetic Programming for Low-Resource Systems},
school = {University of York, UK},
year = {2009},
month = {December},
url = {http://www.cs.york.ac.uk/~drw/papers/thesis/drwthesis.pdf}
}
|
||||||
| 2010.04.28 | Michael Orlov & Moshe Sipper | Genetic Programming in the Wild: Evolving Unrestricted Bytecode | 2009 | Proceedings of the 11th Annual Conference on Genetic and Evolutionary Computation (GECCO '09), pp. 1043-1050, Montréal Canada, 8-12 July | Inproceedings | |
| Abstract: We describe a methodology for evolving Java bytecode, enabling the evolution of extant, unrestricted Java programs, or programs in other languages that compile to Java bytecode. Bytecode is evolved directly, without any intermediate genomic representation. Our approach is based upon the notion of compatible crossover, which produces correct programs by performing operand stack-, local variables-, and control flow-based compatibility checks on source and destination bytecode sections. This is in contrast to existing work that uses restricted subsets of the Java bytecode instruction set as a representation language for individuals in genetic programming. Given the huge universe of unrestricted Java bytecode, as is programs, our work enables the applications of evolution within this realm. We experimentally validate our methodology by both extensively testing the correctness of compatible crossover on arbitrary bytecode, and by running evolution on a program that exploits the richness of the Java virtual machine architecture and type system. | ||||||
BibTeX:
@inproceedings{OrlovS09,
author = {Michael Orlov and Moshe Sipper},
title = {Genetic Programming in the Wild: Evolving Unrestricted Bytecode},
booktitle = {Proceedings of the 11th Annual Conference on Genetic and Evolutionary Computation (GECCO '09)},
publisher = {ACM},
year = {2009},
pages = {1043-1050},
address = {Montréal, Canada},
month = {8-12 July},
doi = {http://dx.doi.org/10.1145/1569901.1570042}
}
|
||||||
| 2010.04.27 | Praveen Ranjan Srivastava & K M BABY Chis, M. (Hrsg.) | Chapter VIII - Automatic Test Sequence Generation for State Transition Testing via Ant Colony Optimization ( Evolutionary Computation and Optimization Algorithms in Software Engineering: Applications and Techniques ) | 2010 | Evolutionary Computation and Optimization Algorithms in Software Engineering: Applications and Techniques | Inbook | General Aspects and Survey |
BibTeX:
@inbook{SrivastavaB10,
author = {Praveen Ranjan Srivastava and K M BABY},
title = {Evolutionary Computation and Optimization Algorithms in Software Engineering: Applications and Techniques},
publisher = {IGI Global},
year = {2010},
url = {http://new.igi-global.com/Bookstore/TitleDetails.aspx?TitleId=37355&DetailsType=Preface}
}
|
||||||
| 2010.04.27 | Praveen Ranjan Srivastava, Ajit Pratap Singh & Vageesh K.V. Chis, M. (Hrsg.) | Chapter X - Assessment of Software Quality: A Fuzzy Multi-Criteria Approaches ( Evolutionary Computation and Optimization Algorithms in Software Engineering: Applications and Techniques ) | 2010 | Evolutionary Computation and Optimization Algorithms in Software Engineering: Applications and Techniques | Inbook | General Aspects and Survey |
BibTeX:
@inbook{SrivastavaBV10,
author = {Praveen Ranjan Srivastava and Ajit Pratap Singh and Vageesh K.V.},
title = {Evolutionary Computation and Optimization Algorithms in Software Engineering: Applications and Techniques},
publisher = {IGI Global},
year = {2010},
url = {http://new.igi-global.com/Bookstore/TitleDetails.aspx?TitleId=37355&DetailsType=Preface}
}
|
||||||
| 2010.04.19 | David R. White, Juan M.E. Tapiador, Julio Cesar Hernandez-Castro & John A. Clark Esparcia-Alcazar, A.I.; Ekart, A.; Silva, S.; Dignum, S. & Uyar, A.S. (Hrsg.) | Fine-Grained Timing using Genetic Programming | 2010 | Proceedings of the 13th European Conference on Genetic Programming, EuroGP 2010, Vol. 6021, pp. 325-336, Istanbul Turkey, 7-9 April | Inproceedings | |
| Abstract: In previous work, we have demonstrated that it is possible to use Genetic Programming to minimise the resource consumption of software, such as its power consumption or execution time. In this paper, we investigate the extent to which Genetic Programming can be used to gain fine-grained control over software timing. We introduce the ideas behind our work, and carry out experimentation to find that Genetic Programming is indeed able to produce software with unusual and desirable timing properties, where it is not obvious how a manual approach could replicate such results. In general, we discover that Genetic Programming is most effective in controlling statistical properties of software rather than precise control over its timing for individual inputs. This control may find useful application in cryptography and embedded systems. | ||||||
BibTeX:
@inproceedings{WhiteTHC10,
author = {David R. White and Juan M. E. Tapiador and Julio Cesar Hernandez-Castro and John A. Clark},
title = {Fine-Grained Timing using Genetic Programming},
booktitle = {Proceedings of the 13th European Conference on Genetic Programming, EuroGP 2010},
publisher = {Springer},
year = {2010},
volume = {6021},
pages = {325--336},
address = {Istanbul, Turkey},
month = {7-9 April},
doi = {http://dx.doi.org/10.1007/978-3-642-12148-7_28}
}
|
||||||
| 2010.04.15 | Praveen Ranjan Srivastava & Tai hoon Kim | Application of Genetic Algorithm in Software Testing | 2009 | International Journal of Software Engineering and Its Applications, Vol. 3(4), pp. 87-95, October | Article | Testing and Debugging |
| Abstract: This paper presents a method for optimizing software testing efficiency by identifying the most critical path clusters in a program. We do this by developing variable length Genetic Algorithms that optimize and select the software path clusters which are weighted in accordance with the criticality of the path. Exhaustive software testing is rarely possible because it becomes intractable for even medium sized software. Typically only parts of a program can be tested, but these parts are not necessarily the most error prone. Therefore, we are developing a more selective approach to testing by focusing on those parts that are most critical so that these paths can be tested first. By identifying the most critical paths, the testing efficiency can be increased. | ||||||
BibTeX:
@article{SrivastavaK09,
author = {Praveen Ranjan Srivastava and Tai-hoon Kim},
title = {Application of Genetic Algorithm in Software Testing},
journal = {International Journal of Software Engineering and Its Applications},
year = {2009},
volume = {3},
number = {4},
pages = {87-95},
month = {October},
url = {http://www.sersc.org/journals/IJSEIA/vol3_no4_2009/6.pdf}
}
|
||||||
| 2010.04.14 | Praveen Ranjan Srivastava, Priyanka Gupta, Yogita Arrawatia & Suman Yadav | Use of Genetic Algorithm in Generation of Feasible Test Data | 2009 | ACM SIGSOFT Software Engineering Notes, Vol. 34(2), pp. 1-4, March | Article | Testing and Debugging |
BibTeX:
@article{SrivastavaGAY09,
author = {Praveen Ranjan Srivastava and Priyanka Gupta and Yogita Arrawatia and Suman Yadav},
title = {Use of Genetic Algorithm in Generation of Feasible Test Data},
journal = {ACM SIGSOFT Software Engineering Notes},
year = {2009},
volume = {34},
number = {2},
pages = {1-4},
month = {March},
doi = {http://dx.doi.org/10.1145/1507195.1507217}
}
|
||||||
| 2010.04.13 | Praveen Ranjan Srivastava | Estimation of Software Testing Effort: An Intelligent Approach | 2009 | Proceedings of the 20th International Symposium on Software Reliablility Engineering (ISSRE '09), Mysuru India, 16-19 November | Inproceedings | Testing and Debugging |
| Abstract: Software Testing is an important process of software development that is performed to support and enhance reliability and quality of the software. Studies indicate that 40-50 percent of the cost of software development is devoted to testing, with the percentage for testing critical software being even higher. This poster makes an attempt to estimate reliable software testing effort using fuzzy logic. | ||||||
BibTeX:
@inproceedings{Srivastava09,
author = {Praveen Ranjan Srivastava},
title = {Estimation of Software Testing Effort: An Intelligent Approach},
booktitle = {Proceedings of the 20th International Symposium on Software Reliablility Engineering (ISSRE '09)},
publisher = {IEEE},
year = {2009},
address = {Mysuru, India},
month = {16-19 November},
url = {http://www.issre2009.org/papers/issre2009_179.pdf}
}
|
||||||
| 2010.04.13 | Praveen Ranjan Srivastava | Optimization of Software Testing Using Genetic Algorithm | 2009 | International Journal of Artificial Intelligence and Soft Computing, Vol. 1(2-3), pp. 363-375, July | Article | Testing and Debugging |
| Abstract: Software testing is meant to increase confidence in the correctness of software. Test data generation is one of the key issues in software testing. A properly generated test suite may not only locate the errors in a software system, but also help in reducing the high cost associated with software testing. It is often desired that test data in the form of test sequences within a test suite can be automatically generated to achieve the required test coverage. This paper proposes Genetic Algorithm (GA) to test data generation for optimising the software testing. | ||||||
BibTeX:
@article{Srivastava09b,
author = {Praveen Ranjan Srivastava},
title = {Optimization of Software Testing Using Genetic Algorithm},
journal = {International Journal of Artificial Intelligence and Soft Computing},
year = {2009},
volume = {1},
number = {2-3},
pages = {363-375},
month = {July},
doi = {http://dx.doi.org/10.1504/IJAISC.2009.027301}
}
|
||||||
| 2010.04.13 | Praveen Ranjan Srivastava, Km Baby & G Raghurama | An Approach of Optimal Path Generation using Ant Colony Optimization | 2009 | Proceedings of IEEE Region 10 Conference on TENCON 2009, pp. 1-6, Singapore, 23-26 January | Inproceedings | Testing and Debugging |
| Abstract: Software Testing is one of the indispensable parts of the software development lifecycle and structural testing is one of the most widely used testing paradigms to test various software. Structural testing relies on code path identification, which in turn leads to identification of effective paths. Aim of the current paper is to present a simple and novel algorithm with the help of an ant colony optimization, for the optimal path identification by using the basic property and behavior of the ants. This novel approach uses certain set of rules to find out all the effective/optimal paths via ant colony optimization (ACO) principle. The method concentrates on generation of paths, equal to the cyclomatic complexity. This algorithm guarantees full path coverage. | ||||||
BibTeX:
@inproceedings{SrivastavaBR09,
author = {Praveen Ranjan Srivastava and Km Baby and G Raghurama},
title = {An Approach of Optimal Path Generation using Ant Colony Optimization},
booktitle = {Proceedings of IEEE Region 10 Conference on TENCON 2009},
publisher = {IEEE},
year = {2009},
pages = {1-6},
address = {Singapore},
month = {23-26 January},
doi = {http://dx.doi.org/10.1109/TENCON.2009.5396088}
}
|
||||||
| 2010.04.13 | Praveen Ranjan Srivastava, Vinod Ramachandran, Manish Kumar, Gourab Talukder, Vivek Tiwari & Prateek Sharma | Generation of Test Data using Meta Heuristic Approach | 2008 | Proceedings of IEEE Region 10 Conference on TENCON 2008, pp. 1-6, Hyderabad India, 19-21 November | Inproceedings | Testing and Debugging |
| Abstract: Software testing is of huge importance to development of any software. The prime focus is to minimize the expenses on the testing. In software testing the major problem is generation of test data. Several metaheuristic approaches in this field have become very popular. The aim is to generate the optimum set of test data, which would still not compromise on exhaustive testing of software. Our objective is to generate such efficient test data using genetic algorithm and ant colony optimization for a given software. We have also compared the two approaches of software testing to determine which of these are effective towards generation of test data and constraints if any. | ||||||
BibTeX:
@inproceedings{SrivastavaRKTTS08,
author = {Praveen Ranjan Srivastava and Vinod Ramachandran and Manish Kumar and Gourab Talukder and Vivek Tiwari and Prateek Sharma},
title = {Generation of Test Data using Meta Heuristic Approach},
booktitle = {Proceedings of IEEE Region 10 Conference on TENCON 2008},
publisher = {IEEE},
year = {2008},
pages = {1-6},
address = {Hyderabad, India},
month = {19-21 November},
doi = {http://dx.doi.org/10.1109/TENCON.2008.4766707}
}
|
||||||
| 2010.04.13 | Praveen Ranjan Srivastava, Aditya Vijay, Bhupesh Barukha, Prashant Singh Sengar & Rajat Sharma |
An Optimized Technique for Test Case Generation and Prioritization using Tabu Search and Data Clustering
[BibTeX] |
2009 | Proceedings of the 4th Indian International Conference on Artificial Intelligence (IICAI '09), pp. 30-46, Tumkur India, 16-18 December | Inproceedings | Testing and Debugging |
BibTeX:
@inproceedings{SrivastavaVBSS09,
author = {Praveen Ranjan Srivastava and Aditya Vijay and Bhupesh Barukha and Prashant Singh Sengar and Rajat Sharma},
title = {An Optimized Technique for Test Case Generation and Prioritization using Tabu Search and Data Clustering},
booktitle = {Proceedings of the 4th Indian International Conference on Artificial Intelligence (IICAI '09)},
year = {2009},
pages = {30-46},
address = {Tumkur, India},
month = {16-18 December}
}
|
||||||
| 2010.03.31 | Hiroshi Wada, Paskorn Champrasert, Junichi Suzuki & Katsuya Oba | Multiobjective Optimization of SLA-Aware Service Composition | 2008 |
Proceedings of IEEE Workshop on Methodologies for Non-functional Properties in Services Computing, pp. 368-375, Honolulu HI USA, 6-11 July |
Inproceedings | Design Tools and Techniques |
| Abstract: In service oriented architecture, each application is often designed as a set of abstract services, which defines its functions. A concrete service(s) is selected at runtime for each abstract service to fulfill its function. Since different concrete services may operate at different quality of service measures, application developers are required to select an appropriate set of concrete services that satisfies a given service level agreement when a number of concrete services are available for each abstract service. This problem, the QoS-aware service composition problem, is known NP-hard, which takes a significant amount of time and costs to find optimal solutions (optimal combinations of concrete services) from a huge number of possible solutions. This paper proposes an optimization framework, called E3, to address the issue. By leveraging a multiobjective genetic algorithm, E3 heuristically solves the QoS-aware service composition problem in a reasonably short time. The algorithm E3 proposes can consider multiple SLAs simultaneously and produce a set of Pareto solutions, which have the equivalent quality to satisfy multiple SLAs. | ||||||
BibTeX:
@inproceedings{WadaCSO08,
author = {Hiroshi Wada and Paskorn Champrasert and Junichi Suzuki and
|
||||||
| 2010.03.31 | Hiroshi Wada, Junichi Suzuki & Katsuya Oba | Queuing Theoretic and Evolutionary Deployment Optimization with Probabilistic SLAs for Service Oriented Clouds | 2009 | Proceedings of 2009 Congress on Services, Los Angeles CA USA, 6-10 July | Inproceedings | Design Tools and Techniques |
| Abstract: This paper focuses on service deployment optimization in cloud computing environments. In a cloud, each service in an application is deployed as one or more service instances. Different service instances operate at different quality of service (QoS) levels. In order to satisfy given service level agreements (SLAs) as end-to-end QoS requirements of an application, the application is required to optimize its deployment configuration of service instances. $E^3/Q$ is a multiobjective genetic algorithm to solve this problem. By leveraging queuing theory, $E^3/Q$ estimates the performance of an application and allows for defining SLAs in a probabilistic manner. Simulation results demonstrate that $E^3/Q$ efficiently obtains deployment configurations that satisfy given SLAs. | ||||||
BibTeX:
@inproceedings{WadaSO09,
author = {Hiroshi Wada and Junichi Suzuki and Katsuya Oba},
title = {Queuing Theoretic and Evolutionary Deployment Optimization with Probabilistic SLAs for Service Oriented Clouds},
booktitle = {Proceedings of 2009 Congress on Services},
publisher = {IEEE},
year = {2009},
address = {Los Angeles, CA, USA},
month = {6-10 July},
doi = {http://dx.doi.org/10.1109/SERVICES-I.2009.59}
}
|
||||||
| 2010.03.30 | Mark O'Keeffe & Mel Ó Cinnéide | Automated Design Improvement by Example | 2007 | Proceedings of the 2007 conference on New Trends in Software Methodologies, Tools and Techniques (SoMeT '07), pp. 315-329 | Inproceedings | Distribution and Maintenance |
| Abstract: The high cost of software maintenance could potentially be reduced by automatically improving the design of object-oriented programs without altering their behaviour. We have constructed a software tool capable of refactoring object-oriented programs to conform more closely to design quality models based on a set of metrics, by formulating the task as a search problem in the space of alternative designs. However, no consensus exists on a single quality model for object-oriented design, since the definition of 'quality' can depend on the purpose, pedigree and perception of the maintenance programmer. We therefore demonstrate here the flexibility of our approach by automatically refactoring several Java programs to conform with quality models based on the metric values of example programs. Results show that an object-oriented program can be automatically refactored to reduce its dissimilarity in terms of a set of design metrics to another program having some desirable trait, such as ease of maintenance. | ||||||
BibTeX:
@inproceedings{OKeeffeO07b,
author = {Mark O'Keeffe and Mel Ó Cinnéide},
title = {Automated Design Improvement by Example},
booktitle = {Proceedings of the 2007 conference on New Trends in Software Methodologies, Tools and Techniques (SoMeT '07)},
publisher = {IOS Press},
year = {2007},
pages = {315-329},
url = {http://portal.acm.org/citation.cfm?id=1566997}
}
|
||||||
| 2010.03.30 | Athanasios Tsakonas & Georgios Dounias | Predicting Defects in Software Using Grammar-Guided Genetic Programming | 2008 | Proceedings of the 5th Hellenic conference on Artificial Intelligence: Theories, Models and Applications, Vol. 5138, pp. 413-418, Syros Greece, 2-4 October | Inproceedings | Management |
| Abstract: The knowledge of the software quality can allow an organization to allocate the needed resources for the code maintenance. Maintaining the software is considered as a high cost factor for most organizations. Consequently, there is need to assess software modules in respect of defects that will arise. Addressing the prediction of software defects by means of computational intelligence has only recently become evident. In this paper, we investigate the capability of the genetic programming approach for producing solution composed of decision rules. We applied the model into four software engineering databases of NASA. The overall performance of this system denotes its competitiveness as compared with past methodologies, and is shown capable of producing simple, highly accurate, tangible rules. | ||||||
BibTeX:
@inproceedings{TsakonasD08b,
author = {Athanasios Tsakonas and Georgios Dounias},
title = {Predicting Defects in Software Using Grammar-Guided Genetic Programming},
booktitle = {Proceedings of the 5th Hellenic conference on Artificial Intelligence: Theories, Models and Applications},
publisher = {Springer},
year = {2008},
volume = {5138},
pages = {413-418},
address = {Syros, Greece},
month = {2-4 October},
doi = {http://dx.doi.org/10.1007/978-3-540-87881-0}
}
|
||||||
| 2010.03.30 | Junchao Xiao, Leon J. Osterwell, Qing Wang & Mingshu Li |
Dynamic Resource Scheduling in Disruption-Prone Software Development Environments
[BibTeX] |
2010 | Proceedings of the 13th International Conference on Fundamental Approaches to Software Engineering (FASE '10) Held as Part of the Joint European Conferences on Theory and Practice of Software (ETAPS '10), Vol. 6013, pp. 107-122, Paphos Cyprus, 20-28 March | Inproceedings | Management |
BibTeX:
@inproceedings{XiaoOWL10,
author = {Junchao Xiao and Leon J. Osterwell and Qing Wang and Mingshu Li},
title = {Dynamic Resource Scheduling in Disruption-Prone Software Development Environments},
booktitle = {Proceedings of the 13th International Conference on Fundamental Approaches to Software Engineering (FASE '10) Held as Part of the Joint European Conferences on Theory and Practice of Software (ETAPS '10)},
publisher = {Springer},
year = {2010},
volume = {6013},
pages = {107-122},
address = {Paphos, Cyprus},
month = {20-28 March}
}
|
||||||
| 2010.03.29 | Jose Ribeiro, Mario Zenha-Rela & Francisco Vega Esparcia-Alcazar, A.I.; Ekart, A.; Silva, S. & Dignum, S. (Hrsg.) | Enabling Object Reuse on Genetic Programming-based Approaches to Object-Oriented Evolutionary Testing | 2010 | Proceedings of the 12th European Conference on Genetic Programming (EuroGP '10), Istanbul, 7-9 April | Inproceedings | Testing and Debugging |
| Abstract: Recent research on search-based test data generation for Object-Oriented software has relied heavily on typed Genetic Programming for representing and evolving test data. However, standard typed Genetic Programming approaches do not allow Object Reuse; this paper proposes a novel methodology to overcome this limitation. Object Reuse means that one instance can be passed to multiple methods as an argument, or multiple times to the same method as arguments. In the context of Object-Oriented Evolutionary Testing, it enables the generation of test programs that exercise structures of the software under test that would not be reachable otherwise. Additionally, the experimental studies performed show that the proposed methodology is able to effectively increase the performance of the test data generation process. | ||||||
BibTeX:
@inproceedings{RibeiroZV10,
author = {Jose Ribeiro and Mario Zenha-Rela and Francisco Vega},
title = {Enabling Object Reuse on Genetic Programming-based Approaches to Object-Oriented Evolutionary Testing},
booktitle = {Proceedings of the 12th European Conference on Genetic Programming (EuroGP '10)},
publisher = {Springer},
year = {2010},
address = {Istanbul},
month = {7-9 April}
}
|
||||||
| 2010.03.28 | Muhammad Irfan Ullah | COPE+: A method for design and evaluation of product variants | 2009 | (SERG-2009-03), August | Techreport | |
| Abstract: Context: Successful software systems attract a large number of customers from diverse domains. These systems continuously evolve to accommodate feature requests of such diverse customer-base. At some point during system evolution, accommodating the features requests of all the customers in a single product is extremely challenging because of the diversity of these features. Additionally, this approach increases the complexity of the system architecture, hence degrading its quality properties such as modifiability, scalability, reliability, etc. Aim: It may be better to evolve the existing system into multiple product variants1, each addressing a specific customers’ segment. The single system facing feature requests already has an existing architecture. To implement each one of the proposed new features, a set of architectural components2 have to be modified. The new features should be added in the existing system in such a way that the number of components being impacted is minimized. Method: Proposed method COPE+ uses density-based clustering of customers to create their segments and corresponding product variants. An evolutionary algorithm is used to generate a sequence for implementing new features such that the impact of adding these features in the existing system architecture is minimized. A promising product portfolio (containing multiple product variants) is determined by comparing all of the customers’ proposed product portfolios with results of feature impact analysis on the architecture. Product variants within the selected portfolio are ranked based on the similarity of their respective behaviours represented as statecharts with that of the existing system. Results: COPE+ is evaluated on jEdit, a popular open-source text editor. It recommended two product variants based on input from customers and architecture impact analysis. Results were validated using a popular domain analysis method. Conclusions: The proposed method searches a potentially very large solutions space to propose product variants that meet customers’ expectations while minimizing the changes in the existing system architecture. |
||||||
BibTeX:
@techreport{Ullah09,
author = {Muhammad Irfan Ullah},
title = {COPE+: A method for design and evaluation of product variants},
year = {2009},
number = {SERG-2009-03},
month = {August},
url = {http://pages.cpsc.ucalgary.ca/~ullah/SERG%202009%2003.pdf}
}
|
||||||
| 2010.03.26 | Gal Katz & Doron Peled |
Code Mutation in Verification and Automatic Code Correction
[BibTeX] |
2010 | Proceedings of 16th International Conference on Tools and Algorithms for the Construction and Analysis of Systems (TACAS '10) Held as Part of the Joint European Conferences on Theory and Practice of Software (ETAPS '10), Vol. 6015, pp. 435-450, Paphos Cyprus, 20-28 March | Inproceedings | Software/Program Verification |
BibTeX:
@inproceedings{KatzP10,
author = {Gal Katz and Doron Peled},
title = {Code Mutation in Verification and Automatic Code Correction},
booktitle = {Proceedings of 16th International Conference on Tools and Algorithms for the Construction and Analysis of Systems (TACAS '10) Held as Part of the Joint European Conferences on Theory and Practice of Software (ETAPS '10)},
publisher = {Springer},
year = {2010},
volume = {6015},
pages = {435-450},
address = {Paphos, Cyprus},
month = {20-28 March}
}
|
||||||
| 2010.03.24 | Athanasios Tsakonas & Georgios Dounias Cordeiro, J.; Shishkov, B.; Ranchordas, A. & Helfert, M. (Hrsg.) | Application of Genetic Programming in Software Engineering Empirical Data Modelling | 2008 | Proceedings of the 3rd International Conference on Software and Data Technologies (ICSOFT '08), pp. 295-300, Porto Portugal, July 5-8 | Inproceedings | Management |
| Abstract: Research in software engineering data analysis has only recently incorporated computational intelligence methodologies. Among these approaches, genetic programming retains a remarkable position, facilitating symbolic regression tasks. In this paper, we demonstrate the effectiveness of the genetic programming paradigm, in two major software engineering duties, effort estimation and defect prediction. We examine data domains from both the commercial and the scientific sector, for each task. The proposed model is proved superior to past literature works. | ||||||
BibTeX:
@inproceedings{TsakonasD08,
author = {Athanasios Tsakonas and Georgios Dounias},
title = {Application of Genetic Programming in Software Engineering Empirical Data Modelling},
booktitle = {Proceedings of the 3rd International Conference on Software and Data Technologies (ICSOFT '08)},
publisher = {INSTICC Press},
year = {2008},
pages = {295-300},
address = {Porto, Portugal},
month = {July 5-8},
doi = {http://dx.doi.org/10.1.1.148.5003}
}
|
||||||
| 2010.03.17 | Athanasios Tsakonas & Georgios Dounias Fred, A.L.N. (Hrsg.) | Deriving Models for Software Project Effort Estimation by Means of Genetic Programming | 2009 | Proceedings of the International Conference on Knowledge Discovery and Information Retrieval (KDIR '09), pp. 34-42, Funchal Madeira Portugal, 6-8 October | Inproceedings | Management |
| Abstract: This paper presents the application of a computational intelligence methodology in effort estimation for software projects. Namely, we apply a genetic programming model for symbolic regression; aiming to produce mathematical expressions that (1) are highly accurate and (2) can be used for estimating the development effort by revealing relationships between the project’s features and the required work. We selected to investigate the effectiveness of this methodology into two software engineering domains. The system was proved able to generate models in the form of handy mathematical expressions that are more accurate than those found in literature. | ||||||
BibTeX:
@inproceedings{TsakonasD09,
author = {Athanasios Tsakonas and Georgios Dounias},
title = {Deriving Models for Software Project Effort Estimation by Means of Genetic Programming},
booktitle = {Proceedings of the International Conference on Knowledge Discovery and Information Retrieval (KDIR '09)},
publisher = {INSTICC Press},
year = {2009},
pages = {34-42},
address = {Funchal, Madeira, Portugal},
month = {6-8 October}
}
|
||||||
| 2010.03.12 | Eduardo Oliveira Costa, Aurora Trinidad Ramirez Pozo & Silvia Regina Vergilio | A Genetic Programming Approach for Software Reliability Modeling | 2010 | IEEE Transactions on Reliability, Vol. 59(1), pp. 222-230, March | Article | |
| Abstract: Genetic Programming (GP) models adapt better to the reliability curve when compared with other traditional, and non-parametric models. In a previous work, we conducted experiments with models based on time, and on coverage. We introduced an approach, named Genetic Programming and Boosting (GPB), that uses boosting techniques to improve the performance of GP. This approach presented better results than classical GP, but required ten times the number of executions. Therefore, we introduce in this paper a new GP based approach, named $(mu+lambda)$ GP. To evaluate this new approach, we repeated the same experiments conducted before. The results obtained show that the $(mu+lambda)$ GP approach presents the same cost of classical GP, and that there is no significant difference in the performance when compared with the GPB approach. Hence, it is an excellent, less expensive technique to model software reliability. | ||||||
BibTeX:
@article{CostaPV10,
author = {Eduardo Oliveira Costa and Aurora Trinidad Ramirez Pozo and Silvia Regina Vergilio},
title = {A Genetic Programming Approach for Software Reliability Modeling},
journal = {IEEE Transactions on Reliability},
year = {2010},
volume = {59},
number = {1},
pages = {222-230},
month = {March},
doi = {http://dx.doi.org/10.1109/TR.2010.2040759}
}
|
||||||
| 2010.03.12 | Hugh Leather, Edwin Bonilla & Michael O’Boyle | Automatic Feature Generation for Machine Learning Based Optimizing Compilation | 2009 | Proceedings of International Symposium on Code Generation and Optimization, pp. 81-91, Seattle WA USA, 22-25 March | Inproceedings | |
| Abstract: Recent work has shown that machine learning can automate and in some cases outperform hand crafted compiler optimizations. Central to such an approach is that machine learning techniques typically rely upon summaries or features of the program. The quality of these features is critical to the accuracy of the resulting machine learned algorithm; no machine learning method will work well with poorly chosen features. However, due to the size and complexity of programs, theoretically there are an infinite number of potential features to choose from. The compiler writer now has to expend effort in choosing the best features from this space. This paper develops a novel mechanism to automatically find those features which most improve the quality of the machine learned heuristic. The feature space is described by a grammar and is then searched with genetic programming and predictive modeling. We apply this technique to loop unrolling in GCC 4.3.1 and evaluate our approach on a Pentium 6. On a benchmark suite of 57 programs, GCC's hard-coded heuristic achieves only 3% of the maximum performance available, while a state of the art machine learning approach with hand-coded features obtains 59%. Our feature generation technique is able to achieve 76% of the maximum available speedup, outperforming existing approaches. | ||||||
BibTeX:
@inproceedings{LeatherBO09,
author = {Hugh Leather and Edwin Bonilla and Michael O’Boyle},
title = {Automatic Feature Generation for Machine Learning Based Optimizing Compilation},
booktitle = {Proceedings of International Symposium on Code Generation and Optimization},
publisher = {IEEE},
year = {2009},
pages = {81-91},
address = {Seattle, WA, USA},
month = {22-25 March},
doi = {http://dx.doi.org/10.1109/CGO.2009.21}
}
|
||||||
| 2010.03.12 | S. Paramasivam & M. Kumaran | Evaluation of GP Model for Software Reliability | 2009 | Proceedings of 2009 International Conference on Signal Processing Systems, pp. 758-761, Singapore, 15-17 May | Inproceedings | |
| Abstract: There has been a number of software reliability growth models (SRGMs) proposed in literature. Due to several reasons, such as violation of models' assumptions and complexity of models, the practitioners face difficulties in knowing which models to apply in practice. This paper presents a comparative evaluation of traditional models and use of genetic programming (GP) for modeling software reliability growth based on weekly fault count data of three different industrial projects. The motivation of using a GP approach is its ability to evolve a model based entirely on prior data without the need of making underlying assumptions. The results show the strengths of using GP for predicting fault count. | ||||||
BibTeX:
@inproceedings{ParamasivamK09,
author = {S. Paramasivam and M. Kumaran},
title = {Evaluation of GP Model for Software Reliability},
booktitle = {Proceedings of 2009 International Conference on Signal Processing Systems},
year = {2009},
pages = {758-761},
address = {Singapore},
month = {15-17 May},
doi = {http://dx.doi.org/10.1109/ICSPS.2009.104}
}
|
||||||
| 2010.03.11 | Huifang Cheng, Yongqiang Zhang & Jing Zhao | Improved Genetic Programming Model for Software Reliability | 2009 | Proceedings of International Asia Symposium on Intelligent Interaction and Affective Computing (ASIA '09), pp. 164-167, dec. | Inproceedings | |
| Abstract: Many existing software reliability models are based on some subjective assumptions those could be easily impractical in reality. Genetic Programming(GP for short) does not need some subjective assumption due to the basic characteristic of the data. Also, this method doesn't require to understand the inherent processes for failures, but to create models based on the given data for a "true" process during the specific modeling course, which can describe the software failure mechanisms more effectually and predict for the next failure times more exactly. This paper adopts improved GP(IGP for short) algorithm to hunting model, which can possibly reflect system behaviors, in the function spaces are compoundly constituted by the authorized function operators. Meanwhile, we have proved that IGP can obtain the best solution for failure behavior's variation rules from the convergence character of itself. Moreover, this paper makes use of Orthogonal experimental to adjust the parameters. | ||||||
BibTeX:
@inproceedings{ChengZZ09,
author = {Huifang Cheng and Yongqiang Zhang and Jing Zhao},
title = {Improved Genetic Programming Model for Software Reliability},
booktitle = {Proceedings of International Asia Symposium on Intelligent Interaction and Affective Computing (ASIA '09)},
year = {2009},
pages = {164--167},
month = {dec.},
doi = {http://dx.doi.org/10.1109/ASIA.2009.38}
}
|
||||||
| 2010.03.11 | Joseph Engler | Optimization of Test Engineering Utilizing Evolutionary Computation | 2009 | Proceedings of IEEE Autotestcon, pp. 447-452, Anaheim CA USA, 14-17 September | Inproceedings | Testing and Debugging |
| Abstract: Test engineering often experiences pressures to produce test stations and software in a short time frame with constrained budgets. Since test is a negative influence towards product costs, it is crucial to optimize the processes of test station software creation as well as the configuration of the test station itself. This paper introduces novel methodologies for optimized station configuration and automated station software generation. These two optimizations utilize evolutionary computation to automatically generate software for the test station and to offer optimal configurations of the station based upon testing requirements. Presented is a modified genetic programming algorithm for the creation of test station software (e.g. COTS software drivers). The genetic algorithm is improved through use of adaptive memory to recall historic schemas of high fitness. From the automated software generation an optimal station configuration is produced based upon the requirements of the testing to be performed. This system has been implemented in industry and an actual industrial case study is presented to illustrate the efficiency of this novel optimization technique. Comparisons with standard genetic programming techniques are offered to further illustrate the efficiency of this methodology. | ||||||
BibTeX:
@inproceedings{Engler09,
author = {Joseph Engler},
title = {Optimization of Test Engineering Utilizing Evolutionary Computation},
booktitle = {Proceedings of IEEE Autotestcon},
publisher = {IEEE},
year = {2009},
pages = {447-452},
address = {Anaheim, CA, USA},
month = {14-17 September},
doi = {http://dx.doi.org/10.1109/AUTEST.2009.5314025}
}
|
||||||
| 2010.03.11 | Manuel Mucientes, Manuel Lama & Miguel I. Couto | A Genetic Programming-based Algorithm for Composing Web Services | 2009 | Proceedings of 9th International Conference on Intelligent Systems Design and Applications (ISDA '09), pp. 379-384, Piza Italy, Nov 30-Dec. 2 | Inproceedings | |
| Abstract: Web services are interfaces that describe a collection of operations that are network-accessible through standardized Web protocols. When a required operation is not found, several services can be compounded to get a composite service that performs the desired task. To find this composite service, a search process over a huge search space must be performed. The algorithm that composes the services must select the adequate atomic processes and, also, must choose the correct way to combine them using the different available control structures. In this paper a genetic programming algorithm for Web services composition is presented. The algorithm has a context-free grammar to generate the valid structures of the composite services. Moreover, it includes a method to update the attributes of each node. A full experimental validation with a repository of 1,000 Web services has been done, showing a great performance as the algorithm finds a valid solution in all the tests. | ||||||
BibTeX:
@inproceedings{MucientesLC09,
author = {Manuel Mucientes and Manuel Lama and Miguel I. Couto},
title = {A Genetic Programming-based Algorithm for Composing Web Services},
booktitle = {Proceedings of 9th International Conference on Intelligent Systems Design and Applications (ISDA '09)},
year = {2009},
pages = {379--384},
address = {Piza, Italy},
month = {Nov 30-Dec. 2},
doi = {http://dx.doi.org/10.1109/ISDA.2009.155}
}
|
||||||
| 2010.03.11 | J.S.Pahariya, V. Ravi & M. Carr | Software Cost Estimation using Computational Intelligence Techniques | 2009 | Proceedings of World Congress on Nature and Biologically Inspired Computing (NaBIC '09), pp. 849 - 854, 9-11 December | Inproceedings | |
| Abstract: This paper presents computational intelligence techniques for software cost estimation. We proposed a new recurrent architecture for genetic programming (GP) in the process. Three linear ensembles based on (i) arithmetic mean (ii) geometric mean and (iii) harmonic mean are implemented. We also performed GP based feature selection. The efficacy of these techniques viz multiple linear regression, polynomial regression, support vector regression, classification and regression tree, multivariate adaptive regression splines, multilayer feedforward neural network, radial basis function neural network, counter propagation neural network, dynamic evolving neuro-fuzzy inference system, tree net, group method of data handling and genetic programming has been tested on the International Software Benchmarking Standards Group (ISBSG) release 10 dataset. Ten-fold cross validation is performed throughout the study. The results obtained from our experiments indicate that new recurrent architecture for genetic programming outperformed all the other techniques. | ||||||
BibTeX:
@inproceedings{PahariyaRC09,
author = {J.S.Pahariya and V. Ravi and M. Carr},
title = {Software Cost Estimation using Computational Intelligence Techniques},
booktitle = {Proceedings of World Congress on Nature and Biologically Inspired Computing (NaBIC '09)},
publisher = {IEEE},
year = {2009},
pages = {849 - 854},
month = {9-11 December},
doi = {http://dx.doi.org/10.1109/NABIC.2009.5393534}
}
|
||||||
| 2010.03.11 | Allan Tengg, Andreas Klausner & Bernhard Rinner | Task Allocation in Distributed Embedded Systems by Genetic Programming | 2007 | Proceedings of 8th International Conference on Parallel and Distributed Computing, Applications and Technologies (PDCAT '07), pp. 26-30, dec. | Inproceedings | Management |
BibTeX:
@inproceedings{TenggKR07,
author = {Allan Tengg and Andreas Klausner and Bernhard Rinner},
title = {Task Allocation in Distributed Embedded Systems by Genetic Programming},
booktitle = {Proceedings of 8th International Conference on Parallel and Distributed Computing, Applications and Technologies (PDCAT '07)},
year = {2007},
pages = {26-30},
month = {dec.},
doi = {http://dx.doi.org/10.1109/PDCAT.2007.41}
}
|
||||||
| 2010.03.11 | Yongqiang Zhang & Jingjie Yin | Software Reliability Model by AGP | 2008 | Proceedings of IEEE International Conference on Industrial Technology (ICIT '08), pp. 1-5, April | Inproceedings | Software/Program Verification |
| Abstract: To solve the problems of the incongruence of software reliability models and cast off the traditional models' multi-subjective assumptions, this paper adopts genetic programming evolution algorithm which has adaptive genetic operators (for short AGP) to establish software reliability model based on software failure time series. The individual of the population is according to the case of the fitness of the generation to adjust the probability of crossover and mutation by the sigmoid curve. By evaluating the data series of the software testing case in Armored Force Engineering Institute, the results sufficiently testify that the new AGP algorithm has better applicability and the validity of fitness and forecasting. Moreover, compared with standard genetic programming evolution algorithm, the new AGP algorithm has the better rapidity of convergence. Therefore, we can say that, this algorithm can be more effectively applied to software testing and ensured the validity of data. | ||||||
BibTeX:
@inproceedings{ZhangY08,
author = {Yongqiang Zhang and Jingjie Yin},
title = {Software Reliability Model by AGP},
booktitle = {Proceedings of IEEE International Conference on Industrial Technology (ICIT '08)},
year = {2008},
pages = {1-5},
month = {April},
doi = {http://dx.doi.org/10.1109/ICIT.2008.4608638}
}
|
||||||
| 2010.02.24 | Cagatay Catal & Banu Diri | Investigating the effect of dataset size, metrics sets, and feature selection techniques on software fault prediction problem | 2009 | Information Sciences, Vol. 179(8), pp. 1040-1058 | Article | Management |
| Abstract: Software quality engineering comprises of several quality assurance activities such as testing, formal verification, inspection, fault tolerance, and software fault prediction. Until now, many researchers developed and validated several fault prediction models by using machine learning and statistical techniques. There have been used different kinds of software metrics and diverse feature reduction techniques in order to improve the models' performance. However, these studies did not investigate the effect of dataset size, metrics set, and feature selection techniques for software fault prediction. This study is focused on the high-performance fault predictors based on machine learning such as Random Forests and the algorithms based on a new computational intelligence approach called Artificial Immune Systems. We used public NASA datasets from the PROMISE repository to make our predictive models repeatable, refutable, and verifiable. The research questions were based on the effects of dataset size, metrics set, and feature selection techniques. In order to answer these questions, there were defined seven test groups. Additionally, nine classifiers were examined for each of the five public NASA datasets. According to this study, Random Forests provides the best prediction performance for large datasets and Naive Bayes is the best prediction algorithm for small datasets in terms of the Area Under Receiver Operating Characteristics Curve (AUC) evaluation parameter. The parallel implementation of Artificial Immune Recognition Systems (AIRS2Parallel) algorithm is the best Artificial Immune Systems paradigm-based algorithm when the method-level metrics are used. | ||||||
BibTeX:
@article{CatalD09,
author = {Cagatay Catal and Banu Diri},
title = {Investigating the effect of dataset size, metrics sets, and feature selection techniques on software fault prediction problem},
journal = {Information Sciences},
year = {2009},
volume = {179},
number = {8},
pages = {1040-1058},
url = {http://www.sciencedirect.com/science/article/B6V0C-4V59W0J-1/2/f36c88158cc1733b6565a53baabec6ca},
doi = {DOI: 10.1016/j.ins.2008.12.001}
}
|
||||||
| 2010.02.24 | Emad A. El-Sebakhy | Software reliability identification using functional networks: A comparative study | 2009 | Expert Systems with Applications, Vol. 36(2, Part 2), pp. 4013 - 4020 | Article | Software/Program Verification |
| Abstract: Software engineering development has gradually become essential element in different aspects of the daily life and an important factor in numerous critical real-industry applications, such as, nuclear plants, medical monitoring control, real-time military, bioinformatics, oil and gas industry, and air traffic control. This paper proposes a functional network as a novel computational intelligence scheme for tracking and predicting the software reliability. Several applications are presented to illustrate this new intelligent system framework models. To demonstrate the usefulness of functional networks and the existing data mining schemes, we briefly describe the learning algorithm of functional networks associativity model in predicting the software reliability. Comparative studies will be carried out to compare the performance of functional networks with the most popular existing data mining techniques, such as, statistical regression multilayer feed forward neural networks, and support vector machines. The results show that the performance of functional networks is more reliable, stable, accurate, and outperforms other techniques. | ||||||
BibTeX:
@article{ElSebakhy09,
author = {Emad A. El-Sebakhy},
title = {Software reliability identification using functional networks: A comparative study},
journal = {Expert Systems with Applications},
year = {2009},
volume = {36},
number = {2, Part 2},
pages = {4013 - 4020},
url = {http://www.sciencedirect.com/science/article/B6V03-4S08JTH-3/2/d885ad1d577877efaaa67352cfa22ba5},
doi = {DOI: 10.1016/j.eswa.2008.02.053}
}
|
||||||
| 2010.02.24 | Michael Kuperberg & Fouad Omri | Using Heuristics to Automate Parameter Generation for Benchmarking of Java Methods | 2009 | Electronic Notes in Theoretical Computer Science, Vol. 253(1), pp. 57-75 | Article | |
| Abstract: Automated generation of method parameters is needed in benchmarking scenarios where manual or random generation of parameters are not suitable, do not scale or are too costly. However, for a method to execute correctly, the generated input parameters must not violate implicit semantical constraints, such as ranges of numeric parameters or the maximum length of a collection. For most methods, such constraints have no formal documentation, and human-readable documentation of them is usually incomplete and ambiguous. Random search of appropriate parameter values is possible but extremely ineffective and does not pay respect to such implicit constraints. Also, the role of polymorphism and of the method invocation targets is often not taken into account. Most existing approaches that claim automation focus on a single method and ignore the structure of the surrounding APIs where those exist. In this paper, we present HeuriGenJ, a novel heuristics-based approach for automatically finding legal and appropriate method input parameters and invocation targets, by approximating the implicit constraints imposed on them. Our approach is designed to support systematic benchmarking of API methods written in the Java language. We evaluate the presented approach by applying it to two frequently-used packages of the Java platform API, and demonstrating its coverage and effectiveness. | ||||||
BibTeX:
@article{KuperbergO09,
author = {Michael Kuperberg and Fouad Omri},
title = {Using Heuristics to Automate Parameter Generation for Benchmarking of Java Methods},
journal = {Electronic Notes in Theoretical Computer Science},
year = {2009},
volume = {253},
number = {1},
pages = {57-75},
url = {http://www.sciencedirect.com/science/article/B75H1-4X9W38T-5/2/b641acfa74041fd67e94bd041b447867},
doi = {DOI: 10.1016/j.entcs.2009.09.028}
}
|
||||||
| 2010.02.24 | Yanfu Li, Min Xie & T.N. Goh | A study of mutual information based feature selection for case based reasoning in software cost estimation | 2009 | Expert Systems with Applications, Vol. 36(3, Part 2), pp. 5921-5931 | Article | Management |
| Abstract: Software cost estimation is one of the most crucial activities in software development process. In the past decades, many methods have been proposed for cost estimation. Case based reasoning (CBR) is one of these techniques. Feature selection is an important preprocessing stage of case based reasoning. Most existing feature selection methods of case based reasoning are [`]wrappers' which can usually yield high fitting accuracy at the cost of high computational complexity and low explanation of the selected features. In our study, the mutual information based feature selection (MICBR) is proposed. This approach hybrids both [`]wrapper' and [`]filter' mechanism which is another kind of feature selector with much lower complexity than wrappers, and the features selected by filters are likely to be generalized to other conditions. The MICBR is then compared with popular feature selectors and the published works. The results show that the MICBR is an effective feature selector for case based reasoning by overcoming some of the limitations and computational complexities of other feature selection techniques in the field. | ||||||
BibTeX:
@article{LiXG09,
author = {Yanfu Li and Min Xie and T.N. Goh},
title = {A study of mutual information based feature selection for case based reasoning in software cost estimation},
journal = {Expert Systems with Applications},
year = {2009},
volume = {36},
number = {3, Part 2},
pages = {5921-5931},
url = {http://www.sciencedirect.com/science/article/B6V03-4T2DKTJ-1/2/d53ec83a06aef8d62fcfcee7d6112f7e},
doi = {http://dx.doi.org/10.1016/j.eswa.2008.07.062}
}
|
||||||
| 2010.02.24 | Cuauhtemoc Lopez-Martin | A fuzzy logic model for predicting the development effort of short scale programs based upon two independent variables | 2010 | Applied Soft Computing, Vol. In Press, Corrected Proof, pp. - | Article | Management |
| Abstract: Fuzzy models have been recently used for estimating the development effort of software projects and this practice could start with short scale programs. In this paper, new and changed (N&C) as well as reused code were gathered from small programs developed by 74 programmers using practices of the Personal Software Process; these data were used as input for a fuzzy model for estimating the development effort. Accuracy of this fuzzy model was compared with the accuracy of a statistical regression model. Two samples of 163 and 68 programs were used for verifying and validating respectively the models; the comparison criterion was the Mean Magnitude of Error Relative to the estimate (MMER). In verification and validation stages, fuzzy model kept a MMER lower or equal than that regression model and an accuracies comparison of the models based on ANOVA, did not show a statistically significant difference amongst their means. This result suggests that fuzzy logic could be used for predicting the effort of small programs based upon these two kinds of lines of code. | ||||||
BibTeX:
@article{LopezMartin10,
author = {Cuauhtemoc Lopez-Martin},
title = {A fuzzy logic model for predicting the development effort of short scale programs based upon two independent variables},
journal = {Applied Soft Computing},
year = {2010},
volume = {In Press, Corrected Proof},
pages = { - },
url = {http://www.sciencedirect.com/science/article/B6W86-4Y34V2F-2/2/cd6bc046520cac35998f0a6e516a214e},
doi = {DOI: 10.1016/j.asoc.2009.12.034}
}
|
||||||
| 2010.01.12 | Stefan Wappler, Joachim Wegener & André Baresel | Evolutionary testing of software with function-assigned flags | 2009 | Journal of Systems and Software, Vol. 82(11), pp. 1767-1779 | Article | Testing and Debugging |
| Abstract: Evolutionary structural testing, an approach to automatically generate relevant unit test data, encounters difficulties when the software being tested contains boolean variables. This issue, known as the flag problem, has been studied by many researchers. However, previous work does not address the issue of function-assigned flags which constitutes a special type of flag problem that often occurs in the context of object-orientation. This paper elaborates on a new approach to the flag problem that can also handle function-assigned flags while being applicable to the conventional flag problem, as well. It relies on a code transformation that leads to an improved fitness landscape which provides better guidance to the evolutionary search. We present seven case studies including a fitness landscape analysis and experimental results. The results show that the suggested code transformation improves evolutionary structural testing in the presence of function-assigned flags. | ||||||
BibTeX:
@article{WapplerWB09,
author = {Stefan Wappler and Joachim Wegener and André Baresel},
title = {Evolutionary testing of software with function-assigned flags},
journal = {Journal of Systems and Software},
year = {2009},
volume = {82},
number = {11},
pages = {1767-1779},
url = {http://www.sciencedirect.com/science/article/B6V0N-4WM74XJ-3/2/7a645e90daadd58bb644e5cbb1c1895d},
doi = {DOI: 10.1016/j.jss.2009.06.037}
}
|
||||||
| 2010.01.12 | Hong Zhu & Fevzi Belli | Advancing test automation technology to meet the challenges of model-based software testing - Guest editors' introduction to the special section of the Third IEEE International Workshop on Automation of Software Test (AST 2008) | 2009 | Information and Software Technology, Vol. 51(11), pp. 1485-1486 | Article | Testing and Debugging |
BibTeX:
@article{ZhuB09,
author = {Hong Zhu and Fevzi Belli},
title = {Advancing test automation technology to meet the challenges of model-based software testing - Guest editors' introduction to the special section of the Third IEEE International Workshop on Automation of Software Test (AST 2008)},
journal = {Information and Software Technology},
year = {2009},
volume = {51},
number = {11},
pages = {1485-1486},
url = {http://www.sciencedirect.com/science/article/B6V0B-4WPJ60X-2/2/b55900c8c8e9b3508ed0d126a7a06ea1},
doi = {DOI: 10.1016/j.infsof.2009.06.012}
}
|
||||||
| 2009.12.18 | Andrew F. Tappenden & James Miller | A Novel Evolutionary Approach for Adaptive Random Testing | 2009 | IEEE Transactions On Reliability, Vol. 58(4), pp. 619-633, December | Article | Testing and Debugging |
| Abstract: Random testing is a low cost strategy that can be applied to a wide range of testing problems. While the cost and straightforward application of random testing are appealing, these benefits must be evaluated against the reduced effectiveness due to the generality of the approach. Recently, a number of novel techniques, coined Adaptive Random Testing, have sought to increase the effectiveness of random testing by attempting to maximize the testing coverage of the input domain. This paper presents the novel application of an evolutionary search algorithm to this problem. The results of an extensive simulation study are presented in which the evolutionary approach is compared against the Fixed Size Candidate Set (FSCS), Restricted Random Testing (RRT), quasi-random testing using the Sobol sequence (Sobol), and random testing (RT) methods. The evolutionary approach was found to be superior to FSCS, RRT, Sobol, and RT amongst block patterns, the arena in which FSCS, and RRT have demonstrated the most appreciable gains in testing effectiveness. The results among fault patterns with increased complexity were shown to be similar to those of FSCS, and RRT; and showed a modest improvement over Sobol, and RT. A comparison of the asymptotic and empirical runtimes of the evolutionary search algorithm, and the other testing approaches, was also considered, providing further evidence that the application of an evolutionary search algorithm is feasible, and within the same order of time complexity as the other adaptive random testing approaches. | ||||||
BibTeX:
@article{TappendenM09,
author = {Andrew F. Tappenden and James Miller},
title = {A Novel Evolutionary Approach for Adaptive Random Testing},
journal = {IEEE Transactions On Reliability},
year = {2009},
volume = {58},
number = {4},
pages = {619-633},
month = {December},
doi = {http://dx.doi.org/10.1109/TR.2009.2034288}
}
|
||||||
| 2009.12.09 | Kobi Inkumsah & Tao Xie | Evacon: A Framework for Integrating Evolutionary and Concolic Testing for Object-Oriented Programs | 2007 | Proceedings of 22nd IEEE/ACM International Conference on Automated Software Engineering (ASE '07), pp. 425-428, November | Inproceedings | Testing and Debugging |
| Abstract: Achieving high structural coverage such as branch coverage in object oriented programs is an important and yet challenging goal due to two main challenges. First, some branches involve complex program logics and generating tests to cover them requires deep knowledge of the program structure and semantics. Second, covering some branches requires special method sequences to lead the receiver object or non-primitive arguments to specific desirable states. Previous work has developed the concolic testing technique (a combination of concrete and symbolic testing techniques) and the evolutionary testing technique to address these two challenges, respectively. However, neither technique was designed to address both challenges at the same time. To address the respective weaknesses of these two previous techniques, we propose a novel framework called Evacon that integrates evolutionary testing (used to search for desirable method sequences) and concolic testing (used to generate desirable method arguments). We have implemented our framework and applied it on six classes taken from the Java standard library and basic data structures. The experimental results show that the tests generated using our framework can achieve higher branch coverage than evolutionary testing or concolic testing alone. | ||||||
BibTeX:
@inproceedings{InkumsahX07,
author = {Kobi Inkumsah and Tao Xie},
title = {Evacon: A Framework for Integrating Evolutionary and Concolic Testing for Object-Oriented Programs},
booktitle = {Proceedings of 22nd IEEE/ACM International Conference on Automated Software Engineering (ASE '07)},
publisher = {ACM},
year = {2007},
pages = {425-428},
month = {November},
url = {http://www.csc.ncsu.edu/faculty/xie/publications/ase07-evacon.pdf},
doi = {http://dx.doi.org/10.1145/1321631.1321700}
}
|
||||||
| 2009.12.09 | Kobi Inkumsah & Tao Xie | Improving Structural Testing of Object-Oriented Programs via Integrating Evolutionary Testing and Symbolic Execution | 2008 | Proceedings of 23rd IEEE/ACM International Conference on Automated Software Engineering (ASE '08), pp. 297-306, September | Inproceedings | Testing and Debugging |
| Abstract: Achieving high structural coverage such as branch coverage in object-oriented programs is an important and yet challenging goal due to two main challenges. First, some branches involve complex program logics and generating tests to cover them requires deep knowledge of the program structure and semantics. Second, covering some branches requires special method sequences to lead the receiver object or non-primitive arguments to specific desirable states. Previous work has developed the symbolic execution technique and the evolutionary testing technique to address these two challenges, respectively. However, neither technique was designed to address both challenges at the same time. To address the respective weaknesses of these two previous techniques, we propose a novel framework called Evacon that integrates evolutionary testing (used to search for desirable method sequences) and symbolic execution (used to generate desirable method arguments). We have implemented our framework and applied it to test 13 classes previously used in evaluating white-box test generation tools. The experimental results show that the tests generated using our framework can achieve higher branch coverage than the ones generated by evolutionary testing, symbolic execution, or random testing within the same amount of time. | ||||||
BibTeX:
@inproceedings{InkumsahX08,
author = {Kobi Inkumsah and Tao Xie},
title = {Improving Structural Testing of Object-Oriented Programs via Integrating Evolutionary Testing and Symbolic Execution},
booktitle = {Proceedings of 23rd IEEE/ACM International Conference on Automated Software Engineering (ASE '08)},
year = {2008},
pages = {297-306},
month = {September},
url = {http://www.csc.ncsu.edu/faculty/xie/publications/ase08-evacon.pdf},
doi = {http://dx.doi.org/10.1109/ASE.2008.40}
}
|
||||||
| 2009.12.09 | Tao Xie, Nikolai Tillmann, Peli de Halleux & Wolfram Schulte | Fitness-Guided Path Exploration in Dynamic Symbolic Execution | 2008 | Proceedings of the 39th Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN '09)(MSR-TR-2008-123), September | Techreport | Testing and Debugging |
| Abstract: Dynamic symbolic execution is a structural testing technique that systematically explores feasible paths of the program under test by running the program with different test inputs. Its main goal is to find a set of test inputs that lead to the coverage of particular test targets, e.g., specific state- ments or violated assertions. In theory, it is undecidable whether a test target can be covered, and in practice the number of feasible paths explodes. Nevertheless, for many programs, heuristic search strategies can often cover a test target quickly by analyzing only a few potentially feasible paths. We propose a novel approach called Fitnex, a search strategy that uses state-dependent fitness values (computed through a fitness function) to guide path exploration. The fitness function measures how close an already discovered feasible path is to a particular test target. Our new search strategy gives paths with better fitness values higher priority in the search. As a result, the search needs to consider fewer paths to cover test targets faster. Our new fitness-guided search strategy can be integrated with other strategies that are effective for exploration problems where the fitness heuristic fails. We implemented the new approach in Pex, an automated structural testing tool developed at Microsoft Research for .NET programs. We evaluated the new approach on a set of micro-benchmark programs. The results show that the new approach is effective since it consistently achieves high code coverage faster than existing search strategies. | ||||||
BibTeX:
@techreport{XieTdS08,
author = {Tao Xie and Nikolai Tillmann and Peli de Halleux and Wolfram Schulte},
title = {Fitness-Guided Path Exploration in Dynamic Symbolic Execution},
booktitle = {Proceedings of the 39th Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN '09)},
year = {2008},
number = {MSR-TR-2008-123},
month = {September},
url = {http://research.microsoft.com/pubs/70629/tr-2008-123.pdf}
}
|
||||||
| 2009.12.09 | Tao Xie, Nikolai Tillmann, Peli de Halleux & Wolfram Schulte | Fitness-Guided Path Exploration in Dynamic Symbolic Execution | 2009 | Proceedings of the 39th Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN '09), Lisbon Portugal, June-July | Inproceedings | Testing and Debugging |
BibTeX:
@inproceedings{XieTdS09,
author = {Tao Xie and Nikolai Tillmann and Peli de Halleux and Wolfram Schulte},
title = {Fitness-Guided Path Exploration in Dynamic Symbolic Execution},
booktitle = {Proceedings of the 39th Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN '09)},
year = {2009},
address = {Lisbon, Portugal},
month = {June-July},
url = {http://www.csc.ncsu.edu/faculty/xie/publications/dsn09-fitnex.pdf}
}
|
||||||
| 2009.12.09 | Lu Zhang, Shan-Shan Hou, Chao Guo, Tao Xie & Hong Mei | Time-Aware Test-Case Prioritization using Integer Linear Programming | 2009 | Proceedings of International Conference on Software Testing and Analysis (ISSTA '09), Chicago IL USA, July | Inproceedings | Testing and Debugging |
| Abstract: Techniques for test-case prioritization re-order test cases to increase their rate of fault detection. When there is a fixed time budget that does not allow the execution of all the test cases, time-aware techniques for test-case prioritization may achieve a better rate of fault detection than traditional techniques for test-case prioritization. In this paper, we propose a novel approach to time-aware test-case prioritization using integer linear programming. To evaluate our approach, we performed experiments on two subject programs involving four techniques for our approach, two techniques for an approach to time-aware test-case prioritization based on genetic algorithms, and four traditional techniques for test-case prioritization. The empirical results indicate that two of our techniques outperform all the other techniques for the two subjects under the scenarios of both general and version-specific prioritization. The empirical results also indicate that some traditional techniques with lower analysis time cost for test-case prioritization may still perform competitively when the time budget is not quite tight. | ||||||
BibTeX:
@inproceedings{ZhangHGXM09,
author = {Lu Zhang and Shan-Shan Hou and Chao Guo and Tao Xie and Hong Mei},
title = {Time-Aware Test-Case Prioritization using Integer Linear Programming},
booktitle = {Proceedings of International Conference on Software Testing and Analysis (ISSTA '09)},
publisher = {ACM},
year = {2009},
address = {Chicago, IL, USA},
month = {July},
url = {http://www.csc.ncsu.edu/faculty/xie/publications/issta09-ilp.pdf},
doi = {http://dx.doi.org/10.1145/1572272.1572297}
}
|
||||||
| 2009.12.01 | Michael Bowman, Lionel C.Briand & Yvan Labiche | Multi-Objective Genetic Algorithm to Support Class Responsibility Assignment | 2007 | Proceedings of IEEE International Conference on Software Maintenance (ICSM '07), pp. 124-133, 2-5 October | Inproceedings | Design Tools and Techniques |
| Abstract: Class responsibility assignment is not an easy skill to acquire. Though there are many methodologies for assigning responsibilities to classes, they all rely on human judgment and decision making. Our objective is to provide decision-making help to re-assign methods and attributes to classes in a class diagram. Our solution is based on a multi-objective genetic algorithm (MOGA) and uses class coupling and cohesion measurement. Our MOGA takes as input a class diagram to be optimized and suggests possible improvements to it. The choice of a MOGA stems from the fact that there are typically many evaluation criteria that cannot be easily combined into one objective, and several alternative solutions are acceptable for a given OO domain model. This article presents our approach in detail, our decisions regarding the multi-objective genetic algorithm, and reports on a case study. Our results suggest that the MOGA can help correct suboptimal class responsibility assignment decisions. | ||||||
BibTeX:
@inproceedings{BowmanBL07,
author = {Michael Bowman and Lionel C.Briand and Yvan Labiche},
title = {Multi-Objective Genetic Algorithm to Support Class Responsibility Assignment},
booktitle = {Proceedings of IEEE International Conference on Software Maintenance (ICSM '07)},
publisher = {IEEE},
year = {2007},
pages = {124-133},
month = {2-5 October},
doi = {http://dx.doi.org/10.1109/ICSM.2007.4362625}
}
|
||||||
| 2009.12.01 | Yue Jia & Mark Harman | An Analysis and Survey of the Development of Mutation Testing | 2009 | (TR-09-06), September | Techreport | General Aspects and Survey |
| Abstract: Mutation Testing is a fault–based software testing technique that has been widely studied for over three decades. The literature on Mutation Testing has contributed a set of approaches, tools, developments and empirical results which have not been surveyed in detail until now. This paper provides a comprehensive analysis and survey of Mutation Testing. The paper also presents the results of several development trend analyses. These analyses provide evidence that Mutation Testing techniques and tools are reaching a state of maturity and applicability, while the topic of Mutation Testing itself is the subject of increasing interest. | ||||||
BibTeX:
@techreport{JiaH09b,
author = {Yue Jia and Mark Harman},
title = {An Analysis and Survey of the Development of Mutation Testing},
year = {2009},
number = {TR-09-06},
month = {September},
url = {http://www.dcs.kcl.ac.uk/pg/jiayue/repository/TR-09-06.pdf}
}
|
||||||
| 2009.12.01 | Zhuang Liu, Heqing Guo, Dong Li, Tao Han & Juanjuan Zhang | Solving Multi-objective and Fuzzy Multi-attributive Integrated Technique for QoS-Aware Web Service Selection | 2007 | Proceedings of International Conference on Wireless Communications, Networking and Mobile Computing (WiCom '07), pp. 735-739, 21-25 September | Inproceedings | Design Tools and Techniques |
| Abstract: The paper focuses on developing a new multiple criteria decision-making (MCDM) methodology for global web services selection based on QoS criteria, which integrates the multi-objective optimization with a fuzzy multi-attributive group decision-making (FMAGDM) technique. The study concentrates on the task of finding and then evaluating (or ranking) the finite number of pareto-optimal design alternatives (PODAs). A genetic algorithm based multi-objective optimization technique is employed for optimization purpose in terms of experts' opinions. Subjective attribute based aggregation technique for homogeneous and heterogeneous groups of experts is employed and used for dealing with the fuzzy opinion aggregation. Finally, we will discuss the integrated technique for Web services selection on global QoS optimization. | ||||||
BibTeX:
@inproceedings{LiuGLHZ07,
author = {Zhuang Liu and Heqing Guo and Dong Li and Tao Han and Juanjuan Zhang},
title = {Solving Multi-objective and Fuzzy Multi-attributive Integrated Technique for QoS-Aware Web Service Selection},
booktitle = {Proceedings of International Conference on Wireless Communications, Networking and Mobile Computing (WiCom '07)},
publisher = {IEEE},
year = {2007},
pages = {735-739},
month = {21-25 September},
doi = {http://dx.doi.org/10.1109/WICOM.2007.190}
}
|
||||||
| 2009.12.01 | Junli Wang & Yubing Hou | Optimal Web Service Selection based on Multi-Objective Genetic Algorithm | 2008 | Proceedings of International Symposium on Computational Intelligence and Design (ISCID '08), pp. 553-556, 17-18 October | Inproceedings | Design Tools and Techniques |
| Abstract: Considering that there are three aspects of constrains in the service selection process, such as control structure within a composition plan, relationship between concrete services, and tradeoff among multiple QoS indexes, a QoS based optimal Web services selection method by multi-objective genetic algorithm is presented. First we design a chromosome coding method to represent a feasible service selection solution, and then develop genetic operators and strategies for maintaining diversity of population and avoiding getting trapped in local optima. Experimental results show that within a finite number of evolving generations this algorithm can generate a set of nondominated Pareto optimal sol.utions which satisfy to user's QoS requirements. | ||||||
BibTeX:
@inproceedings{WangH08,
author = {Junli Wang and Yubing Hou},
title = {Optimal Web Service Selection based on Multi-Objective Genetic Algorithm},
booktitle = {Proceedings of International Symposium on Computational Intelligence and Design (ISCID '08)},
publisher = {IEEE},
year = {2008},
pages = {553-556},
month = {17-18 October},
doi = {http://dx.doi.org/10.1109/ISCID.2008.197}
}
|
||||||
| 2009.12.01 | Shin Yoo & Mark Harman | Test Data Augmentation: Generating New Test Data from Existing Test Data | 2008 | (TR-08-04) | Techreport | Testing and Debugging |
| Abstract: Existing automated test data generation techniques tend to start from scratch, implicitly assuming no pre-existing test data are available. However, this assumption may not always hold, and where it does not, there may be a missed opportunity; perhaps the pre-existing test cases could be used to assist the automated generation of additional test cases. This paper introduces search-based test data augmentation, a technique that can generate additional test data from existing test data using a meta-heuristic search algorithm. The proposed technique is compared to a widely studied test data generation approach in terms of both efficiency and effectiveness. The empirical evaluation shows that test data augmentation can be up to two orders of magnitude more efficient than existing test data generation techniques, while achieving comparable effectiveness in terms of structural coverage and mutation score. | ||||||
BibTeX:
@techreport{YooH08,
author = {Shin Yoo and Mark Harman},
title = {Test Data Augmentation: Generating New Test Data from Existing Test Data},
year = {2008},
number = {TR-08-04},
url = {http://www.dcs.kcl.ac.uk/pg/yooshi/papers/Yoo2008it.pdf}
}
|
||||||
| 2009.12.01 | Shin Yoo & Mark Harman | Regression Testing Minimisation, Selection and Prioritisation - A Survey | 2009 | (TR-09-09), October | Techreport | Testing and Debugging |
| Abstract: Regression testing is a testing activity that is performed to provide confidence that changes do not harm the existing behaviour of the software. Test suites tend to grow in size as software evolve, often making it too costly to execute entire test suites. A number of different approaches have been studied to maximise the value of the accrued test suite: minimisation, selection and prioritisation. Test suite minimisation seeks to eliminate redundant test cases in order to reduce the number of tests to run. Test case selection seeks to identify the test cases that are relevant to some set of recent changes. Test case prioritisation seeks to order test cases in such a way that early fault detection is maximised. This paper surveys each area of minimisation, selection and prioritisation technique and discusses open problems and potential directions for future research. | ||||||
BibTeX:
@techreport{YooH09,
author = {Shin Yoo and Mark Harman},
title = {Regression Testing Minimisation, Selection and Prioritisation - A Survey},
year = {2009},
number = {TR-09-09},
month = {October},
url = {http://www.dcs.kcl.ac.uk/pg/yooshi/papers/Yoo2009qv.pdf}
}
|
||||||
| 2009.12.01 | Shin Yoo & Mark Harman |
Using Hybrid Algorithm For Pareto Effcient Multi-Objective Test Suite Minimisation
[BibTeX] |
2010 | Journal of Systems and Software | Article | Testing and Debugging |
BibTeX:
@article{YooH10,
author = {Shin Yoo and Mark Harman},
title = {Using Hybrid Algorithm For Pareto Effcient Multi-Objective Test Suite Minimisation},
journal = {Journal of Systems and Software},
year = {2010}
}
|
||||||
| 2009.11.25 | Stephanie Forrest, ThanhVu Nguyen, Westley Weimer & Claire Le Goues | A Genetic Programming Approach to Automated Software Repair | 2009 | Proceedings of the 11th Annual Conference on Genetic and Evolutionary Computation (GECCO '09), pp. 947-954 | Inproceedings | Testing and Debugging |
| Abstract: Genetic programming is combined with program analysis methods to repair bugs in off-the-shelf legacy C programs. Fitness is defined using negative test cases that exercise the bug to be repaired and positive test cases that encode program requirements. Once a successful repair is discovered, structural differencing algorithms and delta debugging methods are used to minimize its size. Several modifications to the GP technique contribute to its success: (1) genetic operations are localized to the nodes along the execution path of the negative test case; (2) high-level statements are represented as single nodes in the program tree; (3) genetic operators use existing code in other parts of the program, so new code does not need to be invented. The paper describes the method, reviews earlier experiments that repaired 11 bugs in over 60,000 lines of code, reports results on new bug repairs, and describes experiments that analyze the performance and efficacy of the evolutionary components of the algorithm. | ||||||
BibTeX:
@inproceedings{ForrestNWG09,
author = {Stephanie Forrest and ThanhVu Nguyen and Westley Weimer and Claire Le Goues},
title = {A Genetic Programming Approach to Automated Software Repair},
booktitle = {Proceedings of the 11th Annual Conference on Genetic and Evolutionary Computation (GECCO '09)},
year = {2009},
pages = {947-954},
doi = {http://dx.doi.org/10.1145/1569901.1570031}
}
|
||||||
| 2009.11.02 | Sarah Al-Azzani & Rami Bahsoon | Semi-Automated Detection of Architectural Threats for Security Testing | 2009 | Proceedings of the doctoral symposium for ESEC/FSE on Doctoral symposium, pp. 25-26, Amsterdam The Netherlands | Inproceedings | Testing and Debugging |
BibTeX:
@inproceedings{Al-AzzaniB09,
author = {Sarah Al-Azzani and Rami Bahsoon},
title = {Semi-Automated Detection of Architectural Threats for Security Testing},
booktitle = {Proceedings of the doctoral symposium for ESEC/FSE on Doctoral symposium},
publisher = {ACM},
year = {2009},
pages = {25-26},
address = {Amsterdam, The Netherlands},
doi = {http://dx.doi.org/10.1145/1595782.1595792}
}
|
||||||
| 2009.11.02 | David W. Binkley, Mark Harman & Kiran Lakhotia | FlagRemover: A Testability Transformation for Transforming Loop Assigned Flags | 2009 | ACM Transactions on Software Engineering and Methodology, Vol. 2(3), pp. 110-146, June | Article | Testing and Debugging |
| Abstract: Search-Based Testing is a widely studied technique for automatically generating test inputs, with the aim of reducing the cost of software engineering activities that rely upon testing. However, search-based approaches degenerate to random testing in the presence of flag variables, because flags create spikes and plateaux in the fitness landscape. Both these features are known to denote hard optimization problems for all search-based optimization techniques. Several authors have studied flag removal transformations and fitness function refinements to address the issue of flags, but the problem of loop-assigned flags remains unsolved. This paper introduces a testability transformation along with a tool that transforms programs with loop-assigned flags into flag-free equivalents, so that existing search-based test data generation approaches can successfully be applied. The paper presents the results of an empirical study that demonstrates the effectiveness and efficiency of the testability transformation on programs including those made up of open source and industrial production code, as well as test data generation problems specifically created to denote hard optimization problems. | ||||||
BibTeX:
@article{BinkleyHL09,
author = {David W. Binkley and Mark Harman and Kiran Lakhotia},
title = {FlagRemover: A Testability Transformation for Transforming Loop Assigned Flags},
journal = {ACM Transactions on Software Engineering and Methodology},
year = {2009},
volume = {2},
number = {3},
pages = {110-146},
month = {June},
url = {http://www.dcs.kcl.ac.uk/staff/mark/tosem-issta04-jv.pdf}
}
|
||||||
| 2009.11.02 | Felipe Colares, Jerffeson Souza, Rafael Carmo, Clarindo Padua & Geraldo R. Mateus | A New Approach to the Software Release Planning | 2009 | Proceedings of the 23rd Brazilian Symposium on Software Engineering (SBES '09) | Inproceedings | Testing and Debugging |
| Abstract: This paper presents a new approach to the software release planning problem. This approach presents a mathematical formulation that takes into account several important aspects to this problem, such as stakeholders’ satisfaction, costs, deadlines, available resources, efforts needed, risks management and requirements interdependencies. Results from an experimental data set using a well-known metaheuristic show evidence that the proposed approach is very effective to model the features of this problem. Additionally, a comparison of human competitiveness with the proposed approach shows that the proposed approach outperforms human-based solutions. | ||||||
BibTeX:
@inproceedings{ColaresSCPM09,
author = {Felipe Colares and Jerffeson Souza and Rafael Carmo and Clarindo Padua and
|
||||||
| 2009.11.02 | Francisco de Jose | Sensitivity Analysis for Search-Based Software Project Management | 2008 | , August School: King's College London | Mastersthesis | Management |
| Abstract: This paper introduces a new perspective in the field of Software Engineering in pur- suance of a feasible alternative to the classical techniques of Software Project Man- agement through the use of Genetic Algorithms (GAs) in Sensitivity Analysis (SA). A beneficial solution is important from the point of view of the manager as a result of the increasing complexity of the software projects. The use of GAs in SA can provide new means to improve the initial schedule of a project and thereby tackle the classi- cal Project Scheduling Problem (PSP). The proposed implementation will develop an answer to the managers in their necessity to identify the most sensitive tasks as well as new ways to optimize their project in terms of duration. This paper describes the application of GAs in a process of resource allocation. Moreover, it analyses the impact of breaking dependencies within the definition of a project. The alternative detailed in this paper indicates the suitable direction of future work to achieve a proper results for an implementation of SA through the use of GAs to all the parameters of a project. In so doing that, the biggest negative impact due to the smallest alteration in one of the parameters can provide the most sensitive factors of the entire project. | ||||||
BibTeX:
@mastersthesis{deJose08,
author = {Francisco de Jose},
title = {Sensitivity Analysis for Search-Based Software Project Management},
school = {King's College London},
year = {2008},
month = {August},
url = {http://www.dcs.kcl.ac.uk/staff/mark/PastMScProjects2007/FranciscoDeJose.pdf}
}
|
||||||
| 2009.11.02 | Lokuge Nadisha de Silva | Search Algorithms For Ideal Optimal Mobile Phone Feature Sets | 2006 | , August School: Department of Computer Science, King's College London | Mastersthesis | Requirements/Specifications |
BibTeX:
@mastersthesis{deSilva06,
author = {Lokuge Nadisha de Silva},
title = {Search Algorithms For Ideal Optimal Mobile Phone Feature Sets},
school = {Department of Computer Science, King's College London},
year = {2006},
month = {August},
url = {http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.65.5900&rep=rep1&type=pdf}
}
|
||||||
| 2009.11.02 | Mark Harman | The Importance of Metrics in Search Based Software Engineering | 2006 | keynote talk at the Mensura Conference 2006 | Misc | Metrics |
BibTeX:
@misc{Harman06b,
author = {Mark Harman},
title = {The Importance of Metrics in Search Based Software Engineering},
year = {2006},
url = {http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.109.7448&rep=rep1&type=pdf}
}
|
||||||
| 2009.11.02 | Rachel Tzoref, Shmuel Ur & Elad Yom-Tov | Instrumenting Where It Hurts: An Automatic Concurrent Debugging Technique | 2007 | Proceedings of the 2007 International Symposium on Software Testing and Analysis, pp. 27-38, London United Kingdom | Inproceedings | Testing and Debugging |
| Abstract: As concurrent and distributive applications are becoming more common and debugging such applications is very difficult, practical tools for automatic debugging of concurrent applications are in demand. In previous work, we applied automatic debugging to noise-based testing of concurrent programs. The idea of noise-based testing is to increase the probability of observing the bugs by adding, using instrumentation, timing "noise" to the execution of the program. The technique of finding a small subset of points that causes the bug to manifest can be used as an automatic debugging technique. Previously, we showed that Delta Debugging can be used to pinpoint the bug location on some small programs. In the work reported in this paper, we create and evaluate two algorithms for automatically pinpointing program locations that are in the vicinity of the bugs on a number of industrial programs. We discovered that the Delta Debugging algorithms do not scale due to the non-monotonic nature of the concurrent debugging problem. Instead we decided to try a machine learning feature selection algorithm. The idea is to consider each instrumentation point as a feature, execute the program many times with different instrumentations, and correlate the features (instrumentation points) with the executions in which the bug was revealed. This idea works very well when the bug is very hard to reveal using instrumentation, correlating to the case when a very specific timing window is needed to reveal the bug. However, in the more common case, when the bugs are easy to find using instrumentation points ranked high by the feature selection algorithm is not high enough. We show that for these cases, the important value is not the absolute value of the evaluation of the feature but the derivative of that value along the program execution path. As a number of groups expressed interest in this research, we built an open infrastructure for automatic debugging algorithms for concurrent applications, based on noise injection based concurrent testing using instrumentation. The infrastructure is described in this paper. |
||||||
BibTeX:
@inproceedings{TzorefUY07,
author = {Rachel Tzoref and Shmuel Ur and Elad Yom-Tov},
title = {Instrumenting Where It Hurts: An Automatic Concurrent Debugging Technique},
booktitle = {Proceedings of the 2007 International Symposium on Software Testing and Analysis},
publisher = {ACM},
year = {2007},
pages = {27-38},
address = {London, United Kingdom},
doi = {http://dx.doi.org/10.1145/1273463.1273469}
}
|
||||||
| 2009.11.02 | Elad Yom-Tov, Rachel Tzoref, Shmuel Ur & S. Hoory | Automatic Debugging of Concurrent Programs through Active Sampling of Low Dimensional Random Projections | 2008 | Proceedings of the 23rd IEEE/ACM International Conference on Automated Software Engineering (ASE '08), pp. 307-316 | Inproceedings | Testing and Debugging |
| Abstract: Concurrent computer programs are fast becoming prevalent in many critical applications. Unfortunately, these programs are especially difficult to test and debug. Recently, it has been suggested that injecting random timing noise into many points within a program can assist in eliciting bugs within the program. Upon eliciting the bug, it is necessary to identify a minimal set of points that indicate the source of the bug to the programmer. In this paper, we pose this problem as an active feature selection problem. We propose an algorithm called the iterative group sampling algorithm that iteratively samples a lower dimensional projection of the program space and identifies candidate relevant points. We analyze the convergence properties of this algorithm. We test the proposed algorithm on several real-world programs and show its superior performance. Finally, we show the algorithms' performance on a large concurrent program. | ||||||
BibTeX:
@inproceedings{Yom-TovTUH08,
author = {Elad Yom-Tov and Rachel Tzoref and Shmuel Ur and S. Hoory},
title = {Automatic Debugging of Concurrent Programs through Active Sampling of Low Dimensional Random Projections},
booktitle = {Proceedings of the 23rd IEEE/ACM International Conference on Automated Software Engineering (ASE '08)},
publisher = {IEEE},
year = {2008},
pages = {307-316},
doi = {http://dx.doi.org/10.1109/ASE.2008.41}
}
|
||||||
| 2009.11.01 | Camila Loiola Brito Maia, Rafael Augusto Ferreira do Carmo, Fabrício Gomes de Freitas, Gustavo Augusto Lima de Campos & Jerffeson Teixeira de Souza | A Multi-Objective Approach For The Regression Test Case Selection Problem | 2009 | Proceedings of XLI Brazilian Symposium of Operational Research (XLI SBPO '09), pp. 1824-1835, Porto Seguro Bahia Brazil, 1-4 September | Inproceedings | Testing and Debugging |
| Abstract: When software is modified, some functionality that had been working can be affected. The reliable way to guarantee that the software is working correctly after those changes is to test the whole system again, but generally there is not sufficient time. Then, it is necessary to select significant test cases to be executed, in order to guarantee that the system is working as it should be. Although there are already works regarding on the regression test case selection problem, some important features which can influence in the test case selection are not considered in them. In this work, we state a new and more complete multi-objective formulation for this problem. The work also shows the results of the solution for the problem using a multi-objective genetic algorithm, comparing it with a random algorithm. | ||||||
BibTeX:
@inproceedings{Maiadddd09,
author = {Camila Loiola Brito Maia and Rafael Augusto Ferreira do Carmo and Fabrício Gomes de Freitas and Gustavo Augusto Lima de Campos and Jerffeson Teixeira de Souza},
title = {A Multi-Objective Approach For The Regression Test Case Selection Problem},
booktitle = {Proceedings of XLI Brazilian Symposium of Operational Research (XLI SBPO '09)},
year = {2009},
pages = {1824-1835},
address = {Porto Seguro, Bahia, Brazil},
month = {1-4 September},
url = {http://sobrapo.org.br/simposios/XLI-2009/XLI_SBPO_2009_artigos/artigos/56096.pdf}
}
|
||||||
| 2009.11.01 | L. Yang & Bryan F. Jones | Assimilation Exchange Based Software Integration | 2004 | 17th International Conference on Industrial and Engineering Applications of Artificial Intelligence and Expert Systems Innovations in Applied Artificial Intelligence IEA/AIE 2004, Vol. 3029, pp. 1229-1238 | Inproceedings | Design Tools and Techniques |
| Abstract: This paper describes an approach of integrating software with a minimum risk using Genetic Algorithms (GA). The problem was initially proposed by the need of sharing common software components among various departments within a same organization. The main contribution of this study is that the software integration problem is formulated as a search problem and solved using a GA. A case study was based on an on-going software integration project carried out in the Derbyshire Fire Rescue Service, and is used to illustrate the application of the approach. | ||||||
BibTeX:
@inproceedings{YangJ04,
author = {L. Yang and Bryan F. Jones},
title = {Assimilation Exchange Based Software Integration},
booktitle = {17th International Conference on Industrial and Engineering Applications of Artificial Intelligence and Expert Systems Innovations in Applied Artificial Intelligence IEA/AIE 2004},
year = {2004},
volume = {3029},
pages = {1229-1238},
url = {http://www.springerlink.com/content/0ucvnvlq7kmqdu9n/}
}
|
||||||
| 2009.10.30 | Mohammad Alrifai & Thomas Risse | Combining Global Optimization with Local Selection for Efficient QoS-aware Service Composition | 2009 | Proceedings of 18th International World Wide Web Conference (WWW '09), Madrid Spain, 20-24 April | Inproceedings | Design Tools and Techniques |
| Abstract: The run-time binding of web services has been recently put forward in order to support rapid and dynamic web ser- vice compositions. With the growing number of alternative web services that provide the same functionality but differ in quality parameters, the service composition becomes a decision problem on which component services should be se- lected such that user’s end-to-end QoS requirements (e.g. availability, response time) and preferences (e.g. price) are satisfied. Although very efficient, local selection strategy fails short in handling global QoS requirements. Solutions based on global optimization, on the other hand, can han- dle global constraints, but their poor performance renders them inappropriate for applications with dynamic and real- time requirements. In this paper we address this problem and propose a solution that combines global optimization with local selection techniques to benefit from the advan- tages of both worlds. The proposed solution consists of two steps: first, we use mixed integer programming (MIP) to find the optimal decomposition of global QoS constraints into local constraints. Second, we use distributed local se- lection to find the best web services that satisfy these local constraints. The results of experimental evaluation indicate that our approach significantly outperforms existing solu- tions in terms of computation time while achieving close-to- optimal results. | ||||||
BibTeX:
@inproceedings{AlrifaiR09,
author = {Mohammad Alrifai and Thomas Risse},
title = {Combining Global Optimization with Local Selection for Efficient QoS-aware Service Composition},
booktitle = {Proceedings of 18th International World Wide Web Conference (WWW '09)},
year = {2009},
address = {Madrid, Spain},
month = {20-24 April},
url = {http://www2009.org/proceedings/pdf/p881.pdf}
}
|
||||||
| 2009.10.30 | Lars Grunske | Identifying "Good" Architectural Design Alternatives with Multi-Objective Optimization Strategies | 2006 | Proceedings of the 28th International Conference on Software Engineering (ICSE '06), pp. 849-852, Shanghai China, 20-28 May | Inproceedings | Design Tools and Techniques |
| Abstract: Architecture trade-off analysis methods are appropriate techniques to evaluate design decisions and design alternatives with respect to conflicting quality requirements. However, the identification of good design alternatives is a time consuming task, which is currently performed manually. To automate this task, this paper proposes to use evolutionary algorithms and multi-objective optimization strategies based on architecture refactorings to identify a sufficient set of design alternatives. This approach will reduce development costs and improve the quality of the final system, because an automated and systematic search will identify more and better design alternatives. | ||||||
BibTeX:
@inproceedings{Grunske06,
author = {Lars Grunske},
title = {Identifying "Good" Architectural Design Alternatives with Multi-Objective Optimization Strategies},
booktitle = {Proceedings of the 28th International Conference on Software Engineering (ICSE '06)},
publisher = {ACM},
year = {2006},
pages = {849-852},
address = {Shanghai, China},
month = {20-28 May},
doi = {http://dx.doi.org/10.1145/1134285.1134431}
}
|
||||||
| 2009.08.20 | Yue Jia & Mark Harman | Higher Order Mutation Testing | 2009 | Information and Software Technology, Vol. 51(10), pp. 1379-1393, October | Article | Testing and Debugging |
| Abstract: This paper introduces a new paradigm for Mutation Testing, which we call Higher Order Mutation Testing (HOM Testing). Traditional Mutation Testing considers only first order mutants, created by the injection of a single fault. Often these first order mutants denote trivial faults that are easily killed. Higher order mutants are created by the insertion of two or more faults. The paper introduces the concept of a subsuming HOM; one that is harder to kill than the first order mutants from which it is constructed. By definition, subsuming HOMs denote subtle fault combinations. The paper reports the results of an empirical study of HOM Testing using ten programs, including several non trivial real-world subjects for which test suites are available. |
||||||
BibTeX:
@article{JiaH09,
author = {Yue Jia and Mark Harman},
title = {Higher Order Mutation Testing},
journal = {Information and Software Technology},
year = {2009},
volume = {51},
number = {10},
pages = {1379-1393},
month = {October},
doi = {http://dx.doi.org/10.1016/j.infsof.2009.04.016}
}
|
||||||
| 2009.08.07 | Per Kristian Lehre & Xin Yao | Crossover Can be Constructive when Computing Unique Input Output Sequences | 2008 | (CSR-08-08), September | Techreport | Testing and Debugging |
| Abstract: Unique input output (UIO) sequences have important applications in conformance testing of finite state machines (FSMs). Previous experimental and theoretical research has shown that evolutionary algorithms (EAs) can compute UIOs efficiently on many FSM instance classes, but fail on others. However, it has been unclear how and to what degree EA parameter settings influence the runtime on the UIO problem. This paper investigates the choice of acceptance criterion in the (1+1) EA and the use of crossover in the (μ+1) Steady State Genetic Algorithm. It is rigorously proved that changing these parameters can reduce the runtime from exponential to polynomial for some instance classes. | ||||||
BibTeX:
@techreport{LehreY08b,
author = {Per Kristian Lehre and Xin Yao},
title = {Crossover Can be Constructive when Computing Unique Input Output Sequences},
year = {2008},
number = {CSR-08-08},
month = {September},
url = {ftp://ftp.cs.bham.ac.uk/pub/tech-reports/2008/CSR-08-08.ps.gz}
}
|
||||||
| 2009.08.05 | Tianshi Chen, Per Kristian Lehre, Ke Tang & Xin Yao | When Is an Estimation of Distribution Algorithm Better than an Evolutionary Algorithm? | 2009 | Proceedings of the 10th IEEE Congress on Evolutionary Computation (CEC '09), pp. 1470-1477, Trondheim Norway, 18-21 May | Inproceedings | General Aspects and Survey |
| Abstract: Despite the wide-spread popularity of estimation of distribution algorithms (EDAs), there has been no theoretical proof that there exist optimisation problems where EDAs perform significantly better than traditional evolutionary algorithms. Here, it is proved rigorously that on a problem called SUBSTRING, a simple EDA called univariate marginal distribution algorithm (UMDA) is efficient, whereas the (1+1) EA is highly inefficient. Such studies are essential in gaining insight into fundamental research issues, i.e., what problem characteristics make an EDA or EA efficient, under what conditions an EDA is expected to outperform an EA, and what key factors are in an EDA that make it efficient or inefficient. |
||||||
BibTeX:
@inproceedings{ChenLTY09,
author = {Tianshi Chen and Per Kristian Lehre and Ke Tang and Xin Yao},
title = {When Is an Estimation of Distribution Algorithm Better than an Evolutionary Algorithm?},
booktitle = {Proceedings of the 10th IEEE Congress on Evolutionary Computation (CEC '09)},
publisher = {IEEE},
year = {2009},
pages = {1470-1477},
address = {Trondheim, Norway},
month = {18-21 May},
url = {http://nical.ustc.edu.cn/uploads/cec2009/P684.pdf}
}
|
||||||
| 2009.08.05 | Vivek Nallur, Rami Bahsoon & Xin Yao | Self-Optimizing Architecture for Ensuring Quality Attributes in the Cloud | 2009 | Proceedings of the 7th Working IEEE/IFIP Conference on Software Architecture (WICSA '09), Cambridge UK, 14-17 September | Inproceedings | Design Tools and Techniques |
| Abstract: We describe various challenges in ensuring Quality Attributes (QA) of applications hosted in the cloud and hence the perceived quality of service of the cloud as a whole. We advocate a self-management/optimisation architecturedriven approach to ensure that Quality Attributes are met. We discuss the limitations of current approaches to selfmanaging architecture. We propose a novel approach, which exploits the El Farol problem as a modelling mechanism for QAs in architectures of applications in the cloud. The approach uses Service Level Agreements (SLA) and Utility Theory to direct the self-optimization. We conclude by looking at directions for further work. |
||||||
BibTeX:
@inproceedings{NallurBY09,
author = {Vivek Nallur and Rami Bahsoon and Xin Yao},
title = {Self-Optimizing Architecture for Ensuring Quality Attributes in the Cloud},
booktitle = {Proceedings of the 7th Working IEEE/IFIP Conference on Software Architecture (WICSA '09)},
year = {2009},
address = {Cambridge, UK},
month = {14-17 September},
url = {http://www.cs.bham.ac.uk/~vxn851/research/documents/wicsa09.pdf}
}
|
||||||
| 2009.08.05 | Pietro Simone Oliveto, Per Kristian Lehre & Frank Neumann | Theoretical Analysis of Rank-based Mutation - Combining Exploration and Exploitation | 2009 | Proceedings of the 10th IEEE Congress on Evolutionary Computation (CEC '09), pp. 1455-1462, Trondheim Norway, 18-21 May | Inproceedings | General Aspects and Survey |
| Abstract: Parameter setting is an important issue in the design of evolutionary algorithms. Recently, experimental work has pointed out that it is often not useful to work with a fixed mutation rate. Therefore it was proposed that the population be ranked according to fitness and the mutation rate of an individual should depend on its rank. The claim is that this allows the algorithm to explore new regions in the search space as well as progress quickly towards optimal solutions. Complementing the experimental investigations, we examine the proposed approach by presenting rigorous theoretical analyses which point out the differences of rank-based mutation compared to a standard approach using a fixed mutation rate. To this end we theoretically explain the behaviour of rank-based mutation on various fitness landscapes proposed in the experimental work and present new significant classes of functions where the use of rank-based mutation may be both beneficial or detrimental compared to fixed mutation strategies. | ||||||
BibTeX:
@inproceedings{OlivetoLN09,
author = {Pietro Simone Oliveto and Per Kristian Lehre and Frank Neumann},
title = {Theoretical Analysis of Rank-based Mutation - Combining Exploration and Exploitation},
booktitle = {Proceedings of the 10th IEEE Congress on Evolutionary Computation (CEC '09)},
publisher = {IEEE},
year = {2009},
pages = {1455-1462},
address = {Trondheim, Norway},
month = {18-21 May},
url = {http://www2.computer.org/portal/web/csdl/doi/10.1109/CEC.2009.4983114}
}
|
||||||
| 2009.08.05 | Philipp Rohlfshagen, Per Kristian Lehre & Xin Yao | Dynamic Evolutionary Optimisation: An Analysis of Frequency and Magnitude of Change | 2009 | Proceedings of the 11th Annual Conference on Genetic and Evolutionary Computation, pp. 1713-1720 (Best Paper Award), Montreal Québec Canada, 8-12 July | Inproceedings | General Aspects and Survey |
| Abstract: In this paper, we rigorously analyse how the magnitude and frequency of change may affect the performance of the algorithm (1+1) EAdyn on a set of artificially designed pseudo-Boolean functions, given a simple but well-defined dynamic framework. We demonstrate some counter-intuitive scenarios that allow us to gain a better understanding of how the dynamics of a function may affect the runtime of an algorithm. In particular, we present the function Magnitude, where the time it takes for the (1+1) EAdyn to relocate the global optimum is less than n2log n (i.e., efficient) with overwhelming probability if the magnitude of change is large. For small changes of magnitude, on the other hand, the expected time to relocate the global optimum is eΩ(n) (i.e., highly inefficient). Similarly, the expected runtime of the (1+1) EAdyn on the function Balance is O(n2) (efficient) for a high frequencies of change and nΩ(√n) (highly inefficient) for low frequencies of change. These results contribute towards a better understanding of dynamic optimisation problems in general and show how traditional analytical methods may be applied in the dynamic case. | ||||||
BibTeX:
@inproceedings{RohlfshagenLY09,
author = {Philipp Rohlfshagen and Per Kristian Lehre and Xin Yao},
title = {Dynamic Evolutionary Optimisation: An Analysis of Frequency and Magnitude of Change},
booktitle = {Proceedings of the 11th Annual Conference on Genetic and Evolutionary Computation},
publisher = {ACM},
year = {2009},
pages = {1713-1720 (Best Paper Award)},
address = {Montreal, Québec, Canada},
month = {8-12 July},
doi = {http://dx.doi.org/10.1145/1569901.1570131}
}
|
||||||
| 2009.08.05 | Zai Wang, Tianshi Chen, Ke Tang & Xin Yao | A Multi-objective Approach to Redundancy Allocation Problem in Parallel-series Systems | 2009 | Proceedings of the 10th IEEE Congress on Evolutionary Computation (CEC '09), pp. 582-589, Trondheim Norway, 18-21 May | Inproceedings | Management |
| Abstract: The Redundancy Allocation Problem (RAP) is a kind of reliability optimization problems. It involves the selection of components with appropriate levels of redundancy or reliability to maximize the system reliability under some predefined constraints. We can formulate the RAP as a combinatorial problem when just considering the redundancy level, while as a continuous problem when considering the reliability level. The RAP employed in this paper is that kind of combinatorial optimization problems. During the past thirty years, there have already been a number of investigations on RAP. However, these investigations often treat RAP as a single objective problem with the only goal to maximize the system reliability (or minimize the designing cost). In this paper, we regard RAP as a multi-objective optimization problem: the reliability of the system and the corresponding designing cost are considered as two different objectives. Consequently, we can utilize a classical Multi-objective Evolutionary Algorithm (MOEA), named Non-dominated Sorting Genetic Algorithm II (NSGA-II), to cope with this multi-objective redundancy allocation problem (MORAP) under a number of constraints. The experimental results demonstrate that the multi-objective evolutionary approach can provide more promising solutions in comparison with two widely used single-objective approaches on two parallel-series systems which are frequently studied in the field of reliability optimization. | ||||||
BibTeX:
@inproceedings{WangCTY09,
author = {Zai Wang and Tianshi Chen and Ke Tang and Xin Yao},
title = {A Multi-objective Approach to Redundancy Allocation Problem in Parallel-series Systems},
booktitle = {Proceedings of the 10th IEEE Congress on Evolutionary Computation (CEC '09)},
publisher = {IEEE},
year = {2009},
pages = {582-589},
address = {Trondheim, Norway},
month = {18-21 May},
url = {http://nical.ustc.edu.cn/uploads/cec2009/P252.pdf}
}
|
||||||
| 2009.08.05 | David R. White & Simon Poulding | A Rigorous Evaluation of Crossover and Mutation in Genetic Programming | 2009 | Proceedings of the 12th European Conference on Genetic Programming (EuroGP '09), Vol. 5481, pp. 220-231, Tübingen Germany, 15-17 April | Inproceedings | General Aspects and Survey |
| Abstract: The role of crossover and mutation in Genetic Programming (GP) has been the subject of much debate since the emergence of the field. In this paper, we contribute new empirical evidence to this argument using a rigorous and principled experimental method applied to six problems common in the GP literature. The approach tunes the algorithm parameters to enable a fair and objective comparison of two different GP algorithms, the first using a combination of crossover and reproduction, and secondly using a combination of mutation and reproduction. We find that crossover does not significantly outperform mutation on most of the problems examined. In addition, we demonstrate that the use of a straightforward Design of Experiments methodology is effective at tuning GP algorithm parameters. | ||||||
BibTeX:
@inproceedings{WhiteP09,
author = {David R. White and Simon Poulding},
title = {A Rigorous Evaluation of Crossover and Mutation in Genetic Programming},
booktitle = {Proceedings of the 12th European Conference on Genetic Programming (EuroGP '09)},
publisher = {Springer},
year = {2009},
volume = {5481},
pages = {220-231},
address = {Tübingen, Germany},
month = {15-17 April},
doi = {http://dx.doi.org/10.1007/978-3-642-01181-8_19}
}
|
||||||
| 2009.08.04 | Christos Baloukas, Jose L. Risco-Martin, David Atienza, Christophe Poucet, Lazaros Papadopoulos, Stylianos Mamagkakis, Dimitrios Soudris, J. Ignacio Hidalgo, Francky Catthoor & Juan Lanchares | Optimization Methodology of Dynamic Data Structures Based on Genetic Algorithms for Multimedia Embedded Systems | 2009 | Journal of Systems and Software (Special Issue: Selected papers from the 2008 IEEE Conference on Software Engineering Education and Training (CSEET '08)), Vol. 82(4), pp. 590-602, April | Article | |
| Abstract: Modern multimedia application exhibit high resource utilization. In order to efficiently run this kind of applications in embedded systems, the dynamic memory subsystem needs to be optimized. A key role in this optimization is played by the dynamic data structures that reside in every real-life application. This paper presents a novel and automated way to optimize dynamic data structures. The search space is pruned using genetic algorithms that converge to the best multilayered data structure implementation for the targeted applications. | ||||||
BibTeX:
@article{BaloukasRAPPMSHCL09,
author = {Christos Baloukas and Jose L. Risco-Martin and David Atienza and Christophe Poucet and Lazaros Papadopoulos and Stylianos Mamagkakis and Dimitrios Soudris and J. Ignacio Hidalgo and Francky Catthoor and Juan Lanchares},
title = {Optimization Methodology of Dynamic Data Structures Based on Genetic Algorithms for Multimedia Embedded Systems},
journal = {Journal of Systems and Software (Special Issue: Selected papers from the 2008 IEEE Conference on Software Engineering Education and Training (CSEET '08))},
year = {2009},
volume = {82},
number = {4},
pages = {590-602},
month = {April},
doi = {http://dx.doi.org/10.1016/j.jss.2008.08.032}
}
|
||||||
| 2009.08.04 | Per Kristian Lehre & Xin Yao | On the Impact of the Mutation-Selection Balance on the Runtime of Evolutionary Algorithms | 2009 | Proceedings of the 10th ACM SIGEVO Workshop on Foundations of Genetic Algorithms, pp. 47-58, Orlando Florida USA, 9-11 January | Inproceedings | General Aspects and Survey |
| Abstract: The interplay between the mutation operator and the selection mechanism plays a fundamental role in the behaviour of evolutionary algorithms. However, this interplay is still not completely understood. This paper presents a rigorous runtime analysis of a non-elitistic population based evolutionary algorithm that uses the linear ranking selection mechanism. The analysis focuses on how the balance between parameter η controlling the selection pressure in linear ranking selection, and parameter χ controlling the bit-wise mutation rate impacts the expected runtime. The results point out situations where a correct balance between selection pressure and mutation rate is essential for finding the optimal solution in polynomial time. In particular, it is shown that there exist fitness functions which under a certain assumption can be solved in polynomial time if the ratio between parameters η and χ is appropriately tuned to the problem instance class, but where a small change in this ratio can increase the runtime exponentially. Furthermore, it is shown that the appropriate parameter choice depends on the characteristics of the fitness function. Hence there does in general not exists a problem-independent optimal balance between mutation rate and selection pressure. The results are obtained using new techniques based on branching processes. |
||||||
BibTeX:
@inproceedings{LehreY09b,
author = {Per Kristian Lehre and Xin Yao},
title = {On the Impact of the Mutation-Selection Balance on the Runtime of Evolutionary Algorithms},
booktitle = {Proceedings of the 10th ACM SIGEVO Workshop on Foundations of Genetic Algorithms},
publisher = {ACM},
year = {2009},
pages = {47-58},
address = {Orlando, Florida, USA},
month = {9-11 January},
doi = {http://dx.doi.org/10.1145/1527125.1527133}
}
|
||||||
| 2009.08.04 | Jonathan Tate, Benjamin Woolford-Lim, Iain Bate & Xin Yao | Comparing Design of Experiments and Evolutionary Approaches to Multi-Objective Optimisation of Sensornet Protocols | 2009 | Proceedings of the 10th IEEE Congress on Evolutionary Computation (CEC '09), pp. 1137-1144, Trondheim Norway, 18-21 May | Inproceedings | Network Protocols |
| Abstract: The lifespan, and hence utility, of sensornets is limited by the energy resources of individual motes. Network designers seek to maximise energy efficiency while maintaining an acceptable network Quality of Service. However, the interactions between multiple tunable protocol parameters and multiple sensornet performance metrics are generally complex and unknown. In this paper we address this multi-dimensional optimisation problem by two distinct approaches. Firstly, we apply a Design Of Experiments approach to obtain a generalised linear interaction model, and from this derive an estimated near-optimal solution. Secondly, we apply the Two-Archive evolutionary algorithm to improve solution quality for a specific problem instance. We demonstrate that, whereas the first approach yields a more generally applicable solution, the second approach yields a broader range of viable solutions at potentially lower experimental cost. | ||||||
BibTeX:
@inproceedings{TateWBY09,
author = {Jonathan Tate and Benjamin Woolford-Lim and Iain Bate and Xin Yao},
title = {Comparing Design of Experiments and Evolutionary Approaches to Multi-Objective Optimisation of Sensornet Protocols},
booktitle = {Proceedings of the 10th IEEE Congress on Evolutionary Computation (CEC '09)},
publisher = {IEEE},
year = {2009},
pages = {1137-1144},
address = {Trondheim, Norway},
month = {18-21 May},
url = {http://www.cs.york.ac.uk/rts/papers_db_keyed.php?key=R:Tate:2009a}
}
|
||||||
| 2009.07.30 | D. Azar, H. Harmanani & R. Korkmaz | A Hybrid Heuristic Approach to Optimize Rule-Based Software Quality Estimation Models | 2009 | Information and Software Technology, Vol. 51(9), pp. 1365-1376, September | Article | Management |
| Abstract: Software quality is defined as the degree to which a software component or system meets specified requirements and specifications. Assessing software quality in the early stages of design and development is crucial as it helps reduce effort, time and money. However, the task is difficult since most software quality characteristics (such as maintainability, reliability and reusability) cannot be directly and objectively measured before the software product is deployed and used for a certain period of time. Nonetheless, these software quality characteristics can be predicted from other measurable software quality attributes such as complexity and inheritance. Many metrics have been proposed for this purpose. In this context, we speak of estimating software quality characteristics from measurable attributes. For this purpose, software quality estimation models have been widely used. These take different forms: statistical models, rule-based models and decision trees. However, data used to build such models is scarce in the domain of software quality. As a result, the accuracy of the built estimation models deteriorates when they are used to predict the quality of new software components. In this paper, we propose a search-based software engineering approach to improve the prediction accuracy of software quality estimation models by adapting them to new unseen software products. The method has been implemented and favorable result comparisons are reported in this work. | ||||||
BibTeX:
@article{AzarHK09,
author = {D. Azar and H. Harmanani and R. Korkmaz},
title = {A Hybrid Heuristic Approach to Optimize Rule-Based Software Quality Estimation Models},
journal = {Information and Software Technology},
year = {2009},
volume = {51},
number = {9},
pages = {1365-1376},
month = {September},
doi = {http://dx.doi.org/10.1016/j.infsof.2009.05.003}
}
|
||||||
| 2009.07.30 | Raquel Blanco, José García-Fanjul & Javier Tuya | A First Approach to Test Case Generation for BPEL Compositions of Web Services Using Scatter Search | 2009 | Proceedings of the IEEE International Conference on Software Testing, Verification, and Validation Workshops (ICSTW '09), pp. 131-140, Denver Colorado USA, 1-4 April | Inproceedings | Testing and Debugging |
| Abstract: A challenging part of Software Testing entails the generation of test cases, which cost can be reduced by means of the use of techniques for automating this task. In this paper we present an approach based on the metaheuristic technique Scatter Search for the automatic test case generation of the BPEL business process. A transition coverage criterion is used as adequacy criterion. | ||||||
BibTeX:
@inproceedings{BlancoGT09,
author = {Raquel Blanco and José García-Fanjul and Javier Tuya},
title = {A First Approach to Test Case Generation for BPEL Compositions of Web Services Using Scatter Search},
booktitle = {Proceedings of the IEEE International Conference on Software Testing, Verification, and Validation Workshops (ICSTW '09)},
publisher = {IEEE},
year = {2009},
pages = {131-140},
address = {Denver, Colorado, USA},
month = {1-4 April},
doi = {http://dx.doi.org/10.1109/ICSTW.2009.24}
}
|
||||||
| 2009.07.30 | Mark Harman, S. Afshin Mansouri & Yuanyuan Zhang | Search Based Software Engineering: A Comprehensive Analysis and Review of Trends Techniques and Applications | 2009 | (TR-09-03), April | Techreport | General Aspects and Survey |
| Abstract: In the past five years there has been a dramatic increase in work on Search Based Software Engineering (SBSE), an approach to software engineering in which search based optimisation algorithms are used to address problems in Software Engineering. SBSE has been applied to problems throughout the Software Engineering lifecycle, from requirements and project planning to maintenance and re-engineering. The approach is attractive because it offers a suite of adaptive automated and semi-automated solutions in situations typified by large complex problem spaces with multiple competing and conflicting objectives. This paper provides a review and classification of literature on SBSE. The paper identifies research trends and relationships between the techniques applied and the applications to which they have been applied and highlights gaps in the literature and avenues for further research. |
||||||
BibTeX:
@techreport{HarmanMZ09,
author = {Mark Harman and S. Afshin Mansouri and Yuanyuan Zhang},
title = {Search Based Software Engineering: A Comprehensive Analysis and Review of Trends Techniques and Applications},
year = {2009},
number = {TR-09-03},
month = {April},
url = {http://www.dcs.kcl.ac.uk/technical-reports/papers/TR-09-03.pdf}
}
|
||||||
| 2009.07.29 | Florentin Ipate & Raluca Lefticaru | Genetic Model based Testing: a Framework and a Case Study | 2008 | Romanian Journal of Information Science and Technology, Vol. 11(3), pp. 209-227 | Article | Testing and Debugging |
| Abstract: The application of metaheuristic search techniques in test data generation has been extensively investigated in recent years. Most studies, however, have concentrated on the application of such techniques in structural testing. The use of search-based techniques in functional testing is less frequent, the main cause being the implicit nature of the specification. On the other hand, such techniques could be employed in functional test generation if an explicit, graph-based, model, that describes the algorithm used to produce the required results, existed. However, the process of creating and validating such a model is usually a highly-specialized and time consuming task, which quite often cannot be economically justified in the case of non-safety-critical applications. In this paper we propose a framework for genetic model based testing. Under this framework, a graph-based model of the system under test is built using a genetic algorithm. Test data is then derived from the resulting model using (possibly) metaheuristic search techniques to provide the desired level of coverage. The approach is illustrated with a case study: an array sorting program. | ||||||
BibTeX:
@article{IpateL08,
author = {Florentin Ipate and Raluca Lefticaru},
title = {Genetic Model based Testing: a Framework and a Case Study},
journal = {Romanian Journal of Information Science and Technology},
year = {2008},
volume = {11},
number = {3},
pages = {209-227},
url = {http://www.imt.ro/romjist/Volum11/Number11_3/01-Ipate.htm}
}
|
||||||
| 2009.07.29 | Raluca Lefticaru & Florentin Ipate | A Comparative Landscape Analysis of Fitness Functions for Search-based Testing | 2008 | Proceedings of the 10th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing (SYNASC 2008), pp. 201-208 | Inproceedings | Testing and Debugging |
| Abstract: Landscape analysis of fitness functions is an important topic. This paper makes an attempt to characterize the search problems associated with the fitness functions used in search-based testing, employing the following measures: diameter, autocorrelation and fitness distance correlation. In a previous work, a general form of objective functions for structural search-based software testing was tailored for state-based testing. A comparison is performed in this paper between the general fitness functions and some problem-specific fitness functions, taking into account their performance with different search methods. | ||||||
BibTeX:
@inproceedings{LefticaruI08c,
author = {Raluca Lefticaru and Florentin Ipate},
title = {A Comparative Landscape Analysis of Fitness Functions for Search-based Testing},
booktitle = {Proceedings of the 10th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing (SYNASC 2008)},
publisher = {IEEE},
year = {2008},
pages = {201-208}
}
|
||||||
| 2009.07.29 | Raluca Lefticaru, Florentin Ipate & Cristina Tudose | Automated Model Design using Genetic Algorithms and Model Checking | 2009 | Proceedings of the 4th Balkan Conference in Informatics (BCI '09) | Inproceedings | Software/Program Verification |
| Abstract: In recent years there has been a growing interest in applying metaheuristic search algorithms in model-checking. On the other hand, model checking has been used far less in other software engineering activities, such as model design and software testing. In this paper we propose an automated model design strategy, by integrating genetic algorithms (used for model generation) with model checking (used to evaluate the fitness, which takes into account the satisfied/unsatisfied specifications). Genetic programming is the process of evolving computer programs, by using a fitness value determined by the program’s ability to perform a given computational task. This evaluation is based on the output produced by the program for a set of training input samples. The consequence is that the evolved program can function well for the sample set used for training, but there is no guarantee that the program will behave properly for every possible input. Instead of training samples, in this paper we use a model checker, which verifies if the generated model satisfies the specifications. This approach is empirically evaluated for the generation of finite state-based models. Furthermore, the previous fitness function proposed in the literature, that takes into account only the number of unsatisfied specifications, presents plateaux and so does not offer a good guidance for the search. This paper proposes and evaluates the performance of a number of new fitness functions, which, by taking also into account the counterexamples provided by the model checker, improve the success rate of the genetic algorithm. | ||||||
BibTeX:
@inproceedings{LefticaruIT09,
author = {Raluca Lefticaru and Florentin Ipate and Cristina Tudose},
title = {Automated Model Design using Genetic Algorithms and Model Checking},
booktitle = {Proceedings of the 4th Balkan Conference in Informatics (BCI '09)},
publisher = {IEEE},
year = {2009},
doi = {http://dx.doi.org/10.1109/BCI.2009.15}
}
|
||||||
| 2009.07.26 | Brad Alexander & Michael Gratton Tyrrell, A. (Hrsg.) IEEE Computational Intelligence Society | Constructing an Optimisation Phase Using Grammatical Evolution | 2009 | Proceedings of the 10th IEEE Congress on Evolutionary Computation (CEC '09), pp. 1209-1216, Trondheim Norway, 18-21 May | Inproceedings | Distribution and Maintenance |
| Abstract: Optimising compilers present their authors with an intractable design space. A substantial body of work has used heuristic search techniques to search this space for the purposes of adapting optimisers to their environment. To date, most of this work has focused on sequencing, tuning and guiding the actions of atomic hand-written optimisation phases. In this paper we explore the adaption of optimisers at a deeper level by demonstrating that it is feasible to automatically build a non-trivial optimisation phase, for a simple functional language, using Grammatical Evolution. We show that the individuals evolved compare well in performance to a handwritten optimisation phase on a range of benchmarks. We conclude with proposals of how this work and its applications can be extended. | ||||||
BibTeX:
@inproceedings{AlexanderG09,
author = {Brad Alexander and Michael Gratton},
title = {Constructing an Optimisation Phase Using Grammatical Evolution},
booktitle = {Proceedings of the 10th IEEE Congress on Evolutionary Computation (CEC '09)},
publisher = {IEEE Press},
year = {2009},
pages = {1209-1216},
address = {Trondheim, Norway},
month = {18-21 May},
doi = {http://dx.doi.org/10.1109/CEC.2009.4983083}
}
|
||||||
| 2009.07.26 | Andrea Arcuri | Insight Knowledge in Search Based Software Testing | 2009 | Proceedings of the 11th Annual Conference on Genetic and Evolutionary Computation (GECCO '09), pp. 1649-1656, Montréal Canada, 8-12 July | Inproceedings | Testing and Debugging |
| Abstract: Software testing can be re-formulated as a search problem, hence search algorithms (e.g., Genetic Algorithms) can be used to tackle it. Most of the research so far has been of empirical nature, in which novel proposed techniques have been validated on software testing benchmarks. However, only little attention has been spent to understand why meta-heuristics can be effective in software testing. This insight knowledge could be used to design novel more successful techniques. Recent theoretical work has tried to fill this gap, but it is very complex to carry out. This has limited its scope so far to only small problems. In this paper, we want to get insight knowledge on a difficult software testing problem. We combine together an empirical and theoretical analysis, and we exploit the benefits of both. | ||||||
BibTeX:
@inproceedings{Arcuri09c,
author = {Andrea Arcuri},
title = {Insight Knowledge in Search Based Software Testing},
booktitle = {Proceedings of the 11th Annual Conference on Genetic and Evolutionary Computation (GECCO '09)},
publisher = {ACM},
year = {2009},
pages = {1649-1656},
address = {Montréal, Canada},
month = {8-12 July},
doi = {http://dx.doi.org/10.1145/1569901.1570122}
}
|
||||||
| 2009.07.26 | Andrea Arcuri | Longer is Better: On the Role of Test Sequence Length in Software Testing | 2009 | (CSR-09-03) | Techreport | Testing and Debugging |
| Abstract: In the presence of an internal state, often it is required a sequence of function calls to test software. In fact, to cover a particular branch of the code, a sequence of previous function calls might be required to put the internal state in the appropriate configuration. Internal states are not only present in object-oriented software, but also in procedural software (e.g., static variables in C programs). In literature, there are many techniques to test this type of software. However, to our best knowledge, the properties related to choosing the length of these sequences have received only little attention in literature. In this paper, we analyse the role that the length plays in software testing. We show that on “difficult” software testing benchmarks longer test sequences make their testing trivial. Hence, we argue that the choice of the length of the test sequences is very important in software testing. |
||||||
BibTeX:
@techreport{Arcuri09e,
author = {Andrea Arcuri},
title = {Longer is Better: On the Role of Test Sequence Length in Software Testing},
year = {2009},
number = {CSR-09-03},
url = {http://www.cs.bham.ac.uk/~axa/papers/paper_tech09b.pdf}
}
|
||||||
| 2009.07.26 | Andrea Arcuri |
Theoretical Analysis of Local Search in Software Testing
[BibTeX] |
2009 | Proceedings of the 5th Symposium on Stochastic Algorithms, Foundations and Applications (SAGA '09), Sapporo Japan, 26-28 October | Inproceedings | Testing and Debugging |
BibTeX:
@inproceedings{Arcuri09f,
author = {Andrea Arcuri},
title = {Theoretical Analysis of Local Search in Software Testing},
booktitle = {Proceedings of the 5th Symposium on Stochastic Algorithms, Foundations and Applications (SAGA '09)},
year = {2009},
address = {Sapporo, Japan},
month = {26-28 October}
}
|
||||||
| 2009.07.26 | Andrea Arcuri | Evolutionary Repair of Faulty Software | 2009 | (CSR-09-02) | Techreport | Testing and Debugging |
| Abstract: Testing and fault localization are very expensive software engineering tasks that have been tried to be automated. Although many successful techniques have been designed, the actual change of the code for fixing the discovered faults is still a human-only task. Even in the ideal case in which automated tools could tell us exactly where the location of a fault is, it is not always trivial how to fix the code. In this paper we analyse the possibility of automating the complex task of fixing faults. We propose to model this task as a search problem, and hence to use for example evolutionary algorithms to solve it. We then discuss the potential of this approach and how its current limits can be addressed in the future. This task is extremely challenging and mainly unexplored in literature. Hence, this paper only covers an initial investigation and gives directions for future work. A research prototype called JAFF and a case study are presented to give first validation of this approach. | ||||||
BibTeX:
@techreport{Arcurid09d,
author = {Andrea Arcuri},
title = {Evolutionary Repair of Faulty Software},
year = {2009},
number = {CSR-09-02},
url = {http://www.cs.bham.ac.uk/~axa/papers/paper_tech09a.pdf}
}
|
||||||
| 2009.07.26 | Andrea Arcuri, Per Kristian Lehre & Xin Yao | Theoretical Runtime Analysis in Search Based Software Engineering | 2009 | (CSR-09-04) | Techreport | General Aspects and Survey |
| Abstract: Search algorithms have been used to tackle software engineering problems with promising results. Although the field has attracted a lot of attention recently, it still lacks a theoretical foundation. It has been empirically shown that search algorithms are successful in some software engineering tasks, but we need to understand why and when they are successful. The long term goal is to get insight of how search algorithms work on software engineering problems, so we can exploit this knowledge to design more efficient algorithms. Runtime Analysis is a type of theoretical investigation that aims to determine, via rigorous mathematical proofs, the time a search algorithm needs to find an optimal solution. Runtime analysis has previously been carried out on traditional combinatorial problems. In this paper, we advocate that runtime analysis would be helpful in search based software engineering as well. We give the first runtime analysis of search heuristics in the software testing domain. | ||||||
BibTeX:
@techreport{ArcuriLY09,
author = {Andrea Arcuri and Per Kristian Lehre and Xin Yao},
title = {Theoretical Runtime Analysis in Search Based Software Engineering},
year = {2009},
number = {CSR-09-04},
url = {ftp://ftp.cs.bham.ac.uk/pub/tech-reports/2009/CSR-09-04.pdf}
}
|
||||||
| 2009.07.26 | Zeina Awedikian, Kamel Ayari & Giuliano Antoniol | MC/DC Automatic Test Input Data Generation | 2009 | Proceedings of the 11th Annual Conference on Genetic and Evolutionary Computation (GECCO '09), pp. 1657-1664, Montréal Canada, 8-12 July | Inproceedings | Testing and Debugging |
| Abstract: In regulated domain such as aerospace and in safety critical domains, software quality assurance is subject to strict regulation such as the RTCA DO-178B standard. Among other conditions, the DO-178B mandates for the satisfaction of the modified condition/decision coverage (MC/DC) testing criterion for software where failure condition may have catastrophic consequences. MC/DC is a white box testing criterion aiming at proving that all conditions involved in a predicate can influence the predicate value in the desired way. In this paper, we propose a novel fitness function inspired by chaining test data generation to efficiently generate test input data satisfying the MC/DC criterion. Preliminary results show the superiority of the novel fitness function that is able to avoid plateau leading to a behavior close to random test of traditional white box fitness functions. | ||||||
BibTeX:
@inproceedings{AwedikianAA09,
author = {Zeina Awedikian and Kamel Ayari and Giuliano Antoniol},
title = {MC/DC Automatic Test Input Data Generation},
booktitle = {Proceedings of the 11th Annual Conference on Genetic and Evolutionary Computation (GECCO '09)},
publisher = {ACM},
year = {2009},
pages = {1657-1664},
address = {Montréal, Canada},
month = {8-12 July},
doi = {http://dx.doi.org/10.1145/1569901.1570123}
}
|
||||||
| 2009.07.26 | R. Landa Becerra, Ramón Sagarna & Xin Yao | An Evaluation of Differential Evolution in Software Test Data Generation | 2009 | Proceedings of the 10th IEEE Congress on Evolutionary Computation (CEC '09), pp. 2850-2857, Trondheim Norway, 18-21 May | Inproceedings | Testing and Debugging |
| Abstract: One of the main tasks software testing involves is the generation of the test inputs to be used during the test. Due to its expensive cost, the automation of this task has become one of the key issues in the area. Recently, this generation has been explicitly formulated as the resolution of a set of constrained optimisation problems. Differential Evolution (DE) is a population based evolutionary algorithm which has been successfully applied in a number of domains, including constrained optimisation. We present a test data generator employing DE to solve each of the constrained optimisation problems, and empirically evaluate its performance for several DE models. With the aim of comparing this technique with other approaches, we extend the experiments to the Breeder Genetic Algorithm and face it to DE, and compare different test data generators in the literature with the DE approach. The results present DE as a promising solution technique for this real-world problem. | ||||||
BibTeX:
@inproceedings{BecerraSY09,
author = {R. Landa Becerra and Ramón Sagarna and Xin Yao},
title = {An Evaluation of Differential Evolution in Software Test Data Generation},
booktitle = {Proceedings of the 10th IEEE Congress on Evolutionary Computation (CEC '09)},
publisher = {IEEE},
year = {2009},
pages = {2850-2857},
address = {Trondheim, Norway},
month = {18-21 May},
url = {http://www2.computer.org/portal/web/csdl/doi/10.1109/CEC.2009.4983300},
doi = {http://dx.doi.org/10.1109/CEC.2009.4983300}
}
|
||||||
| 2009.07.26 | Christophe Dubach, John Cavazos, Björn Franke, Michael O'Boyle, Grigori Fursin & Olivier Temam | Fast Compiler Optimisation Evaluation Using Code-Feature Based Performance Prediction | 2007 | Proceedings of the 4th International Conference on Computing frontiers, pp. 131-142, Ischia Italy, 7-9 May | Inproceedings | Distribution and Maintenance |
| Abstract: Performance tuning is an important and time consuming task which may have to be repeated for each new application and platform. Although iterative optimisation can automate this process, it still requires many executions of different versions of the program. As execution time is frequently the limiting factor in the number of versions or transformed programs that can be considered, what is needed is a mechanism that can automatically predict the performance of a modified program without actually having to run it. This paper presents a new machine learning based technique to automatically predict the speedup of a modified program using a performance model based on the code features of the tuned programs. Unlike previous approaches it does not require any prior learning over a benchmark suite. Furthermore, it can be used to predict the performance of any tuning and is not restricted to a prior seen trans-formation space. We show that it can deliver predictions with a high correlation coefficient and can be used to dramatically reduce the cost of search. | ||||||
BibTeX:
@inproceedings{DubachCFOFT07,
author = {Christophe Dubach and John Cavazos and Björn Franke and Michael O'Boyle and Grigori Fursin and Olivier Temam},
title = {Fast Compiler Optimisation Evaluation Using Code-Feature Based Performance Prediction},
booktitle = {Proceedings of the 4th International Conference on Computing frontiers},
publisher = {ACM},
year = {2007},
pages = {131-142},
address = {Ischia, Italy},
month = {7-9 May},
doi = {http://dx.doi.org/10.1145/1242531.1242553}
}
|
||||||
| 2009.07.26 | Paul Emberson & Iain Bate | Extending a Task Allocation Algorithm for Graceful Degradation of Real-Time Distributed Embedded Systems | 2008 | Proceedings of the 2008 Real-Time Systems Symposium (RTSS '08), pp. 270-279, Barcelona Spain, 30 November - 3 December | Inproceedings | Distribution and Maintenance |
| Abstract: Previous research which has considered task allocation and fault-tolerance together has concentrated on constructingschedules which accommodate a fixed number of redundanttasks. Often, all faults are treated as being equallysevere. There is little work which combines task allocationwith architectural level fault-tolerance issues such as thenumber of replicas to use and how they should be configured,both of which are tackled by this work. An acceptedmethod for assessing the impact of a combination of faults is to build a system utility model which can be used to assess how the system degrades when components fail. The keychallenge addressed here is how to design objective functions based on a utility model which can be incorporatedinto a search algorithm in order to optimise fault-toleranceproperties. Other issues such as how to extend the localsearch neighbourhood and balance objectives with schedulability constraints are also discussed. | ||||||
BibTeX:
@inproceedings{EmbersonB08,
author = {Paul Emberson and Iain Bate},
title = {Extending a Task Allocation Algorithm for Graceful Degradation of Real-Time Distributed Embedded Systems},
booktitle = {Proceedings of the 2008 Real-Time Systems Symposium (RTSS '08)},
publisher = {IEEE},
year = {2008},
pages = {270-279},
address = {Barcelona, Spain},
month = {30 November - 3 December},
doi = {http://dx.doi.org/10.1109/RTSS.2008.24}
}
|
||||||
| 2009.07.26 | Javier Ferrer, Francisco Chicano & Enrique Alba | Dealing with Inheritance in OO Evolutionary Testing | 2009 | Proceedings of the 11th Annual Conference on Genetic and Evolutionary Computation (GECCO '09), pp. 1665-1672, Montréal Canada, 8-12 July | Inproceedings | Testing and Debugging |
| Abstract: Most of the software developed in the world follows the object-oriented (OO) paradigm. However, the existing work on evolutionary testing is mainly targeted to procedural languages. All this work can be used with small changes on OO programs, but object orientation introduces new features that are not present in procedural languages. Some important issues are polymorphism and inheritance. In this paper we want to make a contribution to the inheritance field by proposing some approaches that use the information of the class hierarchy for helping test case generators to better guide the search. To the best of our knowledge, no work exists using this information to propose test cases. In this work we define a branch distance for logical expressions containing the instanceof operator in Java programs. In addition to the distance measure, we propose two mutation operators based on the distance. We study the behaviour of the mutation operators on a benchmark set composed of nine OO programs. The results show that the information collected from the class hierarchy helps in the search for test cases. | ||||||
BibTeX:
@inproceedings{FerrerCA09,
author = {Javier Ferrer and Francisco Chicano and Enrique Alba},
title = {Dealing with Inheritance in OO Evolutionary Testing},
booktitle = {Proceedings of the 11th Annual Conference on Genetic and Evolutionary Computation (GECCO '09)},
publisher = {ACM},
year = {2009},
pages = {1665-1672},
address = {Montréal, Canada},
month = {8-12 July},
doi = {http://dx.doi.org/10.1145/1569901.1570124}
}
|
||||||
| 2009.07.26 | Kamran Ghani & John A. Clark |
Automatic Test Data Generation for Multiple Condition and MCDC Coverage
[BibTeX] |
2009 | Proceedings of the 4th International Conference on Software Engineering Advances (ICSEA '09), Porto Portugal, 20-25 September | Inproceedings | Testing and Debugging |
BibTeX:
@inproceedings{GhaniC09b,
author = {Kamran Ghani and John A. Clark},
title = {Automatic Test Data Generation for Multiple Condition and MCDC Coverage},
booktitle = {Proceedings of the 4th International Conference on Software Engineering Advances (ICSEA '09)},
year = {2009},
address = {Porto, Portugal},
month = {20-25 September}
}
|
||||||
| 2009.07.26 | Kamran Ghani, John A. Clark & Yuan Zhan | Comparing Algorithms for Search-Based Test Data Generation of Matlab Simulink Models | 2009 | Proceedings of the 10th IEEE Congress on Evolutionary Computation (CEC '09), Trondheim Norway, 18-21 May | Inproceedings | Testing and Debugging |
| Abstract: Search Based Software Engineering (SBSE) is an evolving field where meta-heuristic techniques are applied to solve many software engineering problems. One area of SBSE, where considerable research is underway, is software testing. We see much application of meta-heuristics search techniques for generating input test data. But most of the work in this area is concentrated on test data generation from source code. We see very little application of such techniques to testing from other sources such as requirement and design models. Zhan and Clark applied such techniques to generate test data for Simulink models. This paper extends the work of Zhan and Clark by investigating the application of Genetic Algorithms (GAs) to Simulink models and then statistically compares the results to the existing work, which is mainly based on Simulated Annealing (SA). | ||||||
BibTeX:
@inproceedings{GhaniCZ09,
author = {Kamran Ghani and John A. Clark and Yuan Zhan},
title = {Comparing Algorithms for Search-Based Test Data Generation of Matlab Simulink Models},
booktitle = {Proceedings of the 10th IEEE Congress on Evolutionary Computation (CEC '09)},
publisher = {IEEE},
year = {2009},
address = {Trondheim, Norway},
month = {18-21 May},
url = {http://www2.computer.org/portal/web/csdl/doi/10.1109/CEC.2009.4983313}
}
|
||||||
| 2009.07.26 | Stefan Gueorguiev, Mark Harman & Giuliano Antoniol | Software Project Planning for Robustness and Completion Time in the Presence of Uncertainty using Multi Objective Search Based Software Engineering | 2009 | Proceedings of the 11th Annual Conference on Genetic and Evolutionary Computation (GECCO '09), pp. 1673-1680 (Best Paper Award), Montréal Canada, 8-12 July | Inproceedings | Management |
| Abstract: All large-scale projects contain a degree of risk and uncertainty. Software projects are particularly vulnerable to overruns, due to the this uncertainty and the inherent difficulty of software project cost estimation. In this paper we introduce a search based approach to software project robustness. The approach is to formulate this problem as a multi objective Search Based Software Engineering problem, in which robustness and completion time are treated as two competing objectives. The paper presents the results of the application of this new approach to four large real-world software projects, using two different models of uncertainty. | ||||||
BibTeX:
@inproceedings{GueorguievHA09,
author = {Stefan Gueorguiev and Mark Harman and Giuliano Antoniol},
title = {Software Project Planning for Robustness and Completion Time in the Presence of Uncertainty using Multi Objective Search Based Software Engineering},
booktitle = {Proceedings of the 11th Annual Conference on Genetic and Evolutionary Computation (GECCO '09)},
publisher = {ACM},
year = {2009},
pages = {1673-1680 (Best Paper Award)},
address = {Montréal, Canada},
month = {8-12 July},
doi = {http://dx.doi.org/10.1145/1569901.1570125}
}
|
||||||
| 2009.07.26 | Chen Hao, John A. Clark & Jeremy L. Jacob | A Search-based Approach to the Automated Design of Security Protocols | 2004 | (YCS-2004-376), May | Techreport | Network Protocols |
| Abstract: Security protocols play an important role in modern communications. However, security protocol development is a delicate task; experience shows that computer security protocols are notoriously difficult to get right. Recently, Clark and Jacob provided a framework for automatic protocol generation based on combinatorial optimisation techniques and the symmetric key part of BAN logic. This paper shows how such an approach can be further developed to encompass the full BAN logic without loss of efficiency and thereby synthesise public key protocols and hybrid protocols. | ||||||
BibTeX:
@techreport{HaoCJ04,
author = {Chen Hao and John A. Clark and Jeremy L. Jacob},
title = {A Search-based Approach to the Automated Design of Security Protocols},
year = {2004},
number = {YCS-2004-376},
month = {May},
url = {http://www.cs.york.ac.uk/ftpdir/reports/2004/YCS/376/YCS-2004-376.pdf}
}
|
||||||
| 2009.07.26 | Mark Harman & Phil McMinn | A Theoretical and Empirical Study of Search Based Testing: Local, Global and Hybrid Search | 2010 | IEEE Transactions on Software Engineering, Vol. 36(2), pp. 226-247, March-April | Article | Testing and Debugging |
| Abstract: Search-based optimization techniques have been applied to structural software test data generation since 1992, with a recent upsurge in interest and activity within this area. However, despite the large number of recent studies on the applicability of different search-based optimization approaches, there has been very little theoretical analysis of the types of testing problem for which these techniques are well suited. There are also few empirical studies that present results for larger programs. This paper presents a theoretical exploration of the most widely studied approach, the global search technique embodied by Genetic Algorithms. It also presents results from a large empirical study that compares the behavior of both global and local search-based optimization on real-world programs. The results of this study reveal that cases exist of test data generation problem that suit each algorithm, thereby suggesting that a hybrid global-local search (a Memetic Algorithm) may be appropriate. The paper presents a Memetic Algorithm along with further empirical results studying its performance. | ||||||
BibTeX:
@article{HarmanM10,
author = {Mark Harman and Phil McMinn},
title = {A Theoretical and Empirical Study of Search Based Testing: Local, Global and Hybrid Search},
journal = {IEEE Transactions on Software Engineering},
year = {2010},
volume = {36},
number = {2},
pages = {226-247},
month = {March-April},
doi = {http://dx.doi.org/10.1109/TSE.2009.71}
}
|
||||||
| 2009.07.26 | Kiran Lakhotia, Phil McMinn & Mark Harman | Automated Test Data Generation for Coverage: Haven't We Solved This Problem Yet? | 2009 | Proceedings of Testing: Academia & Industry Conference - Practice And Research Techniques (TAIC-PART '09), pp. 95-104, Windsor UK, 4-6 September | Inproceedings | Testing and Debugging |
BibTeX:
@inproceedings{LakhotiaMH09,
author = {Kiran Lakhotia and Phil McMinn and Mark Harman},
title = {Automated Test Data Generation for Coverage: Haven't We Solved This Problem Yet?},
booktitle = {Proceedings of Testing: Academia & Industry Conference - Practice And Research Techniques (TAIC-PART '09)},
publisher = {IEEE},
year = {2009},
pages = {95-104},
address = {Windsor, UK},
month = {4-6 September},
doi = {http://dx.doi.org/10.1109/TAICPART.2009.15}
}
|
||||||
| 2009.07.26 | William B. Langdon, Mark Harman & Yue Jia | Multi Objective Mutation Testing with Genetic Programming | 2009 | Proceedings of Testing: Academia & Industry Conference - Practice And Research Techniques (TAIC-PART '09), pp. 21-29, Windsor UK, 4-6 September | Inproceedings | Testing and Debugging |
| Abstract: In academic empirical studies, mutation testing has been demonstrated to be a powerful technique for fault finding. However, it remains very expensive and the few valuable traditional mutants that resemble real faults are mixed in with many others that denote unrealistic faults. These twin problems of expense and realism have been a significant barrier to industrial uptake of mutation testing. Genetic programming is used to search the space of complex faults (higher order mutants). The space is much larger than the traditional first order mutation space of simple faults. However, the use of a search based approach makes this scalable, seeking only those mutants that challenge the tester, while the consideration of complex faults addresses the problem of fault realism; it is known that 90percent of real faults are complex (i.e. higher order). We show that we are able to find examples that pose challenges to testing in the higher order space that cannot be represented in the first order space. | ||||||
BibTeX:
@inproceedings{LangdonHJ09,
author = {William B. Langdon and Mark Harman and Yue Jia},
title = {Multi Objective Mutation Testing with Genetic Programming},
booktitle = {Proceedings of Testing: Academia & Industry Conference - Practice And Research Techniques (TAIC-PART '09)},
publisher = {IEEE},
year = {2009},
pages = {21-29},
address = {Windsor, UK},
month = {4-6 September},
url = {http://www.cs.ucl.ac.uk/staff/W.Langdon/ftp/papers/langdon_2009_TAICPART.pdf},
doi = {http://dx.doi.org/10.1109/TAICPART.2009.18}
}
|
||||||
| 2009.07.26 | William B. Langdon, Mark Harman & Yue Jia | Multi objective higher order mutation testing with GP | 2009 | Proceedings of the 11th Annual Conference on Genetic and Evolutionary Computation (GECCO '09), pp. 1945-1946, Montréal Canada, 8-12 July | Inproceedings | Testing and Debugging |
| Abstract: Mutation testing is a powerful software engineering technique for fault finding. It works by injecting known faults (mutations) into software and seeing if the test suite finds them. It remains very expensive and the few valuable traditional mutants that resemble real faults are mixed in with many others that denote unrealistic faults. The expense and lack of realism inhibit industrial uptake of mutation testing. Genetic programming searches the space of complex faults to find realistic higher order mutants. Despite the much larger search space, we have found mutants composed of multiple changes to the C source code that challenge the tester and which cannot be represented in the first order space. | ||||||
BibTeX:
@inproceedings{LangdonHJ09b,
author = {William B. Langdon and Mark Harman and Yue Jia},
title = {Multi objective higher order mutation testing with GP},
booktitle = {Proceedings of the 11th Annual Conference on Genetic and Evolutionary Computation (GECCO '09)},
publisher = {ACM},
year = {2009},
pages = {1945-1946},
address = {Montréal, Canada},
month = {8-12 July},
doi = {http://dx.doi.org/10.1145/1569901.1570251}
}
|
||||||
| 2009.07.26 | Per Kristian Lehre & Xin Yao | Runtime Analysis of Search Heuristics on Software Engineering Problems | 2009 | Frontiers of Computer Science in China, Vol. 3(1), pp. 64-72, March | Article | General Aspects and Survey |
| Abstract: Many software engineering tasks can potentially be automated using search heuristics. However, much work is needed in designing and evaluating search heuristics before this approach can be routinely applied to a software engineering problem. Experimental methodology should be complemented with theoretical analysis to achieve this goal. Recently, there have been significant theoretical advances in the runtime analysis of evolutionary algorithms (EAs) and other search heuristics in other problem domains. We suggest that these methods could be transferred and adapted to gain insight into the behaviour of search heuristics on software engineering problems while automating software engineering. | ||||||
BibTeX:
@article{LehreY09,
author = {Per Kristian Lehre and Xin Yao},
title = {Runtime Analysis of Search Heuristics on Software Engineering Problems},
journal = {Frontiers of Computer Science in China},
year = {2009},
volume = {3},
number = {1},
pages = {64-72},
month = {March},
doi = {http://dx.doi.org/10.1007/s11704-009-0006-6}
}
|
||||||
| 2009.07.26 | Phil McMinn | Search-based Failure Discovery using Testability Transformations to Generate Pseudo-Oracles | 2009 | Proceedings of the 11th Annual Conference on Genetic and Evolutionary Computation (GECCO '09), pp. 1689-1696, Montréal Canada, 8-12 July | Inproceedings | Testing and Debugging |
| Abstract: Testability transformations are source-to-source program transformations that are designed to improve the testability of a program. This paper introduces a novel approach in which transformations are used to improve testability of a program by generating a pseudo-oracle. A pseudo-oracle is an alternative version of a program under test whose output can be compared with the original. Differences in output between the two programs may indicate a fault in the original program. Two transformations are presented. The first can highlight numerical inaccuracies in programs and cumulative roundoff errors, whilst the second may detect the presence of race conditions in multi-threaded code. Once a pseudo-oracle is generated, techniques are applied from the field of search-based testing to automatically find differences in output between the two versions of the program. The results of an experimental study presented in the paper show that both random testing and genetic algorithms are capable of utilizing the pseudo-oracles to automatically find program failures. Using genetic algorithms it is possible to explicitly maximize the discrepancies between the original programs and their pseudo-oracles. This allows for the production of test cases where the observable failure is highly pronounced, enabling the tester to establish the seriousness of the underlying fault. |
||||||
BibTeX:
@inproceedings{McMinn09,
author = {Phil McMinn},
title = {Search-based Failure Discovery using Testability Transformations to Generate Pseudo-Oracles},
booktitle = {Proceedings of the 11th Annual Conference on Genetic and Evolutionary Computation (GECCO '09)},
publisher = {ACM},
year = {2009},
pages = {1689-1696},
address = {Montréal, Canada},
month = {8-12 July},
doi = {http://dx.doi.org/10.1145/1569901.1570127}
}
|
||||||
| 2009.07.26 | Matteo Miraz, Pier Luca Lanzi & Luciano Baresi | TestFul: Using a Hybrid Evolutionary Algorithm for Testing Stateful Systems | 2009 | Proceedings of the 11th Annual Conference on Genetic and Evolutionary Computation (GECCO '09), pp. 1947-1948, Montréal Canada, 8-12 July | Inproceedings | Testing and Debugging |
| Abstract: This paper introduces TestFul, a framework for testing stateful systems and focuses on object-oriented software. TestFul employs a hybrid multi-objective evolutionary algorithm, to explore the space of feasible tests efficiently, and novel quality metrics, based on both def-use pairs and behavioral coverage, to judge the quality of tests. We compare our framework against random testing by considering the level of coverage, the size of generated tests, and the time required to generate the tests. Our preliminary results show the validity of the approach: TestFul outperforms random testing in most of the cases. |
||||||
BibTeX:
@inproceedings{MirazLB09,
author = {Matteo Miraz and Pier Luca Lanzi and Luciano Baresi},
title = {TestFul: Using a Hybrid Evolutionary Algorithm for Testing Stateful Systems},
booktitle = {Proceedings of the 11th Annual Conference on Genetic and Evolutionary Computation (GECCO '09)},
publisher = {ACM},
year = {2009},
pages = {1947-1948},
address = {Montréal, Canada},
month = {8-12 July},
doi = {http://dx.doi.org/10.1145/1569901.1570252}
}
|
||||||
| 2009.07.26 | Sion Ll Rhys, Simon Poulding & John A. Clark | Using Automated Search to Generate Test Data for Matlab | 2009 | Proceedings of the 11th Annual Conference on Genetic and Evolutionary Computation (GECCO '09), pp. 1697-1704, Montréal Canada, 8-12 July | Inproceedings | Testing and Debugging |
| Abstract: The critical functionality of many software applications relies on code that performs mathematically complex computations. However, such code is often difficult to test owing to the compound datatypes used and complicated mathematical operations performed. This paper proposes the use of automated search as an efficient means of generating test data for this type of software. Taking Matlab as an example of widely-used mathematical software, a technical framework is described that extends previous work on search-based test data generation in order to handle matrix datatypes and associated relational operators. An empirical evaluation demonstrates the feasibility of this approach. | ||||||
BibTeX:
@inproceedings{RhysPC09,
author = {Sion Ll Rhys and Simon Poulding and John A. Clark},
title = {Using Automated Search to Generate Test Data for Matlab},
booktitle = {Proceedings of the 11th Annual Conference on Genetic and Evolutionary Computation (GECCO '09)},
publisher = {ACM},
year = {2009},
pages = {1697-1704},
address = {Montréal, Canada},
month = {8-12 July},
doi = {http://dx.doi.org/10.1145/1569901.1570128}
}
|
||||||
| 2009.07.26 | José Carlos Bregieiro Ribeiro, Mário Zenha-Rela & Francisco Fernández de Vega | Test Case Evaluation and Input Domain Reduction Strategies for the Evolutionary Testing of Object-Oriented Software | 2009 | Information and Software Technology, July | Article | Testing and Debugging |
| Abstract: In Evolutionary Testing, meta-heuristic search techniques are used for generating test data. The focus of our research is on employing evolutionary algorithms for the structural unit-testing of Object-Oriented programs. Relevant contributions include the introduction of novel methodologies for automation, search guidance and Input Domain Reduction; the strategies proposed were empirically evaluated with encouraging results. Test cases are evolved using the Strongly-Typed Genetic Programming technique. Test data quality evaluation includes instrumenting the test object, executing it with the generated test cases, and tracing the structures traversed in order to derive coverage metrics. The methodology for efficiently guiding the search process towards achieving full structural coverage involves favouring test cases that exercise problematic structures. Purity Analysis is employed as a systematic strategy for reducing the search space. | ||||||
BibTeX:
@article{RibeiroZV09,
author = {José Carlos Bregieiro Ribeiro and Mário Zenha-Rela and Francisco Fernández de Vega},
title = {Test Case Evaluation and Input Domain Reduction Strategies for the Evolutionary Testing of Object-Oriented Software},
journal = {Information and Software Technology},
year = {2009},
month = {July},
url = {http://dx.doi.org/10.1016/j.infsof.2009.06.009},
doi = {http://dx.doi.org/10.1016/j.infsof.2009.06.009}
}
|
||||||
| 2009.07.26 | José Carlos Bregieiro Ribeiro, Mário Alberto Zenha-Rela & Francisco Fernández de Vega | An Adaptive Strategy for Improving the Performance of Genetic Programming-based Approaches to Evolutionary Testing | 2009 | Proceedings of the 11th Annual Conference on Genetic and Evolutionary Computation (GECCO '09), pp. 1949-1950, Montréal Canada, 8-12 July | Inproceedings | Testing and Debugging |
| Abstract: This paper proposes an adaptive strategy for enhancing Genetic Programming-based approaches to automatic test case generation. The main contribution of this study is that of proposing an adaptive Evolutionary Testing methodology for promoting the introduction of relevant instructions into the generated test cases by means of mutation; the instructions from which the algorithm can choose are ranked, with their rankings being updated every generation in accordance to the feedback obtained from the individuals evaluated in the preceding generation. The experimental studies developed show that the adaptive strategy proposed improves the algorithm's efficiency considerably, while introducing a negligible computational overhead. | ||||||
BibTeX:
@inproceedings{RibeiroZV09b,
author = {José Carlos Bregieiro Ribeiro and Mário Alberto Zenha-Rela and Francisco Fernández de Vega},
title = {An Adaptive Strategy for Improving the Performance of Genetic Programming-based Approaches to Evolutionary Testing},
booktitle = {Proceedings of the 11th Annual Conference on Genetic and Evolutionary Computation (GECCO '09)},
publisher = {ACM},
year = {2009},
pages = {1949-1950},
address = {Montréal, Canada},
month = {8-12 July},
doi = {http://dx.doi.org/10.1145/1569901.1570253}
}
|
||||||
| 2009.07.26 | Mark Stephenson, Una-May O'Reilly, Martin C. Martin & Saman Amarasinghe Ryan, C.; Soule, T.; Keijzer, M.; Tsang, E.; Poli, R. & Costa, E. (Hrsg.) | Genetic Programming Applied to Compiler Heuristic Optimization | 2003 | Proceedings of the 6th European Conference on Genetic Programming (EuroGP '03), Vol. 2610, pp. 238-253, Essex, 14-16 April | Inproceedings | Distribution and Maintenance |
| Abstract: Genetic programming (GP) has a natural niche in the optimization of small but high payoff software heuristics. We use GP to optimize the priority functions associated with two well known compiler heuristics: predicated hyperblock formation, and register allocation. Our system achieves impressive speedups over a standard baseline for both problems. For hyperblock selection, application-specific heuristics obtain an average speedup of 23percent (up to 73percent) for the applications in our suite. By evolving the compiler's heuristic over several benchmarks, the best general-purpose heuristic our system found improves the predication algorithm by an average of 25percent on our training set, and 9percent on a completely unrelated test set. We also improve a well-studied register allocation heuristic. On average, our system obtains a 6percent speedup when it specializes the register allocation algorithm for individual applications. The general-purpose heuristic for register allocation achieves a 3percent improvement. | ||||||
BibTeX:
@inproceedings{StephensonOMA03,
author = {Mark Stephenson and Una-May O'Reilly and Martin C. Martin and Saman Amarasinghe},
title = {Genetic Programming Applied to Compiler Heuristic Optimization},
booktitle = {Proceedings of the 6th European Conference on Genetic Programming (EuroGP '03)},
publisher = {Springer-Verlag},
year = {2003},
volume = {2610},
pages = {238-253},
address = {Essex},
month = {14-16 April},
url = {http://www.martincmartin.com/papers/GPApppliedToCompilerHeuristicOptimizationStephenson.pdf}
}
|
||||||
| 2009.07.26 | Nigel Tracey, John A. Clark, Keith Mander & John McDermid | An Automated Framework for Structural Test-Data Generation | 1998 | Proceedings of the 13th IEEE International Conference on Automated Software Engineering (ASE '98), pp. 285-288, Honolulu Hawaii USA, 13-16 October | Inproceedings | Testing and Debugging |
| Abstract: Structural testing criteria are mandated in many software development standards and guidelines. The process of generating test data to achieve 100% coverage of a given structural coverage metric is labour-intensive and expensive. This paper presents an approach to automate the generation of such test data. The test-data generation is based on the application of a dynamic optimisation-based search for the required test data. The same approach can be generalised to solve other test-data generation problems. Three such applications are discussed-boundary value analysis, assertion/run-time exception testing, and component re-use testing. A prototype tool-set has been developed to facilitate the automatic generation of test data for these structural testing problems. The results of preliminary experiments using this technique and the prototype tool-set are presented and show the efficiency and effectiveness of this approach. | ||||||
BibTeX:
@inproceedings{TraceyCMM98,
author = {Nigel Tracey and John A. Clark and Keith Mander and John McDermid},
title = {An Automated Framework for Structural Test-Data Generation},
booktitle = {Proceedings of the 13th IEEE International Conference on Automated Software Engineering (ASE '98)},
publisher = {IEEE},
year = {1998},
pages = {285-288},
address = {Honolulu, Hawaii, USA},
month = {13-16 October},
doi = {http://dx.doi.org/10.1109/ASE.1998.732680}
}
|
||||||
| 2009.07.26 | Nigel Tracey, John A. Clark, Keith Mander & John McDermid Australian Computer Society | Integrating Automated Testing with Exception Freeness Proofs for Safety Critical Systems | 1999 | Proceedings of the 4th Australian Workshop on Safety Critical Systems and Software, Canberra Australia, 26 November | Inproceedings | Testing and Debugging |
| Abstract: The exception handling code of a system is in general the least documented, tested and understood part, since exceptions are expected to occur only rarely. This paper presents a technique for automatically generating test-data to test exceptions. The approach is based on the application of a dynamic global optimisation based search for the required test-data. The authors' work has focused on test-data generation for safety-critical systems. Such systems must be free from anomalous and uncontrolled behaviour. Typically, it is easier to prove the absence of any exceptions than it is to prove that the exception handling is safe. A process for integrating automated testing with exception freeness proofs is presented as a way forward for tackling the special needs of safety critical systems. An evaluation shows the application of the technique to a commercial aircraft engine controller system as part of a proof of exception freeness. | ||||||
BibTeX:
@inproceedings{TraceyCMM99,
author = {Nigel Tracey and John A. Clark and Keith Mander and John McDermid},
title = {Integrating Automated Testing with Exception Freeness Proofs for Safety Critical Systems},
booktitle = {Proceedings of the 4th Australian Workshop on Safety Critical Systems and Software},
year = {1999},
address = {Canberra, Australia},
month = {26 November},
url = {http://www.cs.york.ac.uk/testsig/publications/njt-nov99.pdf}
}
|
||||||
| 2009.07.26 | Nigel Tracey, John A. Clark, John McDermid & Keith Mander | Integrating Safety Analysis with Automatic Test-Data Generation for Software Safety Verification | 1999 | Proceedings of 17th International System Safety Conference, pp. 128-137, Orlando FL USA, 16-21 August | Inproceedings | Testing and Debugging |
| Abstract: Typically verification focuses on demonstrating consistency between an implementation and a functional specification. For safety critical systems this is not sufficient, the implementation must also meet the system safety constraints and safety requirements. The work presented in this paper builds on the authors' previous work in developing a general framework for dynamically generating test-data using heuristic global optimisation techniques. This framework has been adapted to allow automated test-data generation to be used to support the application of software fault tree analysis. Using the framework a search for test-data that causes an identified software hazard condition can be performed automatically. The fact that a hazardous condition can arise may be discovered much earlier than with conventional testing using this automated approach. If no test-data is located then SFTA, or other forms of static analysis, can be performed to give the necessary assurance that no such data exists. A number of extensions to this basic approach are also outlined. These are, integration with fault injection, testing for exception conditions and testing for safe component reuse and integration. Preliminary results are encouraging and show that the approach justifies further research. |
||||||
BibTeX:
@inproceedings{TraceyCMM99b,
author = {Nigel Tracey and John A. Clark and John McDermid and Keith Mander},
title = {Integrating Safety Analysis with Automatic Test-Data Generation for Software Safety Verification},
booktitle = {Proceedings of 17th International System Safety Conference},
year = {1999},
pages = {128-137},
address = {Orlando, FL, USA},
month = {16-21 August},
url = {http://www-users.cs.york.ac.uk/~jac/PublishedPapers/IntegratingSafetyAnalysisWithAutomaticAug99.pdf}
}
|
||||||
| 2009.07.26 | Westley Weimer, ThanhVu Nguyen, Claire Le Goues & Stephanie Forrest Fickas, S. (Hrsg.) | Automatically Finding Patches Using Genetic Programming | 2009 | Proceedings of the 31st IEEE International Conference on Software Engineering (ICSE '09), pp. 364-374, Vancouver Canada, 16-24 May | Inproceedings | Testing and Debugging |
| Abstract: Automatic repair of programs has been a longstanding goal in software engineering, yet debugging remains a largely manual process. We introduce a fully automated method for locating and repairing bugs in software. The approach works on off-the-shelf legacy applications and does not require formal specifications, program annotations or special coding practices. Once a program fault is discovered, an extended form of genetic programming is used to evolve program variants until one is found that both retains required functionality and also avoids the defect in question. Standard test cases are used to exercise the fault and to encode program requirements. After a successful repair has been discovered, it is minimized using structural differencing algorithms and delta debugging. We describe the proposed method and report results from an initial set of experiments demonstrating that it can successfully repair ten different C programs totaling 63,000 lines in under 200 seconds, on average. | ||||||
BibTeX:
@inproceedings{WeimerNLF09,
author = {Westley Weimer and ThanhVu Nguyen and Claire Le Goues and Stephanie Forrest},
title = {Automatically Finding Patches Using Genetic Programming},
booktitle = {Proceedings of the 31st IEEE International Conference on Software Engineering (ICSE '09)},
publisher = {IEEE},
year = {2009},
pages = {364-374},
address = {Vancouver, Canada},
month = {16-24 May},
url = {http://www.cs.unm.edu/~tnguyen/papers/genprog.pdf},
doi = {http://dx.doi.org/10.1109/ICSE.2009.5070536}
}
|
||||||
| 2009.07.26 | Shin Yoo, Mark Harman, Paolo Tonella & Angelo Susi | Clustering Test Cases to Achieve Effective and Scalable Prioritisation Incorporating Expert Knowledge | 2009 | Proceedings of The 18th International Symposium On Software Testing and Analysis (ISSTA '09), pp. 201-212, Chicago IL USA, 19-23 July | Inproceedings | Testing and Debugging |
| Abstract: Pair-wise comparison has been successfully utilised in order to prioritise test cases by exploiting the rich, valuable and unique knowledge of the tester. However, the prohibitively large cost of the pair-wise comparison method prevents it from being applied to large test suites. In this paper, we introduce a cluster-based test case prioritisation technique. By clustering test cases, based on their dynamic runtime behaviour, we can reduce the required number of pair-wise comparisons significantly. The approach is evaluated on seven test suites ranging in size from 154 to 1,061 test cases. We present an empirical study that shows that the resulting prioritisation is more effective than existing coverage-based prioritisation techniques in terms of rate of fault detection. Perhaps surprisingly, the paper also demonstrates that clustering (even without human input) can outperform unclustered coverage-based technologies, and discusses an automated process that can be used to determine whether the application of the proposed approach would yield improvement. | ||||||
BibTeX:
@inproceedings{YooHTS09,
author = {Shin Yoo and Mark Harman and Paolo Tonella and Angelo Susi},
title = {Clustering Test Cases to Achieve Effective and Scalable Prioritisation Incorporating Expert Knowledge},
booktitle = {Proceedings of The 18th International Symposium On Software Testing and Analysis (ISSTA '09)},
publisher = {ACM},
year = {2009},
pages = {201-212},
address = {Chicago, IL, USA},
month = {19-23 July},
doi = {http://dx.doi.org/10.1145/1572272.1572296}
}
|
||||||
| 2009.07.26 | Shin Yoo, Mark Harman & Shmuel Ur | Measuring and Improving Latency to Avoid Test Suite Wear Out | 2009 | Proceedings of the IEEE International Conference on Software Testing, Verification, and Validation Workshops (ICSTW '09), pp. 101-110 (Best Paper Award), Denver Colorado USA, 1-4 April | Inproceedings | Testing and Debugging |
| Abstract: This paper introduces the concept of test suite latency. The more latent a test suite, the more it is possible to repeatedly select subsets that achieve a test goal (such as coverage) without re-applying test cases. Where a test case is re-applied it cannot reveal new information. The more a test suite is forced to re-apply already applied test cases in order to achieve the test goal, the more it has become `worn out'. Test suite latency is the flipside of wear out; the more latent a test suite, the less prone it is to wear out. The paper introduces a theory of test suite latency. It presents results from the empirical study of latency, highlighting the need for latency enhancement. The paper also introduces a strategy and algorithms for improving latency and an empirical study of their effectiveness. The results show that local search is effective at improving the latency of a test suite. | ||||||
BibTeX:
@inproceedings{YooHU09,
author = {Shin Yoo and Mark Harman and Shmuel Ur},
title = {Measuring and Improving Latency to Avoid Test Suite Wear Out},
booktitle = {Proceedings of the IEEE International Conference on Software Testing, Verification, and Validation Workshops (ICSTW '09)},
publisher = {IEEE},
year = {2009},
pages = {101-110 (Best Paper Award)},
address = {Denver, Colorado, USA},
month = {1-4 April},
doi = {http://dx.doi.org/10.1109/ICSTW.2009.10}
}
|
||||||
| 2009.07.24 | Simon Poulding, Paul Emberson, Iain Bate & John A. Clark | An Efficient Experimental Methodology for Configuring Search-Based Design Algorithms | 2007 | Proceedings of the 10th IEEE High Assurance Systems Engineering Symposium (HASE '07), pp. 53-62, Dallas Texas USA, 14-16 November | Inproceedings | Design Tools and Techniques |
| Abstract: Many problems in high assurance systems design are only tractable using computationally expensive search algorithms. For these algorithms to be useful, designers must be provided with guidance as to how to configure the algorithms appropriately. This paper presents an experimental methodology for deriving such guidance that remains efficient when the algorithm requires substantial computing resources or takes a long time to find solutions. The methodology is shown to be effective on a highly-constrained task allocation algorithm that provides design solutions for high integrity systems. Using the methodology, an algorithm configuration is derived in a matter of days that significantly outperforms one resulting from months of "trial-and-error" optimisation. | ||||||
BibTeX:
@inproceedings{PouldingEBC07,
author = {Simon Poulding and Paul Emberson and Iain Bate and John A. Clark},
title = {An Efficient Experimental Methodology for Configuring Search-Based Design Algorithms},
booktitle = {Proceedings of the 10th IEEE High Assurance Systems Engineering Symposium (HASE '07)},
publisher = {IEEE},
year = {2007},
pages = {53-62},
address = {Dallas, Texas, USA},
month = {14-16 November},
doi = {http://dx.doi.org/10.1109/HASE.2007.19}
}
|
||||||
| 2009.07.03 | Shaukat Ali, Lionel C. Briand, Hadi Hemmati & Rajwinder Kaur Panesar-Walawege | A Systematic Review of the Application and Empirical Investigation of Search-Based Test-Case Generation | To appear | IEEE Transactions on Software Engineering, Los Alamitos CA USA | Article | Testing and Debugging |
| Abstract: Metaheuristic search techniques have been extensively used to automate the process of generating test cases and thus providing solutions for a more cost-effective testing process. This approach to test automation, often coined as "Search-based Software Testing" (SBST), has been used for a wide variety of test case generation purposes. Since SBST techniques are heuristic by nature, they must be empirically investigated in terms of how costly and effective they are at reaching their test objectives and whether they scale up to realistic development artifacts. However, approaches to empirically study SBST techniques have shown wide variation in the literature. This paper presents the results of a systematic, comprehensive review that aims at characterizing how empirical studies have been designed to investigate SBST cost-effectiveness and what empirical evidence is available in the literature regarding SBST cost-effectiveness and scalability. We also provide a framework that drives the data collection process of this systematic review and can be the starting point of guidelines on how SBST techniques can be empirically assessed. The intent is to aid future researchers doing empirical studies in SBST by providing an unbiased view of the body of empirical evidence and by guiding them in performing well designed empirical studies. | ||||||
BibTeX:
@article{AliBHP,
author = {Shaukat Ali and Lionel C. Briand and Hadi Hemmati and Rajwinder Kaur Panesar-Walawege},
title = {A Systematic Review of the Application and Empirical Investigation of Search-Based Test-Case Generation},
journal = {IEEE Transactions on Software Engineering},
publisher = {IEEE Computer Society},
year = {To appear},
address = {Los Alamitos, CA, USA},
doi = {http://doi.ieeecomputersociety.org/10.1109/TSE.2009.52}
}
|
||||||
| 2009.07.03 | Paul Emberson & Iain Bate | Stressing Search with Scenarios for Flexible Solutions to Real-Time Task Allocation Problems | To appear | IEEE Transactions on Software Engineering, Los Alamitos CA USA | Article | Management |
| Abstract: One of the most important properties of a good software engineering process and of the design of the software it produces is robustness to changing requirements. Scenario-based analysis is a popular method for improving the flexibility of software architectures. This paper demonstrates a search-based technique for automating scenario-based analysis in the software architecture deployment view. Specifically, a novel parallel simulated annealing search algorithm is applied to the real-time task allocation problem to find baseline solutions which require a minimal number of changes in order to meet the requirements of potential upgrade scenarios. Another simulated annealing based search is used for finding a solution which is similar to an existing baseline when new requirements arise. Solutions generated using a variety of scenarios are judged by how well they respond to different system requirements changes. The evaluation is performed on a set of problems with a controlled set of different characteristics. | ||||||
BibTeX:
@article{EmbersonB,
author = {Paul Emberson and Iain Bate},
title = {Stressing Search with Scenarios for Flexible Solutions to Real-Time Task Allocation Problems},
journal = {IEEE Transactions on Software Engineering},
publisher = {IEEE Computer Society},
year = {To appear},
address = {Los Alamitos, CA, USA},
doi = {http://doi.ieeecomputersociety.org/10.1109/TSE.2009.58}
}
|
||||||
| 2009.07.03 | Usman Farooq & Chiou Peng Lam | A Max-Min Multiobjective Technique to Optimize Model Based Test Suite | 2009 | Software Engineering, Artificial Intelligence, Networking, and Parallel/Distributed Computing, ACIS International Conference onProceedings of the 10th ACIS International Conference on Software Engineering, Artificial Intelligences, Networking and Parallel/Distributed Computing, Vol. 0, pp. 569-574, Los Alamitos CA USA | Inproceedings | Testing and Debugging |
| Abstract: Generally, quality software production seeks timely delivery with higher productivity at lower cost. Redundancy in a test suite raises the execution cost and wastes scarce project resources. In model-based testing, the testing process starts with earlier software developmental phases and enables fault detection in earlier phases. The redundancy in the test suites generated from models can be detected earlier as well and removed prior to its execution. The paper presents a novel max-min multiobjective technique incorporated into a test suite optimization framework to find a better trade-off between the intrinsically conflicting goals. For illustration two objectives i.e. coverage and size of a test suite were used however it can be extended to more objectives. The study is associated with model based testing and reports the results of the empirical analysis on four UML based synthetic as well as industrial Activity Diagram models. | ||||||
BibTeX:
@inproceedings{FarooqL09,
author = {Usman Farooq and Chiou Peng Lam},
title = {A Max-Min Multiobjective Technique to Optimize Model Based Test Suite},
booktitle = {Proceedings of the 10th ACIS International Conference on Software Engineering, Artificial Intelligences, Networking and Parallel/Distributed Computing},
journal = {Software Engineering, Artificial Intelligence, Networking, and Parallel/Distributed Computing, ACIS International Conference on},
publisher = {IEEE},
year = {2009},
volume = {0},
pages = {569-574},
address = {Los Alamitos, CA, USA},
doi = {http://doi.ieeecomputersociety.org/10.1109/SNPD.2009.33}
}
|
||||||
| 2009.07.03 | Dongsun Kim & Sooyong Park | Reinforcement Learning-based Dynamic Adaptation Planning Method for Architecture-based Self-Managed Software | 2009 | Software Engineering for Adaptive and Self-Managing Systems, International Workshop onProceedings of 2009 ICSE Workshop on Software Engineering for Adaptive and Self-Managing Systems, Vol. 0, pp. 76-85, Los Alamitos CA USA | Inproceedings | |
| Abstract: Recently, software systems face dynamically changing environments, and the users of the systems provide changing requirements at run-time. Self-management is emerging to deal with these problems. One of the key issues to achieve self-management is planning for selecting appropriate structure or behavior of self-managed software systems. There are two types of planning in self-management: off-line and on-line planning. Recent discussion has focused on off-line planning which provides static relationships between environmental changes and software configurations. In on-line planning, a software system can autonomously derive mappings between environmental changes and software configurations by learning its dynamic environment and using its prior experience. In this paper, we propose a reinforcement learning-based approach to on-line planning in architecture-based self-management. This approach enables a software system to improve its behavior by learning the results of its behavior and by dynamically changing its plans based on the learning in the presence of environmental changes. The paper presents a case study to illustrate the approach and its result shows that reinforcement learning-based on-line planning is effective for architecture-based self-management. | ||||||
BibTeX:
@inproceedings{KimP09b,
author = {Dongsun Kim and Sooyong Park},
title = {Reinforcement Learning-based Dynamic Adaptation Planning Method for Architecture-based Self-Managed Software},
booktitle = {Proceedings of 2009 ICSE Workshop on Software Engineering for Adaptive and Self-Managing Systems},
journal = {Software Engineering for Adaptive and Self-Managing Systems, International Workshop on},
publisher = {IEEE},
year = {2009},
volume = {0},
pages = {76-85},
address = {Los Alamitos, CA, USA},
doi = {http://doi.ieeecomputersociety.org/10.1109/SEAMS.2009.5069076}
}
|
||||||
| 2009.07.03 | Raluca Lefticaru, Florentin Ipate, Marian Gheorghe & Gexiang Zhang | Tuning P Systems for Solving the Broadcasting Problem | 2009 | Proceedings of the Tenth Workshop on Membrane Computing (WMC10), pp. 337-354 | Inproceedings | |
| Abstract: P systems are employed in various contexts to specify or model different problems. In certain cases the system is not entirely known. In this paper we will consider the broadcasting algorithm and present a method to determine the format of the rules of the P system utilised to specify the algorithm. | ||||||
BibTeX:
@inproceedings{LefticaruIGZ09,
author = {Raluca Lefticaru and Florentin Ipate and Marian Gheorghe and Gexiang Zhang},
title = {Tuning P Systems for Solving the Broadcasting Problem},
booktitle = {Proceedings of the Tenth Workshop on Membrane Computing (WMC10)},
year = {2009},
pages = {337-354},
url = {http://www.gcn.us.es/files/337broadcast_4.pdf}
}
|
||||||
| 2009.07.03 | Per Kristian Lehre & Xin Yao | On the Impact of Mutation-Selection Balance on the Runtime of Evolutionary Algorithms | 2009 | (CSR-09-07), August | Techreport | General Aspects and Survey |
| Abstract: The interplay between the mutation operator and the selection mechanism plays a fundamental role in the behaviour of evolutionary algorithms (EAs). However, this interplay is still not completely understood. This paper presents a rigorous runtime analysis of a non-elitistic population based EA that uses the linear ranking selection mechanism. The analysis focuses on how the balance between parameter $eta$ controlling the selection pressure in linear ranking selection, and parameter $chi$ controlling the bit-wise mutation rate impact the expected runtime. The results point out situations where a correct balance between selection pressure and mutation rate is essential for finding the optimal solution in polynomial time. In particular, it is shown that there exist fitness functions which can only be solved in polynomial time if the ratio between parameters $eta$ and $chi$ is within a narrow critical interval, and where a small change in this ratio can increase the runtime exponentially. Furthermore, it is shown that the appropriate parameter choice depends on the characteristics of the fitness function. Hence there does in general not exists a problem-independent optimal balance between mutation rate and selection pressure. In addition to original results on EAs, this paper also introduces for the first time new techniques, i.e., branching processes, to the analysis of non-elitist population-based EAs. | ||||||
BibTeX:
@techreport{Lehre09,
author = {Per Kristian Lehre and Xin Yao},
title = {On the Impact of Mutation-Selection Balance on the Runtime of Evolutionary Algorithms},
year = {2009},
number = {CSR-09-07},
month = {August},
url = {ftp://ftp.cs.bham.ac.uk/pub/tech-reports/2009/CSR-09-07.pdf}
}
|
||||||
| 2009.07.03 | Anne Martens, Franz Brosch & Ralf Reussner | Optimising Multiple Quality Criteria of Service-Oriented Software Architectures | 2009 | Proceedings of the 1st International Workshop on Quality of Service-Oriented Software Systems (QUASOSS), pp. 25-32 | Inproceedings | Design Tools and Techniques |
BibTeX:
@inproceedings{MartensBR09b,
author = {Anne Martens and Franz Brosch and Ralf Reussner},
title = {Optimising Multiple Quality Criteria of Service-Oriented Software Architectures},
booktitle = {Proceedings of the 1st International Workshop on Quality of Service-Oriented Software Systems (QUASOSS)},
publisher = {ACM, New York, NY, USA},
year = {2009},
pages = {25--32},
url = {http://sdqweb.ipd.uka.de/publications/pdfs/martens2009b.pdf},
doi = {http://doi.acm.org/10.1145/1596473.1596481}
}
|
||||||
| 2009.07.03 | Anne Martens & Heiko Koziolek | Performance-oriented Design Space Exploration | 2008 | Proceedings of the Thirteenth International Workshop on Component-Oriented Programming (WCOP'08),, pp. 25-32, Karlsruhe Germany | Inproceedings | Design Tools and Techniques |
BibTeX:
@inproceedings{MartensK08,
author = {Anne Martens and Heiko Koziolek},
title = {Performance-oriented Design Space Exploration},
booktitle = {Proceedings of the Thirteenth International Workshop on Component-Oriented Programming (WCOP'08),},
year = {2008},
pages = {25-32},
address = {Karlsruhe, Germany},
url = {http://sdqweb.ipd.uka.de/publications/pdfs/martens2008c.pdf}
}
|
||||||
| 2009.07.03 | Anne Martens & Heiko Koziolek | Automatic, Model-Based Software Performance Improvement for Component-based Software Designs | 2009 | Proceedings of the Sixth International Workshop on Formal Engineering approches to Software Components and Architectures (FESCA 2009), Vol. 253(1), pp. 77-93 | Inproceedings | Design Tools and Techniques |
| Abstract: Formal performance prediction methods, based on queueing network models, allow evaluating software architectural designs for performance. Existing methods provide prediction results such as response times and throughputs, but do not guide the software architect on how to improve the design. We propose a novel approach to optimise the expected performance of component-based software designs by automatically generating and evaluating design alternatives. The design space spanned by different design options (e.g. available components and configuration options) is systematically explored using metaheuristic search techniques and performance-domain heuristics. The gap between applying formal performance predictions and actually improving the design of a system can thus be closed. This paper presents a formal description and a prototypical implementation of our approach with a proof-of-concept case study. | ||||||
BibTeX:
@inproceedings{MartensK09a,
author = {Anne Martens and Heiko Koziolek},
title = {Automatic, Model-Based Software Performance Improvement for Component-based Software Designs},
booktitle = {Proceedings of the Sixth International Workshop on Formal Engineering approches to Software Components and Architectures (FESCA 2009)},
publisher = {Elsevier},
year = {2009},
volume = {253},
number = {1},
pages = {77-93},
url = {http://sdqweb.ipd.uka.de/publications/pdfs/martens2009a.pdf},
doi = {http://dx.doi.org/10.1016/j.entcs.2009.09.029}
}
|
||||||
| 2009.07.03 | Anne Martens, Heiko Koziolek, Steffen Becker & Ralf H. Reussner | Automatically Improve Software Models for Performance, Reliability and Cost Using Genetic Algorithms | 2010 | Proceedings of the 1st Joint WOSP/SIPEW International Conference on Performance Engineering (WOSP/SIPEW '10), New York NY USA | Inproceedings | Design Tools and Techniques |
BibTeX:
@inproceedings{MartensKBR10,
author = {Anne Martens and Heiko Koziolek and Steffen Becker and Ralf H. Reussner},
title = {Automatically Improve Software Models for Performance, Reliability and Cost Using Genetic Algorithms},
booktitle = {Proceedings of the 1st Joint WOSP/SIPEW International Conference on Performance Engineering (WOSP/SIPEW '10)},
publisher = {ACM},
year = {2010},
address = {New York, NY, USA},
url = {http://sdqweb.ipd.uka.de/publications/pdfs/martens2010a.pdf}
}
|
||||||
| 2009.07.03 | Xun Yuan, Myra B. Cohen & Atif M. Memon | Towards Dynamic Adaptive Automated Test Generation for Graphical User Interfaces | 2009 | Software Testing Verification and Validation Workshop, IEEE International Conference onProceedings of IEEE International Conference on Software Testing, Verification, and Validation Workshops, Vol. 0, pp. 263-266, Denver Colorado, 1-4 April | Inproceedings | Testing and Debugging |
| Abstract: Graphical user interfaces (GUIs) present an enormous number of potential event sequences to users. During testing it is necessary to cover this space, however the complexity of modern GUIs has made this an increasingly difficult task. Our past work has demonstrated that it is important to incorporate ``context'' into GUI test cases, in terms of event combinations, event sequence length, and by considering all possible starting and ending positions for each event. Despite the use of our most refined modeling techniques, many of the generated test cases remain unexecutable. In this paper, we posit that due to the dynamic state-based nature of GUIs, it is important to incorporate feedback from the execution of tests into test case generation algorithms. We propose the use of an evolutionary algorithm to generate test suites with fewer unexecutable test cases and higher event interaction coverage. | ||||||
BibTeX:
@inproceedings{YuanCM09,
author = {Xun Yuan and Myra B. Cohen and Atif M. Memon},
title = {Towards Dynamic Adaptive Automated Test Generation for Graphical User Interfaces},
booktitle = {Proceedings of IEEE International Conference on Software Testing, Verification, and Validation Workshops},
journal = {Software Testing Verification and Validation Workshop, IEEE International Conference on},
publisher = {IEEE},
year = {2009},
volume = {0},
pages = {263-266},
address = {Denver, Colorado},
month = {1-4 April},
doi = {http://doi.ieeecomputersociety.org/10.1109/ICSTW.2009.26}
}
|
||||||
| 2009.05.25 | K. Derderian, M.G. Merayo, R.M. Hierons & M. Nónez | Aiding Test Case Generation in Temporally Constrained State based Systems using Genetic Algorithms | 2009 | Proceedings of the 10th International Work-Conference on Artificial Neural Networks (IWANN '09) | Inproceedings | Testing and Debugging |
| Abstract: Generating test data is computationally expensive. This paper improves a framework that addresses this issue by representing the test data generation problem as an optimisation problem and uses heuristics to help generate test cases. The paper considers the temporal constraints and behaviour of a certain class of (timed) finite state machines. A very simple fitness function is defined that can be used with several evolutionary search techniques and automated test case generation tools. An extended version of this paper, including a case study, can be found in [1]. Research supported by the Spanish projects WEST/FAST (TIN2006-15578-C02-01) and MATES (CCG08-UCM/TIC-4124). |
||||||
BibTeX:
@inproceedings{DerderianMHN09,
author = {K. Derderian and M. G. Merayo and R. M. Hierons and M. Nónez},
title = {Aiding Test Case Generation in Temporally Constrained State based Systems using Genetic Algorithms},
booktitle = {Proceedings of the 10th International Work-Conference on Artificial Neural Networks (IWANN '09)},
year = {2009},
doi = {http://dx.doi.org/10.1007/978-3-642-02478-8_41}
}
|
||||||
| 2009.05.25 | AbdulSalam Kalaji, Robert M. Hierons & Stephen Swift | A Search-Based Approach for Automatic Test Generation from Extended Finite State Machine (EFSM) | 2009 | Proceedings of Testing: Academia & Industry Conference - Practice And Research Techniques (TAIC-PART '09), pp. 131-132, Windsor UK, 4-6 September | Inproceedings | Testing and Debugging |
BibTeX:
@inproceedings{KalajiHS09b,
author = {AbdulSalam Kalaji and Robert M. Hierons and Stephen Swift},
title = {A Search-Based Approach for Automatic Test Generation from Extended Finite State Machine (EFSM)},
booktitle = {Proceedings of Testing: Academia & Industry Conference - Practice And Research Techniques (TAIC-PART '09)},
publisher = {IEEE},
year = {2009},
pages = {131-132},
address = {Windsor, UK},
month = {4-6 September},
doi = {http://dx.doi.org/10.1109/TAICPART.2009.19}
}
|
||||||
| 2009.05.25 | Witold Pedrycz & Giancarlo Succi | Genetic Granular Classifiers in Modeling Software Quality | 2005 | Journal of Systems and Software, Vol. 76(3), pp. 277-285, June | Article | Management |
| Abstract: Hyperbox classifiers are one of the most appealing and intuitively transparent classification schemes. As the name itself stipulates, these classifiers are based on a collection of hyperboxes––generic and highly interpretable geometric descriptors of data belonging to a given class. The hyperboxes translate into conditional statements (rules) of the form “if feature1 is in [a, b] and feature2 is in [d, f] and … and featuren is in [w, z] then class ω” where the intervals ([a, b], … , [w, z]) are the respective edges of the hyperbox. The proposed design process of hyperboxes comprises of two main phases. In the first phase, a collection of “seeds” of the hyperboxes is formed through data clustering (realized by means of the Fuzzy C-Means algorithm, FCM). In the second phase, the hyperboxes are “grown” (expanded) by applying mechanisms of genetic optimization (and genetic algorithm, in particular). We reveal how the underlying geometry of the hyperboxes supports an immediate interpretation of software data concerning software maintenance and dealing with rules describing a number of changes made to software modules and their linkages with various software measures (such as size of code, McCabe cyclomatic complexity, number of comments, number of characters, etc.). | ||||||
BibTeX:
@article{PedryczS05,
author = {Witold Pedrycz and Giancarlo Succi},
title = {Genetic Granular Classifiers in Modeling Software Quality},
journal = {Journal of Systems and Software},
year = {2005},
volume = {76},
number = {3},
pages = {277-285},
month = {June},
doi = {http://dx.doi.org/10.1016/j.jss.2004.06.018}
}
|
||||||
| 2009.05.25 | R. Vivanco | Improving Predictive Models of Software Quality using An Evolutionary Computational Approach | 2007 | Proceedings of the IEEE International Conference on Software Maintenance (ICSM '07), pp. 503-504 | Inproceedings | Management |
| Abstract: Predictive models can be used to identify components as potentially problematic for future maintenance. Source code metrics can be used as input features to classifiers, however, there exist a large number of structural measures that capture different aspects of coupling, cohesion, inheritance, complexity and size. Feature selection is the process of identifying a subset of attributes that improves a classifier's performance. The focus of this study is to explore the efficacy of a genetic algorithm as a method of improving a classifier's ability to identify problematic components. | ||||||
BibTeX:
@inproceedings{Vivanco07,
author = {R. Vivanco},
title = {Improving Predictive Models of Software Quality using An Evolutionary Computational Approach},
booktitle = {Proceedings of the IEEE International Conference on Software Maintenance (ICSM '07)},
year = {2007},
pages = {503-504},
doi = {http://dx.doi.org/10.1109/ICSM.2007.4362671}
}
|
||||||
| 2009.05.14 | Richard Torkar Wasif Afzal & Robert Feldt | Search-Based Prediction of Fault Count Data | 2009 | Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09), pp. 35-38, Cumberland Lodge Windsor UK, 13-15 May | Inproceedings | Testing and Debugging |
| Abstract: Symbolic regression, an application domain of genetic programming (GP), aims to find a function whose output has some desired property, like matching target values of a particular data set. While typical regression involves finding the coefficients of a pre-defined function, symbolic regression finds a general function, with coefficients, fitting the given set of data points. The concepts of symbolic regression using genetic programming can be used to evolve a model for fault count predictions. Such a model has the advantages that the evolution is not dependent on a particular structure of the model and is also independent of any assumptions, which are common in traditional time-domain parametric software reliability growth models. This research aims at applying experiments targeting fault predictions using genetic programming and comparing the results with traditional approaches to compare efficiency gains. | ||||||
BibTeX:
@inproceedings{AfzalTF09b,
author = {Wasif Afzal, Richard Torkar and Robert Feldt},
title = {Search-Based Prediction of Fault Count Data},
booktitle = {Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09)},
publisher = {IEEE},
year = {2009},
pages = {35-38},
address = {Cumberland Lodge, Windsor, UK},
month = {13-15 May},
doi = {http://dx.doi.org/10.1109/SSBSE.2009.17}
}
|
||||||
| 2009.05.14 | Andrea Arcuri | On Search Based Software Evolution | 2009 | Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09), pp. 39-42, Cumberland Lodge Windsor UK, 13-15 May | Inproceedings | Testing and Debugging |
| Abstract: Writing software is a difficult and expensive task. Its automation is hence very valuable. Search algorithms have been successfully used to tackle many software engineering problems. Unfortunately, for some problems the traditional techniques have been of only limited scope, and search algorithms have not been used yet. We hence propose a novel framework that is based on a co-evolution of programs and test cases to tackle these difficult problems.This framework can be used to tackle software engineering tasks such as Automatic Refinement, Fault Correction,Improving Non-functional Criteria and Reverse Engineering.While the programs evolve to accomplish one of these tasks, test cases are co-evolved at the the same time to find new faults in the evolving programs. | ||||||
BibTeX:
@inproceedings{Arcuri09,
author = {Andrea Arcuri},
title = {On Search Based Software Evolution},
booktitle = {Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09)},
publisher = {IEEE},
year = {2009},
pages = {39-42},
address = {Cumberland Lodge, Windsor, UK},
month = {13-15 May},
doi = {http://dx.doi.org/10.1109/SSBSE.2009.12}
}
|
||||||
| 2009.05.14 | Andrea Arcuri | Full Theoretical Runtime Analysis of Alternating Variable Method on the Triangle Classification Problem | 2009 | Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09), pp. 113-121, Cumberland Lodge Windsor UK, 13-15 May | Inproceedings | Testing and Debugging |
| Abstract: Runtime Analysis is a type of theoretical investigation that aims to determine, via rigorous mathematical proofs,the time a search algorithm needs to find an optimal solution.This type of investigation is useful to understand why a search algorithm could be successful, and it gives insight of how search algorithms work. In previous work,we proved the runtimes of different search algorithms on the test data generation for the Triangle Classification (TC)problem. We theoretically proved that Alternating Variable Method (AVM) has the best performance on the coverage of the most difficult branch in our empirical study. In this paper,we prove that the runtime of AVM on all the branches of TC is O((log n)2). That is necessary and sufficient to prove that AVM has a better runtime on TC compared to the other search algorithms we previously analysed. The theorems in this paper are useful for future analyses. In fact, to state theta search algorithm has worse runtime compared to AVM, it will be just sufficient to prove that its lower bound is higher than Ω((log n)2) on the coverage of at least one branch of TC. | ||||||
BibTeX:
@inproceedings{Arcuri09b,
author = {Andrea Arcuri},
title = {Full Theoretical Runtime Analysis of Alternating Variable Method on the Triangle Classification Problem},
booktitle = {Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09)},
publisher = {IEEE},
year = {2009},
pages = {113-121},
address = {Cumberland Lodge, Windsor, UK},
month = {13-15 May},
doi = {http://dx.doi.org/10.1109/SSBSE.2009.16}
}
|
||||||
| 2009.05.14 | Thang H. Bui & Albert Nymeyer | Formal Model Simulation: Can it be Guided? | 2009 | Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09), pp. 93-96, Cumberland Lodge Windsor UK, 13-15 May | Inproceedings | |
| Abstract: In this work we present an approach to system development that bridges the complementary worlds of model checking and simulation. This approach, which we refer to as formal model simulation, uses the same formal model as model checking, but instead of using a total search of the state space, we use a guided random-walk based search to find errors. The guide we use is a heuristic that can be derived from an abstract model of the system. We have implemented the technique in a tool called GRANSPIN, which is derived from the popular model checker SPIN. A series of experiments is outlined in this work using different selection strategies and different heuristics. We compare the performance of these different strategies and heuristics in GRANSPIN and SPIN on a buggy Peterson protocol. | ||||||
BibTeX:
@inproceedings{BuiN09,
author = {Thang H. Bui and Albert Nymeyer},
title = {Formal Model Simulation: Can it be Guided?},
booktitle = {Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09)},
publisher = {IEEE},
year = {2009},
pages = {93-96},
address = {Cumberland Lodge, Windsor, UK},
month = {13-15 May},
doi = {http://dx.doi.org/10.1109/SSBSE.2009.19}
}
|
||||||
| 2009.05.14 | Vittorio Cortellessa & Pasqualina Potena | How Can Optimization Models Support the Maintenance of Component-Based Software? | 2009 | Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09), Cumberland Lodge Windsor UK, 13-15 May | Inproceedings | Distribution and Maintenance |
| Abstract: The maintenance phase of software systems is ever more increasing its incidence, in terms of effort, to the whole software lifecycle. Therefore the introduction of automated techniques that can help software maintainers to take decision on the basis of quantitative evaluation would be a suitable phenomenon.Search-based techniques offer today a very promising view on the automation of searching processes in the software engineering domain. Component-based software is a very interesting paradigm to apply such type of techniques, for example for component selection. In this paper we introduce optimization techniques to manage the problem of failures at maintenance time. In particular,we introduce two approaches that provide maintenance actions to betaken in order to overcome system failures in case of monitored and non-monitored software systems. | ||||||
BibTeX:
@inproceedings{CortellessaP09,
author = {Vittorio Cortellessa and Pasqualina Potena},
title = {How Can Optimization Models Support the Maintenance of Component-Based Software?},
booktitle = {Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09)},
publisher = {IEEE},
year = {2009},
address = {Cumberland Lodge, Windsor, UK},
month = {13-15 May},
doi = {http://dx.doi.org/10.1109/SSBSE.2009.22}
}
|
||||||
| 2009.05.14 | Juan J. Durillo, Yuanyuan Zhang, Enrique Alba & Antonio J. Nebro | A Study of the Multi-Objective Next Release Problem | 2009 | Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09), pp. 49-58, Cumberland Lodge Windsor UK, 13-15 May | Inproceedings | Requirements/Specifications |
| Abstract: One of the first issues which has to be taken into account by software companies is to determine what should be included in the next release of their products, in such a way that the highest possible number of customers get satisfied while this entails a minimum cost for the company. This problem is known as the Next Release Problem (NRP). Since minimizing the total cost of including new features into a software package and maximizing the total satisfaction of customers are contradictory objectives, the problem has a multi-objective nature. In this work we study the NRP problem from the multi-objective point of view, paying attention to the quality of the obtained solutions, the number of solutions, the range of solutions covered by these fronts, and the number of optimal solutions obtained.Also, we evaluate the performance of two state-of-the-art multi-objective metaheuristics for solving NRP: NSGA-II and MOCell. The obtained results show that MOCell outperforms NSGA-II in terms of the range of solutions covered, while this latter is able of obtaining better solutions than MOCell in large instances. Furthermore, we have observed that the optimal solutions found are composed of a high percentage of low-cost requirements and, also, the requirements that produce most satisfaction on the customers. | ||||||
BibTeX:
@inproceedings{DurilloZAN09,
author = {Juan J. Durillo and Yuanyuan Zhang and Enrique Alba and Antonio J. Nebro},
title = {A Study of the Multi-Objective Next Release Problem},
booktitle = {Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09)},
publisher = {IEEE},
year = {2009},
pages = {49-58},
address = {Cumberland Lodge, Windsor, UK},
month = {13-15 May},
doi = {http://dx.doi.org/10.1109/SSBSE.2009.21}
}
|
||||||
| 2009.05.14 | Myra B. Cohen Brady J. Garvin & Matthew B. Dwyer | An Improved Meta-Heuristic Search for Constrained Interaction Testing | 2009 | Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09), pp. 13-22, Cumberland Lodge Windsor UK, 13-15 May | Inproceedings | Testing and Debugging |
| Abstract: Combinatorial interaction testing (CIT) is a cost-effective sampling technique for discovering interaction faults in highly configurable systems. Recent work with greedy CIT algorithms efficiently supports constraints on the features that can coexist in a configuration. But when testing a single system configuration is expensive, greedy techniques perform worse than meta-heuristic algorithms because they produce larger samples. Unfortunately, current meta-heuristic algorithms are inefficient when constraints are present. We investigate the sources of inefficiency, focusing on simulated annealing, a well-studied meta-heuristic algorithm. From our findings we propose changes to improve performance, including a reorganized search space based on the CIT problem structure. Our empirical evaluation demonstrates that the optimizations reduce run-time by three orders of magnitude and yield smaller samples. Moreover, on real problems the new version compares favorably with greedy algorithms. | ||||||
BibTeX:
@inproceedings{GarvinCD09,
author = {Brady J. Garvin, Myra B. Cohen and Matthew B. Dwyer},
title = {An Improved Meta-Heuristic Search for Constrained Interaction Testing},
booktitle = {Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09)},
publisher = {IEEE},
year = {2009},
pages = {13-22},
address = {Cumberland Lodge, Windsor, UK},
month = {13-15 May},
doi = {http://dx.doi.org/10.1109/SSBSE.2009.25}
}
|
||||||
| 2009.05.14 | Kamran Ghani & John A. Clark | Widening the Goal Posts: Program Stretching to Aid Search Based Software Testing | 2009 | Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09), Cumberland Lodge Windsor UK, 13-15 May | Inproceedings | Testing and Debugging |
| Abstract: Search based software testing has emerged in recent years as an important research area within automated software test data generation. The general approach of couching the satisfaction of test goals as numerical optimisation problems has been applied to a variety of problems such as satisfying structural coverage criteria, specification falsification, exception generation, | ||||||
BibTeX:
@inproceedings{GhaniC09,
author = {Kamran Ghani and John A. Clark},
title = {Widening the Goal Posts: Program Stretching to Aid Search Based Software Testing},
booktitle = {Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09)},
publisher = {IEEE},
year = {2009},
address = {Cumberland Lodge, Windsor, UK},
month = {13-15 May},
doi = {http://dx.doi.org/10.1109/SSBSE.2009.26}
}
|
||||||
| 2009.05.14 | Ahmed S. Ghiduk | Guiding the Search-Based Testing via Dominances vs. Control Dependencies | 2009 | Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09), Cumberland Lodge Windsor UK, 13-15 May | Inproceedings | Testing and Debugging |
| Abstract: The representation of the problem and the definition of the fitness function are the two key ingredients for the application of search-based optimization to software engineering problems. Therefore, a well-defined fitness function is essential to the effectiveness of search-based testing (SBT). Several search based test-data generation techniques utilized the control dependencies (CD) for guiding the search to find tests. Ghiduk et al. presented a search-based technique that utilizes the dominances to direct the search to generate test data. In this paper, we illustrate the efficiency of dominances in the control-flow graph (CFG) in guiding the SBT. The paper gives some problems for SBT which is guided by the CD. The paper introduces a general form for a fitness function in terms of dominances nodes and postdominances. This function will improve the efficiency of the search consequently; the SBT overcomes the CD problems. | ||||||
BibTeX:
@inproceedings{Ghiduk09,
author = {Ahmed S. Ghiduk},
title = {Guiding the Search-Based Testing via Dominances vs. Control Dependencies},
booktitle = {Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09)},
publisher = {IEEE},
year = {2009},
address = {Cumberland Lodge, Windsor, UK},
month = {13-15 May},
url = {http://www.ssbse.org/2009/fa/ssbse2009_submission_27.pdf}
}
|
||||||
| 2009.05.14 | AbdulSalam Kalaji, Robert M. Hierons & Stephen Swift | A Testability Transformation Approach for State-Based Programs | 2009 | Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09), pp. 85-88, Cumberland Lodge Windsor UK, 13-15 May | Inproceedings | Testing and Debugging |
| Abstract: Search based testing approaches are efficient in test data generation; however they are likely to perform poorly when applied to programs with state variables. The problem arises when the target function includes guards that reference some of the program state variables whose values depend on previous function calls. Thus, merely considering the target function to derive test data is not sufficient. This paper introduces a testability transformation approach based on the analysis of control and data flow dependencies to bypass the state variable problem. It achieves this by eliminating state variables from guards and/ or determining which functions to call in order to satisfy guards with state variables. A number of experiments demonstrate the value of the proposed approach. | ||||||
BibTeX:
@inproceedings{KalajiHS09,
author = {AbdulSalam Kalaji and Robert M. Hierons and Stephen Swift},
title = {A Testability Transformation Approach for State-Based Programs},
booktitle = {Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09)},
publisher = {IEEE},
year = {2009},
pages = {85-88},
address = {Cumberland Lodge, Windsor, UK},
month = {13-15 May},
doi = {http://dx.doi.org/10.1109/SSBSE.2009.14}
}
|
||||||
| 2009.05.14 | Usman Khan & Iain Bate | WCET Analysis of Modern Processors using Multi-Criteria Optimisation | 2009 | Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09), Cumberland Lodge Windsor UK, 13-15 May | Inproceedings | |
| Abstract: The Worst-Case Execution Time (WCET) is an important execution metric for real-time systems, and an accurate estimate for this increases the reliability of subsequent schedulability analysis. Performance enhancing features on modern processors, such as pipelines and caches, however, make it difficult to accurately predict the WCET. One technique for finding the WCET is to use test data generated using search algorithms. Existing work on search-based approaches has been successfully used in both industry and academia based on a single criterion function, the WCET, but only for simple processors. This paper investigates how effective this strategy is for more complex processors and to what extent other criteria help guide the search, e.g. the number of cache misses. Not unexpectedly the work shows no single choice of criteria work best across all problems. Based on the findings recommendations are proposed on which criteria are useful in particular situations. | ||||||
BibTeX:
@inproceedings{KhanB09,
author = {Usman Khan and Iain Bate},
title = {WCET Analysis of Modern Processors using Multi-Criteria Optimisation},
booktitle = {Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09)},
publisher = {IEEE},
year = {2009},
address = {Cumberland Lodge, Windsor, UK},
month = {13-15 May},
doi = {http://dx.doi.org/10.1109/SSBSE.2009.20}
}
|
||||||
| 2009.05.14 | Dongsun Kim & Sooyong Park | Dynamic Architectural Selection: A Genetic Algorithm Based Approach | 2009 | Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09), pp. 59-68, Cumberland Lodge Windsor UK, 13-15 May | Inproceedings | Distribution and Maintenance |
| Abstract: As the software industry is focusing on dealing with various requirements and environments, such as mobile and ubiquitous environments, software systems are increasingly undergoing many situational changes. These changes influence the quality of services that the software provides. Therefore, to maintain the performance of the software, it must be reconfigured. The reconfiguration is a complex problem if an application faces a large number of situations and has a number of software architectural instances. In this paper, we propose a novel approach to autonomous architectural selection in response to the current situation of various environments. This approach enables a software system to determine the best architectural instance for the current situation. To quickly find the best instance, we apply a genetic algorithm to the selection process. Further, we provide a performance evaluation to demonstrate that our approach efficiently find the best instance (or considerably good instance). | ||||||
BibTeX:
@inproceedings{KimP09,
author = {Dongsun Kim and Sooyong Park},
title = {Dynamic Architectural Selection: A Genetic Algorithm Based Approach},
booktitle = {Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09)},
publisher = {IEEE},
year = {2009},
pages = {59-68},
address = {Cumberland Lodge, Windsor, UK},
month = {13-15 May},
doi = {http://dx.doi.org/10.1109/SSBSE.2009.11}
}
|
||||||
| 2009.05.14 | Giuliano Antoniol Segla Kpodjedo, Filippo Ricca & Philippe Galinier | Evolution and Search Based Metrics to Improve Defects Prediction | 2009 | Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09), pp. 23-32, Cumberland Lodge Windsor UK, 13-15 May | Inproceedings | Metrics |
| Abstract: Testing activity is the most widely adopted practice to ensure software quality. Testing effort should be focused on defect prone and critical resources i.e., on resources highly coupled with other entities of the software application.In this paper, we used search based techniques to define software metrics accounting for the role a class plays in the class diagram and for its evolution over time. We applied Chidamber and Kemerer and the newly defined metrics to Rhino, a Java ECMA script interpreter, to predict version 1.6R5 defect prone classes. Preliminary results show that the new metrics favorably compare with traditional object oriented metrics. | ||||||
BibTeX:
@inproceedings{KpodjedoRAG09,
author = {Segla Kpodjedo, Filippo Ricca, Giuliano Antoniol and Philippe Galinier},
title = {Evolution and Search Based Metrics to Improve Defects Prediction},
booktitle = {Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09)},
publisher = {IEEE},
year = {2009},
pages = {23-32},
address = {Cumberland Lodge, Windsor, UK},
month = {13-15 May},
doi = {http://dx.doi.org/10.1109/SSBSE.2009.24}
}
|
||||||
| 2009.05.14 | Carolyn Mair & Martin J. Shepperd | Human vs Algorithm | 2009 | Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09), Cumberland Lodge Windsor UK, 13-15 May | Inproceedings | General Aspects and Survey |
| Abstract: We consider the roles of algorithm and human and their inter-relationships. As a vehicle for some of our ideas we describe an empirical investigation of software professionals using analogy-based tools and unaided search in order to solve various prediction problems. We conclude that there exist a class of software engineering problems which might be characterised as high value and low frequency where the human-algorithm interaction must be considered carefully if they are to be successfully deployed in industry. | ||||||
BibTeX:
@inproceedings{MairS09,
author = {Carolyn Mair and Martin J. Shepperd},
title = {Human vs Algorithm},
booktitle = {Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09)},
publisher = {IEEE},
year = {2009},
address = {Cumberland Lodge, Windsor, UK},
month = {13-15 May},
url = {http://www.ssbse.org/2009/fa/ssbse2009_submission_32.pdf}
}
|
||||||
| 2009.05.14 | Alessandro Marchetto & Paolo Tonella | Search-Based Testing of Ajax Web Applications | 2009 | Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09), pp. 3-12, Cumberland Lodge Windsor UK, 13-15 May | Inproceedings | Testing and Debugging |
| Abstract: Ajax is an emerging Web engineering technology that supports advanced interaction features that go beyond Webpage navigation. The Ajax technology is based on asynchronous communication with the Web server and direct manipulation of the GUI, taking advantage of reflection.Correspondingly, new classes of Web faults are associated with Ajax applications.In previous work, we investigated a state-based testing approach, based on semantically interacting events. The main drawback of this approach is that exhaustive generation of semantically interacting event sequences limits quite severely the maximum achievable length, while longer sequences would have higher fault exposing capability. In this paper, we investigate a search-based algorithm for the exploration of the huge space of long interaction sequences, in order to select those that are most promising, based on a measure of test case diversity. | ||||||
BibTeX:
@inproceedings{MarchettoT09,
author = {Alessandro Marchetto and Paolo Tonella},
title = {Search-Based Testing of Ajax Web Applications},
booktitle = {Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09)},
publisher = {IEEE},
year = {2009},
pages = {3-12},
address = {Cumberland Lodge, Windsor, UK},
month = {13-15 May},
doi = {http://dx.doi.org/10.1109/SSBSE.2009.13}
}
|
||||||
| 2009.05.14 | Marcio Barros Fernando Netto & Adriana Alvim | A Hybrid Heuristic Approach for Scheduling Bug Fix Tasks to Software | 2009 | Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09), Cumberland Lodge Windsor UK, 13-15 May | Inproceedings | Management |
| Abstract: Large software projects usually maintain bug repositories where both developers and end users can report and track the resolution of software defects. These defects must be fixed and new versions of the software incorporating the patches that solve them must be released. The project manager must schedule a set of error correction tasks with different priorities in order to minimize the time required to make the next release available and guarantee that the more important issues were fixed. In this paper, we propose a hybrid heuristic approach based on an algorithm to schedule error correction tasks which combines a genetic algorithm and a constructive heuristic. We believe that our method can propose schedules for bug fix tasks with lower cost when compared to an adhoc schedule for non-trivial projects. | ||||||
BibTeX:
@inproceedings{NettoBA09,
author = {Fernando Netto, Marcio Barros and Adriana Alvim},
title = {A Hybrid Heuristic Approach for Scheduling Bug Fix Tasks to Software},
booktitle = {Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09)},
publisher = {IEEE},
year = {2009},
address = {Cumberland Lodge, Windsor, UK},
month = {13-15 May},
url = {http://www.ssbse.org/2009/fa/ssbse2009_submission_28.pdf}
}
|
||||||
| 2009.05.14 | Hareton Leung Changhai Nie & Baowen Xu | Using Computational Search to Generate 2-Way Covering Array | 2009 | Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09), Cumberland Lodge Windsor UK, 13-15 May | Inproceedings | Testing and Debugging |
| Abstract: no abstract | ||||||
BibTeX:
@inproceedings{NieLX09,
author = {Changhai Nie, Hareton Leung and Baowen Xu},
title = {Using Computational Search to Generate 2-Way Covering Array},
booktitle = {Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09)},
publisher = {IEEE},
year = {2009},
address = {Cumberland Lodge, Windsor, UK},
month = {13-15 May},
url = {http://www.ssbse.org/2009/fa/ssbse2009_submission_33.pdf}
}
|
||||||
| 2009.05.14 | Fawad Qayum & Reiko Heckel | Local Search-Based Refactoring as Graph Transformation | 2009 | Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09), pp. 43-46, Cumberland Lodge Windsor UK, 13-15 May | Inproceedings | Distribution and Maintenance |
| Abstract: To improve both performance/scalability and traceability/understandability of search-based refactoring, in this paper, we propose a local formulation of refactoring based on graph transformation. We use graphs to represent software architectures at the class level and graph transformation to formally describe their refactoring operations. This makes it possible to use concepts and techniques from the theory of graph transformation such as unfolding and critical pair analysis to identify dependencies between refactoring steps. As a result, we are able to express the search problem as an instance of the ant colony optimisation metaheuristic. | ||||||
BibTeX:
@inproceedings{QayumH09,
author = {Fawad Qayum and Reiko Heckel},
title = {Local Search-Based Refactoring as Graph Transformation},
booktitle = {Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09)},
publisher = {IEEE},
year = {2009},
pages = {43-46},
address = {Cumberland Lodge, Windsor, UK},
month = {13-15 May},
doi = {http://dx.doi.org/10.1109/SSBSE.2009.27}
}
|
||||||
| 2009.05.14 | D. Rodriguez, J.C. Riquelme, R. Ruiz & J.S. Aguilar-Ruiz | Searching for Rules to find Defective Modules in Unbalanced Datasets | 2009 | Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09), pp. 89-92, Cumberland Lodge Windsor UK, 13-15 May | Inproceedings | |
| Abstract: The characterisation of defective modules in software engineering remains a challenge. In this work, we use data mining techniques to search for rules that indicate modules with a high probability of being defective. Using data sets from the PROMISE repository, we first applied feature selection (attribute selection) to work only with those attributes from the data sets capable of predicting defective modules. With the reduced data set, a genetic algorithm is used to search for rules characterising modules with a high probability of being defective. This algorithm overcomes the problem of unbalanced data sets where the number of non-defective samples in the data set highly outnumbers the defective ones. | ||||||
BibTeX:
@inproceedings{RodriguezRRA09,
author = {D. Rodriguez and J.C. Riquelme and R. Ruiz, and J.S. Aguilar-Ruiz},
title = {Searching for Rules to find Defective Modules in Unbalanced Datasets},
booktitle = {Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09)},
publisher = {IEEE},
year = {2009},
pages = {89-92},
address = {Cumberland Lodge, Windsor, UK},
month = {13-15 May},
doi = {http://dx.doi.org/10.1109/SSBSE.2009.23}
}
|
||||||
| 2009.05.14 | José del Sagrado & Isabel María del Águila | Ant Colony Optimization for Requirement selection in Incremental Software development | 2009 | Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09), Cumberland Lodge Windsor UK, 13-15 May | Inproceedings | Requirements/Specifications |
| Abstract: no abstract | ||||||
BibTeX:
@inproceedings{SagradoA09,
author = {José del Sagrado and Isabel María del Águila},
title = {Ant Colony Optimization for Requirement selection in Incremental Software development},
booktitle = {Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09)},
publisher = {IEEE},
year = {2009},
address = {Cumberland Lodge, Windsor, UK},
month = {13-15 May},
url = {http://www.ssbse.org/2009/fa/ssbse2009_submission_30.pdf}
}
|
||||||
| 2009.05.14 | Edward Stehle Maxim Shevertalov, Jay Kothari & Spiros Mancoridis | On the Use of Discretized Source Code Metrics for Author Identification | 2009 | Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09), pp. 69-78, Cumberland Lodge Windsor UK, 13-15 May | Inproceedings | |
| Abstract: Intellectual property infringement and plagiarism litigation involving source code would be more easily resolved using code authorship identification tools. Previous efforts in this area have demonstrated the potential of determining the authorship of a disputed piece of source code automatically. This was achieved by using source code metrics to build a database of developer profiles, thus characterizing a population of developers. | ||||||
BibTeX:
@inproceedings{ShevertalovKSM09,
author = {Maxim Shevertalov, Jay Kothari, Edward Stehle and Spiros Mancoridis},
title = {On the Use of Discretized Source Code Metrics for Author Identification},
booktitle = {Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09)},
publisher = {IEEE},
year = {2009},
pages = {69-78},
address = {Cumberland Lodge, Windsor, UK},
month = {13-15 May},
doi = {http://dx.doi.org/10.1109/SSBSE.2009.18}
}
|
||||||
| 2009.05.14 | Joachim Wegener & Peter M. Kruse | Search-Based Testing with in-the-loop Systems | 2009 | Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09), pp. 81-84, Cumberland Lodge Windsor UK, 13-15 May | Inproceedings | Testing and Debugging |
| Abstract: With the continuously growing software and system complexity in electronic control units and shortening release cycles, the need for efficient testing grows. In order to perform testing of electronic control units in practice hardware-in-the-loop test environments are used to run the system under test in a simulation environment under real-time conditions. Tests are usually implemented manually. Even though a lot of academic work has shown the potential of evolutionary testing to fully automate testing for different testing objectives, it is not used in industrial practice. In this work we develop an integration of evolutionary testing with a testing platform supporting model-in-the-loop-, software-in-the-loop- and hardware-in-the-loop-testing of embedded systems.We demonstrate the use of evolutionary testing for functional testing in an industrial setting by applying the developed solution to the testing of an antilock-braking system electronic control unit. | ||||||
BibTeX:
@inproceedings{WegenerK09,
author = {Joachim Wegener and Peter M. Kruse},
title = {Search-Based Testing with in-the-loop Systems},
booktitle = {Proceedings of the 1st International Symposium on Search Based Software Engineering (SSBSE '09)},
publisher = {IEEE},
year = {2009},
pages = {81-84},
address = {Cumberland Lodge, Windsor, UK},
month = {13-15 May},
doi = {http://dx.doi.org/10.1109/SSBSE.2009.15}
}
|
||||||
| 2009.05.11 | Mark Harman, Jens Krinke, Jian Ren & Shin Yoo | Search Based Data Sensitivity Analysis Applied to Requirement Engineering | 2009 | Proceedings of the 11th Annual Conference on Genetic and Evolutionary Computation (GECCO '09), pp. 1681-1688, Montreal Canada, 8-12 July | Inproceedings | Requirements/Specifications |
| Abstract: Software engineering is plagued by problems associated with unreliable cost estimates. This paper introduces an approach to sensitivity analysis for requirements engineering. It uses Search-Based Software Engineering to aid the decision maker to explore sensitivity of the cost estimates of requirements for the Next Release Problem (NRP). The paper presents both single- and multi-objective formulation of NRP with empirical sensitivity analysis on synthetic and real-world data. The results show strong correlation between the level of inaccuracy and the impact on the selection of requirements, as well as between the cost of requirements and the impact, which is as intuitively expected. However, there also exist a few sensitive exceptions to these trends; the paper uses a heat-map style visualisation to reveal these exceptions which require careful consideration. The paper also shows that such unusually sensitivity patterns occur in real-world data and how the proposed approach clearly identifies them. | ||||||
BibTeX:
@inproceedings{HarmanKRY09,
author = {Mark Harman and Jens Krinke and Jian Ren and Shin Yoo},
title = {Search Based Data Sensitivity Analysis Applied to Requirement Engineering},
booktitle = {Proceedings of the 11th Annual Conference on Genetic and Evolutionary Computation (GECCO '09)},
publisher = {ACM},
year = {2009},
pages = {1681-1688},
address = {Montreal, Canada},
month = {8-12 July},
doi = {http://dx.doi.org/10.1145/1569901.1570126}
}
|
||||||
| 2009.04.30 | Pär Carlshamre | Release Planning in Market-Driven Software Product Development: Provoking an Understanding | 2002 | Requirements Engineering, Vol. 7(3), pp. 139-151 | Article | Requirements/Specifications |
BibTeX:
@article{Carlshamre02,
author = {Pär Carlshamre},
title = {Release Planning in Market-Driven Software Product Development: Provoking an Understanding},
journal = {Requirements Engineering},
year = {2002},
volume = {7},
number = {3},
pages = {139-151},
url = {http://link.springer.de/link/service/journals/00766/bibs/2007003/20070139.htm}
}
|
||||||
| 2009.04.29 | Vittorio Cortellessa, Fabrizio Marinelli & Pasqualina Potena | Automated Selection of Software Components Based on Cost/Reliability Tradeoff | 2006 | Proceedings of the 3rd European Workshop on Software Architecture (EWSA '06), Vol. 4344, pp. 66-81, Nantes France, 4-5 September | Inproceedings | Requirements/Specifications |
| Abstract: Functional criteria often drive the component selection in the assembly of a software system. Minimal distance strategies are frequently adopted to select the components that require minimal adaptation effort. This type of approach hides to developers the non-functional characteristics of components, although they may play a crucial role to meet the system specifications. In this paper we introduce the CODER framework, based on an optimization model, that supports "build-or-buy" decisions in selecting components. The selection criterion is based on cost minimization of the whole assembly subject to constraints on system reliability and delivery time. The CODER framework is composed by: an UML case tool, a model builder, and a model solver. The output of CODER indicates the components to buy and the ones to build, and the amount of testing to be performed on the latter in order to achieve the desired level of reliability. | ||||||
BibTeX:
@inproceedings{CortellessaMP06,
author = {Vittorio Cortellessa and Fabrizio Marinelli and Pasqualina Potena},
title = {Automated Selection of Software Components Based on Cost/Reliability Tradeoff},
booktitle = {Proceedings of the 3rd European Workshop on Software Architecture (EWSA '06)},
publisher = {Springer},
year = {2006},
volume = {4344},
pages = {66-81},
address = {Nantes, France},
month = {4-5 September},
doi = {http://dx.doi.org/10.1007/11966104_6}
}
|
||||||
| 2009.04.29 | Günther Ruhe & Moshood Omolade Saliu | The Art and Science of Software Release Planning | 2005 | IEEE Software, Vol. 22(6), pp. 47-53, November | Article | Requirements/Specifications |
| Abstract: Release planning is an important and integral part of any incremental product development. It addresses decisions related to selecting and assigning features to a consecutive product releases such that the plan meets important technical, resource, budget, and risk constraints. The authors describe and position the "art and science" of software RP. The "art of release planning" refers to relying on human intuition, communication, and capabilities to negotiate between conflicting objectives and constraints. The "science of release planning" refers to formalizing the problem and applying computational algorithms to generate best solutions. The authors propose a hybrid planning approach that integrates the strength of computational intelligence with the knowledge and experience of human experts. | ||||||
BibTeX:
@article{RuheS05b,
author = {Günther Ruhe and Moshood Omolade Saliu},
title = {The Art and Science of Software Release Planning},
journal = {IEEE Software},
year = {2005},
volume = {22},
number = {6},
pages = {47-53},
month = {November},
doi = {http://dx.doi.org/10.1109/MS.2005.164}
}
|
||||||
| 2009.04.28 | Thamer AlBourae, Günther Ruhe & Mahmood Moussavi | Lightweight Replanning of Software Product Releases | 2006 | Proceedings of the 1st International Workshop on Software Product Management (IWSPM '06), pp. 27-34, Minneapolis MN USA, 12-12 September | Inproceedings | Requirements/Specifications |
| Abstract: Well defined product features are the essence of good product management. High quality features lead to successful software products, both functionally and financially. One of the crucial processes in software product management is release planning where features are assigned to releases. Volatile features, resources and stakeholder preferences have been recognized as factors that decrease release quality. In this paper, we propose a lightweight replanning process model where old features are compared with newly added ones using the Analytical Hierarchy Process (AHP). Then, a greedy replan algorithm is applied to select the most promising features to accommodate changing market driven product demands. | ||||||
BibTeX:
@inproceedings{AlBouraeRM06,
author = {Thamer AlBourae and Günther Ruhe and Mahmood Moussavi},
title = {Lightweight Replanning of Software Product Releases},
booktitle = {Proceedings of the 1st International Workshop on Software Product Management (IWSPM '06)},
publisher = {IEEE},
year = {2006},
pages = {27-34},
address = {Minneapolis, MN, USA},
month = {12-12 September},
doi = {http://dx.doi.org/10.1109/IWSPM.2006.5}
}
|
||||||
| 2009.04.28 | C. Li, Marjan van den Akker, Sjaak Brinkkemper & Guido Diepen | Integrated Requirement Selection and Scheduling for the Release Planning of a Software Product | 2007 | Proceedings of the 13th International Working Conference on Requirements Engineering: Foundation for Software Quality (RefsQ '07), Vol. 4542, pp. 93-108, Trondheim Norway, 11-12 June | Inproceedings | Requirements/Specifications |
| Abstract: This paper investigates two integer linear programming models that integrate requirement scheduling into software release planning. The first model can schedule the development of the requirements for the new release exactly in time so that the project span is minimized and the resource and precedence constraints are satisfied. The second model is for combined requirement selection and scheduling, which can not only maximize revenues but also calculates an on-time-delivery project schedule simultaneously. Two simulations are presented to examine the influence of precedence constraints and compare the differences of the traditional prioritization models and the two new ones. The simulation results suggest that requirement dependency can significantly influence the project plan and the combined model for requirement selection and scheduling is better in the sense of efficiency and on-time delivery. | ||||||
BibTeX:
@inproceedings{LivBD07,
author = {C. Li and Marjan van den Akker and Sjaak Brinkkemper and Guido Diepen},
title = {Integrated Requirement Selection and Scheduling for the Release Planning of a Software Product},
booktitle = {Proceedings of the 13th International Working Conference on Requirements Engineering: Foundation for Software Quality (RefsQ '07)},
publisher = {Springer},
year = {2007},
volume = {4542},
pages = {93-108},
address = {Trondheim, Norway},
month = {11-12 June},
doi = {http://dx.doi.org/10.1007/978-3-540-73031-6_7}
}
|
||||||
| 2009.04.28 | Günther Ruhe & Des Greer | Quantitative Studies in Software Release Planning under Risk and Resource Constraints | 2003 | Proceedings of the International Symposium on Empirical Software Engineering (ISESE '03), pp. 262-270, Rome Italy, 29 September-4 October | Inproceedings | Requirements/Specifications |
| Abstract: Delivering software in an incremental fashionimplicitly reduces many of the risks associatedwith delivering large software projects. However,adopting a process, where requirements aredelivered in releases means decisions have to bemade on which requirements should be deliveredin which release. This paper describes a methodcalled EVOLVE+, based on a genetic algorithmand aimed at the evolutionary planning ofincremental software development. The method isinitially evaluated using a sample project. Theevaluation involves an investigation of the trade-offrelationship between risk and the overallbenefit. The link to empirical research is two-fold:Firstly, our model is based on interaction withindustry and randomly generated data for effortand risk of requirements. The results achieved thisway are the first step for a more comprehensiveevaluation using real-world data. Secondly, we tryto approach uncertainty of data by additionalcomputational effort providing more insight intothe problem solutions: (i) Effort estimates areconsidered to be stochastic variables following agiven probability function; (ii) Instead of offeringjust one solution, the L-best (L>1) solutions aredetermined. This provides support in finding themost appropriate solution, reflecting implicitpreferences and constraints of the actual decision-maker.Stability intervals are given to indicate thevalidity of solutions and to allow the problemparameters to be changed without adverselyaffecting the optimality of the solution. | ||||||
BibTeX:
@inproceedings{RuheG03,
author = {Günther Ruhe and Des Greer},
title = {Quantitative Studies in Software Release Planning under Risk and Resource Constraints},
booktitle = {Proceedings of the International Symposium on Empirical Software Engineering (ISESE '03)},
publisher = {IEEE},
year = {2003},
pages = {262-270},
address = {Rome, Italy},
month = {29 September-4 October},
doi = {http://dx.doi.org/10.1109/ISESE.2003.1237987}
}
|
||||||
| 2009.04.28 | Omolade Saliu & Günther Ruhe | Supporting Software Release Planning Decisions for Evolving Systems | 2005 | Proceedings of the 29th Annual IEEE/NASA on Software Engineering Workshop (SEW '05), pp. 14-26, Greenbelt Maryland USA, 6-7 April | Inproceedings | Requirements/Specifications |
| Abstract: Large-scale software systems constantly change during system evolution for feature enhancement. Most of the features originate from diverse stakeholders that require their needs to be met despite resource and risk constraints. In such large systems, the number of features requested during the different releases of the system typically exceeds the available resources. Release planning involves decision making about what new features or changes to implement during which release of the software. Existing release planning techniques are not targeted at evolving systems; in this case, knowledge about existing software product is core to making meaningful release decisions. In this paper, we describe ten key technical and nontechnical aspects impacting release planning. Based on these aspects, we evaluate seven existing release planning methods. We have also proposed a new release planning framework that considers the effect of existing system characteristics on release planning decisions. Initial realization of this framework focuses on historical defect data to characterize the health of system components. This proposed approach extends the existing solution method called EVOLVE* by (i) the proactive analysis of the risk involved in integrating new features into existing components of the system and (ii) identifying the importance of estimating the integration effort for each feature based on system characteristics. An illustrative example is also presented. | ||||||
BibTeX:
@inproceedings{SaliuR05a,
author = {Omolade Saliu and Günther Ruhe},
title = {Supporting Software Release Planning Decisions for Evolving Systems},
booktitle = {Proceedings of the 29th Annual IEEE/NASA on Software Engineering Workshop (SEW '05)},
publisher = {IEEE},
year = {2005},
pages = {14-26},
address = {Greenbelt, Maryland, USA},
month = {6-7 April},
doi = {http://dx.doi.org/10.1109/SEW.2005.42}
}
|
||||||
| 2009.04.28 | Moshood Omolade Saliu & Günther Ruhe | Bi-Objective Release Planning for Evolving Software Systems | 2007 | Proceedings of the 6th joint meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software Engineering, pp. 105-114, Dubrovnik Croatia, 3-7 September | Inproceedings | Requirements/Specifications |
| Abstract: The release planning (RP) problem can be investigated from two dimensions -- what to release and when to release. We investigate the "what" to release decision in terms of which new features or change requests should be assigned and implemented in which releases of a software system. RP for evolving systems is challenging, because the new features might require changes to the existing system. A major drawback of existing RP methods is that, they do not consider the existing systems in making RP decisions. In this paper, we present a technique to detect coupling between features based on relatedness of the components that would implement the features. The components implementing the features are derived from change impact analysis. We integrate the results from feature coupling into a RP strategy that encourages the assignment of highly coupled features in the same release. This helps to avoid haphazard implementation of related features. We present a decision support approach that formulates the RP problem as a bi-objective optimization problem. Our Bi-Objective Release Planning for Evolving Systems (BORPES) is aimed at optimizing the value of release plans from both the business perspectives and the implementation perspectives. This paper presents BORPES in detail and reports on a proof-of-concept case study that investigates the applicability of the proposed approach. The bi-objective optimization offers a set of Pareto-optimal solutions. | ||||||
BibTeX:
@inproceedings{SaliuR07,
author = {Moshood Omolade Saliu and Günther Ruhe},
title = {Bi-Objective Release Planning for Evolving Software Systems},
booktitle = {Proceedings of the 6th joint meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software Engineering},
publisher = {ACM},
year = {2007},
pages = {105-114},
address = {Dubrovnik, Croatia},
month = {3-7 September},
doi = {http://dx.doi.org/10.1145/1287624.1287641}
}
|
||||||
| 2009.04.28 | Marjan van den Akker, Sjaak Brinkkemper, Guido Diepen & Johan Versendaal | Flexible Release Composition using Integer Linear Programming | 2004 | (UU-CS-2004-063), December | Techreport | Requirements/Specifications |
| Abstract: For software vendors, the process to determine the requirements for the next release of a software product is often difficult. In this paper we present a mathematical formalization of release composition with a corresponding optimization tool that aims to support product managers and development project managers during release planning. The tool is based on integer linear programming and assumes that an optimal set of requirements is the set with maximum projected revenue against available resources in a given time period. The input for the optimization is twofold. Input data like the list of candidate requirements, estimated revenue and required team resources per requirement, whether or not a requirement is mandatory, comprise the first type of input. Secondly, several managerial steering mechanisms provide flexibility in the optimization environment: team composition, permitting of team transfers, extension of deadlines, and hiring external resources. Through experiments based on real-life data we make a sound case for the applicability of our proposal. | ||||||
BibTeX:
@techreport{vandenAkkerBDV04,
author = {Marjan van den Akker and Sjaak Brinkkemper and Guido Diepen and Johan Versendaal},
title = {Flexible Release Composition using Integer Linear Programming},
year = {2004},
number = {UU-CS-2004-063},
month = {December},
url = {http://igitur-archive.library.uu.nl/math/2006-1220-201956/akker_04_flexible_release.pdf}
}
|
||||||
| 2009.04.28 | Marjan van den Akker, Sjaak Brinkkemper, Guido Diepen & Johan Versendaal | Flexible Release Planning using Integer Linear Programming | 2005 | Proceedings of the 11th International Workshop on Requirements Engineering for Software Quality (RefsQ '05), pp. 247-262, Porto Portugal, 13-14 June | Inproceedings | Requirements/Specifications |
BibTeX:
@inproceedings{vandenAkkerBDV05,
author = {Marjan van den Akker and Sjaak Brinkkemper and Guido Diepen and Johan Versendaal},
title = {Flexible Release Planning using Integer Linear Programming},
booktitle = {Proceedings of the 11th International Workshop on Requirements Engineering for Software Quality (RefsQ '05)},
publisher = {Essener Informatik Beitrage},
year = {2005},
pages = {247-262},
address = {Porto, Portugal},
month = {13-14 June},
url = {http://www.sse.uni-essen.de/refsq/downloads/17.pdf}
}
|
||||||
| 2009.04.27 | A. Amandeep, Günther Ruhe & Mark Stanford | Intelligent Support for Software Release Planning | 2004 | Proceedings of the 5th International Conference on Product Focused Software Process Improvement (PROFES '04), Vol. 3009, pp. 248-262, Kansai Science City Japan, 5-8 April | Inproceedings | Requirements/Specifications |
| Abstract: One of the most prominent issues involved in incremental software development is to decide upon the most appropriate software release plans taking into account all explicit and implicit objectives and constraints. Such decisions have become even more complicated in the presence of large number of stakeholders such as different groups of users, managers, or developers. However, early involvement of customers and understanding of their real needs is one of the core success factors of software business [16]. This paper introduces a six step process model for release planning. It is inspired by the Quality Improvement Paradigm [2], as release planning is a learning and improvement process as well. Emphasis is on proposing the tool support implementing this process. The use of the intelligent decision support tool ReleasePlannerTM is presented by comparing a baseline scenario reflecting current state-of-the practice of release planning with a supposed improvement scenario obtained after usage of the tool. Initial experience from a real-world environment at iGrafx Corel Inc. is used to validate the improvement scenario. |
||||||
BibTeX:
@inproceedings{AmandeepRS04,
author = {A. Amandeep and Günther Ruhe and Mark Stanford},
title = {Intelligent Support for Software Release Planning},
booktitle = {Proceedings of the 5th International Conference on Product Focused Software Process Improvement (PROFES '04)},
publisher = {Springer},
year = {2004},
volume = {3009},
pages = {248-262},
address = {Kansai Science City, Japan},
month = {5-8 April},
url = {http://www.springerlink.com/content/lw41yym63p4j1ckd/}
}
|
||||||
| 2009.04.27 | Paul Baker, Mark Harman, Kathleen Steinhöfel & Alexandros Skaliotis | Search Based Approaches to Component Selection and Prioritization for the Next Release Problem | 2006 | Proceedings of the 22nd IEEE International Conference on Software Maintenance (ICSM '06), pp. 176-185, Philadelphia Pennsylvania, 24-27 September | Inproceedings | Requirements/Specifications |
| Abstract: This paper addresses the problem of determining the next set of releases in the course of software evolution. It formulates both ranking and selection of candidate software components as a series of feature subset selection problems to which search based software engineering can be applied. The approach is automated using greedy and simulated annealing algorithms and evaluated using a set of software components from the component base of a large telecommunications organisation. The results are compared to those obtained by a panel of (human) experts. The results show that the two automated approaches convincingly outperform the expert judgment approach. | ||||||
BibTeX:
@inproceedings{BakerHSS06,
author = {Paul Baker and Mark Harman and Kathleen Steinhöfel and Alexandros Skaliotis},
title = {Search Based Approaches to Component Selection and Prioritization for the Next Release Problem},
booktitle = {Proceedings of the 22nd IEEE International Conference on Software Maintenance (ICSM '06)},
publisher = {IEEE},
year = {2006},
pages = {176-185},
address = {Philadelphia, Pennsylvania},
month = {24-27 September},
doi = {http://doi.ieeecomputersociety.org/10.1109/ICSM.2006.56}
}
|
||||||
| 2009.04.27 | Des Greer & Günther Ruhe | Software Release Planning: An Evolutionary and Iterative Approach | 2004 | Information & Software Technology, Vol. 46(4), pp. 243-253, March | Article | Requirements/Specifications |
| Abstract: To achieve higher flexibility and to better satisfy actual customer requirements, there is an increasing tendency to develop and deliver software in an incremental fashion. In adopting this process, requirements are delivered in releases and so a decision has to be made on which requirements should be delivered in which release. Three main considerations that need to be taken account of are the technical precedences inherent in the requirements, the typically conflicting priorities as determined by the representative stakeholders, as well as the balance between required and available effort. The technical precedence constraints relate to situations where one requirement cannot be implemented until another is completed or where one requirement is implemented in the same increment as another one. Stakeholder preferences may be based on the perceived value or urgency of delivered requirements to the different stakeholders involved. The technical priorities and individual stakeholder priorities may be in conflict and difficult to reconcile. This paper provides (i) a method for optimally allocating requirements to increments; (ii) a means of assessing and optimizing the degree to which the ordering conflicts with stakeholder priorities within technical precedence constraints; (iii) a means of balancing required and available resources for all increments; and (iv) an overall method called EVOLVE aimed at the continuous planning of incremental software development. The optimization method used is iterative and essentially based on a genetic algorithm. A set of the most promising candidate solutions is generated to support the final decision. The paper evaluates the proposed approach using a sample project. | ||||||
BibTeX:
@article{GreerR04,
author = {Des Greer and Günther Ruhe},
title = {Software Release Planning: An Evolutionary and Iterative Approach},
journal = {Information & Software Technology},
year = {2004},
volume = {46},
number = {4},
pages = {243-253},
month = {March},
doi = {http://dx.doi.org/10.1016/j.infsof.2003.07.002}
}
|
||||||