The Significance of Software Reuse: A Bird's Eye View

1258 Words3 Pages

1. INTRODUCTION

Encouraging software reuse improves the dependability of a product, as a reusable software unit is tried and tested. It reduces the risk of developing a large component from scratch, as it is easy to estimate the cost of using a large reusable software unit. Apart from ensuring quick product delivery, it enables the architects to reuse patterns and architectures suitable for particular situation, and the developers to use a set of program libraries, which eventually reduce the time for development.

Although, the idea of reusing a software unit seems to do more good than harm, it carries along with it certain drawbacks. The cost of maintaining a reusable unit will be high, if the system is subject to frequent changes. Tools used by the developers may not support the reusable component library, thereby making it extremely difficult to develop. Populating and maintaining an enormous library to exploit component reuse becomes expensive. Apart from these aspects, the very notion of identifying a reusable unit, comprehending the working process of a reusable unit and utilizing the unit in a new environment is itself a challenge.

2. THE REUSE ARENA
Over the past few decades, many techniques have been proposed and adopted to augment software reuse. These approaches harness the idea of reuse in similar application domains because the core functionality of such systems can be implemented using reusable software units. Every approach is suitable for few scenarios and it is the responsibility of the management and technical team to identify the suitability of the approach in developing a reusable software unit or exploiting the use of a software unit in developing a product.

2.1 A STUDY ON SOFTWARE REUSE IN ANDROID MARKE...

... middle of paper ...

...e pool had lesser number of LOC (lines of code) and few other components though complex, were implemented using sound reuse design principles such as well-defined interface, clarity and understandability and documentation. Also, these components were implemented using well known frameworks such as Model-View-Controller (MVC) in java. The results gave an interesting insight into the relationship between complex software units implemented with good design principles and the ease of reuse. It was observed that components that were implemented with good design principles and that were build using standardized architectural styles and frameworks yielded a higher reusability quotient. Hence, in order to increase the reusability quotient of a software unit, it is necessary that it implements sound design principles and a proven reuse oriented software engineering approach.

Open Document