Component-Based Development(CBD)
The component Based Development Model has the characteristics of a spiral model, hence is evolutionary and iterative in nature. In this model, applications are built from pre-packaged software components that are available from different vendors. Components are modular products with well-defined functions that can be incorporated into the project of selection.
The modelling and construction stages are begun with identifying candidate components suitable for the project.
Steps involved in this approach are implemented in an evolutionary fashion:
- Components suitable for the application domain are selected.
- Component integration issues are catered to.
- Software architecture is designed based on the selected components.
- Components are integrated into the architecture.
- Testing of the functionality of components is done.
Software can be re-used in this manner, cost and time is reduced.
Formal Methods Model(FMM)
In the Formal Methods Model, mathematical methods are applied in the process of developing software. It Uses Formal Specification Language (FSL) to define each system characteristics. FSL defines the syntax, notations for representing system specifications, several objects and relations to define the system in detail.
The careful mathematical analysis that is done in FMM results in a defect-free system. It also helps to identify and correct ambiguity and inconsistency easily. This method is time-consuming and expensive in nature. Also, knowledge of formal methods is necessary for developers and is a challenge.