Descargar

Robustez o nada


Partes: 1, 2

  1. Resumen
  2. La consigna Eficiencia o Nada de Chávez
  3. La eficiencia como relación entre producto obtenido y recurso invertido
  4. De la corrección a la prevención
  5. Robustez estructural
  6. Control Robusto
  7. Control Automático y Control Supervisorio
  8. Robustez informática
  9. Tolerancia a las Fallas
  10. Diseño robusto
  11. Toma de decisiones robusta
  12. Síntesis de la propuesta
  13. Problemas por falta de robustez
  14. Utilización de modelos
  15. Diseño de sistemas robustos
  16. Conclusión
  17. Referencias

Resumen

Pese a los numerosos éxitos de la revolución bolivariana, una de las principales preocupaciones de partidarios y dirigentes del proceso revolucionario, especialmente del Comandante Chávez, ha sido la utilización ineficiente de gran cantidad de recursos que el estado venezolano ha ido obteniendo de manera progresiva en conflicto permanente con entes transnacionales y oligarquías nacionales. Las principales medidas tomadas por el gobierno para aumentar la eficiencia en el uso de esos recursos se han enfocado en la supervisión, seguimiento y revisión de los sistemas de gestión y administración gubernamentales, representadas por la consigna "Eficiencia o nada". En el presente ensayo presentamos una propuesta que busca incrementar la eficiencia con medidas complementarias a las acciones de supervisión y seguimiento, pero que se enfocan en el diseño de sistemas robustos. Esta robustez, entendida como la capacidad de un sistema para mantener un funcionamiento aceptable frente a situaciones imprevistas, puede ser obtenida tomando en cuenta la incertidumbre en relación a las suposiciones y previsiones sobre las que se basa el diseño, y tomando medidas para reducir los efectos de esas incertidumbres.

La consigna Eficiencia o Nada de Chávez

Desde su victoria en las elecciones presidenciales del 7 de octubre de 2012 Chávez comienza a incorporar cada vez más en su discurso y en sus políticas el tema de la eficiencia del gobierno. En su discurso efectuado el 10 de octubre de ese año en la sede del Consejo Nacional Electoral, después de recibir la credencial por la victoria en los comicios, anuncia el estudio y diseño de nuevos mecanismos para incrementar la eficiencia en la gestión [1]. Pocos días después, el 14 de octubre, Chávez realiza un discurso durante el acto de juramentación del, para ese entonces, nuevo Vicepresidente de la República, Nicolás Maduro, y los ministros del Gabinete Ejecutivo, en el que hace nuevamente énfasis en la necesidad de aumentar la eficiencia haciendo una autocrítica sobre la falta de eficiencia y de seguimiento de las políticas de gobierno [2]. El 13 de octubre, en una serie de mensajes enviados por la red social Twitter a través de la cuenta @chavezcandanga, el comandante informa sobre la designación de nuevos ministros, haciendo nuevamente un llamado a la eficiencia y acuñando la frase "Eficiencia o Nada" [3] [4].

El 5 de noviembre de ese año, en su intervención televisada durante un Consejo de Ministros en el Palacio de Miraflores, Chávez hace una explicación mucho más detallada de los problemas de gestión en todos los niveles del gobierno, las fallas en la asignación de recursos, en la ejecución de proyectos y obras, y en la previsión y planificación [5]. Fallas que en general están relacionadas con la corrupción, el burocratismo (exceso y lentitud en los trámites) y la negligencia de los funcionarios de gobierno. Las medidas descritas por Chávez en esa alocución para atacar esos problemas comprendían una serie de mecanismos de seguimiento de los procesos y actividades de entes del gobierno y consecuentes medidas de corrección, en consonancia con la creación el 12 de noviembre de 2012 del Ministerio del Poder Popular para el Despacho de la Presidencia y Seguimiento de la Gestión de Gobierno, de acuerdo a la Gaceta Oficial Nº 40.048 [6], designando a Carmen Meléndez para dirigirlo. En ese momento Chávez se refiere a una operación eficiencia o nada ("esta es una operación, no es una misión, operación, eficiencia o nada"). En los siguientes días comenzaría una serie de inspecciones sorpresa a entes y empresas del Estado encabezadas por la Ministra Meléndez [7].

Después del infausto fallecimiento del Comandante Chávez y durante la difícil campaña electoral que culmina con la victoria de Nicolás Maduro el 14 de abril de 2013, se le da continuidad a la Operación Eficiencia o Nada manteniendo en el mencionado ministerio a Carmen Meléndez. El 8 de abril de 2013, antes de las elecciones, el Presidente Maduro anuncia el lanzamiento de la Gran Misión Eficiencia o Nada, que busca combatir la corrupción y la ineficiencia a través de dos ejes: el primero es "el despliegue de micromisiones, mecanismo integrado por un equipo calificado de civiles, militares y científicos, entre otros, para solucionar cualquier falla", y el segundo es la conformación de "un cuerpo especial de funcionarios que atenderá las denuncias presentadas por la ciudadanía, así como para investigar los casos relacionados con malversación de recursos públicos" [8]. Se puede mencionar como resultado concreto de esta misión, ya bajo la gestión de Wilmer Barrientos como ministro del despacho de la presidencia, la destitución en septiembre de 2013 de los presidentes o gerentes de varias empresas o entes estatales por incumplimiento de sus funciones (Ferrominera, Dianca, Mercal-Cojedes y Abastos Bicentenario de Plaza Venezuela) [9].

La eficiencia como relación entre producto obtenido y recurso invertido

La eficiencia además de ser un término que intuitivamente relacionamos con "hacer las cosas bien" o "de manera correcta", en el ámbito técnico y científico tiene una definición mucho más precisa y concreta: se refiere a la relación entre la salida (output) y la entrada (input) de un sistema o proceso, en el que la salida corresponde generalmente al producto considerado beneficioso de ese proceso (no incluye los residuos o desechos), y la entrada corresponde a los recursos necesarios para generar ese producto. Mientras mayores sean los resultados positivos de un sistema y mientras menores sean los recursos invertidos en ese sistema, mayor será su eficiencia. En un ejemplo típico, un motor será más eficiente mientras mayor sea la energía mecánica que se genera en el eje del motor (trabajo) y mientras menor sea la energía de alimentación (eléctrica, combustible, etc.) suministrada. El resultado de la división numérica de una magnitud entre la otra corresponde a la eficiencia o rendimiento del motor. En el caso de dispositivos y en procesos o sistemas locales, el estudio de la eficiencia generalmente se hace bajo la suposición de que el sistema funciona (no se consideran fallas), y se trata de mejorar su funcionamiento reduciendo gastos o consumo innecesario, o aumentando su producción sin aumentar los gastos o el consumo.

Sin embargo a un nivel superior de complejidad, como por ejemplo, un análisis económico de un sistema que puede incluir diversos dispositivos o subsistemas, el estudio de la eficiencia puede considerar, además de la eficiencia de cada subsistema durante su funcionamiento, las posibles fallas o problemas de funcionamiento en alguno de esos subsistemas, lo que se traduce a mayor escala en menor producción o falta de consecución de los objetivos trazados, y/o mayores costos o consumo de recursos. En otro ejemplo típico, la eficiencia en la realización de una obra civil puede expresarse como la relación entre el beneficio obtenido y el gasto efectuado (incluyendo en este "gasto" el tiempo requerido).

En el ejemplo del motor nos referimos a una eficiencia a baja escala o a corto plazo, que no considera fallas de funcionamiento sino el diseño de sistemas o dispositivos, mientras que en el ejemplo de la obra civil se trata de una eficiencia a gran escala o a mediano o largo plazo, que considera todo tipo de costos, incluyendo fallas de funcionamiento, gastos de mantenimiento, reparaciones y supervisión.

De las ideas planteadas por Chávez y por Maduro sobre la eficiencia, y los mecanismos de seguimiento y corrección de fallas que han establecido, deducimos que el alto gobierno ha apuntado principalmente a incrementar la eficiencia a gran escala, atacando las fallas y problemas de funcionamiento en entes y empresas del Estado, lo cual constituye un problema de gestión y administración de recursos, más que incrementar la eficiencia de determinado proceso o sistema durante su funcionamiento, lo cual constituye un problema de carácter técnico. Cuando Chávez firmaba la asignación de determinada cantidad de bolívares para una obra o proyecto y posteriormente comprobaba las fallas de funcionamiento en ese sistema, le dolía la pérdida de valiosos recursos que esas fallas representan, recursos que habían sido obtenidos después de enormes esfuerzos y luchas en el marco de la revolución bolivariana, especialmente durante las jornadas de abril de 2002 y durante el sabotaje petrolero.

Es difícil cuantificar la eficiencia del gobierno y de los diferentes ministerios y entes del estado, pero en general, tanto en el alto gobierno como en la población existe la percepción de que el aumento de los beneficios y la consecución de objetivos no ha sido proporcional al aumento de los recursos de los que dispone el gobierno, aumento que ha sido posible gracias a una política de fortalecimiento de la soberanía nacional. De ahí que Chávez haya relacionado los problemas de funcionamiento con una baja eficiencia, es decir, con resultados inferiores a los esperados de acuerdo al gasto o a la inversión realizada.

De la corrección a la prevención

Los mecanismos hasta ahora utilizados para incrementar la eficiencia del gobierno pueden ser descritos como tareas de supervisión, en las que determinados funcionarios del gobierno, de manera directa o a través de la participación popular, se encargan de identificar fallas de funcionamiento a partir de inspecciones periódicas o eventuales a entes y organismos del Estado y de implementar correctivos a estas fallas. La Operación Eficiencia o Nada y luego la Gran Misión Eficiencia o Nada, el Ministerio del Poder Popular para el Despacho de la Presidencia y Seguimiento de la Gestión de Gobierno, el Gobierno de la Eficiencia en la Calle, las Comisiones Presidenciales para abordar temas específicos, son mecanismos que deben lidiar con una gran cantidad de problemas y situaciones diferentes, esparcidos a lo largo y ancho de la geografía nacional, y que le conciernen a miles de personas de variadas condiciones.

Los sistemas supervisorios y las medidas correctivas son efectivas mientras la cantidad de fallas sea manejable por parte de los entes supervisores. Cuando la cantidad de fallas desborda las capacidades de supervisión, se debe tomar una pausa para reflexionar sobre posibles medidas preventivas que reduzcan la ocurrencia de fallas y que permitan una tarea de supervisión efectiva. A continuación proponemos la utilización de un concepto o paradigma de diseño proveniente de ámbitos como la ingeniería civil, la teoría de control, la computación, la ingeniería de producción y la teoría de la decisión para abordar de manera preventiva los problemas de gestión planteados por el gobierno y que hasta ahora han sido atacados principalmente de manera correctiva. Para esto presentaremos diferentes analogías con las mencionadas áreas de estudio que permiten aclarar el concepto y algunos aspectos de la propuesta.

La propuesta consiste básicamente en considerar la robustez, entendida como la capacidad de resistir comportamientos o eventos "imprevistos" (aleatorios) o fallas, en el diseño de los sistemas de ejecución, administración y gestión del Estado. La creación de sistemas robustos debe ser entendida como un mecanismo preventivo para garantizar la estabilidad de un sistema y evitar deficiencias y la ocurrencia de fallas, reduciendo su frecuencia, complementado y mejorando la labor de supervisión que se ha desplegado en los últimos años para incrementar la eficiencia de la gestión de gobierno. Consideramos la robustez como una premisa prioritaria o de primer orden en el diseño de estos sistemas.

Robustez estructural

Intuitivamente relacionamos la robustez con la resistencia de personas, materiales, objetos o estructuras frente a golpes, ataques y fallas. Esta noción de robustez es utilizada en el ámbito de la ingeniería civil para diseñar estructuras que puedan mantenerse durante eventos impredecibles como sobrecargas, explosiones, temblores de tierra, incendios e impactos de vehículos. Diversas normas y estándares toman en cuenta estos eventos recomendando la utilización de ciertas medidas, referentes a los materiales de construcción, las dimensiones de las estructuras, la disposición de los espacios interiores, etc [10].

De manera análoga al diseño de estructuras robustas, un aspecto importante a considerar en el diseño de sistemas de gestión de gobierno es su comportamiento durante eventos extraordinarios. De la misma manera que un ingeniero civil debe considerar la posibilidad de un terremoto a la hora de diseñar un edificio, los funcionarios del gobierno deben considerar situaciones de escasez de materiales, fallas eléctricas, problemas laborales, falta de acceso a suministros, negligencia, corrupción, sabotaje, al momento de diseñar un organismo, empresa, misión o institución del Estado que pretenda mantenerse durante un tiempo considerable (varios años).

Control Robusto

La Teoría de Control es una rama de la ingeniería y de la matemática que estudia mecanismos de control en sistemas dinámicos (ver Figura 1) en los que se busca que determinada variable del proceso siga un comportamiento predefinido (consigna, punto de ajuste, setpoint), utilizando para eso uno o más dispositivos que permiten medir la variable (sensores) y uno o más dispositivos que pueden afectar esa variable (actuadores). En particular, el sistema de control debe garantizar la estabilidad del proceso, es decir, garantizar que para determinadas condiciones exteriores, las variables del proceso se estabilizan (no oscilan ni crecen de manera indefinida). Se puede tomar el ejemplo de un proceso en el que la temperatura desea mantenerse estable alrededor de un valor determinado, utilizando para ello dispositivos de medición de temperatura y dispositivos para calentar o enfriar ese proceso. Un control simple de temperatura puede encontrarse en el ámbito doméstico en hornos de cocina, calentadores de agua, refrigeradores y sistemas de aire acondicionado, en los que el usuario establece determinada temperatura deseada y un sistema de control se encarga de aumentar o disminuir la transferencia de calor (aumento/disminución del gas de combustión en un horno, encendido/apagado del compresor de un refrigerador, encendido/apagado de un calentador de agua, etc.) para acercarse a ese valor de temperatura. En casos más complejos, como por ejemplo, en una refinería o en una planta química, existen sofisticados sistemas de control que deben lidiar con cambios en la consigna de temperatura indicada por el usuario y con diversas perturbaciones (cambios en las proporciones de los reactivos, cambios climáticos) y fallas, garantizando valores de temperatura estables y muy cercanos al valor deseado.

edu.red

Figura 1. Diagrama general de un sistema de control

Todo sistema de control requiere un modelo del proceso que se desea controlar. Un modelo no es más que un conjunto de suposiciones sobre las reglas de funcionamiento del sistema. En particular un modelo describe cómo se relacionan entre sí determinadas variables del proceso. Colocar un resistor eléctrico en un tanque de agua para calentarlo se hace bajo la suposición de que al fluir una corriente eléctrica a través del resistor, generará calor y que este calor será transferido al agua contenida en el tanque, elevando así su temperatura. De esta manera se establece una relación entre corriente eléctrica y temperatura. Esta serie de suposiciones permite realizar un control sencillo de la temperatura del proceso, mientras que un control más sofisticado generalmente requiere un modelo más detallado y que tome en consideración diferentes fenómenos tanto del proceso (ecuaciones termodinámicas) como del mecanismo de control (efecto Joule en el resistor eléctrico, caracterización del sensor de temperatura, funcionamiento del controlador). En la práctica este modelo detallado es representado matemáticamente como una función de transferencia.

Sin embargo frecuentemente los modelos no toman en cuenta todos los fenómenos a los que puede estar sometido determinado sistema. Todo modelo es una representación aproximada de la realidad. Por ejemplo, un sistema de control de vuelo de un vehículo aéreo no tripulado (UAV, drone) utiliza un modelo en forma de función de transferencia basado en leyes de la aerodinámica, pero este modelo no puede prever perturbaciones producidas por ráfagas de viento, cambios de presión o precipitaciones atmosféricas (lluvia). El modelo toma en cuenta condiciones atmosféricas promedio, no el comportamiento detallado de toda la atmósfera terrestre. Las diferencias entre el modelo y el comportamiento real no sólo se deben a una caracterización incompleta de la realidad sino a la necesidad de mantener cierta simplicidad del modelo para poder realizar un control efectivo. Un modelo demasiado complejo conduciría a un problema matemático imposible de resolver con las herramientas computacionales existentes. El control robusto (ver Figura 2) nace para lidiar con este tipo de incertidumbres en el modelo. De manera general, el control robusto considera que existe un modelo aproximado del sistema, y un error del modelo que abarca todas las incertidumbres posibles [11]. El error del modelo es considerado acotado, es decir, tiene un límite que indica el grado de diferencia que puede existir entre el sistema real y el modelo. A partir de estas consideraciones, se diseña un sistema de control que garantiza la estabilidad y permite un rendimiento aceptable no sólo para el modelo del sistema sino también para sistemas diferentes al modelo que se encuentren dentro del límite de incertidumbre establecido. Estas ventajas del control robusto se obtienen al precio de una disminución del rendimiento del sistema cuando se comporta de acuerdo a un modelo determinado. Dicho de otra manera, mientras más situaciones se pretenden abarcar, menor será el rendimiento que se puede obtener para una situación en particular.

edu.red

Figura 2. Diagrama de sistema de control que considera las incertidumbres en el modelo del proceso

Si bien el control robusto se aplica en un ámbito muy particular de la ingeniería, creemos que es posible obtener varias lecciones aplicables al problema administrativo y de gestión que queremos abordar. El diseño y la planificación de políticas de gobierno también se hacen a partir de un modelo, es decir, se realizan suposiciones más o menos aproximadas sobre las reglas de funcionamiento de determinado sistema. El diseño de un sistema de control cambiario, por ejemplo, se hace sobre una serie de suposiciones sobre la demanda de divisas existente, la cantidad de divisas disponibles, la velocidad de ejecución de trámites de acuerdo a las capacidades administrativas del Estado, etc. Sin embargo la realidad puede alejarse en cierta medida de estas suposiciones, causando inestabilidad en el sistema. Si por ejemplo, la velocidad de ejecución de trámites es inferior a la supuesta por el modelo, se puede producir un aumento en la demanda de divisas ("si se va a tardar tanto tiempo mejor solicito más dólares") que a su vez enlentece aún más la ejecución de esos trámites. El mismo tipo de problema puede existir al diseñar un sistema de distribución de alimentos (los retrasos pueden producir un aumento de la demanda, lo que a su vez ocasiona mayores retrasos). La instalación de una fábrica puede hacerse con base en suposiciones sobre el acceso a proveedores de servicios, materia prima y partes, la existencia de trabajadores calificados en las cercanías, la existencia de una demanda del producto por parte de fábricas aguas abajo de la cadena de producción, suposiciones que pueden resultar inexactas al comprobar con posterioridad que, por ejemplo, la materia prima se desvía hacia Colombia, fallas del sistema de transporte no permite la llegada de los trabajadores, fallas de distribución eléctrica no permiten poner a funcionar máquinas, falta de servicio post-venta de un proveedor no permite realizar reparaciones a máquinas. Problemas como estos fueron mencionados por Chávez en su alocución televisada del 5 de noviembre de 2012. Para evitar este tipo de problemas los diseños deben considerar las incertidumbres de los modelos, sacrificando el rendimiento óptimo en situaciones ideales para aumentar la robustez, permitiendo rendimientos aceptables en un amplio espectro de situaciones.

Control Automático y Control Supervisorio

Los sistemas de control forman parte del objeto de estudio de la Automatización Industrial. En sistemas automatizados industriales de cierta complejidad, se suele utilizar el modelo (o modelos) de la pirámide de automatización (ver Figura 3) como referencia para su análisis y diseño [12] [13], modelo a partir del cual también podemos construir una analogía en relación a los sistemas de gestión y administración del Estado. Este modelo clasifica los diferentes dispositivos y subsistemas en varios niveles, comenzando con los niveles más cercanos al proceso industrial, y elevándose progresivamente hacia niveles más cercanos a la gestión de la empresa. En el nivel 0 del modelo se encuentran los sensores y actuadores, que interactúan directamente con el proceso y se comunican generalmente mediante señales eléctricas o protocolos de comunicación simples con el siguiente nivel. El nivel 1 está conformado por controladores industriales (PLC, DCS, PAC), los cuales realizan un control automático de determinado proceso recibiendo señales de los sensores y enviando señales hacia los actuadores, utilizando frecuentemente un protocolo de comunicación para redes con el objeto de intercambiar información con el siguiente nivel. El nivel 2 está constituido por sistemas de control supervisorio (SCADA), el cual recibe datos de los sensores y controladores, generando señales de alarma en caso de que detecte estados o situaciones anormales y permitiendo enviar comandos a actuadores y configurar los controladores. Los niveles 3 y 4 corresponden al control de producción (MES) y el control de empresa (ERP) respectivamente, y no serán tomados en cuenta para esta analogía. El modelo es considerado una pirámide debido a que a medida que se asciende en ella, los dispositivos se reducen en cantidad y aumenta la escala espacial y temporal que abarcan. Una planta con cientos de sensores que se encuentran continuamente generando señales del proceso, cada uno en un punto específico de éste, puede tener unos 10 controladores que recibirán datos con una frecuencia del orden de los milisegundos y que controlarán secciones de ese proceso, y esos controladores se comunicarán a un único sistema de supervisión que abarcará todo el proceso y que recibirá datos con una frecuencia en el orden de los segundos o incluso minutos, dependiendo del tipo de dato.

La analogía que queremos presentar considera los niveles 1 y 2, correspondientes al control automático y al control supervisorio. La existencia de un control supervisorio implícitamente hace la suposición de que los datos que se manejarán en ese nivel se generan con una frecuencia mucho menor que los datos manejados en el nivel inferior de control automático. Por ejemplo, retomando el caso de la temperatura en un proceso perteneciente a una planta química o una refinería, podemos decir que mientras el control automático constituye en la práctica un dispositivo configurado para que regule constantemente la temperatura durante días, incluso meses, y sólo sea necesario modificar su configuración eventualmente en caso de modificaciones al proceso o eventos anormales, el control supervisorio es realizado en la práctica por un grupo de operadores en una sala de control que se encargan de verificar que el proceso se mantiene operando normalmente y sólo actúan en caso de que ocurran eventos anormales, como por ejemplo, que la temperatura supere un valor límite. Es importante para el funcionamiento adecuado del sistema, que los eventos de los que se encarga el control supervisorio se mantengan en frecuencias manejables por los operadores. La mayor parte del tiempo, el control automático debería manejar el proceso, mientras que los operadores en el nivel supervisorio deberían actuar ocasionalmente. Si por ejemplo, la temperatura supera el valor límite y genera una alarma para el control supervisorio cada 10 minutos, entonces debe replantearse la estrategia de control en el nivel inferior, en el control automático, y no en el control supervisorio. Es en este tipo de situación que los ingenieros deberían considerar, por ejemplo, la utilización de un mecanismo de control robusto que permita evitar la inestabilidad de la temperatura en ese proceso, y permitir así que el control supervisorio sea una tarea manejable para los operadores.

edu.red

Figura 3. Pirámide de Automatización

En un sistema administrativo o de gestión del Estado puede ocurrir el mismo tipo de problema. A cualquier nivel de gestión se realiza una labor de supervisión, en la que se verifica el correcto funcionamiento de sistemas a un nivel más bajo. Por ejemplo, el gerente regional de una empresa del estado puede realizar reuniones periódicas (cada semana, cada quince días) con los gerentes locales para evaluar la gestión y reaccionar ante posibles problemas. En el caso de la Gran Misión Eficiencia o Nada, un Ministro puede realizar una visita sorpresa a determinada institución o empresa para detectar fallas o problemas. Los gerentes locales, a su vez, pueden realizar inspecciones más frecuentes (diarias, semanales) de los procesos e instalaciones bajo su supervisión, detectando fallas, ejecutando correctivos y haciendo las alertas pertinentes. De manera similar a la pirámide de automatización, mientras más se asciende en la estructura jerárquica del Estado, mayor es el ámbito que abarcará la supervisión de determinado funcionario, y menos frecuentes serán las reuniones, revisiones, inspecciones o visitas que realizará a determinado lugar o proceso. Si la cantidad de problemas y fallas que debe atender un funcionario se hacen tan frecuentes que sobrepasan sus capacidades de gestión, entonces debería considerarse el rediseño de las estructuras que deben ser supervisadas. El rediseño debería tener como prioridad mejorar la robustez de esas estructuras. A esto se refería Chávez cuando expresó que él no debería ser el alcalde de toda Venezuela, en el sentido de que sus funciones se encuentran en un nivel supervisorio que no debería atender de manera ordinaria cuestiones particulares que conciernen al ámbito local [14].

Robustez informática

La programación informática es otro ámbito en el que la robustez constituye un objeto de estudio relevante. Una aplicación informática (software) es valorada de acuerdo a tres aspectos que reflejan su calidad. Para un conjunto dado de especificaciones, la correctitud (correctness) indica si la aplicación cumple con esas especificaciones. La eficiencia se refiere a la cantidad de tiempo y de recursos que la aplicación requiere para producir el resultado deseado. La robustez de la aplicación se refiere a la capacidad que tiene para funcionar de manera correcta para condiciones anormales, errores o situaciones no consideradas en las especificaciones.

Un programa informático frágil puede verse afectado por una entrada que no corresponde con el tipo de dato solicitado. Por ejemplo, al realizar una transferencia bancaria de manera electrónica, el usuario puede cometer el error de ingresar texto en lugar de un número en el campo correspondiente a la cantidad monetaria que se desea transferir. Si la aplicación no ha considerado esta posibilidad, el ingreso de este dato puede hacer que la aplicación falle (la aplicación se "cuelga", no responde, o se cierra inesperadamente) ocasionándole una pérdida de tiempo al usuario, quien deberá reingresar a la aplicación. En cambio una aplicación robusta puede manejar esa situación manteniéndose en funcionamiento, y en el mejor de los casos, avisar al usuario sobre el problema para que éste sea resuelto.

La robustez también puede considerar errores de programación, de comunicación y de cálculo. Para robustecer los programas existen diversas metodologías dentro del área de la ingeniería de software que consisten generalmente en la aplicación de ciertos principios de diseño y la realización de pruebas que buscan exigir al máximo al programa para determinar sus límites y así poder dilatarlos.

Una de las principales características de un programa informático en la actualidad es su reutilización en aplicaciones o en ambientes diferentes a la aplicación para la que fue concebido originalmente. En estos casos la robustez es un requisito prioritario puesto que se aumenta la probabilidad de ocurrencia de eventos imprevistos.

Los sistemas operativos basados en UNIX presentan una mayor robustez que otros sistemas operativos, debido en gran medida a la filosofía de programación en la que se basa UNIX y que ha sido comúnmente condensada en una serie de reglas o principios basados en la experiencia y conocimiento acumulado de la comunidad de programadores [15]. La mayoría de estos principios se relacionan a la robustez, priorizando por encima de la eficiencia, características que buscan evitar errores de programación, facilitar su corrección a través de una fácil comprensión del código (archivos de texto, programas pequeños) y de pruebas tempranas (prototipos), y permitir la utilización del mismo código en diferentes equipos y su reutilización en aplicaciones diferentes (portabilidad). Las diferentes distribuciones de Linux, el sistema operativo de código abierto más popular, el cual se basa en UNIX, han logrado obtener una gran robustez gracias a la colaboración de miles de personas durante el proceso de desarrollo y actualización de los programas, colaboración que se hace posible gracias a las características de transparencia, legibilidad, y permanencia en el tiempo del sistema operativo.

De estos principios pueden obtenerse ideas para robustecer los sistemas de gestión y administración del gobierno, detectando aspectos generales que no se restrinjan al área de la informática y de la computación. Las cualidades de portabilidad, sencillez y legibilidad de los programas pueden encontrar sus análogos en cualidades de permanencia de procedimientos y políticas de una institución frente a cambios en las condiciones políticas, económicas, sociales, culturales del ambiente en el que se desenvuelve, o la sustitución o cambio generacional de funcionarios dentro de la institución. El funcionamiento de un sistema o institución basado en las condiciones actuales o en las cualidades particulares de determinados funcionarios puede llegar a ser muy eficiente en el corto plazo, pero esa eficiencia puede lograrse en detrimento de la robustez del sistema frente a cambios en el ambiente o a la salida de alguno de esos funcionarios. En el largo plazo, esa eficiencia puede resultar ilusoria, puesto que las dificultades que enfrentará la institución bajo condiciones diferentes o las dificultades que enfrentarán los nuevos funcionarios para acoplarse a una organización poco flexible tiene como consecuencia una disminución de la eficiencia a mediano y largo plazo.

De la noción de portabilidad podemos tomar tres principios de diseño que pueden extrapolarse a los sistemas de gestión del gobierno [16]:

  • 1) Controlar las interfaces

  • 2) Aislar las dependencias

  • 3) Pensar portable

El primer principio se refiere a las relaciones de un programa con otros programas y con el usuario. Para mejorar la portabilidad se deben identificar todas las interfaces y diseñarlas de la manera más abierta y normalizada (standard) posible. Esta característica es típica de las distribuciones de Linux. Se busca evitar que un programa se encuentre atado (hardwired) a determinada interfaz, de manera que pueda realizar la mayor cantidad y variedad de conexiones con otros programas. En el caso de empresas e instituciones de gobierno esto tiene visibles analogías.

Pensemos por ejemplo en una fábrica diseñada para trabajar con determinado tipo de maquinaria, con determinado tipo de materia prima, que recibe insumos, equipos o tecnología de determinado proveedor, que expende sus productos a determinado distribuidor, y en la que trabaja personal con determinadas características. Aunque la fábrica haya sido diseñada para trabajar con la mayor eficiencia, cualquier falla en las relaciones que tiene con alguno de sus proveedores, clientes, instituciones a las que está adscrita, o con su personal, puede reducir en gran medida su producción. Uno podría preguntarse, por ejemplo, si una fábrica puede ser diseñada para producir diferentes tipos de productos afines, utilizando diferente tipo de materia prima. ¿podría diseñarse un central azucarero que produjera azúcar no sólo de la caña, sino también del maíz? ¿podría diseñarse una fábrica de harina precocida proveniente del maíz pero también de la yuca? En este sentido puede plantearse en lugar de la construcción de fábricas de producción a gran escala de un producto especializado, la construcción de fábricas de producción a menor escala de una variedad considerable de productos, apuntando a aprovechar la economía de gama, en lugar de la economía de escala. Este tipo de fábrica se vería potenciada con la aplicación de la llamada "automatización flexible" y una formación generalista y polivalente de los trabajadores.

En el caso de instituciones de gobierno encargadas de tareas administrativas y políticas, la flexibilidad de las interfaces puede obtenerse considerando una estructura de redes, en la que cada institución no se relaciona únicamente con las instituciones en las posiciones jerárquicas inmediatamente inferiores e inmediatamente superiores de su área, sino que puede relacionarse directamente de manera transversal con instituciones con las que surja algún tipo de afinidad.

El segundo principio, el aislamiento de dependencias, se refiere a ubicar y agrupar todos aquellos elementos y componentes de un sistema que requieran modificaciones en caso de cambios en el ambiente de trabajo. En el caso de una empresa del estado este principio encuentra su analogía en la existencia de equipos y tecnología dependientes de entes privados, particularmente transnacionales. Ubicar y agrupar las dependencias permite encontrar proveedores sustitutos de manera más expedita. En este ámbito existe un importante precedente en el Proyecto de Soberanía Tecnológica desarrollado por PDVSA como consecuencia de las sanciones impuestas por EEUU a la empresa en 2011. Entre las acciones realizadas dentro de ese proyecto se han ubicado las tecnologías dependientes de EEUU y se ha conseguido ubicar proveedores sustitutos de otros países. La dependencia también puede ser de carácter interno en instituciones del estado, cuando una institución depende de otra institución, de cierto conocimiento o de un grupo de funcionarios en particular. Determinar la existencia de las dependencias internas permite tomar acciones preventivas como formar o preparar a un grupo de relevo para el grupo de funcionarios considerado indispensable en ese momento, obtener diversas fuentes de conocimiento y establecer relaciones con otras instituciones que puedan llevar a cabo las actividades necesarias para el funcionamiento adecuado de la institución en cuestión. En general, determinar las dependencias permite prevenir y reaccionar de manera más efectiva a un cambio o falla en ellas.

El tercer principio se enlaza con varios de los principios de la filosofía UNIX sobre programas transparentes, comprensibles y generales que puedan ser reutilizados y llevados a otros ambientes. En el caso de los sistemas de gestión del gobierno, se puede apuntar al diseño de sistemas que puedan operar en situaciones diferentes a las actuales y con otros supervisores y trabajadores. Todo funcionario público debería considerar que va a ser remplazado el día siguiente y que debe dejar todo listo y en orden para que la persona que lo sustituya pueda trabajar de la mejor manera posible.

El desarrollo de numerosas aplicaciones informáticas, particularmente de código abierto, a partir de la colaboración de numerosos programadores que se encargan de desarrollar funcionalidades nuevas y corregir errores existentes, nos permite considerar la obtención de la robustez en un sistema como el resultado de una acumulación de correcciones y mejoras a lo largo del tiempo. De manera análoga y quizás aún más relevante, se debe considerar que un sistema de gestión del gobierno requiere un tiempo considerable de acumulación de correcciones y mejoras para obtener la robustez deseada. Un ejemplo notable de robustez puede encontrarse en los programas sociales realizados en cooperación con la República de Cuba (Misión Robinson, Misión Barrio Adentro), los cuales han presentado una notable continuidad en su funcionamiento tanto en Venezuela como en otros países, continuidad que podríamos atribuir, al menos en parte, a una robustez obtenida con décadas de experiencias en diversos lugares del planeta.

Tolerancia a las Fallas

Mientras que la robustez trata sobre mantener un funcionamiento adecuado del sistema frente a diferentes situaciones, la tolerancia se refiere específicamente a eventos que pueden ser considerados como fallas. De cierta manera, la robustez puede ser considerada como un concepto más amplio que incluye la tolerancia a las fallas, aunque en ciertos contextos, la robustez toma en cuenta situaciones inciertas, mientras que las fallas pueden ser hasta cierto punto caracterizadas; es decir, se puede suponer su efecto pero se considera incierto el momento de su ocurrencia. Mientras que la robustez generalmente trata sobre situaciones no consideradas en el modelo establecido, la tolerancia incluye ciertas situaciones especiales o poco probables en ese modelo [17].

Tanto en sistemas informáticos como industriales, el diseño de sistemas con tolerancia a las fallas requiere el estudio y análisis de estos fenómenos y la aplicación de sistemas redundantes para mejorar la confiabilidad en términos de probabilidades de falla del sistema.

En empresas y sistemas industriales en los que se consideran fallas en determinados dispositivos o equipos, pueden utilizarse además de estos dispositivos, dispositivos de respaldo (backup) que llevan a cabo la misma función, pero que son puestos en marcha cuando los primeros presentan averías o fallas. Una planta eléctrica que se enciende al presentarse fallas de suministro eléctrico, una bomba de respaldo colocada en paralelo a la bomba principal destinada a ser encendida al momento de presentarse una avería, una copia de seguridad de los archivos digitales guardados en una computadora para disponer de un respaldo en caso de pérdidas de datos, son ejemplos de sistemas de respaldo para hacer frente a fallas con consecuencias previsibles. En todos estos casos, la tolerancia a las fallas se obtiene al precio de mayores costos en términos de recursos invertidos en equipos y dispositivos adicionales.

En el área de las telecomunicaciones, los errores de transmisión en mensajes digitales han sido estudiados y grandes mejoras se han obtenido con el envío de información redundante que permite detectar y a veces corregir estos errores. Por ejemplo, frecuentemente en una trama de bits de información, se agrega un bit de paridad que permite detectar si ocurre un error en un único bit de la trama, al costo de reducir la velocidad de transmisión (se reduce la cantidad de información enviada por cada bit enviado). Si bien la redundancia implica mayor robustez frente a fallas, reduce la eficiencia a corto plazo.

En el caso de computadores industriales en los que se requieren altos niveles de tolerancia a las fallas, la redundancia es aplicada mediante sistemas de votación. En estos sistemas se utiliza un número impar de computadores idénticos para la toma de decisiones, y un mecanismo de votación que ejecuta la decisión de la mayoría de esos computadores. La estructura de votación más simple y más utilizada, llamada redundancia modular triple (TMR por sus siglas en inglés), consiste en tres computadores o módulos idénticos, los cuales reciben las mismas entradas y la mayor parte del tiempo producen los mismos resultados. Al existir discrepancias entre los resultados de los computadores, el sistema ejecuta la decisión de la mayoría (dos de tres). En el caso de que ocurra una falla en uno de los módulos, ésta no tiene efecto a menos que se repita en al menos otro de los módulos, evento que generalmente es extremadamente improbable. En este caso se obtiene una confiabilidad mayor del sistema al precio de triplicar los costos. Un esquema similar puede ser utilizado en el caso de sensores utilizados para lazos de control (redundancia triple de sensores).

En general el diseño y la implementación de un sistema tolerante a las fallas implica:

  • Entender los efectos que tienen las fallas sobre el sistema (averías en equipos, pérdida de información, toma de decisiones erradas) y su probabilidad de ocurrencia.

  • Establecer acciones definidas considerando la ocurrencia de fallas (encendido de equipos de respaldo, reenvío o corrección de mensajes, ejecutar la decisión de la mayoría).

  • Hacer uso de la redundancia al precio de mayores costos (equipos de respaldo, computadores redundantes) o menor eficiencia en el corto plazo (menor proporción de bits de información).

Haciendo una analogía con sistemas de gestión del gobierno, puede decirse que para la implementación de un sistema tolerante a fallas, fallas que podrían incluir fenómenos como corrupción, negligencia, retrasos y sabotaje, se deben entender los efectos de estas fallas y su probabilidad de ocurrencia, se deben establecer acciones definidas tomando en cuenta su ocurrencia y se deben considerar costos adicionales que implican estructuras redundantes. Las estructuras redundantes probablemente se traducirán en cierto número de personas, entes o sistemas realizando las mismas funciones sin estorbarse mutuamente, sino garantizando un funcionamiento más confiable del conjunto.

Partes: 1, 2
Página siguiente