Computer Engineering / Bilgisayar Mühendisliği
Permanent URI for this collectionhttps://hdl.handle.net/11147/10
Browse
32 results
Search Results
Article Link Prediction for Completing Graphical Software Models Using Neural Networks(IEEE, 2023) Leblebici, Onur; Tuğlular, Tuğkan; Belli, FevziDeficiencies and inconsistencies introduced during the modeling of software systems may result in high costs and negatively impact the quality of all developments performed using these models. Therefore, developing more accurate models will aid software architects in developing software systems that match and exceed expectations. This paper proposes a graph neural network (GNN) method for predicting missing connections, or links, in graphical models, which are widely employed in modeling software systems. The proposed method utilizes graphs as allegedly incomplete, primitive graphical models of the system under consideration (SUC) as input and proposes links between its elements through the following steps: (i) transform the models into graph-structured data and extract features from the nodes, (ii) train the GNN model, and (iii) evaluate the performance of the trained model. Two GNN models based on SEAL and DeepLinker are evaluated using three performance metrics, namely cross-entropy loss, area under curve, and accuracy. Event sequence graphs (ESGs) are used as an example of applying the approach to an event-based behavioral modeling technique. Examining the results of experiments conducted on various datasets and variations of GNN reveals that missing connections between events in an ESG can be predicted even with relatively small datasets generated from ESG models. AuthorConference Object Citation - WoS: 3Citation - Scopus: 2Heterogeneous Modeling and Testing of Software Product Lines(IEEE, 2021) Belli, Fevzi; Tuğlular, Tuğkan; Ufuktepe, EkincanSoftware product line (SPL) engineering is a widely accepted approach to systematically realizing software reuse in an industrial environment. Feature models, a centerpiece of most SPL engineering techniques, are appropriate to model the variability and the structure of SPLs, but not their behavior. This paper uses the idea to link feature modeling to model-based behavior modeling and to determine the test direction (top-down or bottom-up) based on the variability binding. This heterogeneous modeling enables a holistic system testing for validating both desirable (positive) and undesirable (negative) properties of the SPL and variants. The proposed approach is validated by a non-trivial example and evaluated by comparison.Conference Object Citation - Scopus: 1Mutation Analysis of Specification-Based Contracts in Software Testing [conference Object](IEEE, 2021) Khalilov, Abbas; Tuğlular, Tuğkan; Belli, FevziThis work focuses on checking the adequacy of the test cases generated using Decision-Table-augmented Event Sequence Graphs (ESG-DTs), which represents the specification of a system under test, by using mutation analysis. Test cases are represented in the Complete Event Sequence (CES) and Faulty CES (FCES) forms. We present a new set of mutation operators for mutation of contracts represented in Multi-Terminal Binary Decision Diagram (MTBDD) and introduce a new approach to mutation of the ESG-DT model by using the proposed mutation operators. The approach is evaluated on three cases. The results show the drawback of specific FCES test sequences and the relationship between the mutant detection by CES/FCES sequences and proposed mutation operators.Article Citation - WoS: 3Citation - Scopus: 6Model-Based Ideal Testing of Gui Programs-Approach and Case Studies(IEEE-Inst Electrical Electronics Engineers inc, 2021) Kilincceker, Onur; Silistre, Alper; Belli, Fevzi; Challenger, MoharramTraditionally, software testing is aimed at showing the presence of faults. This paper proposes a novel approach to testing graphical user interfaces (GUI) for showing both the presence and absence of faults in the sense of ideal testing. The approach uses a positive testing concept to show that the GUI under consideration (GUC) does what the user expects; to the contrary, the negative testing concept shows that the GUC does not do anything that the user does not expect, building a holistic view. The first step of the approach models the GUC by a finite state machine (FSM) that enables the model-based generation of test cases. This is always possible as the GUIs are considered as strictly sequential processes. The next step converts the FSM to an equivalent regular expression (RE) that will be analyzed first to construct test selection criteria for excluding redundant test cases and construct test coverage criteria for terminating the positive test process. Both criteria enable us to assess the adequacy and efficiency of the positive tests performed. The negative tests will be realized by systematically mutating the FSM to model faults, the absence of which are to be shown. Those mutant FSMs will be handled and assessed in the same way as in positive testing. Two case studies illustrate and validate the approach; the experiments' results will be analyzed to discuss the pros and cons of the techniques introduced.Conference Object Citation - WoS: 10Citation - Scopus: 12Random Test Generation From Regular Expressions for Graphical User Interface (gui) Testing(Institute of Electrical and Electronics Engineers, 2019) Kılınççeker, Onur; Silistre, Alper; Challenger, Moharram; Belli, FevziGeneration of test sequences, that is, (user) inputs - expected (system) outputs, is an important task of testing of graphical user interfaces (GUI). This work proposes an approach to randomly generate test sequences that might he used for comparison with existing GUI testing techniques to evaluate their efficiency. The proposed approach first models CUI under test by a finite state machine (FSM) and then converts it to a regular expression (RE). A tool based on a special technique we developed analyzes the RE to fulfill missing context information such as the position of a symbol in the RE. The result is a context table representing the RE. The proposed approach traverses the context table to generate the test sequences. To do this, the approach repeatedly selects a symbol in the table, starting from the initial symbol, in a random manner until reaching a special, finalizing symbol for constructing a test sequence. Thus, the approach uses a symbol coverage criterion to assess the adequacy of the test generation. To evaluate the approach, mutation testing is used. The proposed technique is to a great extent implemented and is available as a tool called PQ-Ran Test (PQ-analysis based Random Test Generation). A case study demonstrates the proposed approach and analyzes its effectiveness by mutation testing.Conference Object Citation - Scopus: 5Community Detection in Model-Based Testing To Address Scalability: Study Design(Institute of Electrical and Electronics Engineers, 2020) Silistre, Alper; Kılınççeker, Onur; Belli, Fevzi; Challenger, Moharram; Kardaş, GeylaniModel-based GUI testing has achieved widespread recognition in academy thanks to its advantages compared to code-based testing due to its potentials to automate testing and the ability to cover bigger parts more efficiently. In this study design paper, we address the scalability part of the model-based GUI testing by using community detection algorithms. A case study is presented as an example of possible improvements to make a model-based testing approach more efficient. We demonstrate layered ESG models as an example of our approach to consider the scalability problem. We present rough calculations with expected results, which show 9 times smaller time and space units for 100 events in the ESG model when a community detection algorithm is applied. © 2020 Polish Information Processing Society - as it is since 2011.Conference Object Citation - WoS: 7Citation - Scopus: 8Models in Graphical User Interface Testing: Study Design(Institute of Electrical and Electronics Engineers, 2020) Silistre, Alper; Kılınççeker, Onur; Belli, Fevzi; Challenger, Moharram; Kardaş, GeylaniModel-based GUI testing is an important concept in Software GUI testing. Manual testing is a time-consuming labor and heavily error-prone. It has several well-accepted models that Software Testing community has been working and contributing to them for many years. This paper reviews different models used in model-based GUI testing and presents a case study with a proposed approach for how to convert several well-accepted models to ESG (Event Sequence Graphs) to generate test cases and execute them with an aim to consolidate past and future works in a single model. © 2020 IEEE.Conference Object Citation - WoS: 1Citation - Scopus: 1Mutation Operators for Decision Table-Based Contracts Used in Software Testing(Institute of Electrical and Electronics Engineers, 2020) Khalilov, Abbas; Tuğlular, Tuğkan; Belli, FevziThe Design by Contract technique allows developers to improve source code with contracts, and testing using contracts helps to identify faults. However, the source code of the program under test is not always available. With black-box testing, it is possible to generate contracts from specifications of the software. In this paper, we apply mutation analysis on a model of a given specifications, where mutants are initially gained by applying proposed in this paper certain mutation operators on corresponding model, and then mutated specifications are examined. © 2020 IEEE.Article Model-Based Selective Layer-Centric Testing(Information Processing Society of Japan, 2018) Belli, Fevzi; Güler Dinçer, Nevin; Linschulte, Michael; Tuğlular, TuğkanModel-based testing of large systems usually requires decomposition of the model into hierarchical submodels for generating test sequences, which fulfills the goals of module testing, but not those of system testing. System testing requires test sequences be generated from a fully resolved model, which necessitates refining the toplevel model, that is, by replacing its elements with submodels they represent. If the depth of model hierarchy is high, the number of test sequences along with their length increases resulting in high test costs. For solving this conflict, a novel approach is introduced that generates test sequences based on the top-level model and replaces elements of these sequences by corresponding, optimized test sequences generated by the submodels. To compensate the shortcoming at test accuracy, the present approach selects components that have lowering impact on the overall system reliability. The objective is to increase the reliabilities of these critical components by intensive testing and appropriate correction which, as a consequence, also increases the overall reliability at less test effort without losing accuracy. An empirical study based on a large web-based commercial system is performed to validate the approach and analyze its characteristics, and to discuss its strengths and weaknesses. © 2018 Information Processing Society of Japan.Conference Object Citation - Scopus: 3Towards Uniform Modeling and Holistic Testing of Hardware and Software(Institute of Electrical and Electronics Engineers Inc., 2019) Kılınççeker, Onur; Belli, FevziThis paper introduces an approach to uniform modeling and testing of hardware and software systems and their faults. As an example, for hardware under consideration, designs at a behavioral level will be used, implemented in Hardware Description Language (HDL). For software, an example will be borrowed from a graphical user interface design. Both examples will be modeled by finite state machines. The mutation of these models leads to lucid hardware and software fault models, respectively. Original models and their mutants will then be used to generate test cases for positive testing and negative testing, respectively, forming a holistic test strategy. A positive test is supposed to validate the system under legal (expected, regular) circumstances, whereas a negative test checks the behavior of the system under illegal (unexpected, irregular) situations. Non-trivial examples are used to validate and analyze the approach with respect to uniform modeling and testing capability. © 2019 IEEE.
