Real-time software techniques
Genetic Algorithms in Search, Optimization and Machine Learning
Genetic Algorithms in Search, Optimization and Machine Learning
SEMINAL: software engineering using metaheuristic INnovative ALgorithms
ICSE '01 Proceedings of the 23rd International Conference on Software Engineering
The SEMINAL workshop: reformulating software engineering as a metaheuristic search problem
ACM SIGSOFT Software Engineering Notes
A search-based automated test-data generation framework for safety-critical systems
Systems engineering for business process change
Evolutionary testing in the presence of loop-assigned flags: a testability transformation approach
ISSTA '04 Proceedings of the 2004 ACM SIGSOFT international symposium on Software testing and analysis
Analysis and Visualization of Predicate Dependence on Formal Parameters and Global Variables
IEEE Transactions on Software Engineering
Simulated annealing applied to test generation: landscape characterization and stopping criteria
Empirical Software Engineering
Software project management with GAs
Information Sciences: an International Journal
Automated Testing of Timeliness: A Case Study
AST '07 Proceedings of the Second International Workshop on Automation of Software Test
Proceedings of the 2007 international symposium on Software testing and analysis
Observations in using parallel and sequential evolutionary algorithms for automatic software testing
Computers and Operations Research
Challenges in Relational Learning for Real-Time Systems Applications
ILP '08 Proceedings of the 18th international conference on Inductive Logic Programming
A systematic review of search-based testing for non-functional system properties
Information and Software Technology
Software testing by active learning for commercial games
AAAI'05 Proceedings of the 20th national conference on Artificial intelligence - Volume 2
GECCO'03 Proceedings of the 2003 international conference on Genetic and evolutionary computation: PartII
WCET analysis of modern processors using multi-criteria optimisation
Empirical Software Engineering
FlagRemover: A testability transformation for transforming loop-assigned flags
ACM Transactions on Software Engineering and Methodology (TOSEM)
Software testing with evolutionary strategies
RISE'05 Proceedings of the Second international conference on Rapid Integration of Software Engineering Techniques
Search based software engineering
ICCS'06 Proceedings of the 6th international conference on Computational Science - Volume Part IV
On the computational complexity of dynamic slicing problems for program schemas
Mathematical Structures in Computer Science - Programming Language Interference and Dependence
Test data regeneration: generating new test data from existing test data
Software Testing, Verification & Reliability
Search-based software engineering: Trends, techniques and applications
ACM Computing Surveys (CSUR)
A Value-Based Framework for Software Evolutionary Testing
International Journal of Software Science and Computational Intelligence
Automated generation of computationally hard feature models using evolutionary algorithms
Expert Systems with Applications: An International Journal
Hi-index | 0.00 |
The development of real-time systems is an essential industrial activity whose importance is increasing. The most important analytical method to assure the quality of real-time systems is dynamic testing. Testing is the only method which examines the actual run-time behaviour of real-time software, based on an execution in the real application environment. Dynamic aspects like the duration of computations, the memory actually needed, or the synchronization of parallel processes are of major importance for the correct function of real-time systems and have to be tested. A comprehensive investigation of existing software test methods shows that they mostly concentrate on testing for functional correctness. They are not suited for an examination of temporal correctness which is essential to real-time systems. Very small systems show a wide range of different execution times. Therefore, existing test procedures must be supplemented by new methods, which concentrate on determining whether the system violates its specified timing constraints. In general, this means that outputs are produced too early or their computation takes too long. The task of the tester is to find the inputs with the longest or shortest execution times to check whether they produce a temporal error. If the search for such inputs is interpreted as a problem of optimization, genetic algorithms can be used to find the inputs with the longest or shortest execution times automatically. The fitness function is the execution time measured in processor cycles. Experiments using genetic algorithms on a number of programs with up to 1511 LOC and 843 integer input parameters have successfully identified new longer and shorter paths than had been found using random testing or systematic testing. Genetic algorithms are able therefore to check large programs and they show considerable promise in establishing the validity of the temporal behaviour of real-time software.