Sunday, 3 March 2013

Top-down and Bottom-up Software Testing approaches

Top-down and Bottom-up Software Testing approaches

Types of Software Testing Approaches :

  • Top-down 
  • Bottom-up

software-testing-approaches

Top-down and bottom-up are both strategies of information processing and knowledge ordering, used in a variety of fields including software, humanistic and scientific theories (see systemics), and management and organization. In practice, they can be seen as a style of thinking and teaching.



Top-down approach

A top-down approach (also known as stepwise design or deductive reasoning, and in many cases used as a synonym of analysis or decomposition) is essentially the breaking down of a system to gain insight into its compositional sub-systems. In a top-down approach an overview of the system is formulated, specifying but not detailing any first-level subsystems. Each subsystem is then refined in yet greater detail, sometimes in many additional subsystem levels, until the entire specification is reduced to base elements. A top-down model is often specified with the assistance of "black boxes", these make it easier to manipulate. However, black boxes may fail to elucidate elementary mechanisms or be detailed enough to realistically validate the model. Top down approach starts with the big picture. It breaks down from there into smaller segments.

Bottom-up approach

A bottom-up approach (also known as inductive reasoning, and in many cases used as a synonym of synthesis) is the piecing together of systems to give rise to grander systems, thus making the original systems sub-systems of the emergent system. Bottom-up processing is a type of information processing based on incoming data from the environment to form a perception. Information enters the eyes in one direction (input), and is then turned into an image by the brain that can be interpreted and recognized as a perception (output). In a bottom-up approach the individual base elements of the system are first specified in great detail. These elements are then linked together to form larger subsystems, which then in turn are linked, sometimes in many levels, until a complete top-level system is formed. This strategy often resembles a "seed" model, whereby the beginnings are small but eventually grow in complexity and completeness. However, "organic strategies" may result in a tangle of elements and subsystems, developed in isolation and subject to local optimization as opposed to meeting a global purpose.

    topdown-bottomup-testing-approaches
    Click on the image for zoom view

    What are the differences between Top down and Bottom up approaches ?

    difference-between-topdown-bottomup-approach1
    Click on the image for zoom view
    difference-between-topdown-bottomup-approach
    Click on the image for zoom view

    Example 1 :These are two design approaches, which can be explained as:
    You can imagine a tree like structure , in which when you are following top-down approach you move from root node to leaf node and when you follow bottom-up approach you follow leaf node to root node.

    a) Top-down approach:
    In this an overview of the system is first formulated, specifying but not detailing any first-level subsystems. 
    Each subsystem is then refined in yet greater detail, sometimes in many additional subsystem levels, until the 
    entire specification is reduced to base elements.

    b) Bottom-up approach:
    In this approach the individual base elements of the system are first specified in great detail. These elements are then linked together to form larger subsystems, which then in turn are linked, sometimes in many levels, until a complete top-level system is formed.

    15 comments:

    1. Thanks you for sharing the article. The data that you provided in the blog is infromative and effectve. Through you blog I gained so much knowledge. Also check my collection at selenium Online Training Blog

      ReplyDelete
    2. Thank you for your post. This is excellent information. It is amazing and wonderful to visit your site.
      best software testing companies in hyderabad
      software testing internships in Hyderabad

      ReplyDelete
    3. Very good information. Its very useful for me. We need learn from real time examples and for this we choose good training institute, we need to learn from experts . So we make use of demo classes . Recently we tried software testing demo class of Apponix Technologies.

      https://www.apponix.com/Software-Testing/Software-Testing-Training-in-Bangalore.html

      ReplyDelete
    4. I love this post.

      โปรโมชั่นGclub ของทางทีมงานตอนนี้แจกฟรีโบนัส 50%
      เพียงแค่คุณสมัคร Gclub กับทางทีมงานของเราเพียงเท่านั้น
      ร่วมมาเป็นส่วนหนึ่งกับเว็บไซต์คาสิโนออนไลน์ของเราได้เลยค่ะ
      สมัครสล็อตออนไลน์ >>> goldenslot
      สนใจร่วมลงทุนกับเรา สมัครเอเย่น Gclub คลิ๊กได้เลย

      ReplyDelete
    5. Very cool!

      เว็บไซต์คาสิโนออนไลน์ที่ได้คุณภาพอับดับ 1 ของประเทศ
      เป็นเว็บไซต์การพนันออนไลน์ที่มีคนมา สมัคร Gclub Royal1688
      และยังมีหวยให้คุณได้เล่น สมัครหวยออนไลน์ ได้เลย
      สมัครสมาชิกที่นี่ >>> Gclub Royal1688
      ร่วมลงทุนสมัครเอเย่นคาสิโนกับทีมงานของเราได้เลย

      ReplyDelete
    6. I was very interested in the article , it’s quite inspiring I should admit. I like visiting your site since I always come across interesting articles like this one. Keep sharing! Regards. Read more about
      Security Testing Services
      Test Automation Services
      Software Testing Services
      Compatibility Testing Services
      Regression Testing Services

      ReplyDelete
    7. I must thank you for the efforts you have put in penning this site. I am hoping to check out the same high-grade content by you later on as well. Keep up the good work
      software testing companies
      software testing tester
      software testing and quality assurance services
      Automation testing services

      ReplyDelete
    8. Great Article… I love to read your QA outsourcing services articles because your writing style is too good, its is very helpful for all of us and I never get bored while reading your article because, they are becomes a more and more interesting from the starting lines until the end.

      ReplyDelete
    9. It's great to be here and to learn more about software testing. software testing training in chennai

      ReplyDelete
    10. Nice blog, it’s so knowledgeable, informative, and good looking site. I appreciate your hard work. Good job. Thank you for this wonderful sharing with us. Keep Sharing.
      Digital Marketing Course In Kolkata

      ReplyDelete
    11. This really is my first time i visit here. I discovered so many entertaining stuff in your blog, especially its discussion. From a great deal of comments in your articles, I guess I am not alone having all of the leisure here! Maintain the superb work.It is very useful who is looking for top software testing companies

      ReplyDelete
    12. Thanks for sharing this informative content , Great work
      To crack scrum master interview : Agile coach interview questions

      ReplyDelete

    Share your feedback and queries here. Your feedback are more valuable to us!