Monografías Plus »

Sistema de información transaccional: Teoría y aplicación

Monografía destacada


Introducción

Cuando se realiza una compra por un servicio on line, se transfiere o retira dinero en un cajero, una serie de operaciones se desencadena con el objetivo de garantizar que esa transacción sea exitosa. Sin embargo, si una operación individual de la serie sufre un error durante el intercambio, el error afecta a la totalidad del intercambio. Esto trae como consecuencia que no se obtiene el producto o no se obtiene el dinero.

La tecnología responsable de que el intercambio se realice de forma equilibrada y predecible se denomina procesamiento de transacciones. Las transacciones garantizan que los recursos orientados a datos no se actualicen permanentemente salvo que todas las operaciones de la unidad transaccional se completen de forma satisfactoria. Mediante la combinación de un conjunto de operaciones relacionadas en una unidad que se completa de forma satisfactoria o de forma incorrecta, se puede simplificar la recuperación de errores y proporcionar a la aplicación una mayor confiabilidad.

Los sistemas de procesamiento de transacciones están formados por hardware informático y software que aloja una aplicación orientada a transacciones que ejecuta las transacciones habituales necesarias para realizar operaciones comerciales. Entre los ejemplos se incluyen sistemas que administran entradas de órdenes de ventas, reservas de billetes de avión, nóminas, registros de empleados, fabricación y transporte.

Definición de transacciones

Transacción. Órdenes de compra, ventas, cambios, altas y bajas con ejemplos de transacciones que se registran en un entorno de información de negocios. Las consultas y demás solicitudes son también transacciones para la computadora, pero normalmente se las procesa sin registrarlas en el sistema. El volumen de transacciones es un factor preponderante en la determinación del tamaño y la velocidad de un sistema informático.

Análisis transaccional. El objetivo del análisis transaccional es lograr una mejor comprensión de cómo las personas se relacionan entre sí y el modo de que mejoren la comunicación y las relaciones humanas.

Transacciones. En su definición más simple se puede decir que una transacción es un conjunto de eventos que deben ser llevados a cabo como una unidad indivisible de trabajo, en la que todos y cada uno de ellos tienen éxito o todos y cada uno de ellos son rechazados. Como esta definición se ajusta a un gran número de actividades cotidianas, se ha convertido en una verdadera filosofía de diseño aplicable a innumerables áreas, especialmente en el mundo de los negocios y eventos financieros que implican transferencias de dinero. Este solo hecho hace que las transacciones tengan que realizarse rápidamente y con mínimos riesgos. Luego para llevar a cabo de mejor forma su función es deseable que una transacción tenga las siguientes características.

Un ejemplo típico. Es el de la transferencia de fondos entre dos cuentas corrientes de un banco. Si queremos transferir, pongamos 5000Bs de la cuenta corriente de A a la de cuena corriente de B y las cuentas tienen, respectivamente, 20000Bs y 0Bs de saldo los pasos lógicos serían:

Ahora bien, si entre el paso 2 y el 3 el sistema sufre una parada o error inesperado las cuentas quedarían como A=15000 y B=0 con lo cual... Se han volatilizado 5000Bs y presumiblemente ni A ni B estarán contentos, y hubiesen preferido que la transacción nunca hubiese sido iniciada.

Este ejemplo ilustra porqué las transacciones tienen un comportamiento deseado de Todo o nada, o se realiza completamente o no debe tener ningún efecto.

Transacciones. Un suceso externo que involucra el traslado de algo de valor entre dos o más entidades. Las transacciones pueden ser:

PASOS DE UNA TRANSACCIÓN

TIPOS DE ACCIONES EJECUTABLES EN UNA TRANSACCIÓN.

Alcance de las transacciones

La filosofía de crear sistemas cliente/servidor bajo el concepto de transacciones con propiedades ACID brinda a los desarrolladores una gran simplicidad, y actualmente están presente en la casi totalidad de las aplicaciones cliente/servidor de la actual generación de sistemas transaccionales.

En bases de datos se denomina ACID a la propiedad de una base de datos para realizar transacciones seguras. Así pues ACID compliant define a un sistema de gestión de bases de datos que puede realizar transacciones seguras. En concreto ACID es un acrónimo de Atomicity, Consistency, Isolation and Durability: Durabilidad, Aislamiento, Consistencia e Indivisibilidad en español.

Su principal espectro de aplicación resulta ser en aquellas actividades de naturaleza breves, históricamente el desarrollo de transacciones se debió a su utilidad para aplicaciones bancarias, por lo que resultan inadecuadas para el manejo de transacciones de negocios que se extienden a través de prolongados periodos. Tampoco es un modelo apto para labores por lotes (procesos batch), ya que una transacción no debe durar más allá de tres segundos tanto por la necesidad de obtener respuestas rápidas, como por la conveniencia de no monopolizar recursos críticos del sistema en general.

En cuanto a las limitaciones de las transacciones éstas vienen por el lado de la característica de todo o nada de las mismas, considerando que hay situaciones de la vida real en las cuales se requiere una mayor flexibilidad. Es el caso en que alguna de las acciones realizadas por una transacción sería deseable que se hiciesen persistentes aún cuando una de ellas no halla tenido éxito, pero dada la filosofía de que una mezcla de éxito y fracaso no es posible, esto no puede ser llevado a cabo. Pero esto se resuelve mediante la utilización de múltiples transacciones simples para simular una transacción compuesta (transacciones anidadas o encadenadas), lo que se traduce por supuesto en una mayor carga de trabajo en la etapa de programación.

Relacionado al punto anterior (ya se dijo que los sistemas transaccionales no están orientados a trabajos por lotes) se debe considerar el hecho de que una transacción voluminosa, entendiendo como tal a una transacción que requiere actualizar una gran cantidad de registros; o bien puede monopolizar por mucho tiempo algún recurso crítico del sistema, lo que no es deseable para el resto de los procesos clientes (usuarios impacientes), o bien después de procesar por un largo periodo de tiempo se deben abortar (rollback) todas las acciones realizadas durante ese periodo, lo que implica la necesidad de repetir todo el proceso nuevamente, porque solo una de las actualizaciones falló.

Como se puede concluir, el problema es básicamente el mismo y se trata de considerar en base a algún criterio durante la etapa de análisis y diseño si se van a generar transacciones que abarquen un gran número de eventos y actualizaciones, con el riesgo de que fallen muchas acciones dentro de un marco funcional dado, o generar transacciones más pequeñas cuyos eventuales fallos sean más puntuales y reducidos.

Normalmente la utilización del concepto de transacciones está enmarcado en un ambiente de desarrollo, o por lo menos debiera estarlo, de tal forma que el equipo de desarrollo sólo se concentre en resolver los problemas asociados a la lógica de negocios, y no tener la preocupación de cada vez tener que resolver los problemas asociados al desarrollo de transacciones con propiedades ACID. Esto quiere decir que el desarrollador debiera contar con un marco de programación, bajo alguna estructura o esqueleto para algún lenguaje (estándar o propietario), que comprenda un espacio de codificación delimitado por un inicio de transacción y una grabación de transacción, límites entre los cuales se deben validar todas las causa de fallo de la transacción mediante alguna instrucción de aborto. Este esquema está relacionado con la administración de transacciones y la implementación de los monitores de transacciones.

CARACTERÍSTICAS DE LAS TRANSACCIONES (ACID)

Para llevar a cabo de mejor forma su función es deseable que una transacción tenga las siguientes características:

1. Atomicidad. Una transacción debe ser atómica. A pesar de que una transacción está compuesta por un número cualquiera de eventos, el sistema las debe considerar como una única operación, la cual puede tener éxito; en tal caso se hacen permanentes los cambios generados por cada evento componente de la transacción; o fracaso, en este caso el sistema queda en el mismo estado, como si la transacción nunca hubiera ocurrido. 2. Consistencia. Todos los cambios provocados por la transacción deben dejar al sistema en un estado correcto. El sistema es llevado desde un estado válido a otro estado válido, producto de la acción de una transacción. 3. Aislamiento. Las transacciones que se ejecutan concurrentemente no se ven afectadas unas con otras. Si una transacción A cambia un sistema de un estado E1 a un estado E2, una transacción B siempre verá al sistema en un estado E1 o E2, pero nunca en un estado intermedio. 4. Durabilidad. Si una transacción es terminada en forma exitosa los efectos serán permanentes.

ARQUITECTURA GENERAL DE UN SISTEMA TRANSACCIONAL

Monografias.com

Monitores de transacción

Un monitor de transacciones es un conjunto de uno o más componentes (no necesariamente en el sentido de componentes de objetos) que brindan el soporte para el diseño, desarrollo, configuración y operación de confiables aplicaciones de transacciones distribuidas. Esto significa que de alguna manera se debe garantizar las propiedades ACID para las aplicaciones, y también incluye la puesta en marcha de los procesos servidores, la canalización de los mensajes de solicitud/respuesta y algún tipo de supervisión y equilibrio de cargas.

Un monitor de transacciones puede ser concebido como una estructura preconstruida que ayuda desarrollar y administrar una aplicación cliente/servidor, y su principal función es garantizar las propiedades ACID, mientras que al mismo tiempo debe colaborar para mantener un alto rendimiento.

Administrador de transacciones

Componente de software que provee el acceso a los servicios del administrador de recursos, coordinando y controlando a este último. Delimita el comienzo y fin de una transacción a la vez que provee los mecanismos de persistencia y fallo. También debe actuar como un servidor de mensajes para el programa de aplicación. Una aplicación (proceso cliente) puede requerir un servicio sin conocer donde reside dicho servicio, es el administrador de transacciones quien debe liberar el requerimiento al servidor de aplicación adecuado. Tampoco el proceso cliente tiene que conocer como el servicio ha sido implementado, éste puede haber sido codificado en C, Cobol o cualquier otro lenguaje, lo que brinda una gran flexibilidad tanto en la etapa de desarrollo como en la etapa de mantenimiento de software. Por otro lado un administrador de transacciones debe proveer en alguna medida un mecanismo de recuperación para actuar ante eventuales fallas; si un administrador de transacciones detecta que un servidor a fallado deberá reiniciarlo automáticamente. Todas estas características hacen que los administradores de transacciones sean el núcleo de desarrollo y explotación de aplicaciones OLTP y permiten un soporte a arquitecturas altamente escalables.

SISTEMAS TRANSACCIONALES Es el conjunto organizado de personas, procedimientos, software, base de datos y dispositivos para registrar transacciones comerciales consumadas, por ejemplo: el pago de nómina. Sus principales características son:

SISTEMA TPS (SISTEMA DE PROCESAMIENTO DE TRANSACCIONES).

OBJETIVOS DE LOS TPS (SISTEMA DE PROCESAMIENTO

DE TRANSACCIONES).

Problemas de los sistemas transaccionales tradicionales

Monografias.com

Monografias.com

TEORÍA DE PROCESAMIENTO DE TRANSACCIONES.

Consiste en una serie de modificaciones (transacciones) aun determinado recurso del sistema (por ejemplo una base de datos) y en donde se define un punto de inicio (Begin Tran) y un punto de terminación que define un bloque entre el conjunto de operaciones que son realizadas.

Dentro de este proceso en bloque los demás usuarios no pueden modificar nada hasta que no se presente un estado estable de los datos, esto ocasiona inconsistencia temporal y conflictos. Para evitar lo anterior se implementan dos maneras diferentes:

Ejecutar transacciones serializadas. Es un sistema que permite el procesamiento de transacciones en forma secuencial o serializado y consiste en asignarle una secuencia a cada transacción, este proceso reduce el rendimiento del sistema.

Monografias.com

Ejecutar transacciones calendarizadas. Es un sistema que permite el proceso de transacciones asignándole tiempos de procesamiento el cual permite incrementar el rendimiento del sistema ya que se ejecuta un máximo de proceso en forma concurrente y no a través de una serie.

Monografias.com

Ejecutar transacciones anidadas. Consiste en tener transacciones que dependen de otras, estas transacciones están incluidas dentro de otra de un nivel superior y se les conoce como: SubTransacciones. La transacción de nivel superior puede producir hijos (Subtransacciones) que hagan más fácil la programación del sistema y mejorando el desempeño.

Monografias.com

Propiedades de las transacciones

Atomicidad de fallas. Consiste en efectuar todas las transacciones, pero en caso de falla no se realiza ninguna.

Permanencia. Consiste en que una vez completada una transacción satisfactoriamente los cambios ya no pueden perderse.

Seriabilidad. Consiste en asegurarse que los cambios siguen un orden adecuado.

Aborto de transacciones propio para cada transacción. Es la capacidad que se tiene para abortar el proceso transaccional en cualquier punto, el resultado de esta operación no puede ser revelado para otras transacciones.

Punto de inicio y terminación. Consiste en especificar un bloque inicial y un punto que termina el fin de ese bloque.

Monografias.com

PROCESAMIENTO DE TRANSACCIONES.

La estructura de una transacción usualmente se le da el nombre de modelo de la transacción, estas pueden ser planas (simples) o anidadas. Un aspecto muy importante en el manejo de transacciones es el mantener y aplicar algoritmos de control sobre los datos o recursos; para ese control también se utilizan protocolos que proporcionan confiabilidad como los siguientes:

El control de las transacciones también requiere de controlar la concurrencia del acceso y uso hacia el recurso que se esta manipulando, ese control de concurrencia tiene 2 objetivos:

Para llevar a cabo el control de concurrencia dentro de un proceso de transacciones se manejan 2 modos:

1. Ejecución centralizada de transacciones.

Monografias.com

2. Ejecución distribuida de transacciones.

Monografias.com

EVOLUCIÓN DEL ENTORNO TRANSACCIONAL

Monografias.com

Monografias.com

TRANSACCIONES BANCARIAS

Cuando usted utiliza su tarjeta de crédito en un Restaurante o Tienda, uno pensaría que como la máquina que autoriza tiene el emblema del banco la comunicación se establece directamente con el Banco. Sin embargo, esto no es así, la transacción de nuestra compra se lleva acabo por un tercero, entre las compañías que realizan este servicio se encuentran NOVA, FirstData y Paymentech. De manera que cuando nuestra tarjeta de crédito pasa por el "autorizador" en la tienda, ésta se comunica con alguna de estas compañías y ellas se comunican con nuestro banco y con el banco de la tienda.

Sistema cliente servidor bancario

El modelo transaccional se puede estructural en tres capas, ya que reduce el trafico de información en la red y brinda mayor flexibilidad en la elección de plataformas sobre la cuál montar las aplicaciones entre otras ventajas.

Tomamos una entidad bancaria con n sucursales, y una casa central. En casa central se encuentra el centro de cómputos con un server con la capacidad de atender las transacciones que se realizan durante la operatoria. Las sucursales pueden estar en la misma ciudad que la casa central o en distintas localidades, para interconectar todas las sucursales y la casa central se utilizan servicios de comunicación de una red pública, utilizando vínculos satelitales y terrestres, dependiendo del lugar en que se encuentren las sucursales y que servicio tenga el proveedor.

En cada sucursal, las aplicaciones clientes, se ejecutan en computadoras personales con unidades de disco rígido propias. Todas las computadoras personales forman una red local incluyendo un server de comunicaciones actuando como puerta (router) hacia la red pública, repitiéndose este esquema en las sucursales y la casa central. La topología lógica de la red de área amplia del banco, es en forma de estrella, siendo el centro, la casa central.

Monografias.com

¿Qué es el comercio electrónico? Son las transacciones de negocios ejecutadas por medios electrónicos entre compañías (empresa-empresa, business to business), compañías y consumidores (empresa-cliente, business to person), compañías y sector público; y consumidores y sector público. Dos de los elementos más importantes del comercio electrónico son el software y la base de datos. El problema con Internet y Vía Telefónica. El realizar un cargo a una tarjeta de crédito posee un alto riesgo tanto para la empresa que autoriza la venta, así como para el Banco que otorga el servicio a esta Empresa, y el problema se agrava aún más con Internet ,pero el problema no es la psicosis de seguridad o encriptación en Internet; inclusive es el mismo riesgo que asumen tanto empresas y bancos cuando se lleva acabo un cargo vía telefónica, y estos cargos existen desde antes de Internet ! ¿Porque Riesgo?. El ejemplo clásico del uso de Tarjeta de Crédito es cuando tenemos posesión física de la misma Tarjeta, entramos a un Restaurante o Tienda, inclusive en ocasiones hasta se nos pide identificarnos como los dueños de la tarjeta, algo en ocasiones inútil, ya que sería raro pensar en alguien que hubiera extraviado su tarjeta de crédito y que no la reportara robada.

Ejemplo.

Supongamos que cierta empresa "ELE" es autorizada por el Banco "BX" para cobrarle a sus clientes vía Internet (o Telefónica, que implica casi el mismo riesgo), el primer mes de operaciones "ELE" recibe $1,000,000 en Ventas vía Tarjeta de Crédito, el Banco "BX" cobra sus comisiones y abona el dinero a la cuenta de la empresa "ELE", PERO a los 25-35 días empiezan a llegar quejas de los Bancos emisores de Tarjetas de Crédito que ellos no pagarán la cuenta, porque sus tarjeta habientes reclaman que ellos jamás autorizaron esa compra a la Empresa "ELE", o peor aún, que nunca recibieron su producto!.

Si el Banco "BX" hizo un buen estudio sobre la empresa "ELE", a pesar del problema legal que enfrenta el Banco "BX", no debe de tener mucho de que preocuparse, y sabrá que la empresa "ELE" tiene al menos el dinero para rembolsar esas quejas, ahora bien, si el Banco "BX" no sabia con quien estaba trabajando es muy probable que enfrente una gran perdida!.

Entonces la empresa "ELE" esta en desventaja, no puede saber quien es buen cliente, no?

NO, no existe ninguna desventaja, las autorizadoras de Tarjetas de Crédito como NOVA y Paymetech prestan un servicio denominado AVS ("Address Verfication System") además de la verificación de Fondos. Este sistema es utilizado por TODAS, las compañías que realizan algún tipo de venta donde no se pueden percatar de la posesión física de la tarjeta del cliente. (Internet o Telefónica).

Las transacciones bancarias electrónicas. Se puede definir la banca por Internet como el conjunto de herramientas tecnológicas que ofrece una entidad financiera para que sus clientes realicen operaciones bancarias a través de la computadora utilizando su conexión a Internet.

Existen dos conceptos de banca por Internet:

a. "Un banco que sólo existe en Internet y carece de oficinas. En este caso las operaciones se realizan exclusivamente desde Internet.

b. Un banco cuyas oficinas existen físicamente y que cuentan con un canal de distribución de productos y servicios que opera en Internet. Este caso es de momento el más habitual."

El realizar transacciones bancarias desde el hogar representa el mayor cambio en las instituciones financieras desde la introducción de los cajeros automáticos. Las operaciones más habituales que se ofrecen son:

Los anteriores son sólo algunos de los servicios más comunes que se ofrecen en la actualidad; la gama de posibilidades sigue creciendo. El verdadero reto para las entidades financieras consiste en el diseño de nuevos e innovadores servicios, inclusive algunos no disponibles hasta la fecha en ninguna oficina tradicional.

La operación del servicio es bastante sencilla. Generalmente requiere un primer contacto entre el cliente y el banco que puede ser personal o través del propio sitio o página web, y generalmente involucra la formalización de un contrato o convenio que regula el uso del servicio. El banco proporciona al cliente una clave de acceso personal, de índole confidencial, que permite su identificación en el sistema y que deberá ser utilizada cada vez que el mismo desee tener acceso a sus cuentas o realizar transacciones a través del servicio.

Para tener acceso al servicio el cliente debe visitar el sitio o página web del banco en Internet. Esta contiene información de los principales productos y servicios de la entidad, y un menú de opciones a través de vínculos, que son secciones de texto o imagen, que al ser pulsados transfieren al usuario a nuevas áreas dentro del sitio. El cliente entonces pulsa el vínculo que identifica el servicio de banca en línea, y en este momento el sistema requiere el ingreso de su clave personal.

Monografias.com

Una vez ingresada, el cliente es transferido al área de transacciones, en formato de sitio seguro, es decir donde la información será codificada durante su transmisión para evitar el acceso de terceros. Es aquí donde el usuario puede realizar las consultas a sus cuentas o ejecutar cualquiera de las transacciones antes descritas.

Monografias.com

Gracias al Internet, es posible hacer transacciones bancarias electrónicas a cualquier hora y desde la comodidad del hogar. Sin embargo, hay ventajas y desventajas que se deben sopesar al evaluar la utilidad de esta moderna tecnología bancaria.

"Es importante asegurarse que los beneficios son mayores que las desventajas para determinar si es recomendable valerse de estos servicios",.

Ventajas de las Transacciones bancarias electrónicas

Desventajas de las Transacciones bancarias electrónicas

SOFTWARE TRANSACCIONAL

Procesamiento de transacciones

Modelo de Almacenamiento

Cuando se ejecuta una transacción WRITE no es necesario escribir la actualización en disco. El WRITE solo afecta a un copia de los datos en el registro intermedio (BUFFER) de la base de datos en la memoria principal.

La operación OUTPUP posterior que realice el sistema en una pagina de datos modificara la base de datos.

La memoria principal tiene tres registros intermedios :

El almacenamiento secundario se divide en varias categorías :

Planificaciones recuperables

Los sistemas de procesamiento de transacciones deben garantizar que posible recuperarse del fallo de cualquier transacción activa. De tal manera que existe un algoritmo de recuperación y verificación a la hora de realizar la actualización de un determinado registro.

Exploración de Bitácora

En un sistema de procesamiento de transacciones concurrentes es necesario que el registro de bitácora de puntos de verificación sea de la forma ( CHECKPOINT L ), donde L, es una lista de transacciones activas en el momento del punto de verificación. Cuando el sistema se recupera de una caída el sistema construye dos listas :

Gestión del Bloqueo

Si existe un conjunto de transacciones de manera que cada transacción esta esperando a que a otra transacción del conjunto diremos que se encuentra en estado de bloqueo.

Para evitar esta situación existe un protocolo de prevención de bloqueo para garantizar que el sistema nunca entrara en una estado de bloqueo.

Sistemas de transacciones de alto rendimiento

Para esto se requiere Hardware de alto rendimiento y explotar el paralelismo, además, no solo esto es suficiente para obtener el alto rendimiento en el procesamiento de transacciones existen dos razones mas :

Muchas operaciones de conmutación.

Los registros de bitácora que se escriban en almacenamientos estables antes que las paginas de buffer se puedan grabar en disco.

Base De Datos en memoria principal

El rendimiento de las bases de datos esta limitado por la velocidad con que se lee los datos y se escriben en el disco. La limitante de grabado en disco se puede incrementar con el buffer de la base de datos. Debido al avance tecnológico de la memoria principal y la disminución de su costo, hoy día se puede tener dispuesta la base de datos en esta memoria para algunas aplicaciones de manera que para grandes bases de datos solo podrá contener una parte, esto permite que el procesamiento sea mucho mas rápido.

Concurrencia en estructuras de índices

Existen características especiales de las estructuras de índices que permiten utilizar enfoques alternativos :

Un índice contiene una dato que no es único. Es decir el índice se puede reconstruir a partir de la base de datos si ocurre un fallo.

Es aceptable tener acceso concurrente no serializable a un índice mientras se mantenga la exactitud de los datos.

De esta menara podemos realizar :

Definición de transacción en SQL

El lenguaje SQL estándar especifica que una transacción comienza implícitamente. La transacción termina al final de una unidad de trabajo o por una de las siguientes sentencias :

Transacciones de larga duración

Se presentan serios problemas cuando este concepto se aplica a base de datos que implica interacción humana. Estas interacciones tienen las siguientes propiedades clave:

MRP. Material Requirements Planning (Planificación de suministros). Los sistemas de planeación de requerimientos de materiales (MRP) se han instalado casi universalmente en las empresas del sector manufacturero, incluso en aquellas que se consideran pequeñas. La razón es que la MRP es un enfoque lógico y de fácil comprensión del problema de determinado numero de partes, componentes y materiales necesarios para producir cada artículo. La MPR también provee el programa de tiempo que especifica cuando debe ordenarse o producir cada uno de los materiales, partes y componentes.

El sistema MRP, Planificación de Requerimientos Materiales, básicamente proporciona un programa de la producción y de los abastecimientos, de acuerdo con los pronósticos de ventas con la compañía, los estándares de producción y los tiempos de entrega de los proveedores.

Propósito de los sistemas MRP son:

Objetivo de los sistemas MRP. Calculará las cantidades de producto terminado a fabricar, los componentes necesarios y las materias primas a comprar para poder satisfacer la demanda del mercado, obteniendo los siguientes resultados:

Implementación del Software MRP. Genera informes a la administración, tanto en piezas como en dinero, para ser usado en la función de manufactura y por las otras funciones relacionadas con esta. Este enfoque hace del plan de producción una base común para coordinar las actividades de estas funciones.

MRP cuenta con algunos mecanismos para simular y probar el impacto de distintas alternativas. Típicamente se analizan cambios en el programa maestro y modificaciones en los recursos de producción disponibles.

Estas son funciones que de una u otra manera desarrollan las empresas para lograr programar adecuadamente sus actividades de manufactura.

Sin embargo, la virtud de un sistema MRP es que al ser computacional, es capaz de integrar la gran cantidad de datos requeridos y de ejecutar velozmente todos los cálculos necesarios. Esta es precisamente la dificultad que enfrentan los responsables de desarrollar las funciones de planeación y control de los recursos cuando no cuentan con un sólido apoyo computacional. Esta dificultad se agudiza cuando la tarea se multiplica debido a una gran variedad de productos terminados, materias primas, componentes, procesos y equipos.

La implantación de un sistema MRP es un proceso delicado y requiere contar con una base de información. Entre las más importantes bases de datos necesarias se encuentran las hojas de ruta por producto, los estándares de producción por operación y la explosión de materiales y componentes por producto. Toda esa información deberá obtenerse si no se tiene o revisarse si ya se cuenta con ella.

Ventajas del Software MRP. Muchas compañías que han obtenido un alto porcentaje de venta anualmente, es probable que utilizaban sistemas computarizados MRP. Debido al gran volumen de materiales, de suministros y de componentes que forman parte de la ampliación de líneas de productos, así como la velocidad que necesitan las compañías para reaccionar ante los cambios constantes en el sistema. Entre los beneficios que estos obtenían son: