Font Size: a A A

Research On Stress Test Case Generation Of Real-Time Software Using Constraint Optimization

Posted on:2017-01-09Degree:MasterType:Thesis
Country:ChinaCandidate:H M ZhangFull Text:PDF
GTID:2308330488461932Subject:Software engineering
Abstract/Summary:PDF Full Text Request
The performance of real-time software has a great effect on property and human’s safety directly, especially in safety critical domains such as transportation, and medical care. Thus it is vital to analyze the performance of the real-time software. Stress test is a kind of performance test method, which subjects the system to the extreme situation and helps us find the bottlenecks of performance. It can assure the quality of real-time software by analyzing its performance, because the performance problems are more easily checked in the extreme cases. However, it is difficult for stress test performed after the completion of software to analyze the performance of real-time software, especially in term of its characteristics such as complex structure, multi-core processor, and unpredictable time of external events triggering tasks. Besides, in this way, it may result in a great loss once the performance problems are caused by unreasonable software design.To deal with the problems in the stress test performed after the completion of software, we apply the stress test based on constraint optimization and build the optimization model using OPL(Optimization Programming Language), the main work of this paper is carried out as follows:(1) We focus on the task deadlines of real-time software. First, the task scheduling problem is described as Constraint Optimization Problem. According to the problem description, the OPL model is built by the two ways of integer and scheduling. The model is improved and analyzed on three aspects: the efficiency of the model, different arrival patterns of tasks and multi-objective function. Finally, the model is solved in the optimization tool CPLEX, and stress test case can be generated. The experiments show that our models(except for the priority-based preemptive task execution in scheduling way) improve the efficiency in the case of sparse data, and the situation of task scheduling corresponding to multi-objective optimization is worse than single objective.(2) Aiming at the faults introduced in the improved model, we propose a model test framework. In the framework, the improved model is tested to find faults by taking the primary and declarative model as an expected model. While building the expected model, to reduce the faults in the expected model and improve the effectiveness of test, the framework can transform the visual class diagram(or corresponding code of class diagram) to the OPL expected model using the concept of model-driven and Unified Modeling Language class diagram. Moreover, the generation of non-conformity algorithm based on priority and test case generation algorithm are given to improve the efficiency of the model. Within the limit of cost and time, the constraint coverage criterion is applied to model test, which makes the model fully tested. Our method can detect faults in the model efficiently and systematically, which improves model’s quality.
Keywords/Search Tags:Constraint Optimization, OPL Model, Stress Test Case, Real-time Software, OPL Model Test
PDF Full Text Request
Related items