Page 285 - DCAP305_PRINCIPLES_OF_SOFTWARE_ENGINEERING
P. 285

Unit 14: Flow Based Testing Process



            The process continues from step 2 until the entire program structure is built. The top-down   Notes
            integration  strategy  verifies  major  control  or  decision  points  early  in  the  test  process.  In  a
            well-factored program structure, decision making occurs at upper levels in the hierarchy and
            is therefore encountered first. If major control problems do exist, early recognition is essential.
            If depth-first integration is selected, a complete function of the software may be implemented
            and demonstrated.
            Bottom-up Integration
            Bottom-up integration testing, as its name implies, begins construction and testing with atomic
            modules i.e., components at the lowest levels in the Because components are integrated from the
            bottom up, processing points subordinate to a given level is always available and the eliminated.
            A bottom-up integration strategy may be implemented with the following:
               1.  Low-level components are combined into clusters (sometimes called builds) that perform
                 a specific software sub function.
               2.  A driver (a control program for testing) is written to coordinate input and output.
               3.  The cluster is tested.

               4.  Drivers are removed and clusters are combined moving upward in gram structure.
            Components are combined to form clusters 1, 2, and 3. Each of the clusters is tested using a as a
            dashed block). Components in clusters 1 and 2 are subordinate to D  and D  are removed and the
                                                                 l
                                                                      2
            clusters are interfaced directly to lf. Driver D  for cluster 3 is removed prior to integration with
                                                3
            module Mb. Mb will ultimately be integrated with component M, and so forth. (See Figure 14.2)
                                   Figure 14.2: Bottom-up Integration





























            As integration moves upward, the need for separate test drivers lessens. In fact, if the top two
            levels of program structure are integrated top down, the number of drivers can be reduced
            substantially and integration of clusters is greatly simplified.
            Regression Testing
            Each time a new module is added as part of integration testing, the software changes. New
            data flow paths are established, new 1/0 may occur, and new control logic is invoked. These


                                             LOVELY PROFESSIONAL UNIVERSITY                                   279
   280   281   282   283   284   285   286   287   288   289   290