METHODOLOGY Component-Based Software Development
METHODOLOGY Component-Based Software Development
CHARACTERISTICS
It is evolutionary
It has an evolutionary approach to software creation.
Start with identifying the most important classes
• Examine the data that will be handled
Allows for software reuse
The assembly of the components reduces 70% of the cycle time.
software development and 84 out of 100% of the project cost.
TECHNIQUES
Component-based development is an application of the divide & conquer technique.
to manage complexity. The main difference with structured methods is
mainly that the analysis and design is carried out within the same paradigm as the
implementation.
In computer science, the term divide and conquer (DAC) refers to
one of the most important paradigms of algorithmic design. The method is based on the
recursive resolution of a problem by dividing it into two or more subproblems of the same type
or similar. The process continues until they become simple enough as
so that they can be solved directly. In the end, the solutions to each of the sub-problems
they combine to provide a solution to the original problem.
ADVANTAGES
Improvement of productivity
Thanks to the reuse of software
In the first phase, the opposite effect occurs when investing time and
effort in achieving reusability
Reduction of software complexity
Improvement of market access times
As a consequence of the two previous aspects
Increase in software quality
Whenever a market of certified components is used.
Improvement of maintenance
Easier errors to detect and fix
Possibility of dynamic update
DISADVANTAGES
Availability of components
It only exists in some fields: GUIs, office automation, etc.
Lack of standardization
Business interests
Interoperability through bridges
Lack of certification processes that guarantee the quality of the components
Lack of a well-defined component-based software engineering process
Risk for companies to change their development processes