223,034 research outputs found

    The Real World Software Process

    Get PDF
    The industry-wide demand for rapid development in concert with greater process maturity has seen many software development firms adopt tightly structured iterative processes. While a number of commercial vendors offer suitable process infrastructure and tool support, the cost of licensing, configuration and staff training may be prohibitive for the small and medium size enterprises (SMEs) which dominate the Asia-Pacific software industry. This work addresses these problems through the introduction of the Real World Software Process (RWSP), a freely available, Web-based iterative scheme designed specifically for small teams and organisations. RWSP provides a detailed process description, high quality document templates - including code review and inspection guidelines - and the integrated tutorial support necessary for successful usage by inexperienced developers and teams. In particular it is intended that the process be readily usable by software houses which at present do not follow a formal process, and that the free RWSP process infrastructure should be a vehicle for improving industry standards

    ReviewRanker: A Semi-Supervised Learning Based Approach for Code Review Quality Estimation

    Full text link
    Code review is considered a key process in the software industry for minimizing bugs and improving code quality. Inspection of review process effectiveness and continuous improvement can boost development productivity. Such inspection is a time-consuming and human-bias-prone task. We propose a semi-supervised learning based system ReviewRanker which is aimed at assigning each code review a confidence score which is expected to resonate with the quality of the review. Our proposed method is trained based on simple and and well defined labels provided by developers. The labeling task requires little to no effort from the developers and has an indirect relation to the end goal (assignment of review confidence score). ReviewRanker is expected to improve industry-wide code review quality inspection through reducing human bias and effort required for such task. The system has the potential of minimizing the back-and-forth cycle existing in the development and review process. Usable code and dataset for this research can be found at: https://github.com/saifarnab/code_revie

    A novel setup for in-process geometric inspection of 3D printed parts via structured-light 3D scanning

    Get PDF
    Abstract: In-process 3D scanning of 3D-printed parts offers the potential to improve the accuracy and efficiency of additive manufacturing. In this work, a setup for in-process geometric inspection of 3D printed parts of fused filament fabrication (FFF) that combines a 3D printer and a 3D scanner is presented, as well as a software package developed in Python. The software transforms the 3D scanned point cloud to the 3D printer's reference system and produces a deviation field by comparing the outer surface of the 3D printed part to the reference geometry. By performing the scanning while the part is being printed, it is possible to monitor the process in real-time and detect any errors that may occur. The main application for this system is to understand the geometric deviation of the 3D printed parts, which allows us to reduce systematic deviations without the need for sacrificial parts or machine calibration. This system allows for the generation of an accompanying 3D model that can be used for geometric inspection or simulations at the end of the printing process. In conclusion, in-process 3D scanning holds promise as a valuable tool for improving the accuracy and efficiency of 3D printing, and there are many opportunities for further optimization and development.Résumé de la communication présentée lors du congrès international tenu conjointement par Canadian Society for Mechanical Engineering (CSME) et Computational Fluid Dynamics Society of Canada (CFD Canada), à l’Université de Sherbrooke (Québec), du 28 au 31 mai 2023

    Hybrid simulation model of ultrasonic inspection of pressure tubes in nuclear industry

    Get PDF
    Pressure tube inspection within CANDU nuclear reactors is a critical maintenance operation to identify and track the growth of defects within the tube. Current inspection approaches utilising ultrasonic techniques are technically challenging, which cause the whole inspection process to be resource intensive and expensive to implement. This paper will describe the initial stages in the development of a simulation approach for the ultrasonic inspection methodology to research advanced solutions with the objective of improving the inspection accuracy. Zirconium tubes with a thickness of 4.3mm and a required measurement accuracy of defect depth of 0.1mm require the use of high frequency ultrasonic transducers. The finite element modelling of high frequencies is challenging due to the increased mesh requirements to resolve the small wavelengths and the large propagation distance which can cause numerical dispersion. Hence, a 2D finite element hybrid model is developed in PZFlex software to overcome this difficulty with five subsequent components containing both finite element models and analytical solutions: ultrasound transmission; transmission extrapolation (wave propagation); target interaction; echo wave extrapolation and ultrasonic reception. To test the capability of defect inspection using the hybrid model, a slot with a depth of 1mm is introduced in the model. The depth information was calculated from the time-of-flight between the reflections of the tube surface and the slot. The predicted modelled depth estimates produces errors of less than 20micron for both 10MHz and 20MHz probe configurations validating the hybrid modelling approach. Moreover, experimental validation of the hybrid modelling approach is demonstrated

    Understanding the Sources of Variation in Software Inspections

    Get PDF
    In a previous experiment, we determined how various changes in three structural elements of the software inspection process (team size, and number and sequencing of session), altered effectiveness and interval. our results showed that such changes did not significantly influence the defect detection reate, but that certain combinations of changes dramatically increased the inspection interval. We also observed a large amount of unexplained variance in the data, indicating that other factors much be affecting inspection performance. The nature and extent of these other factos now have to be determined to ensure that they had not biased our earlier results. Also, identifying these other factors might suggest additional ways to improve the efficiency of inspection. Acting on the hypothesis that the "inputs" into the inspection process (reviewers, authors, and code units) were significant sources of variation, we modeled their effects on inspection performance. We found that they were responsible for much more variation in defect detection than was process structure. This leads us to conclude that better defect detection techniques, not better process structures, at the key to improving inspection effectiveness. The combined effects of process inputs and process structure on the inspection interval accounted for only a small percentage of the variance in inspection interval. Therefore, there still remain other factors which need to be identified. (Also cross-referenced as UMIACS-TR-97-22

    Leveraging Evolutionary Changes for Software Process Quality

    Full text link
    Real-world software applications must constantly evolve to remain relevant. This evolution occurs when developing new applications or adapting existing ones to meet new requirements, make corrections, or incorporate future functionality. Traditional methods of software quality control involve software quality models and continuous code inspection tools. These measures focus on directly assessing the quality of the software. However, there is a strong correlation and causation between the quality of the development process and the resulting software product. Therefore, improving the development process indirectly improves the software product, too. To achieve this, effective learning from past processes is necessary, often embraced through post mortem organizational learning. While qualitative evaluation of large artifacts is common, smaller quantitative changes captured by application lifecycle management are often overlooked. In addition to software metrics, these smaller changes can reveal complex phenomena related to project culture and management. Leveraging these changes can help detect and address such complex issues. Software evolution was previously measured by the size of changes, but the lack of consensus on a reliable and versatile quantification method prevents its use as a dependable metric. Different size classifications fail to reliably describe the nature of evolution. While application lifecycle management data is rich, identifying which artifacts can model detrimental managerial practices remains uncertain. Approaches such as simulation modeling, discrete events simulation, or Bayesian networks have only limited ability to exploit continuous-time process models of such phenomena. Even worse, the accessibility and mechanistic insight into such gray- or black-box models are typically very low. To address these challenges, we suggest leveraging objectively [...]Comment: Ph.D. Thesis without appended papers, 102 page

    Empirical investigations supporting an extensible, theoretical approach to understanding software inspections

    Get PDF
    Empirical software engineering research has directed substantial effort towards understanding and improving software inspection, a defect detection method much less costly than testing. However, software inspection suffers from a lack of theory governing the process and its outcomes, leading to apparently contradictory experimental outcomes that cannot easily be reconciled. This theoretical uncertainty hinders efforts to effectively address delocalisation - the occurrence of related information in different artefacts, or parts of a software system. Delocalisation is a hurdle to software comprehension, an activity fundamental to inspection.A gap currently exists between the development of inspection strategies and theories of software comprehension, manifested in two ways. First, although some strategies seek to enhance an inspector's understanding of key parts of the software, they generally ignore variability between inspectors. A particular form of guidance or cognitive support given to one inspector may have a different effect when given to another. Second, while models of inspection cost effectiveness exist, they are not expressed in terms of factors that might be manipulated to improve inspection performance. It is not clear how far an inspector should go to address one particular concern in the software, before the benefits of doing so are outweighed by the risk of ignoring other concerns.This thesis first reports on an industry survey examining the current state of practice with respect to peer reviews. Two more qualitative studies were conducted to explore approaches inspectors might take to the comprehension of artefact interrelationships and the challenges posed by delocalisation. A controlled experiment is then presented to show how active guidance and inspector expertise affect the detection of individual defects.Using the results of these studies, a theoretical framework and model of inspection cost effectiveness are proposed in which the effects of experience, cognitive support and the reading technique can be used to predict the consequences of a given inspection strategy. A simulation of the model was conducted to compare several new and existing inspection strategies. Thus, the framework and model provide a basis upon which an appropriate inspection strategy can be developed, selected or refined for a given software project.The results of these investigations suggest several ways in which inspection practices might be improved, including through the additional use of tool support and selective use of active guidance under specific conditions. By instantiating and using the proposed inspection model, software development organisations can engineer optimally cost effective inspection strategies

    The Impact of Background and Experience on Software Inspections

    Get PDF
    This dissertation is an initial study into the relationship between an inspector's characteristics and his or her effectiveness in an inspection. Research has shown that improving the individual effectiveness of the inspectors improves the overall effectiveness of an inspection team. But, the performance of inspectors varies widely, even when using the same inspection technique. This variation is often due to the inherent differences among the inspectors who used the technique. In order to better understand this variation and provide guidance to inspection planners, this dissertation has focused on the background and experience of the inspector as the source of variation. To study this issue I used a novel approach for software engineering, grounded theory. This methodology allowed hypotheses to be built both top-down, from the literature, as well as bottom-up, using data. The literature portion came from software engineering as well as education and psychology. The data portion came from both existing studies and newly designed studies. The data from existing studies allowed the initial hypotheses to become more concrete. Once some of the hypotheses had support from data, the final step was to design studies to test a subset of the hypotheses. I designed and ran two studies to test the selected hypotheses. The goal of the first study was to understand the type and level of experience with the software inspection process that was necessary. The earlier data had shown that process experience was important, but the effect of the type and level of experience was still unclear. The goal of the second study was to understand the interaction between an inspector's software development experience and the level of detail required in an inspection process. The earlier data had shown some indications that for experienced inspectors too much detail reduced the number of defects found, while less experienced inspectors needed more detail to overcome their lack of experience and find more defects. This dissertation presents complete list of hypotheses and the results of these studies along with some specific suggestions for both researchers and practitioners

    Object inspection sensor

    Get PDF
    Inspekční objektový senzor je zařízení, které se využívá převážně v oblasti automatizace výrobního procesu. Diplomová práce se zabývá zejména optickými inspekčními systémy, průzkumem a srovnáním výrobců těchto systémů v České Republice. V diplomové práci je představena společnost ELLA-CS, s.r.o. a výchozí stav výstupní kontroly výrobků na jejím pracovišti. Další část se věnuje návrhu inspekčního systému na platformě Raspberry Pi, který je určen k inspekci výrobku společnosti ELLA-CS, s.r.o. Práce se dále zabývá realizací inspekčního systému, ve kterém je popsán hardware a software tohoto systému. Poslední část je určena diskuzi výsledků a návrhům zlepšení inspekce.Object inspection sensor is a device that is mainly used in the automation of the production process. The Diploma Thesis deals with the familiarization of optical inspection systems, survey and comparison of companies of these systems in the Czech Republic. ELLA-CS company and dafault state output control products in her workplace is presented in the Diploma Thesis. The next part concerns the design of the inspection system for the company ELLA-CS, which is designed on the platform Raspberry. The thesis also deals with the implementation of the inspection system, which describes the hardware and software of this system. The last part is intended to discuss the results and suggestions for improving the inspection.
    corecore