عنوان انگلیسی مقاله:
An expert system for checking the correctness of memory systems using simulation and metamorphic testing
ترجمه فارسی عنوان مقاله:
یک سیستم خبره برای بررسی صحت سیستم های حافظه با استفاده از شبیه سازی و تست های metamorphic
Sciencedirect - Elsevier - Expert Systems With Applications, 132 (2019) 44-62: doi:10:1016/j:eswa:2019:04:070
Pablo C. Cañizares a , ∗, Alberto Núñez a , Juan de Lara b
During the last few years, computer performance has reached a turning point where computing power is no longer the only important concern. This way, the emphasis is shifting from an exclusive focus on the optimisation of the computing system to optimising other systems, like the memory system. Broadly speaking, testing memory systems entails two main challenges: the oracle problem and the reliable test set problem. The former consists in deciding if the outputs of a test suite are correct. The latter refers to providing an appropriate test suite for determining the correctness of the system under test. In this paper we propose an expert system for checking the correctness of memory systems. In order to face these challenges, our proposed system combines two orthogonal techniques –simulation and metamorphic testing –enabling the automatic generation of appropriate test cases and deciding if their outputs are correct. In contrast to conventional expert systems, our system includes a factual database containing the results of previous simulations, and a simulation platform for computing the behaviour of memory systems. The knowledge of the expert is represented in the form of metamorphic relations, which are properties of the analysed system involving multiple inputs and their outputs. Thus, the main contribution of this work is two-fold: a method to automatise the testing process of memory systems, and a novel expert system design focusing on increasing the overall performance of the testing process. To show the applicability of our system, we have performed a thorough evaluation using 500 memory configurations and 4 different memory management algorithms, which entailed the execution of more than one million of simulations. The evaluation used mutation testing, injecting faults in the memory management algorithms. The developed expert system was able to detect over 99% of the critical injected faults, hence obtaining very promising results, and outperforming other standard techniques like random testing.
Keywords: Memory systems | Metamorphic testing | Simulation | Mutation testing | Expert systems | Memory scheduling