What is component-based development?
Component-based Development (CBD) is a process that supports the design and development of computer-based systems with the help of reusable software components. At CBD, the focus is shifting from software programming to creating software systems.
Component-based development techniques include methods of developing software systems by selecting ideal standard components and then assembling them using a well-defined software architecture. With the systematic reuse of coarse-grained components, CBD aims to deliver better quality and performance.
Component-based development is also known as component-based software engineering (CBSE).
Object-oriented modeling leads to a large number of fine-grained classes, objects and relationships. It is very difficult to find reusable parts among these smaller units. The idea behind CBD is to integrate the associated parts and reuse them together. These integrated parts are called components.
Component-based development techniques consist of non-conventional development routines including component evaluation, component retrieval, etc. It is important that the CBD is executed within a middleware infrastructure that supports the process, e.g. B. Enterprise Java Beans.
The main goals of CBD are as follows:
Save time and money when building large and complex systems: The development of complex software systems with the help of standard components helps to considerably reduce the development time for software. Function points or similar techniques can be used to check the affordability of the existing method.
Improvement of the software quality: The component quality is the key factor for the improvement of the software quality.
Detection of defects within the systems: The CBD strategy supports defect detection by testing the components. However, finding the source of the error is a challenge in CBD.
Some benefits of CBD include:
- Minimized delivery:
- Search in component catalogs
- Recycling of prefabricated components
Improved efficiency:
- Developers focus on application development
Improved quality:
- Component developers can plan additional time for quality assurance
- Minimized expenses
The specific routines of CBD are:
- component development
- Publish components
- Component search and retrieval
- component analysis
- component assembly