Software System Integration refers to the practice of combining individually tested software applications or hardware components from various vendors into an integrated whole.
By using software integration, a company can align less expensive, pre-configured components and off-the-shelf software to meet their key business goals, as opposed to more expensive, customized implementations, that may require original programming or manufacturing of unique components.
Components may be integrated in a waterfall model or a “big bang” approach.
In Big Bang Integration, components or modules are integrated simultaneously, after which everything is tested as a whole.
The waterfall model is a sequential design process through phases of conception, initiation, analysis, design, construction, testing, production/implementation, and maintenance (like a waterfall).
The waterfall model or continuous integration offers several advantages over the “big bang” approach. Continuous integration is less risky, components and subsystems are integrated as they are developed. Developers can split the product into several builds or partial products that can be integrated individually.
Customers gain an advantage in seeing a working product early in the development. This also allows developers the ability to verify performance and other quality factors in a working environment, rather than relying on models or simulations. Continuous integration also decreases integration risk; developers can identify integration problems early in the process rather than at the end when often times issues are magnified and can be too complex to address.