28,572 research outputs found

    An Empirical Validation of Object-Oriented Design Metrics for Fault Prediction

    Get PDF
    Object-oriented design has become a dominant method in software industry and many design metrics of object-oriented programs have been proposed for quality prediction, but there is no well-accepted statement on how significant those metrics are. In this study, empirical analysis is carried out to validate object-oriented design metrics for defects estimation. Approach: The Chidamber and Kemerer metrics suite is adopted to estimate the number of defects in the programs, which are extracted from a public NASA data set. The techniques involved are statistical analysis and neuro-fuzzy approach. Results: The results indicate that SLOC, WMC, CBO and RFC are reliable metrics for defect estimation. Overall, SLOC imposes most significant impact on the number of defects. Conclusions/Recommendations: The design metrics are closely related to the number of defects in OO classes, but we can not jump to a conclusion by using one analysis technique. We recommend using neuro-fuzzy approach together with statistical techniques to reveal the relationship between metrics and dependent variables, and the correlations among those metrics also have to be considered

    WHAT IS FAMILIAR IS BEAUTIFUL: A NOVEL APPROACH INVESTIGATING THE RELATIONSHIP BETWEEN AESTHETICS AND PERCEIVED USE

    Get PDF
    Objective: This study investigates the application of aesthetic principles to designed objects with which we interact, specifically looking at the impact of perceived function of the objects on perceptions of visual appeal. Background: Previous studies have demonstrated that a product’s judged beauty or visual appeal is related to perceptions of its usability. Arguments have been put forward for both directions of causality leading to “what is beautiful is usable” and “what is usable is beautiful” hypotheses. Explanations for the relationship between usability and beauty judgments include stereotype effects, ecological explanations, and cognitive processing viewpoints. The current studies contribute to this debate by manipulating usability and aesthetic principles independently to determine whether well-established aesthetic principles are contingent on perceived function. Method: 248 participants were recruited for two experiments. In Experiment 1, participants viewed sixteen illustrations that varied in ways that frequently increase the beauty of objects (i.e., basic principles such as symmetry, balanced massing, curvature, and prototypicality) and rated their degree of visual appeal. In Experiment 2, participants rated the appeal of the same stimuli as in Experiment 1 but were primed by instructions describing the illustrations as either alternative designs for microwave control panels or designs of building façades. Results: Strong support for the aesthetic principles of symmetry and spatial massing, but not curvature, were found in both experiments. Participants generally preferred stimuli that were symmetrical and evenly massed (i.e., balanced ). Additionally, the manipulation of a functional prime significantly interacted with several aesthetic principles that relate to the match between the supplied prime and the prototypicality of the stimulus for the primed class of objects. Conclusions: Aesthetic principles of symmetry and spatial massing can be considered very potent ways to influence a user’s degree of perceived visual appeal that are resistant to specific use cases or situations. Other principles, such as curvature preferences, seem to be limited by the prototypicality of curvature for a primed class of objects. So when considering whether “what is beautiful is usable” or “what is usable is beautiful, the results from the current study demonstrate that it may be more appropriate to say what is familiar is beautiful

    Using real options to select stable Middleware-induced software architectures

    Get PDF
    The requirements that force decisions towards building distributed system architectures are usually of a non-functional nature. Scalability, openness, heterogeneity, and fault-tolerance are examples of such non-functional requirements. The current trend is to build distributed systems with middleware, which provide the application developer with primitives for managing the complexity of distribution, system resources, and for realising many of the non-functional requirements. As non-functional requirements evolve, the `coupling' between the middleware and architecture becomes the focal point for understanding the stability of the distributed software system architecture in the face of change. It is hypothesised that the choice of a stable distributed software architecture depends on the choice of the underlying middleware and its flexibility in responding to future changes in non-functional requirements. Drawing on a case study that adequately represents a medium-size component-based distributed architecture, it is reported how a likely future change in scalability could impact the architectural structure of two versions, each induced with a distinct middleware: one with CORBA and the other with J2EE. An option-based model is derived to value the flexibility of the induced-architectures and to guide the selection. The hypothesis is verified to be true for the given change. The paper concludes with some observations that could stimulate future research in the area of relating requirements to software architectures

    The significance of participant experience when evaluating software inspection techniques

    Get PDF
    Software inspections have been used to improve software quality for 30 years. The Checklist Based Reading strategy has traditionally been the most prevalent reading strategy. Increased Object Oriented usage has raised questions regarding this techniques efficacy, given issues such as delocalisation. This study compared two inspection techniques: Use-Case Reading and Usage-Based Reading, with Checklist Based Reading. Students and industry professionals were recruited to participate in the study. The effectiveness of each reading strategy was analysed, and the effect experience had on inspection efficacy. The results showed no significant difference between inspection techniques,whether used by student or professional developers but a significant difference was identified between student and professional developers in applying the different techniques. Qualitative results highlighted the differences in ability between industry and students with respect to what each group considered important when inspecting and writing code. These results highlight the differences between student and industry professionals when applying inspections. Therefore, when selecting participants for empirical software engineering studies, participant experience level must be accounted for within the reporting of results
    • …
    corecore