4,390 research outputs found

    Harmfulness of Code Duplication - A Structured Review of the Evidence

    Get PDF
    Duplication of code has long been thought to decrease changeability of systems, but recently doubts have been expressed whether this is true in general. This is a problem for researchers because it makes the value of research aimed against clones uncertain, and for practitioners as they cannot be sure whether their effort in reducing duplication is well-spent. In this paper we try to shed light on this is-sue by collecting empirical evidence in favor and against the nega-tive effects of duplication on changeability. We go beyond the flat yes/no-question of harmfulness and present an explanatory model to show the mechanisms through which duplication is suspected to affect quality. We aggregate the evidence for each of the causal links in the model. This sheds light on the current state of duplication re-search and helps practitioners choose between the available mitiga-tion strategies

    Structured Review of the Evidence for Effects of Code Duplication on Software Quality

    Get PDF
    This report presents the detailed steps and results of a structured review of code clone literature. The aim of the review is to investigate the evidence for the claim that code duplication has a negative effect on code changeability. This report contains only the details of the review for which there is not enough place to include them in the companion paper published at a conference (Hordijk, Ponisio et al. 2009 - Harmfulness of Code Duplication - A Structured Review of the Evidence)

    Structured Review of Code Clone Literature

    Get PDF
    This report presents the results of a structured review of code clone literature. The aim of the review is to assemble a conceptual model of clone-related concepts which helps us to reason about clones. This conceptual model unifies clone concepts from a wide range of literature, so that findings about clones can be compared with each other

    Pragmatic quality metrics for evolutionary software development models

    Get PDF
    Due to the large number of product, project, and people parameters which impact large custom software development efforts, measurement of software product quality is a complex undertaking. Furthermore, the absolute perspective from which quality is measured (customer satisfaction) is intangible. While we probably can't say what the absolute quality of a software product is, we can determine the relative quality, the adequacy of this quality with respect to pragmatic considerations, and identify good and bad trends during development. While no two software engineers will ever agree on an optimum definition of software quality, they will agree that the most important perspective of software quality is its ease of change. We can call this flexibility, adaptability, or some other vague term, but the critical characteristic of software is that it is soft. The easier the product is to modify, the easier it is to achieve any other software quality perspective. This paper presents objective quality metrics derived from consistent lifecycle perspectives of rework which, when used in concert with an evolutionary development approach, can provide useful insight to produce better quality per unit cost/schedule or to achieve adequate quality more efficiently. The usefulness of these metrics is evaluated by applying them to a large, real world, Ada project

    LIFECYCLE BASED AUDIT PROCESS FOR DISTRIBUTED APPLICATIONS

    Get PDF
    The paper wishes to present the audit process as part of a distributed framework in which a new set of metrics are built. The requirements for an audit process are described and on each of the lifecycle stages, the audit process is emphasized. The existing quality characteristics models from the literature are analyzed based on which a new set of metrics are built for sustaining the overall audit process.audit process, distributed applications, metrics and lifecycle

    Code Quality Evaluation Methodology Using The ISO/IEC 9126 Standard

    Full text link
    This work proposes a methodology for source code quality and static behaviour evaluation of a software system, based on the standard ISO/IEC-9126. It uses elements automatically derived from source code enhanced with expert knowledge in the form of quality characteristic rankings, allowing software engineers to assign weights to source code attributes. It is flexible in terms of the set of metrics and source code attributes employed, even in terms of the ISO/IEC-9126 characteristics to be assessed. We applied the methodology to two case studies, involving five open source and one proprietary system. Results demonstrated that the methodology can capture software quality trends and express expert perceptions concerning system quality in a quantitative and systematic manner.Comment: 20 pages, 14 figure

    Quantitative Quality Model for Evaluating Open Source Web Applications: Case Study of Repository Software

    Get PDF
    Many open source web applications exist today and universities also find them useful. For instance, universities now manage most of their research output by storing them in their respective institutional repositories. These repositories are often built as open source web applications and known as repository software. Several of these exist but three popular ones include: DSpace, EPrints and Greenstone (DEG). These three are open source and built by different institutions. Considering their increasing adoption and usage by universities today, it would be useful to have a model that can compare between the quality of two or more web applications and suggest the better option to an institution intending to adopt one. This paper therefore proposes a model for measuring quality in open source web applications (focusing on repository software) by adapting existing quality models. The proposed model is used to measure quality in DEG. The proposed model is validated through real data and the results presented and discussed. Overall, the model rated DSpace as the better option
    corecore