2,723 research outputs found

    Impact of Programming Features on Code Readability

    Get PDF
    Readability is one important quality attributes for software source codes. Readability has also significant relation or impact with other quality attributes such as: reusability, maintainability, reliability, complexity, and portability metrics. This research develops a novel approach called Impact of Programming Features on Code Readability (IPFCR), to examine the influence of various programming features and the effect of these features on code readability. A code Readability Tool (CRT) is developed to evaluate the IPFCR readability features or attributes. In order to assess the level if impact that each one of the 25 proposed readability features may have, positively or negatively on the overall code readability, a survey was distributed to a random number of expert programmers. These experts evaluated the effect of each feature on code readability, based on their knowledge or experience. Expert programmers have evaluated readability features to be ordered then classified into positive and negative factors based on their impact on code readability or understanding. The survey responses were analyzed using SPSS statistical tool. Most of proposed code features showed to have significantly positive impact on enhancing readability including: meaningful names, consistency, and comments. On the other hand, fewer features such as arithmetic formulas, nested loops, and recursive functions showed to have a negative impact. Finally, few features showed to have neutral impact on readability

    Logical Segmentation of Source Code

    Full text link
    Many software analysis methods have come to rely on machine learning approaches. Code segmentation - the process of decomposing source code into meaningful blocks - can augment these methods by featurizing code, reducing noise, and limiting the problem space. Traditionally, code segmentation has been done using syntactic cues; current approaches do not intentionally capture logical content. We develop a novel deep learning approach to generate logical code segments regardless of the language or syntactic correctness of the code. Due to the lack of logically segmented source code, we introduce a unique data set construction technique to approximate ground truth for logically segmented code. Logical code segmentation can improve tasks such as automatically commenting code, detecting software vulnerabilities, repairing bugs, labeling code functionality, and synthesizing new code.Comment: SEKE2019 Conference Full Pape

    Contemporary Approach for Technical Reckoning Code Smells Detection using Textual Analysis

    Get PDF
    Software Designers should be aware of address design smells that can evident as results of design and decision. In a software project, technical debt needs to be repaid habitually to avoid its accretion. Large technical debt significantly degrades the quality of the software system and affects the productivity of the development team. In tremendous cases, when the accumulated technical reckoning becomes so enormous that it cannot be paid off to any further extent the product has to be abandoned. In this paper, we bridge the gap analyzing to what coverage abstract information, extracted using textual analysis techniques, can be used to identify smells in source code. The proposed textual-based move toward for detecting smells in source code, fabricated as TACO (Textual Analysis for Code smell detection), has been instantiated for detecting the long parameter list smell and has been evaluated on three sampling Java open source projects. The results determined that TACO is able to indentified between 50% and 77% of the smell instances with a exactitude ranging between 63% and 67%. In addition, the results show that TACO identifies smells that are not recognized by approaches based on exclusively structural information

    Automatically assessing and improving code readability and understandability

    Get PDF
    • …
    corecore