Home »
Software Engineering
Reuse Domain in Software Engineering
In this tutorial, we will learn about the reuse domain in software engineering, basic reuse domain notations aim to capture, and types of messages in reuse domain.
By Monika Sharma Last updated : April 07, 2023
What is Reuse Domain?
A reuse domain is technically the same as a set of application areas. A body of information is considered to be a problem domain for use it again if a deep and comprehensive relationship or we can say bind exists among the information items as categorized or bind up by patterns of similarity among the development components of the software product. A reuse domain has uploaded some understanding of some community, characterized by technique, concepts, technologies and terminologies that show some coherence.
Examples of domains are business software domain, accounting software domain, banking software domain, manufacturing automation software domain, telecommunication software domain, etc.
The domain search generalizes the application domain. A domain model eclipse specific applications. The common characteristics or the similarities between systems are generalized.
During domain analysis, a particular community of software developers combines to discuss or interact community-wide-solutions. Analysis of the application domain is required or want to identify or describe the reusable components. The actual construction of reusable components for a domain is called domain engineering or engineering for the domain.
Evolution of a Reuse Domain
The instant result of domain analysis is the development or produce of problem-oriented languages. The problem-oriented languages are also called as application generators.
These application generators once developed or produced form application development standards. The domains slowly or calmly develop. As a domain develops, it is present in the various stages of it,
Stage 1: There will be no clear and persistent set of notations. No reusable components are present or available. All software is written from scratch.
Stage 2: Here, the only experience from similar or the same projects is used in a development effort. This means that there is the only way that is the reuse of knowledge.
Stage 3: At this stage, the domain is ready for reuse. The set of concepts is stabilized and the notations standardized. Standard solutions to standard problems are available. There is both knowledge and component reuse.
Stage 4: The domain has been fully analyzed or explored. The software development for the domain can be largely or heavily automated. Programs are not written in the traditional sense anymore.Programs are written using a domain particular language, which is also called as an application generator.
Current State of Reuse
The shortcomings of the state-of-the-art reuse techniques of the software, it is the experience or new way of several organizations that most of the factors inhibiting an effective use of program again are non-technical.
Some of these ways are the following,
- Need for a commitment from the top management of the software.
- Acceptable documentation to support use it again.
- Acceptable incentives to reward those who use it again. Both the people contributing new reusable components and those reusing the existing components should be rewarded to start a reuse program and keep it going on the software.
- Find access to and information about reusable components. Organizations are often hesitant to provide open access to the use of repository again for the fear of the use of components finding a way to their competitors.