written 5.9 years ago by |
Bi- directional integration is a combination of the top-down & bottom-up integration approaches used together to derive integration steps.
As shown in fig, assume that the software components become available in the order mentioned by the component numbers. The individual components 1, 2, 3, 4 and 5 are tested separately and bi-directional integration performed initially with the use of stubs and drivers.
Drivers are used to provide upstream connectivity while stubs provide downstream connectivity .A driver is a function which redirects the requests to some other components and stubs simulate the behavior of missing components.
After the functionality of these integrated components is tested, the drivers and stubs are discarded. Once components 6, 7 and 8 become available, the integration methodology then focus only on those components, as there are the components which need focus and are new. This approach is also called “Sandwich Integration”.
Advantages:
Sandwich approach is useful for very large projects having several subprojects.
Both Top-down and Bottom-up approach starts at a time as per development schedule.
Units are tested and brought together to make a system Integration is done downwards.
Disadvantages:
It require very high cost for testing because one part has Top-down approach while another part has bottom-up approach.
It cannot be used for smaller system with huge interdependence between different modules. It makes sense when the individual subsystem is as good as complete system.