Procesando la información con Top-down y Bottom-up

4 min
Procesando la información con Top-down y Bottom-up

El otro día, escuchando el podcast “Kaizen” de Jaime Rodriguez De Santiago (@jaime_rdes), me encontré un término que me llame bastante la atención: “Top-down”. Conforme empecé a investigar, me di cuenta de que esta palabra, junto con su antónimo “Bottom-Up”, se utilizan en diversos sectores: informática, empresa, economía, etc.

¿Pero qué significan realmente estos términos y por qué es tan necesario conocerlos si nos interesa la gestión del conocimiento? A lo primero responderemos ahora, a lo segundo, unos párrafos más abajo.

Top-Down, Bottom-Up y cajas negras

La técnica Top-Down o “de arriba a abajo” como se podría traducir al español, interpreta al sistema de forma global. Por ejemplo, si hablamos de un software POS (Punto de venta), lo vemos como un software al que le entra un pedido y sale una compra ya hecha. A continuación, iremos desgranando en partes cada vez más pequeñas lo que ocurre dentro de esta caja negra.

El concepto de caja negra es muy interesante y que se sale más allá de la típica caja que todos conocemos que llevan los aviones. En sistemas, una caja negra es un artefacto que recibe unas entradas, y sin saber como, emite unas salidas. Lo que ocurre dentro nos es indiferente. Este nivel de abstracción puede llegar a ser difícil de comprender para personas que no estén familiarizados con el tema, sobre todo si entramos en cajas negras que están dentro de otras cajas negras… Y así sucesivamente. Pero no me quiero alargar, puede que hable más sobre el concepto de caja negra en un futuro.

Entonces, si hablamos de Bottom-Up hablamos de justo lo contrario. Esta vez vamos “de abajo a arriba”, comprendiendo cómo funcionan los detalles para poco a poco ir solucionando los problemas superiores. En el mismo ejemplo que antes, comenzaríamos viendo el software POS en sus partes más minúsculas, como el proceso de abrir la caja registradora. Este proceso iría seguido del de cerrar la caja cuando hayamos introducido el dinero. Estos dos procesos consecutivos conforman uno más general llamado “pagar”. Como veis, de lo específico a lo general, de abajo a arriba.

A la pareja anterior de palabras se le une otra, Middle-Out, que no es mas que una unión de las dos anteriores. En este caso, comenzamos por el medio y vamos tanto subiendo como bajando dependiendo de lo que queramos explorar.

Enfrentándonos a problemas

Antes he dado el ejemplo del software POS, pero estas técnicas se pueden utilizar para muchas otras cosas, como la gestión del conocimiento. Normalmente, si sabes usar esto en alguna de sus variantes (el desarrollo de aplicaciones en este caso), lo sabes usar en todas las demás.

Todos los días nos enfrentamos a diferentes problema que requieren de una solución. Algunas veces esta solución es instantánea, ofrecida por el Sistema 1 que describe Kahneman; y otras veces hay que dedicarle un poco más de tiempo.

Por ejemplo, imagínate que te dejan todas las piezas de una consola en el suelo y tienes que comenzar a montarla sin instrucciones. Pues bien, primero analizarás cada uno de esos componentes y los irías uniendo en diversos sistemas hasta que finalmente conseguirías montar la consola completa, el sistema final. En este caso, has usado casi sin saberlo la técnica Bottom-Up.

Otro problema típico al que nos enfrentamos cada día: hacer la comida. Cuando queremos preparar un plato que conocemos pero no conocemos los ingredientes, tenemos que pensar en el plato como un sistema global. Poco a poco, iremos desgranando en nuestra cabeza los diferentes subsistemas que lo componen: la salsa, la pasta, … Y estos a su vez iremos dividiendo en subsistemas aun menores: poner el horno a 250º, cocer la pasta durante 10 minutos, … Este caso es un claro ejemplo de Top-Down.

Estos son problemas muy generales, pero a continuación voy a hablar de una de las situaciones más típicas donde se suelen utilizar estas técnicas de procesamiento de la información.

Invirtiendo en empresas

Estos términos son también muy utilizados en el mundo de la inversión a la hora de analizar empresas o mercados. Cada una de ellas es utilizada de una forma distinta dependiendo de en qué no queremos fijar a la hora de invertir.

Por ejemplo, si hacemos un análisis Top-down, damos más importancia a la situación macroeconómica global en la que nos encontramos. Una vez que se ha encontrado una buena situación macro, vamos descendiendo en la pirámide analizando cada vez economías más pequeñas hasta llegar a la propia empresa. Como vemos, en este tipo de análisis, si no tenemos una buena situación macroeconómica, directamente no invertimos, aunque la situación de las economías inferiores así lo intuya.

En el caso contrario, en un análisis Bottom-Up, comenzamos analizando los detalles de la empresa, una unidad básica en la economía. A partir de ahí, vamos estudiando economías más grande como la sectorial o la nacional, hasta llegar a la más grande de las economías (o hasta donde se quiera, no siempre es necesario llegar hasta los extremos).

Como veis son dos formas diferentes de obtener juicios, en este caso económicos. En el primero de ellos damos más importancia a la situación económica global, a los ciclos económicos y a todos esos grandes medidores de la macroeconomía. Por el contrario, en el segundo damos más a importancia al nivel de la empresa y poco a poco vamos recurriendo a información de escalones superiores.

¿Y a mi qué me cuentas?

Analizar un problema mayor en varios subproblemas es una acción básica que muchos de nosotros hacemos de forma automática casi sin darnos cuenta. Es más, en el mundo de la ingeniería en el que yo me muevo, el desarrollo de muchos de los nuevos programas se realiza así, a través de sistemas o cajas negras que a su vez tienen otros sistemas o cajas negras hasta que finalmente tenemos un método o función que podemos programar. En este caso estamos usando la técnica Top-down y equivaldría al tradicional modelo en cascada.

Otro enfoque diferente es el de las nuevas metodologías ágiles como Scrum. En este caso, no analizamos todo el proyecto antes de comenzar a crearlo, sino que se comienza a desarrollar partes casi desde el minuto uno. Posteriormente, estas partes se van uniendo en subsistemas más grandes. En este caso equivaldría a la técnica Bottom-up, aunque cada una de ellas tiene su ventaja en la informática y no hay que decantarse ciegamente por ninguna de las dos.

Es obvio que la gran mayoría de nuestros problemas del día a día no los solucionamos utilizando este tipo de tácticas o herramientas. Esto está pensado para problemas mucho más relevantes o para frikis de estos temas como yo.