Daniel Llamas

Diseño de sistemas

Se define como sistema un conjunto complejo más o menos organizado de elementos que tiene unos límites y que interacciona con su contexto. Dentro de cada sistema, esos elementos conforman una capacidad (stock) característica de dicho sistema y que es susceptible de aumentar o decrecer. Para que esto suceda, es necesario que existan unos flujos de entrada y de salida del sistema, que a su vez pueden y deben conectarlo con otros sistemas. Por ejemplo, tenemos una madriguera de conejos con una capacidad determinada y un túnel de entrada y otro de salida que hace que varíe el número de conejos en la madriguera en cada momento.

La principal característica de un sistema auto-organizado es que, además, debe existir un propósito del sistema en su conjunto, que puede coincidir o no con los propósitos particulares de cada uno de sus elementos, razón en la que subyace la complejidad inherente al sistema. En el caso de los conejos, a pesar de que cada conejo individualmente no tiene racionalidad para decidir cuál es su objetivo dentro del sistema, la madriguera en sí misma se presenta con un claro propósito de subsistencia de la especie o, al menos, de ese conjunto finito.

El pensamiento de sistemas (systems thinking[1]), también denominado teoría del diseño de sistemas tiene sentido de aplicación cuando nos encontramos ante un sistema complejo. Esto es, aquel sistema que por definición presenta precisamente imprecisiones de definición, en tanto a sus elementos, flujos y límites. Por otro lado, para aplicar esta metodología es imprescindible tener capacidad de retroceder o abstraerse del propio sistema para analizarlo de forma panorámica y, por supuesto, posibilidad de intervención sobre él para poder implementar cambios, observar nuevos comportamientos y extraer mediciones.

Como se ha explicado, un sistema contiene unos elementos, unas interconexiones y un propósito

Además, la actividad inherente al sistema generará flujos de entrada y de salida. Estos flujos pueden convertirse en bucles de retroalimentación (feedback loops), donde el caudal de esos flujos se verá afectado dinámicamente por la propia fluctuación de la capacidad (cantidad de stocks).

Estos bucles de retroalimentación pueden tender hacia la estabilidad (stability loop) o hacia la exponencialidad (exponential loop) y, combinados, determinarán las oscilaciones en la vida de un sistema. Por ejemplo, un metro en Madrid tiende a tardar cuatro minutos de media (y tras cualquier retraso o incidencia, que genera una oscilación transitoria, la capacidad y flujo de la red tienden a estabilizarse sobre la frecuencia base). En cambio, si observamos un bar muy concurrido, tendemos a pensar (víctimas de un sesgo cognitivo) que la calidad de la comida debe ser superior a la media y querremos entrar (por tanto, cuanta más gente hay, más gente quiere ir), lo cual genera un bucle exponencial, hasta que se alcanza el límite de capacidad del bar.

En conclusión, se generan flujos con bucles de retroalimentación (feedback loops) pero, analizando el conjunto de esos flujos de entrada y salida adicionados, se produce un movimiento de emergencia (emergence) del sistema, que definirá su devenir de forma dinámica.

Llegados a este punto, los principales retos en torno a un sistema complejo y dinámico son, en primer lugar, entender el funcionamiento de dicho sistema para consigo mismo y para con su entorno. En segundo, generar una estrategia que involucre al sistema para crear y activar palancas de impulso (leverages) que generen un alto impacto en él. Finalmente, cómo probar las asunciones e hipótesis iniciales para aprender y adaptar el sistema de forma efectiva.

Problemas

Un sistema es complejo y, como tal, la existencia de problemas en su funcionamiento es inevitable por esencia. A la hora de categorizar los potenciales problemas que va a experimentar un sistema, podemos distinguir entre aquellos de naturaleza simple o compleja.

Los problemas de naturaleza simple (clock problems) -y, por tanto, los sistemas homónimos- no presuponen que dentro de esta simplicidad no exista una intrincación por la multiplicidad de sus elementos, sino que se define en cuanto a la consecución lógica entre la identificación de un problema y la aplicación de una solución (en tanto a que esta sea conocida, aunque complicada de ejecutar). 

En ellos, cada uno de sus elementos aislados suponen teóricamente una perfección de funcionamiento, pero, sin embargo, el conjunto puede darse al error. En esos casos, es posible identificar cuál o cuáles de los elementos han producido el fallo y aplicar una solución a los mismos. Se denominan también de tipo clock porque un reloj, si bien contiene una enorme cantidad de piezas y su reparación puede ser complicada, en el momento en que se identifica cuál es la pieza defectuosa, esta puede sustituirse por otra similar y el conjunto sigue funcionando como previo al fallo.

Los problemas de naturaleza compleja (cloud problems) son la base de la teoría de sistemas, porque ocurren en sistemas dinámicos, variables e impredecibles que no pueden arreglarse porque “no hay nada roto”. Los elementos que los componen son prescindibles de manera individual, pero, sin embargo, el sistema siempre se mantiene con una identidad propia, aunque todos sus miembros hayan cambiado. Esto es lo que ocurre con las células que componen un cuerpo humano, con las personas de una sociedad y, exacto, con los agentes que conforman el sector del taxi.

A la hora de gestionar un problema complejo, nos encontramos con tres posibilidades en cuanto al carácter de las consecuencias que generaremos en él:

«Día de la marmota[2], referido a las soluciones que, aunque solventan el problema temporalmente, vuelven a hacerlo aparecer de forma cíclica y recurrente. 

Whac-a-mole[3], por aquellos problemas que, al ser solucionados, provocan la aparición de un problema nuevo y diferente, lo cual puede provocar un efecto en cadena de problemas.

“Efecto espejo”, entendido como aquellos problemas que, al intentar solucionar, se genera el efecto contrario y al final acaban incrementando su gravedad respecto al estado inicial. 

Teniendo en cuenta estas consecuencias, cuando se aplique un cambio en algún punto del sistema (leverage), se combinarán de forma más o menos impredecible para llevar al sistema hacia unas situaciones dinámicas y desequilibradas determinadas. Para prevenir que el sistema colapse debido a estas derivas, es necesario conocer algunas de las situaciones (Meadows, 2008) que se pueden producir y la vía a priori más efectiva para corregirlas. 

> Resistencia a la política. En cualquier sistema van a coexistir varias tendencias paralelamente (quizá por la aplicación de intervenciones) y se van a generar tensiones que eventualmente han de destensarse. La intuición puede sugerir que la mejor forma de gestionar esa tensión es mediante el establecimiento de restricciones y apretar las obligaciones para modelar las tensiones (quizá mediante castigos y recompensas). Nada más lejos de la realidad, la recomendación que nos encontramos es la de aflojar la presión y dejar libertad para que los flujos actúen libremente.

> Tragedia de los comunes. La suma de elementos bienintencionados no tiene por qué suponer un conjunto próspero. El ejemplo con el que se explica esta popular paradoja es un pasto de vacas: supongamos que cada vaca, con un espíritu liberal, actúa con responsabilidad y conciencia de sólo comer una parte moderada del amplio prado. Supongamos ahora que cada una de los miles de vacas que se incorporan al pasto tienen exactamente la misma reflexión y el prado colapsa su capacidad, se queda sin pasto. Esto también se puede ver en las burbujas inmobiliarias, en atascos de tráfico o en, casualmente, pandemias catastróficas. El propio sistema ha de protegerse de esta paradoja dejando clara cuál es su capacidad. Un mecanismo puede ser la regulación del acceso al sistema.

> Saltarse las reglas. Sucede cuando se establece un acuerdo con las condiciones del sistema, lo cual abre la posibilidad de que uno de los elementos pueda pervertir la idiosincrasia de esas normas para saltárselas con ingenio. Esto puede suceder mediante una usurpación clamorosa y maliciosa de la esencia del sistema, pero también mediante el aprovechamiento de los vacíos de la redacción del sistema.

Para afrontar este reto, hay dos puntos claves: el primero, blindar el acuerdo con las condiciones de acceso al sistema para que las fugas conceptuales sean mínimas; el segundo, que todo el sistema sea confidente en sí mismo, esto es, que los elementos aun conociendo la trampa, prefieran no utilizarla. 

> Búsqueda de la meta incorrecta. Un sistema con definición en sus condiciones, elementos y grados de libertad, adquiere el propósito que lo caracteriza y que se impulsa gracias a los movimientos armoniosos hacia una dirección consensuada. Ahora bien, el problema fundamental al que puede enfrentarse es que nada garantiza que esa dirección sea la adecuada en base a unos criterios externos al sistema. Es decir, el propósito del sistema siempre será la consecuencia lógica de su esencia y nunca estará errado evaluado con la propia naturaleza del mismo. Una trampa difícil de evitar es la persecución de metas equivocadas que, si se detectan tarde, habrán marcado un rumbo incorregible. En este caso, es importante la conciencia estratégica y el establecimiento de indicadores de rendimiento.

> Deriva hacia el bajo rendimiento. Suponiendo un sistema que adquiere un propósito de funcionamiento interno favorable y, además, en una dirección aceptable respecto a unos criterios ulteriores, el factor que más puede frenar al sistema es precisamente una inadecuada velocidad. El sistema debe gozar de mecanismos para vigilar y, por tanto, auto-modular su propia aceleración. Una referencia fuera de alcance (por falta de semejanza o contemporaneidad) provoca un peor rendimiento.

> Éxito para los exitosos. Una vez el sistema esté en movimiento, aquellos elementos que mayor activación generen, a su vez serán objeto de una mayor atracción de nuevas activaciones, y viceversa. Las posibles soluciones parten de aplicar políticas internas para «democratizar» la distribución a raíz de coartar la libertad inicial de cada elemento. Otra opción es diversificar y que se genere una escisión del sistema, por arriba o por abajo, que se autogestione por separado estos repartos y, por tanto, se reduzca la brecha entre los extremos de cada división.

> Escalado. Salvando todos estos últimos obstáculos mencionados, puede darse una situación favorable de escalado (exponential loop) que puede llevar al sistema a “morir de éxito”. Una vez se ha entrado en esta espiral exponencialmente descontrolada, lo mejor es evitar la auto-competencia y generar esas mencionadas divisiones (sub-sistemas) que domen y acoten la espiral. 

> Cambiar la carga al interventor. Este concepto tan ambiguo se refiere a que todo este análisis puede ser absolutamente inútil. Hay que ser conscientes de que cualquiera de los problemas relatados quizá no existe y el propio hecho de enumerarlos e intentar solucionarnos, está haciendo desviar el foco del verdadero problema (que desconocemos y puede estar creciendo poco a poco hasta que se convierta en un elefante.

Esto genera un bucle de dependencia del sistema hacia sus interventores (y la necesidad de un liderazgo), a quienes se les da libertad de acción presuponiendo que están arreglando los problemas adecuados cuando en realidad pueden estar solo parcheando, enmarañando y/o empeorando la situación.

Entrada relacionada: «Diseño de Sistemas» (2019)


[1]  Este término fue acuñado por la científica y escritora Donella Meadows quien, a través de su libro “Thinking in Systems” sentó las bases de lo que se explicará en este capítulo.

[2]  Llamado así en referencia a la película de 1993 “Groundhog Day”, en la guía “Systems Practices” de The Omidyar Group.

[3]  Llamado así en referencia al famoso juego de mesa infantil, en la guía “Systems Practices” de The Omidyar Group.

[4] Término usado en referencia a los grados de sucesos en prospectiva de futuros, explicado en esta otra página.