[WEBINAR] Bulletproof: How Today's Business Leaders Stay on Top

Top-Down Design

Definition - What does Top-Down Design mean?

A top-down design is the decomposition of a system into smaller parts in order to comprehend its compositional sub-systems.

In top-down design, a system's overview is designed, specifying, yet not detailing any first-level subsystems. Then, every subsystem is refined in greater detail, for example, sometimes dividing into many different levels of subsystem, so that the whole specification is decomposed to basic elements.

As soon as these base elements are identified, it is easier to build these elements as computer modules. Once the modules are built, it is effortless to put them together, building the whole system from these individual elements.

A top-down design is also known as a stepwise design.

Techopedia explains Top-Down Design

A top-down design is generally a plan made in plain, simple English for the program. It is very important to note that a top-down design must be independent of any programming language. The top-down design must never incorporate references to library functions or syntactic elements specific to a particular language.

That is the reason why top-down designs are written in plain English. The concept driving a top-down design is to break up the task that a program executes into a very few extensive subtasks.

The highest level is known as the main module, top level or level 0. At this point, the volume of subtasks must be small. Most programs at this level usually include three to seven subtasks. For small-sized programs, the volume of subtasks must be at the low end of the mentioned range.

Division of tasks into subtasks essentially splits the problem into various smaller programs, which helps developers to easily code these simpler parts. It is usually possible that many of these subtasks are so basic that they can immediately determine how to write the code to complete that part.

However, this is generally not the case at the top level. If a subtask takes more than a very few lines of code, it is recommended to repeat the subdivision process. Typically, for every subtask at top level, a new module is started at level 1. These subtasks are then considered individually, and yet again divided into various other subtasks. This subdivision and new level creation processes should be continued until the coders can implement every portion of the problem using computer code.

Share this:

Connect with us

Email Newsletter

Join thousands of others with our weekly newsletter

The 4th Era of IT Infrastructure: Superconverged Systems
The 4th Era of IT Infrastructure: Superconverged Systems:
Learn the benefits and limitations of the 3 generations of IT infrastructure – siloed, converged and hyperconverged – and discover how the 4th...
Approaches and Benefits of Network Virtualization
Approaches and Benefits of Network Virtualization:
Businesses today aspire to achieve a software-defined datacenter (SDDC) to enhance business agility and reduce operational complexity. However, the...
Free E-Book: Public Cloud Guide
Free E-Book: Public Cloud Guide:
This white paper is for leaders of Operations, Engineering, or Infrastructure teams who are creating or executing an IT roadmap.
Free Tool: Virtual Health Monitor
Free Tool: Virtual Health Monitor:
Virtual Health Monitor is a free virtualization monitoring and reporting tool for VMware, Hyper-V, RHEV, and XenServer environments.
Free 30 Day Trial – Turbonomic
Free 30 Day Trial – Turbonomic:
Turbonomic delivers an autonomic platform where virtual and cloud environments self-manage in real-time to assure application performance.