# Abordagem top-down e bottom-up

De cima para baixo e de baixo para cima (em inglês, top-down e bottom-up, respectivamente) são estratégias de processamento de informação e ordenação do conhecimento, usadas em vários campos, incluindo software, humanística, teorias científicas, gestão e organização. Na prática, eles podem ser vistos como uma abordagem de pensamento e ensino.
Uma abordagem de cima para baixo (também conhecida como stepwise design e decomposition, em inglês; e em tradução livre, “projeto passo a passo” e “decomposição”, respectivamente) é essencialmente a fragmentação de um sistema para promover compreensão da composição de seus subsistemas. Numa abordagem de cima para baixo, é formulada uma visão geral do sistema, partindo de uma instância final para a inicial, como uma engenharia reversa. Cada nível vai sendo detalhado, do mais alto ao mais baixo, de forma a se chegar nas especificações dos níveis mais básicos do elemento abordado.
Uma abordagem de baixo para cima é a “colcha de retalhos” do sistema para dar rumo a sistemas mais complexos. Tornando assim, a cada passo, os sistemas originais em subsistemas de um sistema final maior. Um processamento de baixo para cima é um tipo de processamento de informação baseado em dados de entrada vindos do meio ao qual o sistema pertence para formar uma percepção. A informação entra nos olhos e segue por uma direção (entrada); e é transformada em imagem pelo cérebro, que pode interpretar e reconhecer como uma percepção (saída). Numa abordagem de baixo para cima, os elementos básicos são inicialmente descritos em detalhes. Esses elementos são associados para formar um subsistema maior, que então pode ser associado a outros elementos em muitos outros níveis eventualmente até completar o nível mais alto do sistema objetivo. Essa estratégia se assemelha a um modelo de "semente", de forma a começar pequeno com elementos básicos e ir crescendo ao longo de completações e associações.
Haveria também uma terceira abordagem, menos difundida, denominada middle out, com o intuito de se visualizar um problema não somente de cima para baixo ou vice-versa, mas sim do seu núcleo para suas extremidades. Ou seja, por exemplo, numa organização empresarial, uma consultoria poderia não somente se basear no organograma para analisar uma empresa, mas observar suas principais áreas, ou o foco do problema; e a partir daí verificar qual o impacto dos níveis superiores, ou inferiores, que teria nessa área.

## Projeto de produto e desenvolvimento

Ao decorrer de um projeto e desenvolvimento de novos produtos, projetistas e engenheiros contam tanto com a abordagem "de baixo para cima" quanto a de "cima para baixo". A abordagem de "baixo para cima" tem sido utilizada quando componentes existentes ou não disponíveis no mercado são selecionados a integrar um produto. Um exemplo seria escolher um dado parafuso e projetar a entrada em componentes nos quais este parafuso se fixe corretamente neste. Numa abordagem de "cima para baixo", um parafuso seria customizado de acordo com uma dada entrada de parafuso de um componente. Para um produto com requerimentos mais restritivos (como peso, geometria, segurança, ambiente, etc.), como o espaço que ocupa, uma abordagem de cima para baixo pode ser mais adequada ao projeto. No entanto, como é mais importante minimizar custo e incrementar viabilidade, como fabricação de equipamentos, uma abordagem de baixo para cima seria utilizada.

## Ciência da computação
### Desenvolvimento de software

    Parte dessa seção é de Perl Design Patterns Book.
No processo de desenvolvimento de software, as abordagens de cima para baixo e de baixo para cima têm um papel chave.
Abordagens de cima para baixo enfatizam o planejamento e uma compreensão completa do sistema. Nenhum código pode começar até que um nível de detalhe necessário tenha sido atingido na concepção do sistema. Abordagens de cima para baixo são implementadas, anexando os tocos no lugar do módulo. Isto, no entanto, atrasa os testes das unidades funcionais finais da criação de um sistema. "De baixo para cima" dá foco à codificação e testes iniciais, o que pode começar assim que o primeiro módulo foi especificado. Esta abordagem, no entanto, corre o risco de que os módulos possam ser codificados sem ter uma ideia clara de como eles se ligam a outras partes do sistema; e que tal ligação pode não ser tão fácil à primeira vista. Reutilização de código é um dos principais benefícios da abordagem bottom-up (de baixo para cima).
O projeto top-down foi promovido em 1970 pelos pesquisadores da IBM Harlan Mills e Niklaus Wirth. Mills desenvolveu conceitos de programação estruturada para o uso prático e testou-os em um projeto de 1969 para automatizar o obituário do New York Times. O sucesso de engenharia e gestão deste projeto levou à disseminação da abordagem de cima para baixo através da IBM e o resto da indústria de computadores. Entre outras conquistas, Niklaus Wirth, o desenvolvedor da linguagem de programação Pascal, escreveu o jornal Programa de Desenvolvimento influente por Stepwise Requinte. Desde que Niklaus Wirth passou a desenvolver linguagens como Modula e Oberon (onde se podia definir um módulo antes de saber sobre toda a especificação do programa), pode-se inferir que a abordagem de cima para baixo não era estritamente o que ele promoveu. Métodos de cima para baixo foram favorecidos em engenharia de software até o final de 1980; e programação orientada a objetos assistida em demonstrar a ideia de que ambos os aspectos de top-down e bottom-up podem ser utilizados à programação.
Abordagens de projeto de software modernos costumam combinar tanto abordagens de cima para baixo quanto de baixo para cima. Embora a compreensão de todo o sistema é geralmente considerada necessária para um bom design, resultando teoricamente em uma abordagem de cima para baixo, a maioria dos projetos de software tentam fazer uso de código existente em algum grau. Módulos preexistentes dão ao projeto um pouco da abordagem "de baixo para cima". Algumas abordagens de design também usam uma abordagem em que um sistema parcialmente funcional é projetado e codificado à conclusão; e este sistema é, então, expandido para cumprir todos os requisitos do projeto.

### Programação

Top-down é um estilo de programação, o pilar de linguagens procedurais tradicionais, em que o design começa especificando peças complexas e, em seguida, dividindo-as em pedaços menores sucessivamente. A técnica para escrever um programa usando métodos de cima para baixo é escrever um procedimento principal que nomeia todas as principais funções de que necessitará. Mais tarde, a equipe de programação olha para os requisitos de cada uma dessas funções e o processo é repetido. Estas sub-rotinas compartimentadas, eventualmente, irão realizar ações tão simples que podem ser facilmente e de forma concisa codificadas. Quando todas as suas diversas sub-rotinas foram codificadas, o programa está pronto para o teste. Ao definir como o aplicativo vem junto a um nível elevado, o trabalho de nível inferior pode ser autossuficiente. Ao definir como as abstrações de nível mais baixo são esperadas para integrar os de nível superior, as interfaces tornam-se claramente definidas.
Em uma abordagem bottom-up, os elementos de base individuais do sistema são especificados primeiro bem detalhadamente. Estes elementos são, então, ligados entre si para formar subsistemas maiores, que em seguida, por sua vez, estão ligados, por vezes, em vários níveis, até um sistema completo de nível superior ser formado. Essa estratégia se assemelha a um modelo de "semente", como citado anteriormente na definição de bottom-up. No começo, esses subsistemas são pequenos, mas eventualmente crescem em complexidade e completude. Programação orientada a objetos (POO) é um paradigma que usa "objetos" para projetar aplicativos e programas de computador. Em engenharia mecânica, com programas como o Pro/ENGINEER e SolidWorks, os usuários do Autodesk Inventor podem projetar produtos como peças que não fazem parte do todo; e depois adicionar os pedaços juntos para formar conjuntos como a construção com LEGO. Engenheiros chamam isso de projeto de peça.
Esta abordagem de baixo para cima tem um ponto fraco. É necessário ter boa intuição para decidir a funcionalidade que deve ser fornecida pelo módulo. Se um sistema está a ser construído a partir do sistema existente, esta abordagem é mais adequada, já que começa a partir de alguns módulos existentes.

### Parsing

Em tradução livre, análise parsing é o processo de análise de uma sequência de entrada (tais como a leitura a partir de um arquivo ou de um teclado), a fim de determinar a sua estrutura gramatical. Este método é utilizado na análise de linguagens naturais e linguagens de computador, como em um compilador.
O parsing na abordagem bottom-up é uma estratégia para a análise de relações de dados desconhecidos, que tenta identificar as unidades mais fundamentais em primeiro lugar; e, em seguida, para inferir estruturas de ordem superior a partir deles. Parsers ("Analisadores" em tradução livre) de top-down, por outro lado, usam a hipótese geral da árvore de análise estrutural e, em seguida, consideram se as estruturas fundamentais conhecidas são compatíveis com a hipótese.

## Nanotecnologia

Top-down e bottom-up são duas abordagens para a fabricação de produtos. Esses termos foram aplicados pela primeira vez ao campo da nanotecnologia pelo Instituto Foresight em 1989, a fim de distinguir entre a manufatura molecular (para produzir, em massa, objetos grandes e atomicamente precisos) e fabricação convencional (que pode produzir em massa objetos grandes que não são atomicamente precisos). As abordagens bottom-up buscam ter menores componentes (geralmente moleculares) edificados em conjuntos mais complexos, enquanto que as abordagens top-down procuram criar dispositivos em nanoescala usando componentes maiores, externamente controlados para dirigir sua montagem.
A abordagem top-down, muitas vezes, usa workshops tradicionais ou métodos de micro-fabricação onde as ferramentas externamente controladas são usadas para cortar, dividir e moldar materiais na forma e ordem desejada. Técnicas de micropatterning, como fotolitografia e jato de tinta de impressão, pertencem a esta categoria.
Abordagens bottom-up, ao contrário, usam propriedades químicas de moléculas simples para fazer com que componentes de moléculas simples se auto-organizem ou se auto-montem em algumas conformações úteis; ou contem com montagem posicional. Essas abordagens utilizam os conceitos de auto-montagem molecular e/ou reconhecimento molecular. (Veja também: Química supramolecular). Tais abordagens bottom-up devem, de um modo geral, ser capazes de produzir dispositivos em paralelo e muito mais baratos do que os métodos top-down, mas poderia ser potencialmente esmagada na medida em que o tamanho e a complexidade da montagem desejada aumentam.

## Neurociência e psicologia

Esses termos também são empregados em neurociência, neurociência cognitiva e psicologia cognitiva para discutir o fluxo de informações no processamento. Normalmente, o sensorial de entrada é considerado "down"; e os mais altos processos cognitivos que têm mais informações de outras fontes, são considerados "up". Um processo bottom-up é caracterizado por uma ausência de nível de direção mais alto no processamento sensorial, enquanto que um processo top-down é caracterizado por um alto nível de direção de processamento sensorial por mais cognição, tais como objetivos ou metas (Beiderman, 19).
De acordo com as notas de psicologia escritas pelo Dr. Charles Ramskov, professor de psicologia na De Anza College, Rock, Neiser e Gregory alegam que a abordagem top-down envolve a percepção de que é um processo ativo e construtivo. Para além disso, é uma abordagem que não está diretamente determinada por estímulos de entrada, mas é o resultado de estímulos, de hipóteses internas e de interações de expectativa. De acordo com a síntese teórica, "Quando um estímulo é apresentado curto e uma clareza incerta dá um estímulo vago, a percepção torna-se uma abordagem top-down".
Por outro lado, a psicologia define o processamento bottom-up como uma abordagem em que há uma progressão dos elementos individuais com o todo. De acordo com Ramskov, um defensor da abordagem bottom-up, Gibson, afirma que é um processo que inclui a percepção visual que precisa de informação disponível a partir de estímulo proximal produzido pelo estímulo distal. A síntese teórica também afirma que o processamento de baixo para cima ocorre "quando um estímulo é apresentado longo e com bastante clareza".
Cognitivamente falando, certos processos cognitivos, tais como reações rápidas ou identificação visual rápida, são considerados processos bottom-up, pois se baseiam principalmente em informações sensoriais, enquanto que processos como os motores de controle e atenção dirigida são considerados top-down, pois são objetivos direcionados. Neurologicamente falando, algumas áreas do cérebro, como a área de córtex visual primário, têm principalmente conexões bottom-up. Outras áreas, como o giro fusiforme, têm entradas de áreas cerebrais mais altas e são consideradas como tendo influência top-down.
O estudo da atenção visual fornece um exemplo. Se a sua atenção é atraída para uma flor em um campo, pode ser porque a cor ou a forma da flor são visualmente marcantes. As informações que lhe fizeram prestar atenção à flor vieram a você de uma maneira bottom-up. Sua atenção não estava subordinada ao conhecimento da flor; o estímulo exterior era suficiente por si só. Contraste esta situação com aquela em que você está procurando uma flor. Você tem uma representação do que você está procurando. Quando você vê o objeto que você está procurando, ele é notável. Este é um exemplo do uso de informações top-down.
Em termos cognitivos, duas abordagens de pensamento são distinguidas. Top-down (ou big chunk) é estereotipada como a visionária, ou a pessoa que vê a foto maior e tem uma visão geral. Tais pessoas se concentram sobre a imagem grande; e a partir dela derivam os detalhes para apoiá-la. Cognição "bottom-up" (ou small chunk) é semelhante a focar principalmente no detalhe ao invés de focar na paisagem. A expressão "vendo a madeira para as árvores" faz referência aos dois estilos de cognição.

## Gestão e organização

Na gestão de arenas e organizações, os termos "top-down" e "bottom-up" são usados para indicar a forma como as decisões são tomadas.
Uma abordagem top-down é aquela em que um executivo, responsável pelas decisões, ou outra pessoa ou organismo, toma uma decisão. Esta abordagem é disseminada sob a sua autoridade aos níveis mais baixos da hierarquia, que são, em maior ou menor grau, vinculados por eles. Por exemplo, uma estrutura em que as decisões são ou aprovadas por um gerente, ou aprovadas por seus representantes autorizados com base em diretrizes anteriores do gerente, é a gestão de cima para baixo.
Uma abordagem bottom-up é aquela que trabalha a partir da base de um grande número de pessoas trabalhando em conjunto, fazendo com que a decisão surja a partir de seu envolvimento articular. A decisão de um número de ativistas, estudantes ou vítimas de algum incidente de agir é uma decisão bottom-up. Aspectos positivos das abordagens de cima para baixo incluem a sua eficiência e excelente visão geral de níveis mais elevados. Além disso, os efeitos externos podem ser internalizados. Do lado negativo, se as reformas são percebidas a serem impostas "de cima", pode ser difícil para os níveis mais baixos de aceitá-los (por exemplo, Bresser Pereira, Maravall e Przeworski, 1993). A evidência sugere que isso seja verdade, independentemente do conteúdo das reformas (por exemplo, Dubois, 2002). A abordagem bottom-up permite uma maior experimentação e uma melhor sensação ao que é necessário na parte inferior.

### Organização do Estado

Ambas as abordagens podem ser encontradas na organização de Estados, estes envolvendo decisões políticas.
Na abordagem bottom-up, em instituições organizadas, por exemplo, ministérios e suas entidades subordinadas, as decisões são preparadas por especialistas em seus campos, que definem, de seus conhecimentos, a política que considerem necessária. Se eles não podem concordar, mesmo em um compromisso, eles escalam o problema ao próximo nível de hierarquia superior, onde seria procurada uma decisão. Finalmente, o maior diretor comum pode ter de tomar a decisão. A informação é da dívida do inferior ao superior, o que significa que o inferior deve informações ao superior. Na verdade, assim que os subordinados concordarem, o chefe da organização dá seu parecer sobre a decisão que seus inferiores acordaram.
Entre os vários países, o sistema político alemão oferece uma das formas mais puras de uma abordagem bottom-up. A Lei Federal Alemã no Serviço Público prevê que qualquer inferior tem de consultar e apoiar quaisquer superiores, que ele ou ela - só - tem que seguir "linhas gerais" dos superiores; e que ele ou ela teria de ser totalmente responsável por qualquer ato próprio no cargo; e teria que seguir um procedimento de reclamação específico, formal em caso de dúvida sobre a legalidade de uma ordem. Frequentemente, os políticos alemães tiveram de deixar o cargo sob a alegação de que eles tomaram decisões erradas por causa de sua resistência a opiniões de especialistas subordinados (Sendo comumente chamados de beratungsresistent, ou "resistentes à consulta", em alemão). O fundamento histórico desta abordagem está no fato de que, no século XIX, muitos políticos costumavam ser nobres, sem educação apropriada, que cada vez mais se tornaram forçados a depender de consulta de peritos educados, que (em particular após as reformas prussianas de Stein e Hardenberg) consistiam no estatuto de especialistas independentes financeiramente e pessoalmente, sendo inadmissível; e neutros, como Beamte (servidores públicos de direito público).
Uma abordagem semelhante pode ser encontrada em leis policiais britânicas, onde os direitos dos policiais da polícia são conferidos ao policial na pessoa e não na polícia como um órgão administrativo, este que leva ao único policial de ser totalmente responsável por seus próprios atos no cargo, em particular a sua legalidade. A experiência de duas ditaduras no país e, após o término de tais regimes, chamadas emergentes para a responsabilidade legal dos "ajudantes dos ajudantes" (Helfershelfer) de tais regimes também forneceram as chamadas ao princípio da responsabilidade pessoal de qualquer perito por qualquer decisão tomada, esta levando a um reforço da abordagem bottom-up, o que exige máxima responsabilidade dos superiores.
No oposto, a administração francesa é baseada em uma abordagem top-down, onde os funcionários públicos regulares não desfrutam de nenhuma outra tarefa além de simplesmente executarem as decisões tomadas pelos seus superiores. Como esses superiores também exigem consulta, essa é fornecida por membros de um gabinete, o que é característico do pessoal do ministério regular em termos de pessoal e organização. Os membros que não são membros do gabinete não têm o direito de fazer alguma sugestão ou tomar quaisquer decisões da dimensão política.
A vantagem da abordagem bottom-up é o nível de conhecimentos específicos, combinada com a experiência motivadora de qualquer membro da administração para ser responsável e, finalmente, o "motor" independente do progresso nesse campo da responsabilidade pessoal. Uma desvantagem é a falta de controlo democrático e de transparência; este líder, a partir de um ponto de vista democrático, ao diferimento do poder real ao rosto de decisão política, se ainda desconhecidos os funcionários públicos. Mesmo o fato de que certos políticos podem dar seu parecer às decisões reais de seus inferiores podendo não atenuar este efeito, mas sim (como eles existem no exemplo da Alemanha), em bastantes fortes direitos parlamentares de controlo e influência nos processos legislativos.
A vantagem do princípio de cima para baixo é que as responsabilidades políticas e administrativas são claramente distinguidas uma das outras; e que a responsabilidade por fracassos políticos pode ser claramente identificada com o titular de cargo relevante. As desvantagens são que o sistema provoca desmotivação dos inferiores, que sabem que suas ideias para abordagens inovadoras podem não ser bem-vindas apenas por causa de sua posição; e que os tomadores de decisão não podem fazer uso de toda a gama de conhecimentos que seus subordinados terão recolhido.
Administrações em ditaduras tradicionalmente trabalham de acordo com uma abordagem rigorosa de cima para baixo. Como funcionários públicos abaixo do nível da liderança política são desencorajados a fazer sugestões, eles usam a sofrer com a falta de experiência que poderia ser fornecida pelos inferiores, o que leva regularmente a um colapso do sistema após uma década.
Sendo um moderno estado comunista, o que a República Popular da China constitui é um exemplo de que, portanto, preferem definir um quadro de permitir, ou mesmo encorajar, a crítica e a autodeterminação por inferiores, que não afetam a doutrina importante do estado, mas permitem o uso do conhecimento profissional; e são orientados ao conhecimento e uso do mesmo às pessoas de tomada de decisão no cargo.

### Saúde pública

Ambas as abordagens top-down e bottom-up existem em saúde pública. Há muitos exemplos de programas top-down, muitas vezes executados por governos ou grandes organizações intergovernamentais (OIG), muitos deles são ou como o Controle de HIV ou varíola, para a erradicação. Exemplos de programas de baixo para cima incluem muitas pequenas ONGs criadas para melhorar o acesso aos cuidados de saúde locais. No entanto, uma série de programas procuram combinar ambas as abordagens, por exemplo, a erradicação de vermes da Guiné, um programa internacional de doenças único, actualmente gerido pela parte inferior Centro Carter, envolvendo a formação de muitos voluntários locais, impulsionando a capacidade, assim como os programas internacionais de higiene, saneamento e acesso aos cuidados de saúde primários.

## Arquitetura

Muitas vezes, a escola École des Beaux-Arts de design é dita ter promovido principalmente um projeto top-down, pois ensinou que um projeto arquitetônico deve começar com uma parti, um desenho plano básico de o projecto global.
Por outro lado, o Bauhaus é focado em design de baixo para cima. Este método se manifestou no estudo de traduzir sistemas organizacionais de pequena escala para uma escala maior, mais arquitectónica (como acontece com a escultura woodpanel e o design mobiliário).

## Ecologia

Em ecologia, o controle de cima para baixo, quando se refere a um maior predador, controla a estrutura ou a dinâmica populacional do ecossistema. O exemplo clássico é de ecossistemas de floresta de algas. Nesses ecossistemas, as lontras marinhas são uma espécie predadora muito importante de Keystone. Elas são predadoras de ouriços, que por sua vez comem algas. Quando as lontras são removidas, as populações de ouriço crescem e reduzem a floresta de algas, criando Sertões Urchin. Em outras palavras, tais ecossistemas não são controlados pela produtividade das algas, mas sim por um predador superior.
O controle de baixo para cima em ecossistemas refere-se aos ecossistemas em que a oferta, a produtividade e o tipo de produtores primários de nutrientes (plantas e fitoplâncton) controlam a estrutura do ecossistema. Um exemplo seria a forma como as populações de plâncton são controladas pela disponibilidade de nutrientes. Populações de plâncton tendem a ser maiores e mais complexas em áreas onde a ressurgência traz nutrientes à superfície.
Há muitos exemplos diferentes destes conceitos. É comum às populações serem influenciadas por ambos os tipos de controle.