Domain analysis is one of
the three phases of the domain engineering and is the first one. Domain
engineering makes re- use of all the domain knowledge in the development of new
software systems and applications. It forms a key concept of the software re-
use.
Application domain provides a key idea in the systematic software re- use
of the software system or application. In this article we have discussed the
process of domain analysis. The process of domain analysis involves sub
processes like:
- Identification of domains
- Bounding of the identified domains
- Discovering commonalities and variabilities among all
the systems in a particular domain.
The knowledge obtained in
the above mentioned activities is captured in the models which are then later
used in the third phase of domain engineering i.e., domain implementation for
the creation of the artifacts such as:
- Domain specific language
- Re- usable components
- Application generators
Concepts of Domain Analysis
All the above mentioned
artifacts can be used to develop new software systems or applications
within that particular domain.
- Domain analysis is one of the three primary
phases of the domain engineering and focuses up on multiple systems within a
domain.
- In the phase of domain analyzation, the system domain is defined with
the help of feature models.
- Earlier these feature models were considered to be
a part of the so called method: feature oriented domain analysis.
- One of the
main aims of the domain analysis is to identify the common points as well as
varying points in a particular domain.
- The domain analysis has greatly helped
in improving the development of the system architectures as well as the
configurable requirements.
- Apart from this, the domain analysis also helps with
the development of static configurations.
- Most of the people confuse the domain analysis with
requirements engineering, this is a mistake not to be made!
- Domain analysis
proves to be an effective technology for the development of the configurable
requirements as compared to the traditional approaches since they are
ineffective in domains.
- The domain engineering tends to be effective only if
the re-use of the already existing software artifacts is considered in the
early stages of the development of the software system or application.
- In the
domain analysis, the features that can be re- used in the new software systems
or applications are selected earlier and later are worked throughout the
development life cycle.
- The entire process of the domain analysis is driven by
the past experience produced from the artifacts on a primary basis.
- There are
many potential sources of the domain analysis few of which have been mentioned
below:
- Artifacts of the existing systems.
- Requirement documents
- Design documents
- Standards
- User manuals
- Customers and so on.
- It is not necessary that the
domain analysis should consist of the collected and formalized information
rather it is the presence of a creative component that matters more.
- This thing
distinguishes the domain analysis from the requirements engineering.
- During the
domain analysis what actually happens is that the developers try to extend
their knowledge of the domain beyond what is already known.
- This is done basically to categorize the similarities and differences of the domains so that
the re-configurability is enhanced.
- The domain analysis is carried out with
the help of a domain model that represents the commonalities and variabilities
of all the systems lying in that domain.
- Basically, the creation of the
components and architectures of the system is assisted by the domain model.
No comments:
Post a Comment