Person: AKTEMUR, Tankut Bariş
Name
Job Title
First Name
Tankut Bariş
Last Name
AKTEMUR
20 results
Publication Search Results
Now showing 1 - 10 of 20
ArticlePublication Metadata only Automatically learning usage behavior and generating event sequences for black-box testing of reactive systems(The ACM Digital Library, 2019-06) Kıraç, Mustafa Furkan; Aktemur, Tankut Barış; Sözer, Hasan; Gebizli, C. Ş.; Computer Science; KIRAÇ, Mustafa Furkan; AKTEMUR, Tankut Bariş; SÖZER, HasanWe propose a novel technique based on recurrent artificial neural networks to generate test cases for black-box testing of reactive systems. We combine functional testing inputs that are automatically generated from a model together with manually-applied test cases for robustness testing. We use this combination to train a long short-term memory (LSTM) network. As a result, the network learns an implicit representation of the usage behavior that is liable to failures. We use this network to generate new event sequences as test cases. We applied our approach in the context of an industrial case study for the black-box testing of a digital TV system. LSTM-generated test cases were able to reveal several faults, including critical ones, that were not detected with existing automated or manual testing activities. Our approach is complementary to model-based and exploratory testing, and the combined approach outperforms random testing in terms of both fault coverage and execution time.ArticlePublication Metadata only VISOR: A fast image processing pipeline with scaling and translation invariance for test oracle automation of visual output systems(The ACM Digital Library, 2018-02) Kıraç, Mustafa Furkan; Aktemur, Tankut Barış; Sözer, Hasan; Computer Science; KIRAÇ, Mustafa Furkan; AKTEMUR, Tankut Bariş; SÖZER, HasanA test oracle automation approach proposed for systems that produce visual output.Root causes of accuracy issues analyzed for test oracles based on image comparison.Image processing techniques employed to improve the accuracy of test oracles.A fast image processing pipeline developed as an automated test oracle.An industrial case study performed for automated regression testing of Digital TVs. Test oracles differentiate between the correct and incorrect system behavior. Hence, test oracle automation is essential to achieve overall test automation. Otherwise, testers have to manually check the system behavior for all test cases. A common test oracle automation approach for testing systems with visual output is based on exact matching between a snapshot of the observed output and a previously taken reference image. However, images can be subject to scaling and translation variations. These variations lead to a high number of false positives, where an error is reported due to a mismatch between the compared images although an error does not exist. To address this problem, we introduce an automated test oracle, named VISOR, that employs a fast image processing pipeline. This pipeline includes a series of image filters that align the compared images and remove noise to eliminate differences caused by scaling and translation. We evaluated our approach in the context of an industrial case study for regression testing of Digital TVs. Results show that VISOR can avoid 90% of false positive cases after training the system for 4h. Following this one-time training, VISOR can compare thousands of image pairs within seconds on a laptop computer.ArticlePublication Metadata only ADVISOR: An adjustable framework for test oracle automation of visual output systems(IEEE, 2020-09) Genç, A. E.; Sözer, Hasan; Kıraç, Mustafa Furkan; Aktemur, Tankut Barış; Computer Science; SÖZER, Hasan; KIRAÇ, Mustafa Furkan; AKTEMUR, Tankut BarişTest oracles differentiate between the correct and incorrect system behavior. Automation of test oracles for visual output systems mainly involves image comparison, where a snapshot of the output is compared with respect to a reference image. Hereby, the captured snapshot can be subject to variations such as scaling and shifting. These variations lead to incorrect evaluations. Existing approaches employ computer vision techniques to address a specific set of variations. In this article, we introduce ADVISOR, an adjustable framework for test oracle automation of visual output systems. It allows the use of a flexible combination and configuration of computer vision techniques. We evaluated a set of valid configurations with a benchmark dataset collected during the tests of commercial digital TV systems. Some of these configurations achieved up to 3% better overall accuracy with respect to state-of-the-art tools. Further, we observed that there is no configuration that reaches the best accuracy for all types of image variations. We also empirically investigated the impact of significant parameters. One of them is a threshold regarding image matching score that determines the final verdict. This parameter is automatically tuned by offline training. We evaluated runtime performance as well. Results showed that differences among the ADVISOR configurations and state-of-the-art tools are in the order of seconds per image comparison.Book ChapterPublication Metadata only FAS: introducing a service for avoiding faults in composite services(Springer Science+Business Media, 2012) Gülcü, K.; Sözer, Hasan; Aktemur, Tankut Barış; Computer Science; SÖZER, Hasan; AKTEMUR, Tankut BarişIn service-oriented architectures, composite services depend on a set of partner services to perform the required tasks. These partner services may become unavailable due to system and/or network faults, leading to an increased error rate for the composite service. In this paper, we propose an approach to prevent the occurrence of errors that result from the unavailability of partner services. We introduce an external Web service, FAS (Fault Avoidance Service), to which composite services can register at will. After registration, FAS periodically checks the partner links, detects unavailable partner services, and updates the composite service with available alternatives. Thus, in case of a partner service error, the composite service will have been updated before invoking the partner service. We provide mathematical analysis regarding the error rate and the ratio of false positives with respect to the monitoring frequency of FAS for different partner service availabilities. We also provide empirical results regarding these metrics based on several tests we performed using the Amazon Elastic Compute Cloud.Conference paperPublication Metadata only Towards subtyped program generation in F#(ACM, 2011) Aktemur, Tankut Barış; Computer Science; AKTEMUR, Tankut BarişProgram Generation is the technique of combining code fragments to construct a program. In this work we report on our progress to extend F# with program generation constructs. Our prototype implementation uses a translation that allows simulating program generators by regular programs. The translation enables fast implementation and experimentation. We state how a further extension with subtyping can be integrated by benefiting from the translation.Conference paperPublication Metadata only Static analysis of multi-staged programs via unstaging translation(ACM, 2011) Choi, W.; Aktemur, Tankut Barış; Yi, K.; Tatsuta, M.; Computer Science; AKTEMUR, Tankut BarişStatic analysis of multi-staged programs is challenging because thebasic assumption of conventional static analysis no longer holds: the program text itself is no longer a fixed static entity, but rather a dynamically constructed value. This article presents a semanticpreserving translation of multi-staged call-by-value programs into unstaged programs and a static analysis framework based on this translation. The translation is semantic-preserving in that every small-step reduction of a multi-staged program is simulated by the evaluation of its unstaged version. Thanks to this translation we can analyze multi-staged programs with existing static analysis techniques that have been developed for conventional unstaged programs: we first apply the unstaging translation, then we apply conventional static analysis to the unstaged version, and finally we cast the analysis results back in terms of the original staged program. Our translation handles staging constructs that have beenevolved to be useful in practice (typified in Lisp’s quasi quotation): open code as values, unrestricted operations on references and intentional variable-capturing substitutions. This article omits references for which we refer the reader to our companion technical report.Conference paperPublication Metadata only A sparse matrix‐vector multiplication method with low preprocessing cost(Wiley, 2018-11-10) Aktemur, Tankut Barış; Computer Science; AKTEMUR, Tankut BarişSparse matrix-vector multiplication (SpMV) is a crucial operation used for solving many engineering and scientific problems. In general, there is no single SpMV method that gives high performance for all sparse matrices. Even though there exist sparse matrix storage formats and SpMV implementations that yield high efficiency for certain matrix structures, using these methods may entail high preprocessing or format conversion costs. In this work, we present a new SpMV implementation, named CSRLenGoto, that can be utilized by preprocessing the Compressed Sparse Row (CSR) format of a matrix. This preprocessing phase is inexpensive enough for the associated cost to be compensated in just a few repetitions of the SpMV operation. CSRLenGoto is based on complete loop unrolling and gives performance improvements in particular for matrices whose mean row length is low. We parallelized our method by integrating it into a state-of-the-art matrix partitioning approach as the kernel operation. We observed up to 2.46× and on the average 1.29× speedup with respect to Intel MKL's SpMV function for matrices with short- or medium-length rows.ArticlePublication Metadata only Fault masking as a service(Wiley, 2014-07) Gülcü, Koray; Sözer, Hasan; Aktemur, Tankut Barış; Ercan, Ali Özer; Electrical & Electronics Engineering; Computer Science; SÖZER, Hasan; AKTEMUR, Tankut Bariş; ERCAN, Ali Özer; Gülcü, KorayIn SOA, composite services depend on a set of partner services to perform their tasks. These partner services may become unavailable because of system and/or network faults, leading to an increased error rate for the composite service. In this paper, we propose an approach to prevent the occurrence of errors that result from the unavailability of partner services. We introduce an external Web service, dubbed Fault Avoidance Service (FAS), to which composite services can register at will. After registration, FAS periodically checks the partner links, detects unavailable partner services, and updates the composite service with available alternatives. Thus, in case of a partner service error, the composite service will have been updated before attempting an ill-destined request. We provide mathematical analysis regarding the error rate and the false positive rate with respect to the monitoring frequency of FAS for two models. We obtained empirical results by conducting several tests on the Amazon Elastic Compute Cloud to evaluate our mathematical analyses. We also introduce an industrial case study for improving the quality of a service-oriented system from the broadcasting and content delivery domain.Book ChapterPublication Metadata only Effort estimation for architectural refactoring to introduce module isolation(Springer, 2014) Öztürk, F.; Sarılı, E.; Sözer, Hasan; Aktemur, Tankut Barış; Computer Science; SÖZER, Hasan; AKTEMUR, Tankut BarişThe decomposition of software architecture into modular units is driven by both functional and quality concerns. Dependability and security are among quality concerns that require a software to be decomposed into separate units isolated from each other. However, it appears that this decomposition is usually not aligned with the decomposition based on functional concerns. As a result, introducing module isolation forced by quality attributes, while preserving the existing decomposition, is not trivial and requires a substantial refactoring effort. In this work, we introduce an approach and a toolset to predict this effort prior to refactoring activities. As such, a selection can be made among potential decomposition alternatives based on quantitative estimations. These estimations are obtained from scalable analysis of module dependencies based on a graph database and reusable query templates. We discuss our experiences and evaluate our approach on a code base used in a commercial Digital TV and Set-top Box software.EditorialPublication Metadata only Preface(2011) Kim, S.; Uchitel, S.; Garbervetsky, D.; Aktemur, Tankut Barış; Kroening, D.; Orso, A.; Nagappan, N.; Xie, T.; Mueller, P.; Cataldo, M.; Tillmann, N.; Margaria-Steffen, T.; Tonetta, S.; Bradley, A.; Chen, N.; Caso, G. de; Ferrara, P.; He, N.; Kassios, I.; Kicillof, N.; Lewis, M.; Meyer, D.; Nagel, R.; Nimal, V.; Pandita, R.; Pavese, E.; Rajan, A.; Roveri, M.; Sawadsky, N.; Schapachnik, F.; Seo, H.; Shakya, K.; Song, Y.; Summers, A.; Xiao, X.; Yilmaz, Buse; Zhang, L.; Bishop, J.; Breitman, K.; Notkin, D.; Computer Science; AKTEMUR, Tankut Bariş; Yilmaz, Buse