Bilgisayar ve Bilişim Fakültesi
Bu topluluk için Kalıcı Uri
Gözat
Yazar "Buzluca, Feza" ile Bilgisayar ve Bilişim Fakültesi'a göz atma
Sayfa başına sonuç
Sıralama Seçenekleri
-
ÖgeEvaluating microservices maintainability: a classification system using code metrics and ISO/IEC 250xy standards(ACM, 2024) Özdemir, Oğuzcan ; Buzluca, Feza ; https://orcid.org/0009-0005-1820-1884 ; https://orcid.org/0000-0001-9589-8754 ; Bilgisayar MühendisliğiIn the rapidly evolving landscape of software engineering, Microservice Architecture (MSA) has emerged as a pivotal approach, renowned for its modular structure, operational efficiency, scalability, and flexibility. Despite the extensive research on MSA development, and numerous studies dedicated to evaluating the maintainability of object-oriented programs, the focus on the quality of microservice-based systems remains notably limited. This study introduces an innovative model for evaluating the maintainability of microservices, a key element in MSA. Our approach, grounded in code metrics analysis, aligns with the ISO/IEC 250xy standards SQuaRE (System and Software Quality Requirements and Evaluation). It specifically targets testability and modifiability, integral components of maintainability. We carefully chose essential code metrics that precisely encapsulate the varied characteristics of MSA. The model employs clustering algorithms to categorize the quality characteristics of MSA into three distinct groups: low, medium and high. Our project’s primary goal is to identify microservices with low maintainability values. Our methodology was applied to a range of open-source MSA-designed applications, demonstrating its effectiveness and yielding promising outcomes. In our results, we achieved a recall of 83.33% and a precision of 71.43%. This research contributes a novel viewpoint in assessing microservice maintainability and offers a valuable resource for software architects and developers. It aims to improve the overall quality and longevity of software systems within the MSA.
-
ÖgeTest case prioritization for embedded software(ACM, 2024) Özer, Elif Güşta ; Buzluca, Feza ; https://orcid.org/0009-0004-9943-6134 ; https://orcid.org/0000-0001-9589-8754 ; Bilgisayar MühendisliğiElectronic devices used daily contain software, which may have errors due to human factors during coding. Testing is essential before release, especially as software complexity increases with diverse user needs. Testing new features separately and then in combination multiplies test cases. Rerunning all tests after each change is costly. The aim of this study is to develop a test case prioritization method to decrease the time to find software errors in embedded software systems. For this purpose, we extracted the basic features that characterize embedded software systems and tests that run on them. The proposed method calculates prioritization scores for test cases utilizing these characteristics. The test cases will then be arranged in a systematic manner according to their respective scores. This prioritization strategy is designed to minimize error detection time by promptly finding and resolving errors throughout the initial stages of the testing process. The proposed prioritization strategy was tested on an embedded software system, and it was evaluated using the metrics APFD (average percentage of faults detected) and APFDc (APFD with cost). The results indicate that the proposed method based on the attributes of software systems and related tests reduces the time required to find the majority of the errors.