Reusable software model
Software reuse is defined as the reapplication of a variety of kinds of knowledge about one system to another similar system in order to reduce the effort of development or maintenance of the other system. The process, the personnel and the product derive the software reuse. The action performed by a machine or person is the process. The reusable software model is implemented for reuse of software programs. This model is based on incremental strategy and addresses economic, performance and technology transfer issues. This approach is effective and it is practiced regularly in the software development process.
While reusing the programs, changes may occur in the developed software. So management support is essential for implementing a reuse program. The four basic stages to implement a reuse program are:
- Steady state
Let us now discuss in detail the stages to implement a reuse program.
The reusable components are selected by analyzing the existing software. A preliminary index is produced by extracting the component descriptors. The first catalog is produced and distributed.
In this expansion stage, the size of the catalog is increased because more existing software is identified for reuse. A faceted classification scheme is produced and included in the stage 2 catalog. More resource is required forthe stage 2.
The key activity of this stage is domain analysis. The ineffective components are identified and removed. This leaves only the essential components for domain architecture. This is known as contraction. The stage 3 catalog is prepared based on the domain analysis. Resources such as a domain analyst, domain experts, software engineers and a librarian are necessary for a program with one or two projects.
In this stage, the existing components are replaced by the components that support domain specification. It is essential to ensure that the size of the collection does not increase in the further stages of the program. It is important to use the current components efficiently. For model refinements, the reusability data is fed-back to domain analysis. The catalog must be updated periodically. The resources required for a program involving several projects include a domain analyst, many domain experts and one or two domain engineers. This model provides a learning objective and a mechanism to establish reuse programs. The integration of the people, tool and processes are provided by the incremental nature of the model. In this model, the management also supports and participates in it. The economic advantage of this model is that it provides an immediate return on investment.
- answered 5 years ago
- Gul Hafiz