Investigation of the Effects of Reuse on Software Quality in an Industrial Setting (original) (raw)
Related papers
An Empirical Study of Software Reuse and Quality in an Industrial Setting
Lecture Notes in Computer Science, 2014
Software reuse is known to be generally effective in reducing development and maintenance time and cost as well as increasing quality. In this paper, the effects of reuse on software quality in an industrial setting are empirically investigated within the framework of three different case studies. Throughout this study, we worked with Turkey's leading defense industry company Aselsan's software engineering department. We collected and calculated reuse and quality metrics as well as performance measures of individual embedded software modules and staff productivity rates. By analyzing these measurements, we developed suggestions to further benefit from reuse through systematic improvements to the reuse infrastructure and process.
An industrial case study on reuse oriented development
21st IEEE International Conference on Software Maintenance (ICSM'05), 2005
Software reuse can become a key factor for improving and guaranteeing software quality, when adopted systematically all along the software process. The main characteristic of reuse-oriented processes is that they require a common repository for storing, searching and retrieving software modules. Moreover, reuse occurs systematically and is an integrated part of the process. Previous works of the same authors have empirically shown that the Full Reuse Maintenance model (FRM) slows down quality degradation following to maintenance interventions on a software system. This work is a further step in the investigation towards demonstrating how Reuse Oriented Development (ROD) impacts on software quality; how it favors FRM model; and finally, whether reuse-oriented development influences productivity, and as so, is more efficient. This has been done through a case study carried out on two ongoing industrial projects. Results are positive and support our research hypotheses.
Software Reuse Metrics for an Industrial Project
1997
In 1990 a project was established at AT&T to build applications that manage telephone systems. Since then the project has successfully completed over 20 applications comprising about 500,000 lines of source code. These systems are used daily by hundreds of managers and operators to monitor and provision the AT&T long distance telephone network. The project's success can be attributed directly to an early commitment in making software reuse a major component of its software development process. A critical factor was the establishment of a feedback loop between consumers and producers of reusable software to foster continual improvement and extension of reusable code repositories. Progresses in the feedback loop are measured by five different reuse measures. While no one measure is “best” as each provides a different perspective on reuse, two derived from the consumer/producer model have proven particularly useful: use of reusable library components and reuse growth factor. The latter developed in the study, helped uncover a new opportunity for reuse that was not obvious from other measures
Analytical and empirical evaluation of software reuse metrics
1996
How much can be saved by using existing software components when developing new software systems? With the increasing adoption of reuse methods and technologies, this question becomes critical. However, directly tracking the actual cost savings due to reuse is di cult. A worthy goal would be to develop a method of measuring the savings indirectly by analyzing the code for reuse of components. The focus of this paper is to evaluate how well several published software reuse metrics measure the \time, money and quality" bene ts of software reuse. We conduct this evaluation both analytically and empirically. On the analytic front, we introduce some properties that should arguably hold of any measure of \time, money and quality" bene t due to reuse. We assess several existing software reuse metrics using these properties. Empirically, we constructed a toolset (using GEN++) to gather data on all published reuse metrics from C++ code; then, using some productivity and quality data from \nearly replicated" student projects at the University of Maryland, we evaluate the relationship the known metrics and the process data. Our empirical study sheds some light the applicability of our di erent analytic properties, and has raised some practical issues to be addressed as we undertake broader study of reuse metrics in industrial projects.
Software reuse: metrics and models
ACM Computing Surveys, 1996
As organizations implement systematic software reuse programs to improve productivity and quality, they must be able to measure their progress and identify the most effective reuse strategies. This is done with reuse metrics and models. In this article we survey metrics and models of software reuse and reusability, and provide a classification structure that will help users select them. Six types of metrics and models are reviewed: cost-benefit models, maturity assessment models, amount of reuse metrics, failure modes models, reusability assessment models, and reuse library metrics.
An Analysis of a Project Reuse Approach in an Industrial Setting
We performed an industrial exploratory case study to analyze the software reuse process of a medium size company which is a technology leader in a niche market. Two unstructured interviews and code duplication analyses of four SVN dumps report about a development practice that resulted in more efficient maintenance, due to archiving complete versions of every shipped software, and more efficient development , due to duplication and modification of the most similar program, instead of implementing a new program from scratch.
A Brief Overview of Software Reuse and Metrics in Software Engineering
2019
This paper focuses on the importance of software reuse and metrics in software engineering. Software reuse is the process of reusing parts or all of an existing software system, architecture, or methodology to develop new software, potentially with different functionality. Software reuse metrics involve the different methods of ensuring that the reuse components are of the right quality, and reuse metrics serve to expose and predict the defects in the reusable process. In this paper, we introduced the concept of software reuse while exploring its merits and demerits, the types, and the impact of software reuse. From a survey outlook, we observed that high cost incurred whilst troubleshooting a reuse component and the difficulty integrating with development tools are some of the many potential problems associated with software reuse. In addition, we discussed software reuse metrics, the need for metrics, and their importance to software reuse (and its potential problems and solutions...
An Evaluation Model for Software Reuse Processes Software Engineering and Computer Systems
2011
Software reuse is a major concern in many software development companies. It is one of the main strategies used to reduce the cost of software product development. Studies show that the reuse strategy is the most significant strategy in terms of effort and quality. That it could save the half of the software development effort and increase the quality of the software product. Different ways of software reuse are proposed and discussed. In this study, an evaluation model for software reuse is proposed. The model is developed in order to consider the new methods of software reuse. That developed based on the framework of develop a reusable software components through software development processes. The model is proposed in order to present the applicable methods of software reuse and to evaluate their cost.
An empirical study of software reuse vs. defect-density and stability
Proceedings. 26th International Conference on Software Engineering, 2004
The paper describes results of an empirical study, where some hypotheses about the impact of reuse on defect-density and stability, and about the impact of component size on defects and defect-density in the context of reuse are assessed, using historical data (data mining) ...
An evaluation model for software reuse processes
2011
Software reuse is a major concern in many software development companies. It is one of the main strategies used to reduce the cost of software product development. Studies show that the reuse strategy is the most significant strategy in terms of effort and quality. That it could save the half of the software development effort and increase the quality of the software product. Different ways of software reuse are proposed and discussed. In this study, an evaluation model for software reuse is proposed. The model is developed in order to consider the new methods of software reuse. That developed based on the framework of develop a reusable software components through software development processes. The model is proposed in order to present the applicable methods of software reuse and to evaluate their cost.