- Trending Categories
Data Structure
Networking
RDBMS
Operating System
Java
MS Excel
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
Physics
Chemistry
Biology
Mathematics
English
Economics
Psychology
Social Studies
Fashion Studies
Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
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.
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 object-oriented programming like C++, Java, etc.