Page 138 - DCAP305_PRINCIPLES_OF_SOFTWARE_ENGINEERING
P. 138

Principles of Software Engineering



                   Notes                                  Figure 6.3: Bottom-up Approach


                                                                          Main modules












                                                                                               Movement

                                                                                              Lower
                                                                                              Level
                                                                                              Module
                                                           (Movement in bottom-up approach)


                                 In this approach testing is conducted from sub module to main module, if the main module
                                 is not developed a temporary program called DRIVERS is used to simulate the main module.
                                 Advantages:
                                    1.  Advantageous if major flaws occur toward the bottom of the program.

                                    2.  Test conditions are easier to create.
                                    3.  Observation of test results is easier.
                                 Disadvantages:

                                    1.  Driver Modules must be produced.
                                    2.  The program as an entity does not exist until the last module is added.
                                 6.6.1 Differentiate between Top-down and Bottom-up Approach

                                 Top-down Approach
                                    1.  It starts by identifying the major components of the system, decomposing them into their
                                      lower-level components and iterating until the desired level of detail is achieved.
                                    2.  It starts from the highest level component of the hierarchy and proceeds to lower levels.
                                    3.  It results in some form of stepwise refinement.

                                    4.  Starting from an abstract design, in each step the design is refined to a more concrete level,
                                      until we reach where no more refinement is needed and the design can be implemented
                                      directly.
                                    5.  It is suitable only if the specifications are clearly known.
                                    6.  It is suitable if a waterfall type of process model is being used.

                                 Bottom-up Approach
                                    1.  It starts with designing the most basic or primitive components and proceeds to higher-
                                      level components that use these lower-level components.




        132                               LOVELY PROFESSIONAL UNIVERSITY
   133   134   135   136   137   138   139   140   141   142   143