Design de cima para baixo

Definição - O que significa Design Top-Down?

Um projeto de cima para baixo é a decomposição de um sistema em partes menores para compreender seus subsistemas composicionais.

No projeto de cima para baixo, uma visão geral do sistema é projetada, especificando, mas não detalhando nenhum subsistema de primeiro nível. Então, cada subsistema é refinado em maiores detalhes, por exemplo, às vezes se dividindo em muitos níveis diferentes de subsistema, de modo que toda a especificação é decomposta em elementos básicos.

Assim que esses elementos básicos são identificados, é mais fácil construir esses elementos como módulos de computador. Uma vez que os módulos são construídos, é fácil colocá-los juntos, construindo todo o sistema a partir desses elementos individuais.

Um design de cima para baixo também é conhecido como design em etapas.

Definirtec explica Design Top-Down

Um projeto de cima para baixo geralmente é um plano feito em inglês simples e claro para o programa. É muito importante observar que um design de cima para baixo deve ser independente de qualquer linguagem de programação. O design top-down nunca deve incorporar referências a funções de biblioteca ou elementos sintáticos específicos para uma linguagem particular.

Essa é a razão pela qual os designs de cima para baixo são escritos em inglês simples. O conceito que orienta um design de cima para baixo é dividir a tarefa que um programa executa em poucas subtarefas extensas.

O nível mais alto é conhecido como módulo principal, nível superior ou nível 0. Nesse ponto, o volume das subtarefas deve ser pequeno. A maioria dos programas nesse nível geralmente inclui de três a sete subtarefas. Para programas de pequeno porte, o volume de subtarefas deve estar na extremidade inferior do intervalo mencionado.

A divisão de tarefas em subtarefas essencialmente divide o problema em vários programas menores, o que ajuda os desenvolvedores a codificar facilmente essas partes mais simples. Geralmente, é possível que muitas dessas subtarefas sejam tão básicas que podem determinar imediatamente como escrever o código para concluir essa parte.

No entanto, geralmente esse não é o caso no nível superior. Se uma subtarefa ocupar mais do que algumas linhas de código, é recomendável repetir o processo de subdivisão. Normalmente, para cada subtarefa no nível superior, um novo módulo é iniciado no nível 1. Essas subtarefas são então consideradas individualmente e, novamente, divididas em várias outras subtarefas. Esta subdivisão e novos processos de criação de nível devem ser continuados até que os codificadores possam implementar cada parte do problema usando código de computador.