Computer Engineering / Bilgisayar Mühendisliği
Permanent URI for this collectionhttps://hdl.handle.net/11147/10
Browse
2 results
Search Results
Article Citation - WoS: 1Citation - Scopus: 3Automatic Test Sequence Generation and Functional Coverage Measurement From Uml Sequence Diagrams(Igi Global, 2023) Ekici, Nazim Umut; Tuglular, TugkanSequence diagrams define functional requirements through use cases. However, their visual form limits their usability in the later stages of the development life cycle. This work proposes a method to transform sequence diagrams into graph-based event sequence graphs, allowing the application of graph analysis methods and defining graph-based coverage criteria. This work explores these newfound abilities in two directions. The first is to use coverage criteria along with existing tests to measure their coverage levels, providing a metric of how well they address the scenarios defined in sequence diagrams. The second is to use coverage criteria to automatically generate effective and efficient acceptance test cases based on the scenarios defined in sequence diagrams. The transformation method is validated with over eighty non-trivial projects. The complete method is validated through a non-trivial example. The results show that the test cases generated with the proposed method are more effective at exposing faults and more efficient in test input size than user-generated test cases.Conference Object Citation - WoS: 3Citation - Scopus: 4The Relation Between Bug Fix Change Patterns and Change Impact Analysis(Institute of Electrical and Electronics Engineers, 2021) Ufuktepe,E.; Tuglular,T.; Palaniappan,K.Change impact analysis analyzes the changes that are made in the software and finds the ripple effects, in other words, finds the affected software components. In this study, we analyze the bug fix change patterns to have a better understanding of what types of changes are common in fixing bugs. To achieve this, we implemented a tool that compares two versions of codes and detects the changes that are made. Then, we investigated how these changes are related to change impact analysis. In our case study, we used 13 of the projects and 621 bugs from Defects4J to identify the common change types in bug fixed. Then, to find the change types related to cause an impact in the software, we performed an impact analysis on a subset of projects and bugs of Defects4J. The results have shown that, on average, 90% of the bug fix change types are adding a new method declaration and changing the method body. Then, we investigated if these changes cause an impact or a ripple effect in the software by performing a Markov chain-based change impact analysis. The results show that the bug fix changes had only impact rates within a range of 0.4%-5%. Furthermore, we performed a statistical correlation analysis to find if any of the bug fixes have a significant correlation on the impact of change. The results have shown that there is a negative correlation between caused impact with the change types adding new method declaration and changing method body. On the other hand, we found that there is a positive correlation between caused impact and changing the field type. © 2021 IEEE.
