Mostrando entradas con la etiqueta AC. Tiempo Real. Mostrar todas las entradas
Mostrando entradas con la etiqueta AC. Tiempo Real. Mostrar todas las entradas

¿Qué es MapReduce?


Ya hemos hablado en entradas anteriores de las aplicaciones de Big Data. Este tipo de aplicaciones suelen explotar el paralelismo de datos, de manera que diferentes núcleos de procesador, procesadores o nodos de cómputo (dependiendo de la arquitectura que haya por debajo) realicen las mismas tareas sobre conjuntos de datos diferentes para producir un resultado en el menor tiempo posible,

MapReduce es un framework o entorno de desarrollo (pensado para lenguaje C inicialmente, aunque luego se han implementado versiones para otros lenguajes como Java) que permite trabajar en paralelo con grandes cantidades de datos en sistemas de memoria distribuida (clusters, sistemas Grid y entornos Cloud).

Con este entorno tanto los datos de entrada como los de salida (los resultados) se almacenan en ficheros, así como todos los resultados intermedios que se produzcan. Se basa en el modelo maestro/esclavo, de manera que uno de los nodos de cómputo lleve el control del programa y vaya enviando trabajo al resto de los nodos (los esclavos) según vayan quedando libres. Se ofrecen dos interfaces a los programas de usuario: el de Map y  el de Reduce. El interfaz Map mapea los datos iniciales que aparecen en el fichero de entrada a pares clave/valor intermedios con los que sea más fácil trabajar. Después de ordenar, agrupar, filtrar, etc; estos pares con interfaces internos, el interfaz Reduce, reduce de alguna forma los pares intermedios a un conjunto de datos menor que el inicial en el que se agrupan los que comparten la misma clave. El ejemplo típico es el de la cuenta de palabras (está extraído de este enlace).



MapReduce nos facilita las siguientes tareas:
  • Particionamiento de datos y de cómputo.
  • Tratamiento de ficheros de entrada y de salida.
  • Sincronización (hasta que todos los esclavos no terminan de hacer el Map, no se comienza con las tareas de Reduce).
  • Comunicación (que se realiza mediante RPC).
  • Sort y Group (interfaces internos para trabajar en paralelo con los grandes conjuntos de datos).
  • Map y Reduce (interfaces externos disponibles para los programas de usuario).

En futuras entradas hablaremos de las implementaciones que existen de este framework en la actualidad y haremos una comparativa entre ellas.

NoSQL


Con este término nos referimos a sistemas de gestión de bases de datos que no utilizan el lenguaje de consultas SQL ya que la información, a diferencia de en los sistemas relacionales clásicos se almacena de manera estructurada pero no obligatoriamente en forma de tablas (existen bases de datos de documentos, de objetos, de pares clave-valor, aunque también las hay tabulares).

Las bases de datos NoSQL no suelen garantizar completamente las propiedades ACID (atomicidad, coherencia, aislamiento y durabilidad), pero presentan la ventaja de estar muy optimizadas para realizar las operaciones de recuperar y agregar información en tiempo real, son altamente escalables y el tiempo de proceso no es un cuello de botella ni siquiera manejando grandes cantidades de datos.

Esto ha hecho que en entornos de Big Data (de los que ya hemos hablado en entradas anteriores) se haya optado en muchos casos por estos tipos de bases de datos, ya que las tres Vs (velocidad, volumen y variedad) hacen que el modelo de datos típico en estos entornos pueda aprovechar a la perfección estas características.

Tanto las grandes compañías del mundo de las redes sociales (Twitter y Facebook) como otras grandes de Internet (como Google o Amazon) han optado por este tipo de bases de datos para algunas de sus aplicaciones. E incluso en algunos casos, han diseñado sus propios sistemas de gestión. Hablaremos de alguno de ellos en futuras entradas.

¿Que es un DSS?

Estas son las siglas de Decision Support System, es decir, se trata de un sistema de apoyo a la decisión. Este tipo de sistema es cualquier sistema informático que apoye a los procesos de toma de decisiones en los diferentes niveles de una organización (estratégico, táctico u operativo). 
Normalmente un DSS presenta, mediante algún tipo de interfaz gráfico, datos, información y conocimiento relacionados con la decisión que debe tomarse para que el responsable de la misma pueda tomarla de manera rápida y eficiente, y teniendo en cuenta información precisa, actualizada y completa (algo que no podría hacer confiando exclusivamente en sus capacidades personales).
Los entornos de decisión en ámbitos financieros, empresariales, industriales, de defensa y seguridad o sanitarios, por poner sólo algunos ejemplos, son cada vez más complejos. Esto implica, que aunque la decisión final siempre sea responsabilidad de una persona (o de un grupo de ellas), sería imposible que tuviera en cuenta todos los criterios y alternativas posibles sin la ayuda de un sistema de este tipo.
Además del interfaz ya mencionado, estos sistemas suelen incluir también, en casi todos los casos, algún tipo de base de datos con los modelos, datos, documentos, etc; que se utilizan para ayudar en la toma de decisiones.
Algunos de los principales retos que el diseño e implementación de este tipo de sistemas presentan hoy en día son:
  • Utilizar simuladores para que se puedan realizar análisis "what-if" para la toma de decisiones. Las técnicas de simulación distribuida permiten que en la actualidad este tipo de análisis puedan realizarse en tiempo real y por lo tanto, que se puedan evaluar los posibles resultados y consecuencias de las decisiones antes de tomarlas.
  • Mejorar los entornos colaborativos en los casos en los que las decisiones se toman en grupo y no dependen exclusivamente de un único responsable.
  • Incorporar técnicas relacionadas con Business Intelligence, Big Data, analítica web, inteligencia artificial, etc; para incrementar el número de variables que pueden tenerse en cuenta en la toma de decisiones y mejorar así su calidad.

OIP y la gestión en tiempo real

Ya hemos hablado en entradas anteriores del concepto de Zero Latency Enterprise (ZLE) y de la importancia que la combinación de las soluciones SOA y BPM tienen para alcanzar el objetivo de la gestión en tiempo real de una compañía.
OIP (Optimized Interactive Process) es un nuevo concepto, que añade a BPM una serie de características y funcionalidades que lo hacen todavía más interesante en este tipo de escenarios. Se trata de incluir en las soluciones los nuevos mecanismos y dispositivos de comunicación (dispositivos móviles y redes sociales, sobre todo), y en gran medida, de dotar a los procesos de conocimiento del entorno (context-aware processes) mediante la utilización de todo tipo de sensores (cada vez más importantes y extendidos en el contexo de Internet Of Things), de tecnologías como GPS y de plataformas de coordinación, colaboración y compartición que permitan un mejor aprovechamiento de los recursos físicos, humanos y de información que se encuentran a disposición de la compañía.
Como hemos discutido en muchas ocasiones en este blog,  ZLE implica que la empresa ha minimizado la latencia de sus operaciones de manera que los eventos relacionados con cualquier factor que afecte a la compañía inmediatamente desencadenan las acciones oportunas de las personas responsables. Y el concepto de OIP encaja perfectamente con este modelo de gestión, ya que, como su propio nombre indica, hace hincapié en la optimización de los procesos mediante la mejora de sus capacidades de interacción con los usuarios y con el entorno. Se puede simplificar diciendo que OIP es el resultado de combinar el BPM tradicional con plataformas de tipo UCC (Unified Communications and Collaboration), y esta combinación es muy ventajosa en el marco de trabajo actual de muchas organizaciones.

Procesadores Itanium

Ya hemos comentado en entradas anteriores que los procesadores que podemos encontrar hoy en día en los PCs, portátiles y servidores, están diseñados para ejecutar instrucciones del repertorio x86 (que es CISC, aunque luego el front-end de los procesadores traduzca las instrucciones a microoperaciones de tipo RISC). Este es el estándar de facto en el que los dos grandes fabricantes de este segmento de mercado, Intel y AMD, basan todos sus diseños. O casi todos, porque Intel lanzó hace ya unos años un procesador que se basa en otro tipo de repertorio: el procesador Itanium diseñado para ejecutar instrucciones del repertorio IA-64.

Algunos habéis preguntado en ocasiones por este tipo de procesador ya que es relativamente habitual en  servidores críticos tanto en industria como en infraestructuras (en concreto del fabricante HP), así que intentaré explicar en qué se diferencia del resto de procesadores en pocas palabras. El Itanium es un procesador de tipo EPIC (Explicitly Parallel Instruction Computing) y en este tipo de diseños la relación entre el compilador y el hardware es mucho más estrecha de los habitual. Simplificando un poco, la idea es descargar al procesador de ciertas "responsabilidades" de manera que se encargue de ellas el compilador. De esta manera se puede simplificar el hardware que normalmente se dedica a funciones como la planificación dinámica de instrucciones y ejecución fuera de orden, la emisión superescalar, etc; y dedicar el área que se ahorra a añadir más unidades funcionales a la ruta de datos del procesador (capacidad de realizar operaciones). ¿Para qué? Para agrupar varias instrucciones en una más larga (con técnicas del tipo VLIW que ya hemos explicado) y que se puedan ejecutar en paralelo.

El compilador, además de encargarse de buscar las instrucciones que pueden empaquetarse juntas, y por lo tanto, ejecutarse en paralelo, también se encarga de proporcionar "pistas" (hints) al procesador para que pueda mejorar sus resultados en las predicciones de los saltos, para que las técnicas de prefetching sean más eficientes, etc.

A pesar de los continuos rumores acerca de este procesador y de su desaparición, parece que Intel y HP siguen apostando por él para servidores de HPC, por lo que los sistemas operativos orientados a servidores, tanto Windows como Linux, le siguen dando soporte. Próximamente se espera el lanzamiento de una nueva versión del procesador Itanium2, el Poulson, que ha generado bastantes expectativas en cuanto a su rendimiento.

¿Qué es una SmartCity?

Durante los últimos años se han llevado a cabo proyectos consistentes en la introducción de elementos domóticos e inmóticos para la gestión inteligente de casas, espacios comerciales e infraestructuras. Los distintos sistemas que concurren en una infraestructura (iluminación, calefacción, ventilación, climatización, anti incendios, video, megafonía, CCTV, control de accesos, suministros de energía, CPD…) han requerido de sistemas de información que han facilitado su integración y han proporcionado información que ha permitido realizar una gestión inteligente de dichos entornos. Cuando los conceptos de integración de sistemas, acceso a información en tiempo real, eficiencia, sostenibilidad o reducción de emisiones se extrapolan a la gestión integral de las infraestructuras y servicios que conviven en una ciudad (riegos, iluminación, tráfico, sistemas electromecánicos, recogida de residuos, etc…) es cuando surge el concepto de SmartCity.

No existen ciudades inteligentes. El desarrollo de una Smart City ofrece a los ciudadanos la posibilidad de actuar de forma inteligente, acercándoles toda la tecnología que se despliega en una ciudad (sensores, medidores, controladores, cámaras, sistemas de información). Los ciudadanos pueden aprovecharse de este despliegue tecnológico:

  • Reduciendo los tiempos de desplazamiento ya que conocen en tiempo real y a través de cualquier tipo de dispositivo móvil el estado del tráfico y la disponibilidad de plazas de parking.
  • Reduciendo los costes energéticos ya que se les proporciona información contextualizada de sus hábitos de consumos.
  • Incrementando la facilidad de acceso a lugares públicos porque se lleva a cabo una gestión de alarmas que permite reaccionar en tiempo real ante posibles averías de escaleras, pasadores urbanos…

Además de tener un impacto positivo y directo sobre los ciudadanos, las administraciones públicas se aprovechan de las inversiones realizadas, reduciendo drásticamente los costes asociados a las infraestructuras.

En este documental ofrecido por Informe Semanal, se tratan tres casos de éxito de aplicación del concepto SmartCity en las ciudades de Málaga, Rivas Vaciamadrid y el distrito 22@ de Barcelona. En particular, en la ciudad de Málaga la inclusión de inteligencia a la red de farolas de la ciudad ha permitido que los costes se reduzcan hasta un 30% o que se reduzcan las emisiones de C02 hasta un 20%.

Para finalizar, una de las claves que permite que una ciudad se convierta en SmartCity está en la integración de todos los sistemas que conviven en ella y la incorporación de sistemas de información que faciliten dicha integración y proporcionen la información necesaria en tiempo real para que los ciudadanos puedan tomar decisiones inteligentes.


Windows, Linux y transacciones de entre 2 y 12 segundos

En anteriores entradas se ha tratado el concepto de sistema tiempo real y qué características hacen que un sistema se considere tiempo real. De estas entradas pueden extraerse estas dos conclusiones:

  • Un sistema tiempo real no debe confundirse con uno que deba ejecutar tareas o gestionar información en intervalos pequeños de tiempo.
  • Un sistema en tiempo real debe asegurar que se cumplen las latencias.

En algún foro, ha surgido la siguiente discusión: ¿pueden considerarse sistemas operativos como Windows o Linux sistemas RTOS (Real Time Operating Systems)? La respuesta es no por varios motivos, pero el principal es que son sistemas operativos que no garantizan tiempos de respuesta deterministas.

¿Qué significa esto? Que la probabilidad entra en su funcionamiento (son estocásticos), es decir no se puede prever que un resultado se produzca siempre con la misma latencia. ¿Y qué factores hacen que un SO sea determinista? Principalmente dos, la planificación de procesos y el tratamiento de interrupciones de E/S.

Ninguno de los dos sistemas operativos mencionados gestiona estos dos aspectos de manera que se pueda garantizar el cumplimiento de unas latencias deterministas. Por este motivo no pueden utilizarse en entornos de tiempo real "estricto" o tradicional.

En paralelo a esta cuestión, surge otra discusión. Para la supervisión, control y gestión de información desde centros de control de infraestructuras y entornos industriales se requieren normalmente latencias de entre 2 y 12 segundos. ¿Son Windows y Linux capaces de realizar transacciones en este rango de tiempos aunque no me puedan garantizar que siempre van a tardar lo mismo en ejecutar las mismas tareas? La respuesta es afirmativa. Actualmente Windows tiene la capacidad de realizar transacciones de entre 0.1 ms y 100 ms, y Linux de alrededor de 1ms.

Por tanto, si nuestro sistema es realmente de tiempo real (valga la redundancia), no podemos utiilizar los sistemas operativos habituales y será necesario recurrir a sistemas RTOS diseñados específicamente con este objetivo. Pero para las típicas aplicaciones de supervisión y control de infraestructuas y entornos fabriles, con las latencias antes mencionadas, suele ser más que suficiente cualquiera de estas dos alternativas.

Pervasive Computing

Con esta denominación se conoce al modelo o paradigma de computación que pretende que todos los objetos y dispositivos de nuestra vida cotidiana incorporen algún tipo de procesador que les permita interactuar con nosotros para hacernos la vida "más cómoda". En castellano se suele utilizar el término computación ubicua (ubiquitous computing), aunque últimamente se habla mucho también de la inteligencia ambiental.

La integración de los procesadores (y de los sensores y actuadores que les permiten interactuar con su entornos) con el ambiente debe ser de un grado tan alto que los humanos prácticamente no percibamos su presencia y demos las órdenes y recibamos la información de una manera natural y transparente (la idea es que no seamos conscientes de estar rodeados por sistemas informáticos). Si se puede plantear este modelo de computación en la actualidad es gracias a, por un lado, el abaratamiento de los procesadores más sencillos, y por otro, la mejora en algunas de sus características como pueden ser la movilidad y autonomía (reducción en el consumo de potencia), el tamaño o la robustez. También han sido muy importantes las mejoras en redes de comunicaciones, que permiten el direccionamiento e interconexión de manera segura de dispositivos completamente heterogéneos en lo que se ha denominado Internet Of Things.

Las aplicaciones de este tipo de tecnología son prácticamente infinitas (casi todas ya exploradas en las películas de ciencia ficción...) y se ha comenzado por incorporarlas en ropa, electrodomésticos, aplicaciones domóticas y de SmartCity, etc. En futuras entradas hablaremos de las tecnologías asociadas a todos estos conceptos.


¿Qué es la lógica difusa?

El término fuzzy logic (lógica difusa) aparece mucho en sistemas de control industrial. La palabra fuzzy se refiere a "términos, frases o sentencias que no son suficientemente claras, no son bien conocidas, o su especificación está sujeta a la estimación, subjetividad o intuición". Por ejemplo, mucho, poco, varios, más o menos, alrededor de, etc.

Este tipo de expresiones se formalizaron matemáticamante hace ya bastantes años con la teoría de conjuntos difusos que ahora sirve de base para estos sistemas de control industrial tan de moda.

Simplificando mucho, en la teoría de conjuntos clásicos hay una relación directa entre la pertenencia/no pertenencia de un elemento al conjunto y la lógica binaria o booleana: el 1 equivale a la pertenencia y el 0 a la no pertenencia.

Por el contrario, en el caso de los conjuntos difusos, el grado de pertenencia de un elemento a un conjunto tiene un rango entre 0 y 1, de manera que vale 0 para los elementos que no pertenecen al conjunto, vale 1 para los elementos que sí pertenecen a él, y toma valores intermedios para los elementos de frontera.

Esto permite formalizar de manera relativamente sencilla situaciones de incertidumbre, ambigüedades, aproximaciones, percepciones y sensaciones, que son muy habituales en el mundo real y en la vida cotidiana, y que se suelen expresar mediante el lenguaje.

Por ello los sistemas de control basados en lógica difusa se construyen alrededor de un conjunto de reglas de conocimiento. Una regla es una frase o sentencia que consta de dos partes: una premisa o antecedente y una conclusión o consecuente. El antecedente define las variables de entrada al sistema de control y el consecuente, define el resultado. Es decir, son reglas del tipo IF (antecedente) THEN (consecuente): por ejemplo, IF (caudal es alto) THEN (disminuir la temperatura).

En futuras entradas hablaremos de las aplicaciones de este tipo de sistemas de control.



Organizaciones gestionadas en tiempo real

La gestión corporativa en tiempo real ha proporcionado ya importantes beneficios a las organizaciones que han implantado esta estrategia. A continuación se describen someramente los casos de Zara, General Electric y Mercedes Benz como ejemplos de organizaciones gestionadas en tiempo real.

Zara. Los puntos clave sobre los que se sustenta el exitoso modelo de negocio de la empresa textil española son tres: la capacidad de generar diseños ágilmente, de recoger información en tiempo real de los gustos de su público objetivo y disponer de un proceso logístico particular.

Para desarrollar la primera idea, Zara posee un sistema de fabricación que les permite diseñar y lanzar al mercado más de 10.000 nuevos diseños anualmente.

Para la segunda, esta organización ha implantado soluciones de gestión de la información
en tiempo real y procesos de recogida de información que proviene de su público objetivo. Los campus universitarios, lugares de ocio o discotecas, son los lugares elegidos para llevar a cabo estos procesos.

En lo que se refiere al proceso logístico, Zara, en vez de distribuir grandes lotes de ropa en pocos envíos para reducir los costes asociados, realiza dos envíos semanales por avión desde sus centros de producción ubicados en España a todos sus almacenes ubicados por todo el mundo.

Como consecuencia de estas medidas, Zara es capaz de cambiar el 70% de sus productos en un rango temporal inferior a quince días, adecuándose a los gustos de su público objetivo. Se han implantado procesos y una cultura de empresa que hace que las personas actúen y decidan en tiempo real. Zara se presenta como una empresa capaz de reconocer los gustos más actuales de sus clientes, abasteciendo siempre al mercado en los momentos de alta demanda comercial y no incurriendo en sobreproducción en caso de que ésta decrezca.

General Electric. Esta empresa multinacional americana altamente diversificada (infraestructuras, servicios financieros y medios de comunicación) utiliza la tecnología para reaccionar en tiempo real a los cambios que se producen en su entorno.

La adecuación de GE a una empresa en tiempo real implica que la organización debe responder rápidamente a cambios, reducir los ciclos de procesos corporativos y mejorar la gestión de riesgos.

Para esto GE pone en marcha tres iniciativas que soportan la implantación del modelo de gestión en tiempo real. El e-Sell que permite a los clientes a realizar los procesos de venta on-line, permitiendo una reducción del coste del 35%. El e-Buy que se desarrolla con la misma filosofía que el e-Sell pero orientado a los procesos de compra. Y por último el e-Make cuya finalidad es servir de cuadro de mando a los directivos de GE de manera que puedan tener visibilidad del estado de los diferentes procesos de negocio que se ejecutan en la organización.

Mercedes Benz. La multinacional alemana es la primera empresa del sector del automóvil que permite llevar a cabo los procesos de compra a través de Internet. Además a través de su web, proporciona información adicional acerca de tráfico, situación metereológica, noticias, etc. Los resultados de esta iniciativa se plasman en la reducción de un 80% del tiempo de realización de pedidos.

Otra iniciativa llevada a cabo por Mercedes Benz es la puesta en marcha de un sistema SCM (Supply Chain Management) que permite la planificación en tiempo real de las órdenes de producción y de la realización de pedidos de partes a proveedores, dependiendo de la demanda comercial. Este sistema permite evitar cuellos de botella y paradas en líneas de producción.

En la cadena de producción se incorporan sistemas SCADA que permiten acelerar el proceso de fabricación y visualizar y controlar en tiempo real el ensamblaje del vehículo.

Toda la gestión de compras y negociación con proveedores está basada en la herramienta Covisint que les permite agilizar dichos procesos y ahorrar costes asociados a negociación.

Por último, Mercedes Benz pone en marcha un portal para el empleado en el que consolida información de interés para las personas pertenecientes a la empresa y les permite personalizar los contenidos a cada persona.
n

Gestión corporativa en Tiempo Real: El valor de la información (y IV)

4. CONCLUSIONES

Como conclusión, sugerimos que los directivos que se estén planteando gestionar sus organizaciones en tiempo real se planteen las siguientes preguntas:
  • ¿Cuál es el objetivo de esta gestión corporativa en tiempo real?. Es decir, ¿cuáles son los impulsores de esta iniciativa?.
  • ¿Está preparada la organización para ser gestionada con una estrategia de estas características?. ¿Presenta la suficiente madurez tecnológica y organizativa para generar valor a partir de la información en tiempo real?.
  • ¿Cuál sería éste valor?. ¿De dónde provendría la ventaja competitiva que supondría la transformación en una Zero Latency Enterprise?.
Si las respuestas a estas preguntas llevan a la organización a afrontar el reto de una gestión en tiempo real, la transformación de la organización deberá realizarse con un enfoque holístico y multidisciplinar, teniendo en cuenta en todo momento los tres factores clave discutidos en este artículo asociados a las personas (concienciación), a los procesos (minimización de latencias) y a los sistemas (integración).


Gestión corporativa en Tiempo Real: El valor de la información (III)

3. FACTORES CLAVE PARA LA GESTIÓN CORPORATIVA EN TIEMPO REAL

El principal problema que debe resolverse para conseguir la gestión corporativa en tiempo real de una organización es conseguir que multitud de procesos y sistemas, en la mayor parte de los casos completamente heterogéneos y distribuidos, incluso geográficamente, operen de manera conjunta en tiempo real. Y que las personas que componen la organización comprendan este tipo de gestión para aprovechar adecuadamente la ventaja competitiva que éste supone.

Teniendo esto en cuenta, y para superar las barreras ya discutidas, la implantación de una estrategia de gestión corporativa en tiempo real, sea cual sea la opción escogida, debe tener presente los factores clave que se describen a continuación (ver figura), relacionados con las personas, los procesos y los sistemas.



1. Concienciación de la importancia de la información en tiempo real
El hecho de concienciar a las personas que componen la organización de la importancia de la información en tiempo real, implica que éstas conocen y comparten las siguientes ideas:

Dados unos datos o una información válida, su valor y utilidad para la organización decrece si no se obtienen en el momento que se necesitan, es decir, si no se cumple la latencia establecida para el manejo de información estratégica.
  • Es necesario disponer de sistemas de información que permitan gestionar paquetes de información con latencias en distintos órdenes de magnitud y ser consciente de la heterogeneidad de estas latencias. Por ejemplo, una empresa que disponga de un sistema MES y un sistema ERP puede gestionar información de planta en tiempo real (latencias entre microsegundos y minutos) e información de procesos de negocio y operaciones (latencias cercanas al día). Pero si no es consciente de la diferencia entre las latencias de ambos sistemas, cuando se necesite integrar su información, no se hará correctamente. Y además, la información cuya latencia oscila entre el minuto y el día, quedará sin procesar por norma general.
  • Es deseable que los sistemas de información incorporen funcionalidades que proporcionen información basándose en eventos. Para recoger y procesar información en tiempo real los sistemas de información deben ser de tipo push, es decir, debe ser el propio sistema el que entregue la información al individuo adecuado sin que éste la haya solicitado. Además este tipo de sistemas debe contextualizar la información recogida para aportarle el valor que genere la ventaja competitiva.
Este proceso de concienciación e información debe llegar a todo el personal operativo y directivo de la organización. Es imprescindible una correcta política de comunicación empresarial y de gestión del cambio durante el proceso de adaptación de la empresa a la gestión en tiempo real, de manera que se garantice una exitosa implantación de la estrategia ZLE y un retorno de inversión adecuado. Sin la colaboración e implicación de todas las personas que componen la organización, esto sería imposible.

2. Minimización de la latencia de procesos de negocio
La latencia de un proceso es su tiempo de transacción o tiempo total que tarda en ejecutarse correctamente una vez. Partiendo de esta definición, el tiempo de transacción es la suma de los tiempos de ejecución (tiempos que transcurren mientras las actividades que componen los procesos se ejecutan) y de los tiempos de espera (tiempos que transcurren desde que una actividad es finalizada y se inicia la siguiente). La existencia de tiempos de espera se produce fundamentalmente por dos motivos. El primero es la falta de continuidad en la ejecución de las actividades de los procesos, producida por ineficiencias asociadas a los sistemas que los ejecutan o por los retrasos y errores generados por la intervención de personas en la realización de actividades manuales. El segundo motivo, es la aparición de cuellos de botella durante la ejecución de las actividades realizadas tanto automáticamente como manualmente.

Para minimizar la latencia de los procesos, por tanto, pueden llevarse a cabo dos tipos de acciones, unas orientadas a disminuir los tiempos de espera existentes entre las actividades que forman un proceso y otras dirigidas a disminuir su tiempo de ejecución, es decir, a realizar las actividades que componen el proceso de manera más eficiente o a reducir el número de actividades.

Existen diferentes técnicas que permiten conseguir estos objetivos: el enfoque incremental o Kaizen, el rediseño de procesos, la reingeniería de procesos, la utilización de técnicas BPM, etc. Además de todas éstas, más o menos generales, cada sector de actividad suele contar con metodologías y técnicas específicas para la minimización de la latencia de sus procesos específicos.

3. Integración de sistemas de información
Como tercer factor clave, es necesario contar con una red o infraestructura tecnológica que permita que los sistemas de información interoperen en tiempo real. Esta integración de los sistemas de información garantiza que se cumplen las latencias de entrega de información dentro de la organización, que ésta se comparte de manera efectiva para detectar eventos de manera global, y además contribuye a la minimización de la latencia de los procesos (por ejemplo, una correcta integración de los sistemas ERP y CRM puede reducir considerablemente la latencia de los procesos de venta).

La arquitectura ZLE puede implementarse llevando a cabo un desarrollo a medida que reutilice las aplicaciones que ya existían en la organización, utilizando la infraestructura desarrollada por la multinacional norteamericana Hewlett-Packard (HP) que dispone de la única solución comercial específica para ZLE o utilizando los diferentes estilos y estándares de integración de datos y funcionalidades que existen en la actualidad, entre los que cabe destacar la utilización de SOA y ESB por los buenos resultados que están consiguiendo en entornos ZLE.

Gestión corporativa en Tiempo Real: El valor de la información (II)

2. GESTIÓN CORPORATIVA EN TIEMPO REAL

Para comprender mejor la ventaja competitiva que puede obtenerse mediante la gestión corporativa en tiempo real, resulta conveniente comenzar por analizar las principales circunstancias o impulsores que pueden motivar a una organización a implantar una solución de este tipo, más allá de los beneficios directos que este tipo de gestión ofrece en relación a las personas, los procesos y los sistemas. En general se observa que ZLE se percibe como una herramienta muy potente para la gestión de crisis y para la innovación. Aunque resulta complejo realizar una enumeración completa de todos los impulsores identificados en nuestro estudio, a continuación se clasifican los más importantes en tres grandes grupos.

1. Impulsores asociados a la organización:
  • Necesidad de mejorar resultados empresariales. La puesta en marcha de una estrategia ZLE permite detectar los procesos corporativos y operaciones que no se están llevando a cabo de forma satisfactoria y corregirlos, ayudando así a mejorar los resultados de la organización. Además, este tipo de solución contribuye a optimizar la utilización de los sistemas de información disponibles y su retorno de inversión, consiguiendo que el conocimiento fluya de manera adecuada dentro de la organización, eliminando las islas y aumentando el valor de la información que se maneja.
  • Crecimiento. La información en tiempo real puede ayudar enormemente a gestionar la posición crítica por la que pasa una organización en periodos de expansión y a aliviar la situación coyuntural de inestabilidad, convirtiendo las amenazas y debilidades en oportunidades y fortalezas. También puede ayudar a identificar nuevos mercados en una fase previa a este crecimiento.
  • Fusiones, adquisiciones y absorciones. La estrategia ZLE permite optimizar los nuevos procesos, minimizando sus latencias, e integrar los sistemas de información de las organizaciones que se fusionan. Además ayuda a no destruir valor el proceso sino a generarlo.
  • Adopción de un nuevo modelo de negocio. De nuevo en una situación de innovación la información en tiempo real puede ayudar a reducir costes y a incrementar la tasa de éxito.
  • Existencia de centros de operaciones o delegaciones repartidas geográficamente. Una iniciativa ZLE ayuda a reducir los problemas que tradicionalmente introducen dichas distancias geográficas, asegurando la mínima latencia de los procesos (a pesar de que sus actores estén geográficamente distribuidos) y la correcta integración de los sistemas de información distribuidos. También puede ayudar, por ejemplo, a minimizar desplazamientos y mejorar la comunicación interna.
2. Impulsores asociados a clientes y proveedores:
  • Necesidad de mejorar la calidad de servicio proporcionada a los clientes. Este impulsor está muy relacionado con la minimización de la latencia de los procesos de negocio, de manera que los tiempos de distribución y entrega de productos y servicios, por ejemplo, se puedan reducir.
  • Necesidad de mejorar en la captación y fidelización de los clientes.
  • Elevada segmentación de mercados y clientes. Las organizaciones que trabajan en distintos mercados verticales y con clientes heterogéneos (en cuanto al tamaño del cliente, sus exigencias particulares, los modelos de asociación cliente-proveedor, etc), suelen realizar una gestión descentralizada de este entorno, con las desventajas que esto conlleva por la convivencia de diferentes procesos y sistemas de información. ZLE ayuda a implantar un modelo centralizado de gestión que permita reducir los costes de gestión inherentes a un modelo segmentado.
  • Voluntad de los clientes y/o proveedores de llevar a cabo una integración de sistemas de información transaccionales (ERP y SCM, principalmente) para agilizar los procesos de compra/venta. Una infraestructura tecnológica que de soporte a ZLE, está preparada para que los sistemas de información estratégicos puedan integrarse entre ellos y/o con otros sistemas externos. Esto redundará positivamente en los niveles de satisfacción de clientes y/o proveedores.
3. Impulsores asociados a productos y servicios:
  • Existencia de productos y servicios complejos de gestionar. ZLE ayuda a gestionar de manera óptima un elevado número de productos y servicios que lleven asociados procesos y sistemas de información heterogéneos.
  • Necesidad de desarrollar nuevos productos y servicios. Por ejemplo, una estrategia ZLE puede ayudar a escoger el mejor momento de lanzamiento del nuevo producto o servicio al mercado, o a identificar las necesidades de los clientes antes de la fase de diseño. Esto puede reducir el coste y/o la tasa de fracaso de la innovación en producto.

Una vez comprendidos los factores que deben hacer que una empresa se plantee la gestión corporativa en tiempo real como una necesidad, pasemos a analizar las opciones que tiene para conseguir implantar este tipo de estrategia en su organización. La mejor prueba de que la gestión corporativa en tiempo real se consolida como una herramienta indispensable para conseguir el éxito en los mercados actuales es la proliferación de conceptos, metodologías y herramientas asociadas a este tipo de gestión (aunque nosotros nos referimos en este artículo sólo a las estrategias ZLE para unificar terminología). Trabajos y casos prácticos acerca de Real Time Enterprise, Actionable Enterprise Architecture, Instant Virtual Enterprise, de la combinación de arquitecturas SOA con Business Process Management o de Event-Driven Architecture, son sólo una muestra del gran avance que en los últimos años se está produciendo en este campo y del interés que despierta en todos los sectores.

Como mencionábamos en la introducción de este artículo, ya existen empresas, tanto dentro como fuera de nuestras fronteras, que han adoptado este tipo de gestión para convertir los datos que manejan habitualmente en información de valor. Desgraciadamente en casi todos estos casos se trata de empresas que han confiado en gurús para implantar una estrategia ZLE a medida en su organización. Todavía no están extendidas metodologías estándar y generales o mejores prácticas comúnmente aceptadas que permitan que una empresa acometa este tipo de iniciativa sin depender de este tipo de visionarios o expertos para ello.

Sin embargo se pueden extraer conclusiones comunes de todos los trabajos y casos prácticos antes mencionados que pueden ayudar a los directivos a implantar este tipo de gestión en sus empresas.


Gestión corporativa en Tiempo Real: El valor de la información (I)

El concepto clave en el marco competitivo actual es el tiempo real, las organizaciones con un ciclo de decisión más corto y un tiempo adaptación más rápido son las que adquieren una ventaja competitiva y sobreviven en los exigentes mercados actuales. En este artículo escrito por Fernando Sevillano y Marta Beltrán hace unos meses se discuten los aspectos críticos de la gestión corporativa en tiempo real y se presentan los conceptos necesarios para comprender la relación que tienen con este tipo de gestión la minimización de la latencia de los procesos de negocio y la integración de los sistemas de información.

1. INTRODUCCIÓN

Las Tecnologías de la Información y Comunicaciones (TIC), y su utilización para la mejora de la eficiencia y productividad empresarial, constituyen en la actualidad una de las líneas de investigación más interesantes para la administración y dirección de
empresas. Investigaciones previas han concluido que las empresas pueden realizar hasta tres usos o aplicaciones estratégicas de las TIC: mejorar la eficiencia interna de la empresa, mejorar la atención a los clientes actuales y definir nuevos mercados y nuevas oportunidades de negocio.

Sin embargo, la exigencia de los mercados globalizados actuales, hace que sea necesario dar un paso más en la utilización de las TIC para conseguir realmente una ventaja competitiva: el concepto clave es su utilización para la gestión en tiempo real.


Zero Latency Enterprise (ZLE) es un concepto definido por Gartner que considera la aplicación de soluciones de tiempo real a la gestión global de las organizaciones. La entidad que adopta esta estrategia, hace que el acceso a la información y los procesos de intercambio de la misma se produzcan en tiempo real, lo que se traduce en una ventaja competitiva para las empresas, que pueden acortar sus tiempos de decisión, reacción y adaptación. Dicha ventaja competitiva se materializa en una organización cuando ésta es capaz de proporcionar información correcta a las personas que la necesitan, en el momento adecuado, utilizando el proceso idóneo y con un coste mínimo. Para ello, la organización debe minimizar la latencia de sus operaciones y procesos de negocio e integrar sus sistemas de información estratégicos.

Los beneficios de la implantación de una estrategia ZL
E son claros en un entorno como el actual dinámico y competitivo, en el que todo parece estar cambiando constantemente: las personas, los procesos, los productos y los sistemas. En esta vorágine, es necesario dar servicio a un gran número de clientes a pesar de las variaciones en la demanda y en sus preferencias, hay que adaptarse a las nuevas tecnologías, cumplir las nuevas regulaciones nacionales e internacionales e incluso asumir nuevas fronteras geográficas y políticas. Todo ello gestionando los riesgos corporativos de una forma integrada y en una situación de recesión económica global como la actual en la que los ingresos disminuyen y existe una gran presión sobre los márgenes de beneficios. Por ello las organizaciones deben plantearse que sólo aquéllas con los ciclos de decisión y adaptación más cortos sobrevivirán en el mercado. La mayor disponibilidad de información que las organizaciones manejan en la actualidad no tiene efectos positivos sobre sus resultados si ésta no se gestiona de la manera adecuada y en los plazos en los que su valor es estratégico.


En este contexto los beneficios de la gestión corporativa en tiempo real se pueden resumir en los siguientes puntos:
  • Proporciona una visión en tiempo real de la organización a diferentes niveles de detalle y abstracción.
  • Aumenta la agilidad y la flexibilidad de la organización, permitiendo que tome decisiones y/o se adapte más rápidamente a los cambios que se producen en el entorno en el que realiza su actividad.
  • Permite detectar y eliminar potenciales peligros antes de que supongan un problema real (amenazas externas e internas).
  • Incrementa la productividad y reduce los costes de los procesos de negocio que se ejecutan en la organización.
A pesar de todos estos beneficios las estrategias de gestión corporativa en tiempo real no están todavía muy extendidas debido a ciertas barreras en los entornos organizativos actuales.

Las primeras de estas barreras tienen que ver con las personas, ya que suele existir una actitud negativa por parte de los integrantes de una organización a cualquier cambio en los procesos de negocio o en los sistemas de información. Esto incluye a la dirección de las organizaciones, que todavía suele percibir que la adopción de modelos de gestión en tiempo real es un proceso complejo y costoso, que no siempre termina compensando la inversión realizada y que incluso puede obligar a modificar el modelo de negocio.

El segundo tipo de barreras suelen ser más bien de carácter tecnológico. El aislamiento de ciertos sistemas dentro de las organizaciones y la existencia de cajas negras de información a las que no se puede acceder, dificulta mucho la consecución del nivel de integración entre sistemas necesario para obtener ZLE.

Un ejemplo claro de empresa que se está beneficiando de la ventaja competitiva que supone superar todas estas barreras antes que la competencia lo podemos encontrar en el grupo Inditex, el minorista español del sector de la moda, que gestiona marcas globales como Zara, Massimo Dutti o Stradivarius. Este grupo ha hecho de la gestión corporativa en tiempo real una prioridad, adaptando su modelo de negocio para aprovechar al máximo el valor de la información en tiempo real. Según la Memoria Anual de Inditex en el año 2008, su modelo de negocio "no entiende de temporadas sino que es continuo y comienza con la información que han procesado las tiendas sobre los deseos e impresiones de los clientes. La rapidez del proceso se mantiene en la fase de producción gracias a que una parte importante de la fabricación se lleva a cabo en factorías pertenecientes al grupo y en centros próximos a las sedes corporativas de cada una de las cadenas. Inditex da prioridad al tiempo frente a los costes de producción, reduciendo así el riesgo que entraña la fabricación alejada de los centros de decisión".

Fuera de nuestras fronteras, los casos más exitosos de gestión corporativa en tiempo real se pueden encontrar en las empresas Cisco, AT&T, General Electric, Mercedes Benz ó DaimlerChrysler.


Modelo EMDI para la implantación de soluciones ZLE

En esta entrada me gustaría explicaros el modelo que hemos propuesto para implantar ZLE (Zero Latency Enterprise) en las organizaciones. Recibe el nombre de EMDI.
n
EMDI es un modelo de implantación de soluciones de gestión corporativa en tiempo real que proporciona herramientas cualitativas y cuantitativas que permiten superar con éxito los riesgos y barreras asociadas a la implantación de este tipo de soluciones.

m
Se trata de un modelo multidisciplinar, dividido en cuatro fases, que no se centra sólo en la mera implantación de una infraestructura tecnológica o de soluciones que minimicen la latencia de los procesos, sino que propone la realización de una serie de etapas previas, que faciliten y complementen dicha implantación y por tanto permita que el despliegue de un estrategia ZLE en una organización se realice satisfactoriamente.

m
Las cuatro fases que el modelo EMDI propone para implantar ZLE en una organización son:

  • Educación y Comunicación
  • Medida del Estado e Información
  • Decisión
  • Implantación
Las tres primeras fases propuestas por el modelo EMDI se llevan a cabo siempre. Es en la tercera, la de Decisión, en la que la organización dispone de herramientas cuantitativas y cualitativas para discernir si la cuarta y última fase de Implantación se lleva a cabo o no. Esta fase sólo se realiza si la organización dispone de sistemas de información y procesos de negocio con unas condiciones mínimas para que sean integrados y se minimice su latencia respectivamente.
m
Teniendo en cuenta que el objetivo
general que persigue el modelo EMDI, es facilitar la óptima implantación de una estrategia de gestión corporativa en tiempo real en una organización, a continuación se explican brevemente los objetivos específicos asociados a cada una de las cuatro fases del modelo, así como la relación existente entre ellas.

Fase 1. Educación y Comunicación. La percepción del concepto de tiempo real es en muchos casos equivocada o ambigua. Dos personas hablando de tiempo real, probablemente, hablarán de conceptos bastante diferentes. Por lo tanto, para implantar con éxito una solución de gestión corporativa en tiempo real, todas las personas involucradas deben tener una visión clara, y lo más importante, común, de los conceptos y tecnologías que se manejan. Este es el principal objetivo que persigue esta primera fase de Educación y Comunicación, que la organización obtenga un conocimiento consensuado de los conceptos asociados a una iniciativa de gestión corporativa en tiempo real, de manera que ayude a motivar a todos los departamentos involucrados, ya que sin la colaboración e implicación de las personas que trabajan en ellos, la consecución de los objetivos propuestos será imposible. El modelo EMDI hace hincapié en el desarrollo de procesos que además de comunicar, eduquen a las personas que forman la organización en los conceptos, tecnologías y metodologías existentes en el ámbito de la implantación de soluciones de gestión en tiempo real.
m
La
ejecución de estos procesos de carácter educativo, ayudarán a fomentar el interés de las personas por estas iniciativas y a contar con su participación activa durante todas las fases de implantación de la estrategia ZLE. Para realizar estos procesos de educación y comunicación, la principal herramienta utilizada es un Plan de Comunicación Interno.
m
Al finalizar la fase de Educación y Comunicación todas las personas que forman parte de ella estarán familiarizadas con las tecnologías y terminologías utilizadas en un proyecto de implantación de estrategia ZLE y estarán motivadas para abordar las siguientes fases.

Fase 2. Medida del estado e Información. Los principales objetivos de esta fase son, por un lado obtener un conocimiento suficiente del estado de la organización en general, así como de los procesos de negocio y sistemas de información existentes en la organización y por otro, asegurar que toda esta información recogida acerca de la situación inicial de la organización, llega a los responsables del proyecto ZLE de forma ordenada, estructurada, fiable y en un determinado formato, para que éstos puedan validarla, categorizarla, procesarla y consolidarla con un esfuerzo mínimo.

Para alcanzar el primer objetivo se establecen unos niveles de abstracción que permiten analizar el estado de la organización, de los procesos y de los sistemas de información con diferente profundidad y detalle. Además se enuncian una serie de aspectos que caracterizan los procesos y sistemas existentes en una organización y se definen métricas cuantitativas y cualitativas que permiten llevar a cabo la medida de su situación actual. Para que la información llegue de forma fiable al grupo encargado de la coordinación/ejecución del proyecto ZLE (Grupo ZLE), se establecen una serie de protocolos y procedimientos que aseguren que la información es precisa y completa.
n
Esta información es la base informativa para desarrollar
eficientemente las fases posteriores de Decisión e Implantación. Es decir, por un lado los resultados de esta medida permitirán discernir si la organización está preparada o no para abordar la estrategia ZLE y con qué alcance y por otro, el análisis de dicha información, permitirá plantear las acciones que posibilitarán la reducción de las latencias de los procesos de negocio y facilitará las tareas de integración de los sistemas de información.

Fase 3. Decisión. La fase de Decisión es un punto de inflexión dentro del modelo EMDI. Durante la misma se resuelve si la organización realiza o no la implantación de ZLE y en caso afirmativo, se define el alcance general del proyecto especificando básicamente aquellos procesos y sistemas que deben ser incluidos en el proyecto para proceder a minimizar su latencia y ser integrados respectivamente.

Para desarrollar esta fase, el modelo EMDI propone una serie de herramientas (formularios de decisión, simulación, matriz de alcance, etc.) que ayudan a llevar a cabo decisiones robustas. La información recogida en la fase 2 es utilizada como entrada por todas estas herramientas.
m
Además de decidir si la organización está preparada o no para abordar ZLE y de establecer el marco operativo inicial sobre el que se desarrollará el proyecto ZLE, el proceso de comunicación de la decisión desarrollado en esta fase, debe asegurar que si no se realiza ZLE, la organización no perciba el desarrollo de las fases anteriores como un pérdida de tiempo, sino como un trabajo que pone de manifiesto que deben realizarse acciones correctivas previas en los procesos y sistemas, antes de abordar ZLE y que este trabajo puede utilizarse en un futuro. Si por el contrario el proyecto se lleva a cabo, debe cerciorarse de que la organización mantiene una actitud receptiva hacia ZLE, ya que la implantación de la estrategia de gestión corporativa en tiempo real, es cada vez más una realidad concreta.

Fase 4. Implantación. Si tras desarrollar la fase 3 de Decisión, la organización llega a la conclusión de que está preparada para abordar la estrategia ZLE, se lleva a cabo la cuarta y última fase de Implantación.

A partir de la definición del alcance del proyecto ZLE, la última fase se centra en decidir cómo se van a integrar los sistemas de información y minimizar la latencia de los procesos incluidos en dicho alcance, planificar cómo va a llevarse a cabo el proyecto, implantar las soluciones elegidas y por último corroborar que los resultados obtenidos tras la implantación de ZLE son los esperados.

Para decidir el estilo de integración más adecuado, además de utilizar la información que proporciona la definición del alcance del proyecto, el modelo EMDI propone la utilización de la técnica de decisión multicriterio AHP (Analytic Hierarchy Process) para evaluar la mejor alternativa.

El método utilizado para minimizar la latencia de los procesos, va a depender principalmente de la naturaleza, características y propiedadades de los procesos y del alcance del proyecto establecido. El análisis de esta información deberá ser suficiente para elegir el estilo idóneo que optimice los procesos incluidos en el alcance. En cualquier caso, la organización puede valorar la posibilidad de aplicar también AHP para discernir el método óptimo.

En la fase 4 de Implantación, el modelo EMDI propone también una serie de recomendaciones o guías que contribuyen a que la planificación y despliegue del modelo de gestión corporativa en tiempo real en una organización se realice con éxito, minimizando riesgos y alcanzando los objetivos tecnológicos y de negocio establecidos.

Modelos de interoperabilidad en simulación industrial

En anteriores ocasiones hemos hablado en este blog de la importancia de la simulación en los entornos industriales y del estándar HLA (IEEE 1516), que permite integrar simulaciones distribuidas de manera que puedan cooperar en una federación y funcionar como una simulación única.

Hoy en día existen multitud de implementaciones del estándar IEEE1516. Las implementaciones del estándar HLA se suelen componer de un RTI (Run Time Infrastructure)y de sus interfaces de acceso, basados en unas librerías que dan soporte a uno o varios lenguajes de programación. Es inevitable pensar que la implementación elegida va a imponer los lenguajes de desarrollo de los simuladores e incluso, para algunos casos, las plataformas sobre las que pueden funcionar.

Cada organización, para desarrollar sus simuladores utiliza una RTI ya desarrollada o crea la suya propia. Aunque la mayoría de ellas siguen el estándar, IEEE1516 lo que debería asegurar que fueran interoperables, se trata de un estándar muy complejo que todavía no está del todo maduro y presenta algunas ambigüedades. Las diferentes interpretaciones en el desarrollo de las RTI existentes, han generado problemas de compatibilidad entre ellas. Es por ese motivo que grupos de trabajo de organizaciones como SISO han estudiado cómo hacer converger estas diferentes implementaciones para encontrar una verdadera interoperabilidad. Y aquí es donde están cobrando verdadera importancia los modelos de interoperabilidad o IRM (Interoperability Reference Model).

En la definición de estos modelos el sector industrial lleva ventaja, ya que ha propuesto el primer estándar acerca de cómo utlilizar el estándar (parece un trabalenguas, pero es así) . SISO CSPI PDG especifica con cuatro IRM cómo se debe utilizar HLA en los entornos de interoperabilidad típicos en simulación industrial.

Os dejo un enlace a la web de SISO para que podáis profundizar en estos temas:

http://www.sisostds.org/index.phpaa


BPD. Business Process Diagram (y II)

3. El swimlane (canal) es un concepto adoptado por muchas metodologías de modelado de procesos y es utilizado como mecanismo para organizar actividades en categorías separadas visualmente, de
manera que ilustre diferentes capacidades funcionales o responsabilidades.

Dentro de BPMN se definen dos tipos principales de swimlane:
  • Pool: Representa un participante (persona, departamento, área) que interviene en un proceso. Además actúa como un contenedor gráfico para fragmentar un conjunto de actividades y diferenciarlo de otros pools.
  • Lane: Es una subpartición dentro de un pool y extiende la longitud del pool vertical u horizontalmente. Los lanes se usan para organizar y categorizar actividades.

4. Por último los artefactos diseñados dentro de BPMN permiten a los modeladores extender la notación básica hasta ahora explicada. La versión actual de la especificación de BPMN sólo tiene tres tipos de artefactos BPD predefinidos:

  • Data Object: Su representación gráfica es un rectángulo con el ángulo superior derecho doblado. Representan los datos que son requeridos o producidos por las actividades. Están conectados a las actividades a través de asociaciones. Un Data Object es lo que normalmente se define como entrada o salida de un proceso.
  • Group: Su representación gráfica es un rectángulo redondeado con linea discontinua. Se utiliza para agrupar actividades y clarificar el diseño del proceso, pero no afecta al flujo de secuencia.
  • Annotation: Las anotaciones son mecanismos que permiten que el diseñador del proceso incorpore información adicional acerca de cualquier elemento que se encuentre formando parte de un BPD.

BPD. Business Process Diagram (I)

En BPMN se definen Business Process Diagrams (BPD). Un BPD está formado por un conjunto de elementos gráficos que facilitan el desarrollo de diagramas de flujos de procesos.

Estos elementos gráficos están categorizados de la siguiente manera:
  1. Objetos de flujo.
  2. Objetos conectores.
  3. Swimlanes.
  4. Artefactos.

1. Dentro de los objetos de flujo existen tres elementos que definen el comportamiento del proceso de negocio:

  • Evento: Su representación gráfica es un círculo. Representa una determinada acción que se produce durante la ejecución del proceso de negocio. Los eventos suelen tener asociados causas (trigger) o impactos (resultados). Se definen tres tipos de eventos dependiendo de cuándo estos afectan al flujo de proceso: Start, Intermediate y End.
  • Actividad: Una actividad es un término genérico que describe acciones que se ejecutan en una organización. Un ejemplo de actividad sería "Enviar hoja de gastos a administración". BPMN define tres tipos de actividades: Process y Sub-Process, de carácter no atómico, y Tasks, de carácter atómico. Los objetos Process (proceso) no están delimitados por ninguna figura geométrica, ya que un proceso no se representa con una figura específica, sino como un conjunto de objetos que normalmente se agrupan dentro de un Pool. Un Sub-Process (sub-proceso), se define como una actividad compuesta por una secuencia o flujo de otras actividades. Un sub-proceso forma parte de un proceso, pero éste a su vez puede ser contemplado como un proceso en sí. La representación gráfica asociada es un un rectángulo redondeado, pudiendo estar visible en el proceso principal (expandido) o pudiendo estar colapsado, en cuyo caso, se indica con un símbolo (+) que puede desplegarse. Y por último un objeto Task (tarea) se trata de una actividad atómica e indica las tareas específicas (a bajo nivel) que son realizadas de forma manual (por personas) o de forma automática (por sistemas) para ejecutar un determinado proceso. Surepresentación gráfica es también un rectángulo redondeado.
  • Gateway: Su representación gráfica es un diamante o rombo, y se utiliza para controlar la divergencia o convergencia de la secuencia de flujo. Con este elemento se modelizan las decisiones y permite crear nuevos caminos de flujo del proceso.

2. Los objetos conectores son los encargados de unir diferentes objetos de flujo, es decir, relacionar distintos eventos y actividades, creando el esqueleto básico de la estructura de un proceso de negocio. Se describen tres objetos conectores que hacen esta función.

  • Sequence Flow: Su representación gráfica es una linea sólida con una cabeza de flecha sólida y se usa para mostrar el orden (la secuencia) en el que las diferentes actividades se ejecutan en el proceso. Si es la secuencia por defecto, la línea sólida lo indica con una pequeña línea cruzada en diagonal sobre ella.
  • Message Flow: Su representación gráfica es una línea discontinua con una punta de flecha hueca y se usa para mostrar el flujo de mensajes entre dos participantes del proceso separados (entidades de negocio o roles de negocio). Dentro de BPMN es el objeto conector que une dos Pools.
  • Association: Su representación gráfica es una línea de puntos y se usa para asociar datos, texto, y otros artefactos con los objetos de flujo. Las asociaciones se usan para mostrar entradas y salidas de las actividades.


Extensiones multimedia

A lo largo de estos últimos años los diseñadores de procesadores han ido añadiendo nuevas instrucciones a los repertorios máquina de sus diseños con el objetivo de mejorar el rendimiento de los procesadores de propósito general en la ejecución de aplicaciones y códigos concretos: instrucciones que incorporan predicados y ahorran así bifurcaciones, instrucciones que combinan dos o más operaciones que suelen aparecer siempre agrupadas, etc.

El ejemplo típico de estas extensiones que mejoran la ejecución de cierto tipo de aplicaciones son las extensiones multimedia. En este tipo de aplicación es habitual realizar operaciones repetitivas sobre diferentes operandos que no llegan a los 32 bits de un típico tipo entero (un píxel son 8 bits, una muestra de audio son 16 bits).

Esto hace que se desaprovechen recursos durante su ejecución, por lo que se incorporan al repertorio instrucciones capaces de operar con vectores (instrucciones Single Instruction Multiple Data o SIMD) que agrupen en los registros típicos de 64 bits, 8 operandos de 8 bits, 4 operandos de 16 bits o 2 operandos de 32 bits.

Para cada tipo de vector se suelen incluir en esta extensiones instrucciones aritmético-lógicas (suma, resta, multiplicación, comparación, desplazamiento, and, or y xor, típicamente), de acceso a memoria (load y store) y de empaquetamiento, reordenamiento y copia de datos.

Estos repertorios surgieron para trabajar con vectores de números enteros pero luego se han realizado nuevas extensiones para poder agrupar también operandos en coma flotante en los registros de 128 bits.

Quizás las extensiones multimedia más conocidas sean las extensiones de las arquitecturas x86, primero fueron las MMX, y después las diferentes versiones de las 3DNow! (procesadores AMD) y las SSE (procesadores Intel primero y después también de AMD). Actualmente la versión de las SSE que se incluye en los procesadores es la versión SSE4, de la que hablaremos en futuras entradas, ya que su utilización os permitirá mejorar el rendimiento de vuestros procesadores en multitud de las aplicaciones industriales típicas.


OODA Loop

Aunque el modelo de OODA Loop fue desarrollado para proyectos militares, se está aplicando en la actualidad como metodología de implantación de soluciones de gestión en tiempo real en las organizaciones.

El OODA Loop se compone de cuatro pasos: observación, orientación,
decisión y acción. La organización que sea capaz de recorrer el "Loop" en menos tiempo, es decir aquella que sea más ágil, alcanzará una ventaja competitiva. Por tanto la variable tiempo, es el centro de la estrategia en esta metodología.
  • El primer paso es el de observación. Se trata de llevar a cabo procesos de adquisición y comunicación de la información existente en el entorno.
  • El segundo paso es el de orientación. Es el más importante porque es en éste donde se analiza, entiende e interpreta la información que se ha recogido y tiene incidencia directa en los dos pasos siguientes. Durante esta fase se describe el entorno encontrado, se analizan las posiciones de los agentes y se abstraen los principales patrones de comportamiento, amenazas y oportunidades.
  • En el paso de decisión, se desarrollan diferentes planes de actuación partiendo de la información recogida y analizada en los pasos anteriores.
  • En el último paso, el de acción, se llevan a cabo los planes diseñados y se analizan los resultados obtenidos que son favorables, no favorables o indeterminados. Estos resultados son de nuevo observados y el ciclo comienza de nuevo.
Como en la mayoría de las metodologías y modelos propuestos para este tipo de entorno, los pasos propuestos no tienen por qué ser realizados siempre. Lo ideal es que exista un conocimiento previo y exhaustivo del entorno, por lo que no debería ser necesario realizar las fases de orientación y decisión. Pero todos sabemos que esto no siempre es así, por lo que en las organizaciones que decicen utilizar este modelo es recomendable empezar siempre por el principio y desarrollar por completo los cuatro pasos.