What is the difference between bottom-up and top-down
integraion?Which is effecive.

Answer Posted / lakshmanaraj bg

Integration testing:

Once the units have been written, the next stage would be to put them together to create the system. This is called integration.

It involves building something large from a number of smaller pieces.

The purpose of integration testing is to expose defects in the interfaces and in the interactions between integrated components or systems.

The test bases for integration testing can include:

1) The software and system design.

2) A diagram of the system architecture.

3) Workflows and use-cases.

The test objects would essentially be the interface code.

This can include subsystems' database implementations.

Before integration testing can be planned, an integration strategy is required.

This involves making decisions on how the system will be put together prior to testing.

There are three commonly quoted integration strategies, namely:

1) Big-Bang Integration.

2) Top-Down Integration.

3) Bottom-Up Integration.

Big-Bang Integration:

This is where all units are linked at once, resulting in a complete system.

When testing of this system is conducted, it is difficult to isolate any errors found, because attention is not paid to verifying the interfaces across individual units.

Top-Down Integration:

This is where the system is built in stages, starting with components that call other components.

Bottom-up Integration:

This is the opposite of top-down integration and the components are integrated in a bottom-up order.

There may be more than one level of integration testing.

For example:

Component integration testing focuses on the interactions between software components and is done after component (unit) testing.

Developers usually carry out this type of integration testing.

System integration testing focuses on the interactions between different systems and may be done after system testing of each individual system.

For example, a trading system in an investment bank will interact with the stock exchange to get the latest prices for its stocks and shares on the international market.

Testers usually carry out this type of integration testing.

It should be noted that testing at system integration level carries extra elements of risk.

These can include: at a technical level, cross-platform

issues; at an operational level, business workflow issues; and at a business level, risks associated with ownership of regression issues associated with change in one system possibly having a knock-on effect on other systems.

Is This Answer Correct ?    3 Yes 0 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

What is extreme programming and what is it got to do with testing?

565


How to estimate testing effort ?

577


'configuration related errors' in testing means what?

1028


What is random testing?

620


What is the difference between quality assurance (qa) and quality control (qc)?

616






Define bug leakage and bug release?

779


What is difference between retesting and regression testing?

643


What if the software is so buggy it ca not really be tested at all?

615


What are the attributes of a good software qa engineer?

577


What should your qa documents include?

597


What is a ‘use’ case and what does it include?

656


Do you think qa's can also participate to resolve production issues?

716


What is a test plan and what does it include?

573


Explain the advantages of implementing cmmi.

553


What are the key challenges of software testing?

629