222,529 research outputs found

    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

    Can using Fagan Inspections improve the quality of specification in 2011? A Case Study

    Get PDF
    In this paper, we explore why Fagan Inspections have become obsolete in the software industry, given the body of evidence which supports their use to improve the quality of software artefacts and the software development process. Since the late 1970’s, much has been written about how Fagan Inspections improve the quality of both processes and outputs of the software development process. The literature indicates that the Fagan Inspection technique can improve quality of software (or other software development artefacts) by a reduction in defects of 60 – 90%. However, recent literature suggests that inspection techniques in general and Fagan Inspections in particular, are no longer used. A study in 1998 found that respondents used inspections either irregularly or not at all. Teams often review artefacts informally, but believe that they are performing an inspection or formal review. The lack of rigour in the review process results in reduced benefits and more defects in the artefacts. To explore this situation, we conducted a case study with a local enterprise and we report on the early findings. These suggest that the introduction of Fagan Inspections may have a number of benefits before they have even been introduced fully, including recognition of flaws in the current development process, development of technical knowledge relating to the software process domain, and improved team relations and a ‘quality’ culture. In addition, the personnel using Fagan Inspection gain experience in the production of ‘quality’ artefacts

    Vision Based Autonomous Robotic Control for Advanced Inspection and Repair

    Get PDF
    The advanced inspection system is an autonomous control and analysis system that improves the inspection and remediation operations for ground and surface systems. It uses optical imaging technology with intelligent computer vision algorithms to analyze physical features of the real-world environment to make decisions and learn from experience. The advanced inspection system plans to control a robotic manipulator arm, an unmanned ground vehicle and cameras remotely, automatically and autonomously. There are many computer vision, image processing and machine learning techniques available as open source for using vision as a sensory feedback in decision-making and autonomous robotic movement. My responsibilities for the advanced inspection system are to create a software architecture that integrates and provides a framework for all the different subsystem components; identify open-source algorithms and techniques; and integrate robot hardware

    Integrating, Customizing, and Extending Environments with a Message-Based Architecture

    Get PDF
    Message-based architectures have typically been used for integrating an engineer‘s set of tools as in FIELD and SoftBench. This paper presents our experience using a message-based architecture to integrate complex, multi-user environments. Where this style of control integration has been effective for encapsulating independent tools within an environment, we show that these techniques are also useful for integrating environments themselves. Our experience comes from our integration of two types of process-centered software development environments: a groupware application that implements a Fagan-style code inspection process and a software development process environment where code inspection is a single step in the overall process. We use a message-based mechanism to federate the two process engines such that the two process formalisms complement rather than compete with each other. Moreover, we see that the two process engines can provide some synergy when used in a single, integrated software process environment, Specifically, the integrated environment uses the process modeling and enactment services of one process engine to customize and extend the code inspection process implemented in a different process engine. The customization and extension of the original collaborative application was accomplished without modifying the application. This was possible because the integration mechanism was designed for multi-user, distributed evironments and encouraged the use of an environment‘s services by other environments. The results of our study indicate that the message-based architecture originally conceived for tool-oriented control integration is equally well-suited for environment integration

    Software Development and Testing: Approach and Challenges in a distributed HEP Collaboration

    Get PDF
    In developing the ATLAS [1] Trigger and Data Acquisition (TDAQ) software, the team is applying the iterative waterfall model, evolutionary process management, formal software inspection, and lightweight review techniques. The long preparation phase, with a geographically widespread development team required that the standard techniques be adapted to this HEP environment. The testing process is receiving special attention. Unit tests and check targets in nightly project builds form the basis for the subsequent software project release testing. The integrated software is then being run on computing farms that give further opportunites for gaining experience, fault finding, and acquiring ideas for improvement. Dedicated tests on a farm of up to 1000 nodes address the large-scale aspect of the project. Integration test activities on the experimental site include the special purpose-built event readout hardware. Deployment in detector commissioning starts the countdown towards running the final ATLAS experiment. These activities aim at both understanding and completing the complex system, and help in forming a team whose members have a variety of expertise, working cultures, and professional backgrounds

    Reducing Effects of Plagiarism in Programming Classes

    Get PDF
    Large programming classes are traditionally an area of concern for maintaining the integrity of the educational process. Systematic inspection of all program solutions for evidence of plagiarism can be done using an automated tool. The Measure Of Software Similarity tool developed by Alex Aiken at the University of California at Berkeley analyzes a set of programs to detect evidence of “duplicates.” However, experience in applying this sort of plagiarism detection in a large programming class indicates that the main long-term effect may be to simply shift the source of plagiarism. This possibility leads to considering the reason for fighting plagiarism and then to exploring additional techniques aimed at reducing the perceived motivation for plagiarism

    Using the COSMIC functional size measurement method (ISO 19761) as a software requirements improvement mechanism

    Get PDF
    This research project investigates the contribution of the COSMIC software functional size measurement method (ISO 19761) to identify defects in functional requirements. The functional size measurer has to understand and interpret the functional requirements used in c input to the measurement process. Industry requirements are typically written in natural language and are prone to ambiguities: therefore, interpretation errors do happen. Errors in functional requirements affect the cost of subsequent steps of the software life cycle through rework when these errors are detected and corrected. Organizations then apply review and inspection techniques to detect errors in requirements. However, these techniques do not detect all defects in a single cycle of review or inspection, leaving a number of residual defects in the requirements document. Notwithstanding the application of such techniques, a measurer using the COSMIC method can identify defects in the functional requirements that do not clearly define the elements required as input to the measurement activity. The objectives of this research project are to quantify the efficiency and effectiveness (in terms of unit cost) when using the COSMIC method as a technique for identifying defects in these functional specifications, comparing the results with an inspection method. The efficiency and unit costs are computed using the number of defects identified and the effort to do so. Results show that, on average, a measurer participating in an inspection finds a number of defects similar to the number of defects found by the addition of an inspector, maintaining the efficiency. The average unit cost increases slightly as the effort is slightly higher, except that for this cost, the project gets the software functional size usable for estimation, benchmarking, and process improvement monitoring. Without the identification of defects, the functional size measurement is considered as a management cost. With the additional benefit of the identification of defects, the functional size measurement creates added value in terms of rework costs savings since the defects identified by a measurer can be corrected earlier in the development cycle. In the experiments with experts and practitioners whose experience was limited, it was also observed that the practitioners newly trained to functional size measurement faced several challenges which impacted the quality of their measurement results. Therefore, this research project also contributed in defining requirements for the training of measurers

    Interactive ant colony optimization (iACO) for early lifecycle software design

    Get PDF
    Finding good designs in the early stages of the software development lifecycle is a demanding multi-objective problem that is crucial to success. Previously, both interactive and non-interactive techniques based on evolutionary algorithms (EAs) have been successfully applied to assist the designer. However, recently ant colony optimization was shown to outperform EAs at optimising quantitative measures of software designs with a limited computational budget. In this paper, we propose a novel interactive ACO (iACO) approach, in which the search is steered jointly by an adaptive model that combines subjective and objective measures. Results show that iACO is speedy, responsive and effective in enabling interactive, dynamic multi-objective search. Indeed, study participants rate the iACO search experience as compelling. Moreover, inspection of the learned model facilitates understanding of factors affecting users' judgements, such as the interplay between a design's elegance and the interdependencies between its components. © 2014 Springer Science+Business Media New York
    • 

    corecore