Difference between Bottom-Up Model and Top-Down Model
In System Design, there are two types of approaches followed namely, the Bottom-Up Model and the Top-Down Model.
-
The bottom-up model is one in which the different parts of a system are designed and developed and then all these parts are connected together as a single unit.
-
On the other hand, the top-down model is one in which the whole system is decomposed into smaller sub-components, then each of these parts are designed and developed till the completed system is designed.
Read this article to find out more about the bottom-up model and the top-down model of system design and how they are different from each other.
Mục lục bài viết
What is Bottom-Up Model?
Bottom-Up Model is a system design approach where the parts of a system are defined in details. Once these parts are designed and developed, then these parts or components are linked together to prepare a bigger component. This approach is repeated until the complete system is built.
The advantage of Bottom-Up Model is in making decisions at very low level and to decide the re-usability of components.
What is Top-Down Model?
Top-Down Model is a system design approach where the design starts from the system as a whole. The complete system is then divided into smaller sub-applications with more details.
Each part again goes through the top-down approach till the complete system is designed with all the minute details. TopDown approach is also termed as breaking a bigger problem into smaller problems and solving them individually in recursive manner.
Difference between Bottom-Up Model and Top-Down Model
The following are the important differences between Bottom-Up Model and Top-Down Model −
Key
Bottom-Up Model
Top-Down Model
Focus
In Bottom-Up Model, the focus is on identifying and resolving smallest problems and then integrating them together to solve the bigger problem.
In Top-down Model, the focus is on breaking the bigger problem into smaller one and then repeat the process with each problem.
Language
Bottom-Up Model is mainly used by object oriented programming languages like Java, C++ etc.
Top-Down Model is followed by structural programming languages like C, Fortran etc.
Redundancy
Bottom-Up model is better suited as it ensures minimum data redundancy and focus is on re-usability.
Top-down model has high ratio of redundancy as the size of project increases.
Interaction
Bottom-Up model have high interactivity between various modules.
Top-down model has tight coupling issues and low interactivity between various modules.
Approach
Bottom-up model is based on composition approach.
Top-down model is based on decomposition approach.
Issues
In Bottom-Up, sometimes it is difficult to identify overall functionality of system in initial stages.
In Top-Down, it may not be possible to break the problem into set of smaller problems.
Conclusion
The most significant difference between the two types of models is that the bottom-up model is based on the composition approach, while the top-down model is based on the decomposition approach.
Another important difference between the two is that the top-down model is mainly used in structural programming like C programming, whereas the bottom-up approach is followed in objectoriented programming like C++, Java, etc.