Computer Engineering / Bilgisayar Mühendisliği

Permanent URI for this collectionhttps://hdl.handle.net/11147/10

Browse

Search Results

Now showing 1 - 10 of 47
  • Article
    Citation - WoS: 3
    Citation - Scopus: 4
    Application of the Law of Minimum and Dissimilarity Analysis To Regression Test Case Prioritization
    (IEEE, 2023) Ufuktepe, Ekincan; Tuğlular, Tuğkan
    Regression testing is one of the most expensive processes in testing. Prioritizing test cases in regression testing is critical for the goal of detecting the faults sooner within a large set of test cases. We propose a test case prioritization (TCP) technique for regression testing called LoM-Score inspired by the Law of Minimum (LoM) from biology. This technique calculates the impact probabilities of methods calculated by change impact analysis with forward slicing and orders test cases according to LoM. However, this ordering doesn't consider the possibility that consecutive test cases may be covering the same methods repeatedly. Thereby, such ordering can delay the time of revealing faults that exist in other methods. To solve this problem, we enhance the LoM-Score TCP technique with an adaptive approach, namely with a dissimilarity-based coordinate analysis approach. The dissimilarity-based coordinate analysis uses Jaccard Similarity for calculating the similarity coefficients between test cases in terms of covered methods and the enhanced technique called Dissimilarity-LoM-Score (Dis-LoM-Score) applies a penalty with respective on the ordered test cases. We performed our case study on 10 open-source Java projects from Defects4J, which is a dataset of real bugs and an infrastructure for controlled experiments provided for software engineering researchers. Then, we hand-seeded multiple mutants generated by Major, which is a mutation testing tool. Then we compared our TCP techniques LoM-Score and Dis-LoM-Score with the four traditional TCP techniques based on their Average Percentage of Faults Detected (APFD) results.
  • Article
    Citation - WoS: 3
    Citation - Scopus: 3
    A Domain-Specific Language for the Document-Based Model-Driven Engineering of Business Applications
    (IEEE, 2022) Leblebici, Onur; Kardaş, Geylani; Tuğlular, Tuğkan
    To facilitate the development of business applications, a domain-specific language (DSL), called DARC, is introduced in this paper. Business documents including the descriptions of the responsibilities, authorizations, and collaborations, are used as the first-class entities during model-driven engineering (MDE) with DARC. Hence the implementation of the business applications can be automatically achieved from the corresponding document models. The evaluation of using DARC DSL for the development of commercial business software was performed in an international sales, logistics, and service solution provider company. The results showed that the code for all business documents and more than 50% of the responsibility descriptions composing the business applications could be generated automatically by modeling with DARC. Finally, according to the users' feedback, the assessment clearly revealed the adoption of DARC features in terms of the DSL quality characteristics, namely functional suitability, usability, reliability, maintainability, productivity, extensibility, compatibility, and expressiveness.
  • Editorial
    Message From the Symposium Chairs: Isssr 2022
    (IEEE, 2022) Wong, W. Eric; Wotawa, Franz; Zheng, Liwei; Tuğlular, Tuğkan
    Security, safety, and reliability are the three most important attributes of a system. This is especially the case for mission-critical and life-threatening systems. As the complexity of many systems continues to grow, ensuring security, safety, and reliability has become very critical. Not only does existing technology and tool support need to be enhanced, but we also need new strategies and approaches to satisfy more strict requirements on system security, safety, and reliability. In response to this challenge, the Steering Committee of ISSSR has decided to change its conference name from International Symposium on System and Software Reliability to International Symposium on System Security, Safety, and Reliability. The acronym ISSSR is still the same, but the full name has been slightly modified to emphasize the importance of security, safety, and reliability of many systems.
  • Conference Object
    Citation - WoS: 3
    Citation - Scopus: 2
    Heterogeneous Modeling and Testing of Software Product Lines
    (IEEE, 2021) Belli, Fevzi; Tuğlular, Tuğkan; Ufuktepe, Ekincan
    Software 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.
  • Article
    Citation - WoS: 7
    Citation - Scopus: 8
    Tracking Code Bug Fix Ripple Effects Based on Change Patterns Using Markov Chain Models
    (Institute of Electrical and Electronics Engineers Inc., 2022) Ufuktepe, Ekincan; Tuğlular, Tuğkan; Palaniappan, Kanappan
    Change impact analysis evaluates the changes that are made in the software and finds the ripple effects, in other words, finds the affected software components. Code changes and bug fixes can have a high impact on code quality by introducing new vulnerabilities or increasing their severity. A recent high-visibility example of this is the code changes in the log4j web software CVE-2021-45105 to fix known vulnerabilities by removing and adding method called change types. This bug fix process exposed further code security concerns. In this article, we analyze the most common set of bug fix change patterns to have a better understanding of the distribution of software changes and their impact on code quality. To achieve this, we implemented a tool that compares two versions of the code and extracts the changes that have been made. Then, we investigated how these changes are related to change impact analysis. In our case study, we identified the change types for bug-inducing and bug fix changes using the Quixbugs dataset. Furthermore, we used 13 of the projects and 621 bugs from Defects4J to identify the common change types in bug fixes. Then, to find the change types that cause an impact on 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 with 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.
  • Conference Object
    Coverage Guided Multiple Base Choice Testing
    (IEEE, 2020) Tuğlular, Tuğkan; Leblebici, Onur
    A coverage guided input domain testing approach is presented with a feedback loop-controlled testing workflow and a tool is developed to support this workflow. Multiple base choices coverage criterion (MBCC) is chosen for systematic unit test generation in the proposed approach and branch coverage information is utilized as feedback to improve selection of bases, which results in improved branch coverage. The proposed workflow is supported with the tool designed and developed for coverage guided MBCC-based unit testing.
  • Article
    Bağlamsal Doğrulama için Bir Yazılım Tasarım Şablonu
    (Dokuz Eylül Üniversitesi, 2017) Tuğlular, Tuğkan
    Yazılım tasarım şablonları, tekrar eden yazılım tasarım problemleri için hazır çözümler sunar. Model-Görünüm-Denetçi (İng. MVC) gibi bileşik tasarım şablonları ise, var olan tasarım şablonlarının biraraya getirilmesi ile daha büyük ölçekli problemleri çözmek için geliştirilmektedir. Bu çalışmada bağlamsal doğrulama problemi için bir bileşik tasarım şablonu geliştirilmiştir. Bağlamsal doğrulama, bir işlem gerçekleş- tirilmeden önce o işlem için gerekli tüm nesnelerin gerekli koşulları sağladığının doğrulanması anlamına gelmektedir. Bileşik tasarım şablonu geliştirme yöntemi ile ortaya konan bağlamsal doğrulama tasarım şablonu; tek sorumluluk, açık-kapalı ve bağımlılığı tersine çevirme nesne temelli tasarım ilkelerine göre geliştirilmiştir. Geliştirilen bağlamsal doğrulama tasarım şablonu bünyesinde Ziyaretçi, Strateji, Dekoratör ve Bildirim tasarım şablonlarını barındırmaktadır. Ortaya konan bağlamsal doğrulama tasarım şablonu, kullanım şekli itibariyle iki örnek uygulama üzerinde tartışılmıştır.
  • Editorial
    Message From Tain Symposium Organizing Committee
    (Institute of Electrical and Electronics Engineers Inc., 2015) Tuğlular, Tuğkan; Cai, Y.; Dustdar, S.; Yamazaki, K.
    It is a pleasure to welcome you to COMPSAC 2015 Symposium on Technologies and Applications of the Internet (TAIN). This year, first time in its history, COMPSAC is organized as a series of symposiums under the main theme of “Mobile and Cloud Systems – Challenges and Applications”. TAIN Symposium providing a forum to share latest innovations on Internet technologies and applications perfectly matches with the main theme. Topics of interest for TAIN include all types of networks with their architectures and applications as well as their management, performance, and security. Moreover, TAIN Symposium addresses Internet of things (IoT), machine-to-machine (M2M) and peer-to-peer (P2P) communications, content distribution networks (CDN) and also emerging network technologies such as software defined networks (SDN). A vast array of challenges for Internet technologies and applications and proposals for solutions will be discussed in TAIN Symposium.
  • Conference Object
    Citation - WoS: 1
    Automatic Enforcement of Location Aware User Based Network Access Control Policies
    (World Scientific and Engineering Academy and Society, 2008) Tuğlular, Tuğkan
    Multiple interconnected network segments distributed across various locations, such as corporate networks, where users or employees constantly travel among segments and require to access servers, need to have network access control mechanisms that are able to adapt to these location changes. The idea of a firewall changing or adapting its rules depending on the location of users is presented by an architecture in this paper. This architecture proposes deployment of a policy server at the management level and policy agents at the firewall level, so that policy-driven network security management is enabled by specifying location aware user based network access control policies at the network security management and enforcing them at the managed firewalls. The architecture presented in this paper utilizes user VPN connection event triggers for dynamic policy configuration and automated policy deployment to firewalls. Location aware user based network access control policies, which are management level policies, are implemented using XACML. A network level policy is usually a configuration, or policy, file local to the firewall. The policy agent incorporated into the firewall performs the mapping from management level policy to firewall policy.
  • Conference Object
    Belge Sorumluluk İş-birliği Modelleme Yöntemi ile Otomatik Kod Üretimi
    (IEEE, 2020) Tuğlular, Tuğkan; Leblebici, Onur
    UML is highly preferred for design in current software development approaches. However, the conceptual gap between entities in business processes and classes in UML designs is not small. To reduce this gap, this paper proposes using documents that are vital to every business. The proposed new method called Document Responsibility Collaboration puts the concept of documents at the center. In the proposed method, documents are meta-models of classes in terms of programming, and at the same time, they are meta-models of relationships in terms of permanence. The proposed Document Responsibility Collaboration method uses the domain concept in which domains are made up of documents, and a document defined in a domain can work with another document in any domain to fulfill its responsibility. Document Responsibility Collaboration method defines a process, which starts at the transition from analysis to design phase and continues to the code generation phase. An example from the order management domain is provided to validate the recommended method. © 2020 IEEE.