martes, 26 de abril de 2016

ALGORITMOS

CONCEPTO Y APLICACIÓN DE ACUERDO A SU ÁREA DE TRABAJO

  • WARSHALL
En informática, el algoritmo de Floyd-Warshall, descrito en 1959 por Bernard Roy, es un algortimo de análisis sobre grafos para encontrar el camino mínimo en grafos dirigidos ponderados.  El algoritmo de Floyd-Warshall es un ejemplo de programación dinámica.

El algoritmo de Floyd-Warshall compara todos los posibles caminos a través del grafo entre cada par de vértices. 
El algoritmo de Floyd-Warshall puede ser utilizado para resolver los siguientes problemas, entre otros:
  • Camino mínimo en grafos dirigidos (algoritmo de Floyd).
  • Cierre transitivo en grafos dirigidos (algoritmo de Warshall). Es la formulación original del algoritmo de Warshall. El grafo es un grafo no ponderado y representado por una matriz booleana de adyacencia. Entonces la operación de adición es reemplazada por la conjunción lógica (AND) y la operación menor por la disyunCión lógica (OR).
  • Encontrar una expresión regular dada por un lenguaje regular aceptado por un autómata infinito (algoritmo de Kleene).
  • Inversión de matrices de números reales (algoritmo de Gauss-Jordan).
  • Ruta optima. En esta aplicación es interesante encontrar el camino del flujo máximo entre 2 vértices. Esto significa que en lugar de tomar los mínimos con el pseudocodigo anterior, se coge el máximo. Los pesos de las aristas representan las limitaciones del flujo. Los pesos de los caminos representan cuellos de botella; por ello, la operación de adición anterior es reemplazada por la operación mínimo.
  • Comprobar si un grafo no dirigido es bipartito.
  • TEORÍA DE GRAFOS
El origen de la teoría de grafos se remonta al siglo XVIII con el problema de los puentes de Königsberg, el cual consistía en encontrar un camino que recorriera los siete puentes del río Pregel (54°42′12″N20°30′56″E) en la ciudad de Königsberg, actualmente Kaliningrado, de modo que se recorrieran todos los puentes pasando una sola vez por cada uno de ellos. 

Luego, en 1847, Gustav Kirchhoff utilizó la teoría de grafos para el análisis de redes eléctricas publicando sus leyes de los circuitos para calcular el voltaje y la corriente en los circuitos eléctricos, conocidas comoleyes de Kirchhoff, considerado la primera aplicación de la teoría de grafos a un problema de ingeniería.

El término «grafo», proviene de la expresión H«graphic notation» usada por primera vez por Edward Frankland3 y posteriormente adoptada por Alexander Crum Brown en 1884, y hacía referencia a la representación gráfica de los enlaces entre los átomos de una molécula.

Gracias a la teoría de grafos se pueden resolver diversos problemas como por ejemplo la síntesis de circuitos secuenciales, contadores o sistemas de apertura. Se utiliza para diferentes áreas por ejemplo, Dibujo computacional, en toda las áreas de Ingeniería.

Los grafos se utilizan también para modelar trayectos como el de una línea de autobús a través de las calles de una ciudad, en el que podemos obtener caminos óptimos para el trayecto aplicando diversos algoritmos como puede ser el algoritmo deFloyd.

Para la administración de proyectos, utilizamos técnicas como técnica de revisión y evaluación de programas (PERT) en las que se modelan los mismos utilizando grafos y optimizando los tiempos para concretar los mismos.

La teoría de grafos también ha servido de inspiración para las ciencias sociales, en especial para desarrollar un concepto no metafórico de red social que sustituye los nodos por los actores sociales y verifica la posición, centralidad e importancia de cada actor dentro de la red. Esta medida permite cuantificar y abstraer relaciones complejas, de manera que la estructura social puede representarse gráficamente. Por ejemplo, una red social puede representar la estructura de poder dentro de una sociedad al identificar los vínculos (aristas), su dirección e intensidad y da idea de la manera en que el poder se transmite y a quiénes.

Se emplea en problemas de control de producción, para proyectar redes de ordenadores, para diseñar módulos electrónicos modernos y proyectar sistemas físicos con parámetros localizados (mecánicos, acústicos y eléctricos).

Se usa para la solución de problemas de genética y problemas de automatización de la proyección (SAPR). Apoyo matemático de los sistemas modernos para el procesamiento de la información. Acude en las investigaciones nucleares (técnica de diagramas de Feynman).5

Los grafos son importantes en el estudio de la biología y hábitat. El vértice representa un hábitat y las aristas (o "edges" en inglés) representa los senderos de los animales o las migraciones. Con esta información, los científicos pueden entender cómo esto puede cambiar o afectar a las especies en su hábitat.

  • ESQUINA NOROESTE
El método de la esquina Noroeste es un algoritmo heurístico capaz de solucionar problemas de transporte u otros, mediante la consecución de una solución básica inicial que satisfaga todas las restricciones existentes sin que esto implique que se alcance el costo óptimo total. 

Este método tiene como ventaja frente a sus similares la rapidez de su ejecución, y es utilizado con mayor frecuencia en ejercicios donde el número de fuentes y destinos sea muy elevado. 

Su nombre se debe al génesis del algoritmo, el cual inicia en la ruta, celda o esquina Noroeste. Es común encontrar gran variedad de métodos que se basen en la misma metodología de la esquina Noroeste, dado que podemos encontrar de igual manera el método e la esquina Noreste, Sureste o Suroeste.

Se parte por esbozar en forma matricial el problema, es decir, filas que representen fuentes y columnas que representen destinos, luego el algoritmo debe de iniciar en la celda, ruta o esquina Noroeste de la tabla (esquina superior izquierda).


PASO 1:

En la celda seleccionada como esquina Noroeste se debe asignar la máxima cantidad de unidades posibles, cantidad que se ve restringida ya sea por las restricciones de oferta o de demanda. En este mismo paso se procede a ajustar la oferta y demanda de la fila y columna afectada, restándole la cantidad asignada a la celda.

PASO 2:

En este paso se procede a eliminar la fila o destino cuya oferta o demanda sea 0 después del "Paso 1", si dado el caso ambas son cero arbitrariamente se elige cual eliminar y la restante se deja con demanda u oferta cero (0) según sea el caso.

PASO 3:

Una vez en este paso existen dos posibilidades, la primera que quede un solo renglón o columna, si este es el caso se ha llegado al final el método, "detenerse".

La segunda es que quede más de un renglón o columna, si este es el caso iniciar nuevamente el "Paso 1".



EL PROBLEMA

Una empresa energética colombiana dispone de cuatro plantas de generación para satisfacer la demanda diaria eléctrica en cuatro ciudades, Cali, Bogotá, Medellín y Barranquilla. Las plantas 1,2,3 y 4 pueden satisfacer 80, 30, 60 y 45 millones de KW al día respectivamente. Las necesidades de las ciudades de Cali, Bogotá, Medellín y Barranquilla son de 70, 40, 70 y 35 millones de Kw al día respectivamente. 

Los costos asociados al envío de suministro energético por cada millón de KW entre cada planta y cada ciudad son los registrados en la siguiente tabla.

Formule un modelo de programación lineal que permita satisfacer las necesidades de todas las ciudades al tiempo que minimice los costos asociados al transporte.

SOLUCIÓN PASO A PASO
Ahora la cantidad asignada a la esquina noroeste es restada a la demanda de Cali y a la oferta de la "Planta 1", en un procedimiento muy lógico. Dado que la demanda de Cali una vez restada la cantidad asignada es cero (0), se procede a eliminar la columna. El proceso de asignación nuevamente se repite.

Continuamos con las iteraciones.
En este caso nos encontramos frente a la elección de la fila o columna a eliminar (tachar), sin embargo podemos utilizar un criterio mediante el cual eliminemos la fila o columna que presente los costos más elevados. En este caso la "Planta 2".

Nueva iteración.
Una vez finalizada esta asignación, se elimina la "Planta 3" que ya ha sido satisfecha con la asignación de 60 unidades, por ende nos queda una sola fila a la cual le asignamos las unidades estrictamente requeridas y hemos finalizado el método.

El cuadro de las asignaciones (que debemos desarrollarlo paralelamente) queda así:

Los costos asociados a la distribución son:

El costo total es evidentemente superior al obtenido mediante programación lineal , lo cual demuestra lo enunciado en la descripción del algoritmo que cita que no obtiene siempre la mejor solución, sin embargo presenta un cumplimiento de todas las restricciones y una rapidez de elaboración, lo cual es una ventaja en problemas con innumerables fuentes y destinos en los cuales no nos importe más que satisfacer las restricciones.

  • RUTA CRÍTICA

El método de la ruta crítica CPM (Critical Path Method) es un algoritmo basado en la teoría de redes diseñado para facilitar la planificación de proyectos. El resultado final del CPM será un cronograma para el proyecto, en el cual se podrá conocer la duración total del mismo, y la clasificación de las actividades según su criticidad. El algoritmo CPM se desarrolla mediante intervalos determinísticos, lo cual lo diferencia del método PERT que supone tiempos probabilísticos.


Regla 1: Cada actividad se debe representar sí y sólo sí, por un ramal o arco.

Regla 2: Cada actividad debe estar identificada por dos nodos distintos. En el caso de existir actividades concurrentes (que inicien al mismo tiempo, o que el inicio de una actividad dependa de la finalización de 2 o más actividades distintas) se debe recurrir a actividades ficticias (representadas por arcos punteados que no consumen ni tiempo ni recursos) para satisfacer esta regla.

Por ejemplo, la actividad C para su inicio requiere que finalicen A y B. Las actividades A y B inician al mismo tiempo.


Teoría de Redes



PASO 1: ACTIVIDADES DEL PROYECTO


La primera fase corresponde a identificar todas las actividades que intervienen en el proyecto, sus interrelaciones, sucesiones, reglas de precedencia. Con la inclusión de cada actividad al proyecto se debe cuestionar respecto a que actividades preceden a esta, y a cuales siguen inmediatamente esta finalice. Además, deberá relacionarse el tiempo estimado para el desarrollo de cada actividad.


PASO 2: DIAGRAMA DE RED

Con base en la información obtenida en la fase anterior y haciendo uso de los conceptos básicos para diagramar una red, obtendremos el gráfico del proyecto:
Fb y Fd corresponde a actividades ficticias que no consumen tiempo ni recursos.

PASO 3: CALCULAR LA RED

Para el cálculo de la red se consideran 3 indicadores, T1, T2 y H. Estos indicadores se calculan en cada evento o nodo (entiéndase nodo entonces como un punto en el cual se completan actividades y se inician las subsiguientes.

T1: Tiempo más temprano de realización de un evento. Para calcular este indicador deberá recorrerse la red de izquierda a derecha y considerando lo siguiente:

T1 del primer nodo es igual a 0.

T1 del nodo n = T1 del nodo n-1 (nodo anterior) + duración de la actividad que finaliza en el nodo n.
Si en un nodo finaliza más de una actividad, se toma el tiempo de la actividad con mayor valor.
En este caso para el cálculo del T1 en el nodo 4, en el que concurren la finalización de 3 actividades, 2 de ellas ficticias (Fb y Fd, cuyos tiempos son cero) y una es la actividad C. En este caso deberá considerarse el mayor de los T1 resultantes:

T1 (nodo 3) + Fb = 4 + 0 = 4

T1 (nodo 2) + C = 3 + 2 = 5

T1 ( nodo 5) + Fd = 5 + 0 = 5

Así entonces, el T1 del nodo 4 será igual a 5 (el mayor valor).

T2: Tiempo más tardío de realización del evento. Para calcular este indicador deberá recorrerse la red de derecha a izquierda y considerando lo siguiente:

T2 del primer nodo (de derecha a izquierda) es igual al T1 de este.

T2 del nodo n = T2 del nodo n-1 (nodo anterior, de derecha a izquierda) - duración de la actividad que se inicia. 
Si en un nodo finaliza más de una actividad, se toma el tiempo de la actividad con menor valor.
En este caso para el cálculo del T2 del nodo 2, en el que concurren el inicio de varias actividades deberá entonces considerarse lo siguiente:

T2 nodo 3 - B = 5 - 1 = 4

T2 nodo 4 - C = 5 - 2 = 3

T2 nodo 5 - D = 5 - 2 = 3

Así entonces, el T2 del nodo 2 será 3, es decir el menor valor.

H: Tiempo de holgura, es decir la diferencia entre T2 y T1. Esta holgura, dada en unidades de tiempo corresponde al valor en el que la ocurrencia de un evento puede tardarse. Los eventos en los cuales la holgura sea igual a 0 corresponden a la ruta crítica, es decir que la ocurrencia de estos eventos no puede tardarse una sola unidad de tiempo respecto al cronograma establecido, dado que en el caso en que se tardara retrasaría la finalización del proyecto.
Las actividades críticas por definición constituyen la ruta más larga que abarca el proyecto, es decir que la sumatoria de las actividades de una ruta crítica determinará la duración estimada del proyecto. Puede darse el caso en el que se encuentren más de una ruta crítica, como es el caso del problema que hemos desarrollado.

Ruta crítica 1:
Esta ruta se encuentra compuesta por las actividades A, C y E. La duración del proyecto será de 9 horas.

Ruta Crítica 2:





PASO 4: ESTABLECER EL CRONOGRAMA

Para establecer un cronograma deberán considerarse varios factores, el más importante de ellos es la relación de precedencia, y el siguiente corresponde a escalonar las actividades que componen la ruta crítica de tal manera que se complete el proyecto dentro de la duración estimada.

DIFERENCIA ENTRE PILAS Y COLAS


PILAS vs COLAS

  • Pilas:

Una pila es una estructura de datos a la cual se puede acceder solo por un extremo de la misma. Las operaciones de inserción y extracción se realizan a través del tope, por lo cual no se puede acceder a cualquier elemento de la pila. Se la suele llamar estructura L.I.F.O. como acrónimo de las palabras inglesas "last in, first out" (último en entrar, primero en salir). La pila se considera un grupo ordenado de elementos, teniendo en cuenta que el orden de los mismos depende del tiempo que lleven "dentro" de la estructura.

Las pilas son frecuentemente utilizadas en el desarrollo de sistemas informáticos y software en general. Por ejemplo, el sistema de soporte en tiempo de compilación y ejecución del Pascal utiliza una pila para llevar la cuenta de los parámetros de procedimientos y funciones, variables locales, globales y dinámicas. Este tipo de estructuras también son utilizadas para traducir expresiones aritméticas o cuando se quiere recordar una secuencia de acciones u objetos en el orden inverso del ocurrido.

  • Colas:

Una cola es una colección de elementos homogéneos (almacenados en dicha estructura), en la misma se pueden insertar elementos por uno de los extremos, llamado frente, y retirar los mismos por el otro extremo, denominado final.

Es importante aclarar que, tanto el frente como el final de la cola, son los únicos indicados para retirar e insertar elementos, respectivamente. Esto nos indica que no podemos acceder directamente a cualquier elemento de la cola, sino solo al primero, o sea el que está o se encuentra en el frente, y no se pueden insertar elementos en cualquier posición sino solo por el final, así el elemento insertado queda como último.

Por esta razón la cola es denominada una estructura F.I.F.O., o simplemente una lista F.I.F.O., esto representa el acrónimo de las palabras inglesas “first in, first out” (primero en entrar, primero en salir).

REPORTE DE UN PROGRAMA DE SIMULACIÓN

Software de simulación/3D

VGP3D

DEL GRUPO BML
  • Función:
    De programación, de simulación, de gestión
  • Tipo:
     3D

Permite:

  • Crear y ejecutar de inmediato el programa máquina indicando sólo los datos geométricos del tubo
  • Reducir los tiempos de preparación de los presupuestos
  • Permite comprobar la factibilidad real de las piezas
  • Reducir los tiempos de respuesta
  • Calcular con adelanto el tiempo ciclo real
  • Eliminar el riesgo de colisiones típico de la primera prueba práctica
  • Generar los ciclos de máquina
  • Gestionar el programa de perforación de forma integrada
  • Gestionar los principales perfiles (tubo redondo, cuadrado, rectangular, oval, elíptico y semi-oval)
  • Facilitar la modificación del programa de forma intuitiva (no es necesario conocer lenguajes de programación como el ISO), interviniendo en la pantalla (pantalla táctil), tocando y arrastrando los componentes (drag & drop).

miércoles, 9 de marzo de 2016

SW ADMINISTRATIVO TRADICIONAL PARA CLIENTES

EGA FUTURA


o


Sea cual sea el mercado al que se dirige tu PyME, fue diseñado para facturar y emitir todo tipo de comprobantes de manera rápida y simple.


Actualización desde Excel

Fácilmente podrás importar productos, y actualizar precios y descripciones desde tus propias planillas en formato Excel.

Actualiza miles y miles de precios y descripciones de productos instantáneamente, de manera fácil y cómoda sin perder tiempo en tareas repetitivas.


Códigos de Barra

Utiliza lectores de códigos de barras para acelerar el proceso de facturación, e imprime etiquetas de diferentes tamaños en cualquier tipo de impresora.

Podrás asociar varios códigos de barra a un solo producto, e imprimir etiquetas en más de 20 formatos diferentes.


Gestión de Vendedores integrada

Administra los aspectos clave de tus vendedores y comisiones de venta, junto con sus estadísticas y proyecciones.

Maneja diferentes esquemas de comisiones para cada vendedor y para cada producto, flexibilizando al máximo el proceso de gestión de tus ventas.

Gestión de Proveedores y Compras


Cuenta con funciones clave que hacen posible una correcta gestión de proveedores, incluyendo aspectos como la administración de cuentas corrientes y la vinculación directa con compras y órdenes de compras dentro de la gestión de inventario.

Control del Dinero simple y efectivo

En la administración de las entradas y salidas de dinero, nuestro software registra todos los gastos, tanto fijos como eventuales, dándote un absoluto control sobre tu efectivo.

Puedes administrar todo dentro de un mismo sistema, desde gastos operativos, hasta deudas de clientes y facturas por pagar.
Envío de Correos Electrónicos masivos

Mediante el sistema de personalización de correos, puedes hacer email marketing saludando a cada cliente para sucumpleaños, o hacer seguimiento de ventas según la última cotización enviada.

Comercio electrónico

Sincroniza la base de datos de productos con tu tienda virtual, para actualizar precios y stock de manera automática.

Software Multi-moneda

Administra precios en Pesos, Dólares, Euros, Reales, Bolívares y cualquier otro tipo de moneda dentro del sistema multi-monetario.

El programa de facturación te permitirá facturar en la moneda que elijas, respetando la cotización del día en el momento exacto de emitir la factura de venta.


Calendario empresarial

Administra la actividad de la empresa, citas con clientes y proveedores, eventos, fechas importantes y pago de impuestos en un calendario empresarial cómodo y totalmente integrado con el sistema.

Catálogo de imágenes

Crea una estupenda base de datos con las imágenes de todos los productos que la empresa comercializa.

OPENBRAVO

Openbravo es un ERP de código abierto orientado a las pymes, en las que en los últimos tiempos el software libre se ha ido haciendo un hueco gracias a su cada vez mejor rendimiento, estabilidad y facilidad de uso. Hasta el momento esta incorporación se ha producido en áreas poco críticas, por decirlo de alguna manera: navegadores, correo electrónico, suites ofimáticas y poco más.

Es cierto que no existen muchas alternativas a los ERP tradicionales, al menos que ofrezcan la fiabilidad y el soporte que una aplicación tan importante para las empresas requiere. Una de ellas es OpenBravo, empresa española pionera en este campo que ha crecido hasta estar presente en los cinco continentes.


Lo más destacable de esta solución, bajo mi punto de vista, es que priorizan lo realmente fundamental para una empresa cuando hablamos de productos de este tipo, ya sean estos propietarios o libres, el soporte durante la implantación y durante la etapa funcional del producto. Para conseguir esto disponen de una amplia red de Partners en todo el mundo, 26 de ellos en España.

En cuanto al producto en sí, decir que ha sido diseñado de forma nativa en entorno web, permitiendo el acceso de los clientes al mismo desde un navegador convencional. La aplicación necesita estar instalada en un servidor, aunque no necesariamente localizado en las oficinas de la empresa, ofreciendo así la posibilidad de externalizar este apartado.

En cuanto a sus funcionalidades, Openbravo aúna las siguientes:


Gestión de los datos maestros: los cimientos del sistema. Permite que la información esté disponible para todos los usuarios de cualquier departamento, evita duplicidades a la hora de introducir la información puesto que sólo se hace una vez.

Gestión de aprovisionamientos: es el bloque encargado de tratar con pedidos, albaranes, facturas, etc., creando un ‘‘flujo de trabajo’‘, en el que cada documento se nutre del anterior. Simplificando, si ya he introducido los datos de un proveedor en un albarán, cuando llegue la factura correspondiente no los tengo que volver a introducir, evitando de esta forma errores y duplicidades en la introducción de información.

Gestión de almacenes: como su nombre indica, gestiona stocks, bultos, permite impresión de etiquetas, códigos de barras, gestion de entradas y salidas, etc. Al ser este un sistema integrado, los datos de los otros módulos ‘‘fluyen’‘ hacia él, automatizando buena parte de las tareas de las que se encarga.

Gestión de proyectos y servicios: orientado a empresas dedicadas a la realización y entrega de proyectos, gestionándolos de pricipio a fin, con capacidad para admitir varios tipos de proyectos, control de presupuestos, herramientas de toma de decisiones, control de gastos y recursos asignados al proyecto, tareas, etc.

Gestión de la producción: cubre la planificación de la producción, aprovisionamientos, órdenes de fabricación, partes de trabajo, cálculo de los costes de producción, notificación de incidencias de trabajo y partes de mantenimiento.

Gestión comercial y de las relaciones con clientes (CRM): el módulo comercial se encarga de nuestras ventas y clientes. Emisión de albaranes, facturas, gestion de pedidos, tarifas, gestión de clientes unificada…

Gestión financiera: el área dedicada a la contabilidad, cuentas a pagar y cobrar y activos fijos. Concebida para que la introducción manual de información sea mínima, puesto que lo que hace en realidad es recolectar los datos de los otros módulos, permitiéndonos centrarnos más en analizar los números que en ‘‘picarlos’‘.

Business Intelligence (BI): el módulo de reporte y análisis, que nos va a permitir extraer de nuestro sistema los datos clave para la toma de decisiones.

Todo aquel que conozca el funcionamiento de este tipo de productos sabrá que tanto las áreas descritas, como sus funcionalidades y capacidad de interacción, son comunes a cualquier ERP que se precie de llamarse como tal, pero he querido tratarlas con algo de detalle para mostrar el nivel real en el que se mueve Openbravo. El hecho de ser libre no implica que carezca de potencia o funcionalidades.

Dada su condición open source, puedes naturalmente descargar la solución e implementarla apoyándote en la documentación pública disponible. Ofrecen también paquetes comerciales en los que se incluye soporte, actualizaciones automáticas, copias de seguridad y otros servicios que sin duda añaden valor a una solución de estas características y son por tanto la mejor opción para una empresa.

Openbravo es, cuando menos, una alternativa refrescante en el habitualmente cerrado mundo del los ERP, brindándonos la posibilidad de ser propietarios del software que utilizamos para la gestión de nuestra empresa y pagar únicamente por los servicios que recibimos.








CRM en el mercado

CRM

CRM (Customer Relationship Management), en su traducción literal, se entiende como la Gestión sobre la Relación con los Consumidores, pero es tan genérico como toda frase en inglés traducida al español. Pero para su mejor comprensión básicamente se refiere a una estrategia de negocios centrada en el cliente.

En resumen ser más efectivos al momento de interactuar con los clientes.

Bajo este concepto, sería bueno profundizar, ya que estas tres palabras incluyen mucho más. El CRM como lo define Barton Goldenberg, consiste en 10 componentes:
  • Funcionalidad de las ventas y su administración
  • El telemarketing
  • El manejo del tiempo
  • El servicio y soporte al cliente
  • El marketing
  • El manejo de la información para ejecutivos
  • La integración del ERP( Enterprise Resource Planning )
  • La excelente sincronización de los datos
  • El e-Commerce
  • El servicio en el campo de ventas.
  • Determinar las funciones que se desean automatizar
  • Automatizar sólo lo que necesita ser automatizado
  • Obtener el soporte y compromiso de los niveles altos de la compañía
  • Emplear inteligentemente la tecnología
  • Involucrar a los usuarios en la construcción del sistema
  • Realiza un prototipo del sistema
  • Capacita a los usuarios
  • Motiva al personal que lo utilizará
  • Administra el sistema desde dentro
  • Mantén un comité administrativo del sistema para dudas o sugerencias
¿Cómo aprovechar las ventajas de la comunicación electrónica?

Sin embargo la palabra lealtad, sintetiza prácticamente su significado, ya que CRM se dedica a adquirir y mantener la lealtad del cliente, específicamente de aquellas cuentas más valiosas.
"Obtendrás más de la billetera de tus clientes, cuando te tomes el tiempo de estar al pendiente de ellos"; así lo conceptualiza Janice Anderson, vicepresidenta de CRM Solutions de Lucent Technologies.
Los beneficios del CRM no sólo se concretan en la retención y la lealtad de los clientes, sino también en tener un marketing más efectivo, crear inteligentes oportunidades de cross-selling y abrir la posibilidad a una rápida introducción de nuevos productos o marcas.
En definitiva, lo que desean las empresas es reducir el costo de obtener nuevos clientes e incrementar la lealtad de los que ya se acercaron. Estos últimos pasan a conformar uno de los activos más valiosos de la empresa.
Pero, ¿a través de qué canales?, ¿Cuáles son los más viables para comunicarnos con nuestros clientes?
El correo directo resulta el medio tradicional más usado para establecer la comunicación entre la empresa y sus clientes. Los Call Center (o centros de llamados) son uno de los medios que han crecido en los últimos 10 años y, su efectividad se ha visto reflejada en la satisfacción de cada uno de sus clientes.


Otros medios para captar clientes y comunicarse con ellos son el e-mail e Internet, los que serán analizados posteriormente en el capítulo cuatro.

Con la implementación del sistema CRM, la compañía deberá de ser capaz de anticiparse a los deseos del cliente. El sistema debe ser un medio de obtener información sin llegar al grado de acosar al cliente.

La velocidad de respuesta debe de ser alta, ya que el usuario no va a esperar eternamente, además de ofrecer varias opciones para que éste pueda establecer contacto con la empresa. Un "one stop call" y servicio de 24 horas sería lo ideal para el usuario

Finalmente el verdadero significado de CRM para la empresa es: incrementar ventas, incrementar ganancias, incrementar márgenes, incrementar la satisfacción del cliente y reducir los costos de ventas y de marketing.

¿Cuál es el futuro de esta popular tendencia del mercado?

Si por CRM (Customer Relationship Management) se entiende el sector de las compañías de software que promete implementar soluciones que resolverán infinidad de problemas, aumentarán las ganancias y reducirán costos de forma casi mágica, a CRM le aguarda una vida corta. Por el contrario, si CRM es considerado desde un punto de vista más amplio, -como una herramienta para escuchar al cliente, aprender a entenderlo, y adecuar productos y servicios a sus necesidades particulares-, entonces la aplicación se volverá cada vez más valiosa, sobreviviendo a largo plazo.

Si bien el concepto que dio vida a CRM es tan antiguo como los negocios mismos, en los últimos cincuenta años, a medida que las compañías comenzaron a convertirse en corporaciones globales y a prestar servicios a millones de clientes, su importancia fue relegada a segundo plano, lo que trajo a colación que el servicio al cliente se volviese impersonal, anónimo y que su calidad fuese estandarizada.

De la capacidad de cada compañía para volver a poner en práctica los fundamentos sobre los que CRM está basado -tratar a los clientes adecuadamente, reconocer su individualidad y satisfacer sus necesidades particulares-, depende no sólo el futuro de esta herramienta, sino también el de la compañía misma que necesitará cada vez más brindar un servicio al cliente de excelencia para estar en condiciones de competir en el mercado.

La Web, email y otros canales electrónicos (como Call Centers) pusieron información, antes difícil de obtener, al alcance de la mano del cliente, lo que hizo que éste esté mejor informado y, en consecuencia, se haya tornado más crítico y poderoso.

Las mencionadas vías de comunicación también hicieron que les resultase más sencillo ponerse en contacto con las compañías, las cuales necesitan ahora responder eficientemente a esta demanda de atención.

Para responder a las necesidades de sus clientes de forma eficaz, las compañías utilizarán CRM para reunir y analizar información sobre ellos, y posteriormente distinguir sus preferencias.

Luego, emplearán el producto resultante para el beneficio de ambas partes, lo que las conducirá a establecer relaciones únicas con ellos. Este proceso no sólo requiere la implementación de la nueva tecnología, sino, fundamentalmente, un cambio en la forma de relacionarse con el cliente: es necesario hablar menos y escuchar más, y modificar procesos, por ejemplo, testeando las ofertas de marketing y definiéndolas de acuerdo a las necesidades del cliente.

CRM brinda a la compañía la valiosa oportunidad de conocer al cliente y, por ende, aprender a servirlo. No debe ser desaprovechada.
LAS REALIDADES DEL CRM

Por todos son conocidas las importantes oportunidades "teóricas" que el CRM ofrece. En los casos exitosos se encuentran resultados en el área operacional como incrementos de ventas hasta del 43% por vendedor, incrementos de la satisfacción de los clientes del 22%, reducciones de ciclo de ventas del 24%, etc.

Sin embargo, algunos datos sobre el éxito en las implantaciones de CRM son escalofriantes. Según Meta Group, del 55 al 75 % de los proyectos CRM no alcanzan objetivos. Gartner Group afirma que actualmente, un 65% de los proyectos CRM fallan y ese porcentaje crecerá hasta el 80% en el año 2003. Estos problemas están principalmente basados en no alcanzar las expectativas así como en un aumento importante de los presupuestos iniciales.

Si se analiza el decálogo de los motivos de fallo de CRM, se encuentra que son similares a los de otras áreas relacionadas con el e-business:

1. Pensar que la tecnología es la solución. La tecnología sólo tiene sentido tras tener perfectamente definidos los objetivos de negocio. En un estudio del CRM Forum se indica que sólo en un 4% de los casos con problemas, estos han sido debidos a la solución adoptada con lo que se observa que la tecnología no es el elemento crítico en proyectos CRM.

2. Falta de apoyo por parte de la dirección debido a la falta de conocimiento de las oportunidades que el CRM ofrece

3. No existe "pasión por el cliente" en la cultura de la organización

4. Retorno de la inversión poco claro debido a que no es un sector maduro y existe un desconocimiento generalizado sobre su ROI.


5. Falta de visión y estrategia. Es un problema habitual no tener una estrategia claramente definida y, por tanto, unos objetivos de negocio medibles en el área de CRM. Además, el problema se incrementa cuando no existe una correcta asignación de recursos y una correcta metodología para el desarrollo del proyecto.



6. No redefinir los procesos. Al igual que en otro tipo de proyectos tecnológicos, es necesario redefinir los procesos de negocio para conseguir los resultados deseados. Se necesita redefinir la manera en la que se hacen las cosas en la organización para conseguir resultados.

7. Mala calidad de los datos e información. Uno de los pilares de CRM es el conocimiento del cliente (customer intelligence) y dentro de este concepto la calidad de los datos e información es básica ya que a partir de ellos es de las que se extraen conclusiones.

8. Problemas con la integración. Un estudio de IDC apunta que menos de un 10% de los encuestados han integrado su CRM con su ERP o sus "data warehouse".

9. No gestionar correctamente el cambio. Al igual que cualquier proyecto de envergadura, es necesaria una correcta gestión del cambio y de la cultura organizacional.

10. Poca implantación de CRM analítico: La parte analítica de CRM se encarga de extraer conclusiones sobre los clientes actuales y potenciales a partir de gran cantidad de datos. Sin la parte analítica, no se consigue una visión global del cliente y por tanto la mayoría de las ventajas que CRM ofrece.

Además, habría también causas debidas a la "inmadurez" del mercado: soluciones poco evolucionadas y validadas, falta de soluciones "verticales", falta de consultores especializados, etc.

DIAGRAMAS DE FLUJO PARA PROCESOS INDUSTRIALES

DIAGRAMAS DE FLUJO

Los diagramas de flujo son una manera de representar visualmente el flujo de datos a través de sistemas de tratamiento de información. Los diagramas de flujo describen que operaciones y en que secuencia se requieren para solucionar un problema dado.
Un diagrama de flujo u organigrama es una representación que ilustra la secuencia de las operaciones que se realizarán para conseguir la solución de un problema. Los diagramas de flujo se dibujan generalmente antes de comenzar a programar el código frente a la computadora. Los diagramas de flujo facilitan la comunicación entre los programadores y la gente del negocio. Estos diagramas de flujo desempeñan un papel vital en la programación de un problema y facilitan la comprensión de problemascomplicados y sobre todo muy largos. Una vez que se dibuja el diagrama de flujo, llega a ser fácil escribír el programa en cualquier idióma de alto nivel. Vemos a menudo cómo los diagramas de flujo nos dan ventaja al momento de explicar el programa a otros. Por lo tanto, está correcto decir que un diagrama de flujo es una necesidad para la documentación mejor de un programa complejo.
Reglas para dibujar un diagramas de flujo.
Los Diagramas de flujo se dibujan generalmente usando algunos símbolos estándares; sin embargo, algunos símbolos especiales pueden también ser desarrollados cuando séan requeridos. Algunos símbolos estándares, que se requieren con frecuencia para diagramar programas de computadora se muestran a continuación:

Simbolos gráficos
Dentro de los simbolos fundamentales para la creaación de diagramas de flujo, los símbolos gráficos son utilizádos especificamente para para operaciónes aritméticas y relaciónes condicionales. La siguiente es una lista de los símbolos más comunmente utilizados:
+Sumar
-Menos
*Multiplicación
/División
±Mas o menos
=Equivalente a
>Mayor que
<Menor que
³Mayor o igual que
£Menor o igual que
¹ o <>Diferente de
 Si
 No
 True
 False
- Los Diagramas de flujo deben escribirse de arriba hacia abajo, y/o de izquierda a derecha.

- Los símbolos se unen con líneas, las cuales tienen en la punta una flecha que indica la dirección que fluye la información procesos, se deben de utilizar solamente líneas de flujo horizontal o verticales (nunca diagonales).

- Se debe evitar el cruce de líneas, para lo cual se quisiera separar el flujo del diagrama a un sitio distinto, se pudiera realizar utilizando los conectores. Se debe tener en cuenta que solo se vana utilizar conectores cuando sea estrictamente necesario.

- No deben quedar líneas de flujo sin conectar.

- Todo texto escrito dentro de un símbolo debe ser legible, preciso, evitando el uso de muchas palabras.

- Todos los símbolos pueden tener más de una línea de entrada, a excepción del símbolo final.

- Solo los símbolos de decisión pueden y deben tener mas de una línea de flujo de salida.

EJEMPLOS DE DIAGRAMAS DE FLUJO PARA PROCESOS INDUSTRIALES




UML

¿EN QUÉ CONSISTE?

En todas las disciplinas de la Ingeniería se hace evidente la importancia de los modelos ya que describen el aspecto y la conducta de "algo". Ese "algo" puede existir, estar en un estado de desarrollo o estar, todavía, en un estado de planeación. Es en este momento cuando los diseñadores del modelo deben investigar los requerimientos del producto terminado y dichos requerimientos pueden incluir áreas tales como funcionalidad, performance y confiabilidad. Además, a menudo, el modelo es dividido en un número de vistas, cada una de las cuales describe un aspecto específico del producto o sistema en construcción.

El modelado sirve no solamente para los grandes sistemas, aun en aplicaciones de pequeño tamaño se obtienen beneficios de modelado, sin embargo es un hecho que entre más grande y más complejo es el sistema, más importante es el papel de que juega el modelado por una simple razón: "El hombre hace modelos de sistemas complejos porque no puede entenderlos en su totalidad".

UML es una técnica para la especificación sistemas en todas sus fases. Nació en 1994 cubriendo los aspectos principales de todos los métodos de diseño antecesores y, precisamente, los padres de UML son Grady Booch, autor del método Booch; James Rumbaugh, autor del método OMT e Ivar Jacobson, autor de los métodos OOSE y Objectory. La versión 1.0 de UML fue liberada en Enero de 1997 y ha sido utilizado con éxito en sistemas construidos para toda clase de industrias alrededor del mundo: hospitales, bancos, comunicaciones, aeronáutica, finanzas, etc.

Los principales beneficios de UML son:

  • Mejores tiempos totales de desarrollo (de 50 % o más).
  • Modelar sistemas (y no sólo de software) utilizando conceptos orientados a objetos.
  • Establecer conceptos y artefactos ejecutables.
  • Encaminar el desarrollo del escalamiento en sistemas complejos de misión crítica.
  • Crear un lenguaje de modelado utilizado tanto por humanos como por máquinas.
  • Mejor soporte a la planeación y al control de proyectos.
  • Alta reutilización y minimización de costos.
  • Vista Use-Case: Una vista que muestra la funcionalidad del sistema como la perciben los actores externos.
  • Vista Lógica: Muestra cómo se diseña la funcionalidad dentro del sistema, en términos de la estructura estática y la conducta dinámica del sistema.
  • Vista de Componentes: Muestra la organización de los componentes de código.
  • Vista Concurrente: Muestra la concurrencia en el sistema, direccionando los problemas con la comunicación y sincronización que están presentes en un sistema concurrente.
  • Vista de Distribución: muestra la distribución del sistema en la arquitectura física con computadoras y dispositivos llamados nodos.
UML, ¿Método o Lenguaje de Modelado?

UML es un lenguaje para hacer modelos y es independiente de los métodos de análisis y diseño. Existen diferencias importantes entre un método y un lenguaje de modelado. Un método es una manera explícita de estructurar el pensamiento y las acciones de cada individuo. Además, el método le dice al usuario qué hacer, cómo hacerlo, cuándo hacerlo y por qué hacerlo; mientras que el lenguaje de modelado carece de estas instrucciones. 

Los métodos contienen modelos y esos modelos son utilizados para describir algo y comunicar los resultados del uso del método.

Un modelo es expresado en un lenguaje de modelado. Un lenguaje de modelado consiste de vistas, diagramas, elementos de modelo ¾ los símbolos utilizados en los modelos ¾ y un conjunto de mecanismos generales o reglas que indican cómo utilizar los elementos. Las reglas son sintácticas, semánticas y pragmáticas.


Vistas: Las vistas muestran diferentes aspectos del sistema modelado. Una vista no es una gráfica, pero sí una abstracción que consiste en un número de diagramas y todos esos diagramas juntos muestran una "fotografía" completa del sistema. Las vistas también ligan el lenguaje de modelado a los métodos o procesos elegidos para el desarrollo.

Diagramas: Los diagramas son las gráficas que describen el contenido de una vista. UML tiene nueve tipos de diagramas que son utilizados en combinación para proveer todas las vistas de un sistema: diagramas de caso de uso, de clases, de objetos, de estados, de secuencia, de colaboración, de actividad, de componentes y de distribución.

Símbolos o Elementos de modelo: Los conceptos utilizados en los diagramas son los elementos de modelo que representan conceptos comunes orientados a objetos, tales como clases, objetos y mensajes, y las relaciones entre estos conceptos incluyendo la asociación, dependencia y generalización. Un elemento de modelo es utilizado en varios diagramas diferentes, pero siempre tiene el mismo significado y simbología.

Reglas o Mecanismos generales: Proveen comentarios extras, información o semántica acerca del elemento de modelo; además proveen mecanismos de extensión para adaptar o extender UML a un método o proceso específico, organización o usuario.


FASES DEL DESARROLLO DE UN SISTEMA

Las fases del desarrollo de sistemas que soporta UML son: Análisis de requerimientosAnálisisDiseñoProgramación y Pruebas.

Análisis de Requerimientos

UML tiene casos de uso (use-cases) para capturar los requerimientos del cliente. A través del modelado de casos de uso, los actores externos que tienen interés en el sistema son modelados con la funcionalidad que ellos requieren del sistema (los casos de uso). Los actores y los casos de uso son modelados con relaciones y tienen asociaciones entre ellos o éstas son divididas en jerarquías. Los actores y casos de uso son descritos en un diagrama use-case. Cada use-case es descrito en texto y especifica los requerimientos del cliente: lo que él (o ella) espera del sistema sin considerar la funcionalidad que se implementará. Un análisis de requerimientos puede ser realizado también para procesos de negocios, no solamente para sistemas de software.

Análisis

La fase de análisis abarca las abstracciones primarias (clases y objetos) y mecanismos que están presentes en el dominio del problema. Las clases que se modelan son identificadas, con sus relaciones y descritas en un diagrama de clases. Las colaboraciones entre las clases para ejecutar los casos de uso también se consideran en esta fase a través de los modelos dinámicos en UML. Es importante notar que sólo se consideran clases que están en el dominio del problema (conceptos del mundo real) y todavía no se consideran clases que definen detalles y soluciones en el sistema de software, tales como clases para interfaces de usuario, bases de datos, comunicaciones, concurrencia, etc.

Diseño

En la fase de diseño, el resultado del análisis es expandido a una solución técnica. Se agregan nuevas clases que proveen de la infraestructura técnica: interfaces de usuario, manejo de bases de datos para almacenar objetos en una base de datos, comunicaciones con otros sistemas, etc. Las clases de dominio del problema del análisis son agregadas en esta fase. El diseño resulta en especificaciones detalladas para la fase de programación.

Programación

En esta fase las clases del diseño son convertidas a código en un lenguaje de programación orientado a objetos. Cuando se crean los modelos de análisis y diseño en UML, lo más aconsejable es trasladar mentalmente esos modelos a código.

Pruebas

Normalmente, un sistema es tratado en pruebas de unidades, pruebas de integración, pruebas de sistema, pruebas de aceptación, etc. Las pruebas de unidades se realizan a clases individuales o a un grupo de clases y son típicamente ejecutadas por el programador. Las pruebas de integración integran componentes y clases en orden para verificar que se ejecutan como se especificó. Las pruebas de sistema ven al sistema como una "caja negra" y validan que el sistema tenga la funcionalidad final que le usuario final espera. Las pruebas de aceptación conducidas por el cliente verifican que el sistema satisface los requerimientos y son similares a las pruebas de sistema.

EJEMPLO