Articulo de referencia

MAPPER

MAPPER Systems , ahora conocido como Business Information Server (BIS), es un lenguaje de programación de cuarta generación originario de Sperry Univac . Actualmente pertenece a...

MAPPER Systems , ahora conocido como Business Information Server (BIS), es un lenguaje de programación de cuarta generación originario de Sperry Univac . Actualmente pertenece a Unisys Corporation. Mapper se originó en la década de 1970 [ 1 ] basándose en algunos trabajos de la década de 1960, [ 2 ] ha sido mejorado funcionalmente y mantenido actualizado. También se le dio una extensión llamada ICE (Internet Commerce Enabler). [ 3 ] [ 1 ]

Originalmente disponible en la Sperry Univac 1108 , ahora también existen implementaciones para Windows , Sun Solaris y Linux . [ 4 ] La GUI en Windows es la más avanzada de estas. [ 1 ]

Historia

MAPPER (MANTENIMIENTO, Preparación y Producción de Informes Ejecutivos) (también conocido como "El Producto de Programación Más Asombroso Jamás Lanzado" por los entusiastas), oficialmente renombrado BIS (Servidor de Información Empresarial) pero aún llamado MAPPER por muchos usuarios [ 1 ] , comenzó como un producto interno. Fue desarrollado en la fábrica de computadoras de Sperry Univac en Roseville, Minnesota, para ayudar a la empresa a administrar su fábrica de producción de hardware informático . [ 2 ] Inicialmente se llamó CRT RPS (Sistema de Procesamiento de Informes), para diferenciarlo de RPG . Su primer cliente externo fue Santa Fe Railway. Además de Santa Fe, el gobierno de Kansas City fue uno de los primeros clientes. MAPPER se convirtió en una solución popular en el sector gubernamental. Se formaron comunidades de grupos de usuarios como el Grupo de Usuarios de MAPPER de Nueva Inglaterra. El concepto de MAPPER fue concebido por Louis Schlueter en 1967 y presentado en un documento técnico en febrero de 1968 titulado 418 Sistema de Procesamiento de Informes a la gerencia y aceptado para su desarrollo de inmediato. Tres desarrolladores (Bill Grey, Louis Schlueter y Chuck Hanson) comenzaron a programar con un presupuesto diferente al que se había aprobado inicialmente para otro proyecto. Encontraron mucha resistencia, como la del programador principal (Jack Olgren) del departamento de pruebas inicial (la programación original era para realizar pruebas de estrés al hardware), quien exclamó: "¡No se pueden usar las computadoras de esa manera!". Sin embargo, tras comprender mejor el funcionamiento del proyecto, se unió al equipo y, gracias a su genialidad, llegó a ser el programador principal. Lamentablemente, falleció un año después, sin llegar a ver el proyecto finalizado. Hubo muchos obstáculos constantes, debido a la disonancia cognitiva que rodeaba el pensamiento tradicional de la época.

CRT RPS pasó a llamarse MAPPER en 1975. Debido a su carácter no oficial, fue un desarrollo de bajo presupuesto y se diseñó para un uso mínimo de recursos. Hoy en día, el sistema completo, sin los datos del usuario, ocupa solo 25 megabytes. Fue escrito en lenguaje ensamblador . [ 1 ] Inicialmente, solo tenía manipulación de cadenas limitada; [ 1 ] esto se corrigió posteriormente. También se añadió una capacidad de macros . El desarrollo del UNIVAC 1100, así como la presión de los clientes, llevaron a su lanzamiento para un uso más general en 1979.

A mediados de la década de 1980, Sperry comercializó activamente MAPPER, incluyendo anuncios protagonizados por el "Hombre MAPPER", el ejecutivo empoderado y usuario final. En los países escandinavos, Sperry lanzó una canción sobre MAPPER —"¡Hazlo a la manera MAPPER!" (1983)— compuesta e interpretada por un grupo al estilo de ABBA .

Bajo la dirección de Sperry Corp, el sistema MAPPER controlaba ocho fábricas, demostrando el diseño de aplicaciones principales por parte de los USUARIOS. El sistema MAPPER admitía más de 1300 aplicaciones, el 99 % de las cuales fueron diseñadas por usuarios ajenos al Departamento de Procesamiento de Datos (DP), es decir, mediante los antiguos métodos de programación. Contaba con aproximadamente 20 millones de líneas en su base de datos en línea. Había más de 3700 usuarios registrados en este sistema, 540 de los cuales estaban registrados como Diseñadores de Aplicaciones (RUN). En un día típico, se registraban más de 500 000 inicios de funciones manuales, además de más de 405 000 inicios de funciones bajo el control de más de 90 000 ejecuciones de aplicaciones RUN. Se procesaban más de 355 millones de líneas de datos de informes en un día de servicio de este tipo.

El tiempo de respuesta promedio del sistema MAPPER para las funciones manuales y las ejecuciones RUN fue de aproximadamente 0,4 segundos. Se registraron más de 7000 terminales para su uso en este sistema. Cualquier muestra instantánea en tiempo real mostrará más de 1000 usuarios conectados al sistema. Se trata de un sistema con un entorno informático mixto. Además del servicio MAPPER, también se ejecutaron aplicaciones COBOL por lotes en segundo plano y procesamiento de transacciones en el sistema central.

El primer cliente fue Santa Fe Railroad. Los sistemas MAPPER se tradujeron a 15 idiomas, incluyendo chino y japonés (que se ampliaron a 23 en total), y se instalaron en todo el mundo en una base de clientes valorada en más de 3 mil millones de dólares. Las ganancias del sistema Sperry MAPPER provocaron la fusión de Unisys con Burroughs por 7 mil millones de dólares. Esta adquisición forzosa se considera la perdición de MAPPER. En ese momento, el sistema quedó prácticamente archivado, ya que no se realizó ninguna promoción adicional. Su nombre se cambió a BIS (Business Information Server). Esto impidió el acceso al ejemplo de la base de clientes internacionales de MAPPER, valorada en 3 mil millones de dólares. (Por ejemplo, Japón experimentó un auge en la industria manufacturera gracias a 500 mainframes con MAPPER instalado).

Una encuesta realizada por Unisys en 1989 mostró que 140 de los 224 clientes de UNIVAC 1100 utilizaban MAPPER. Para 2006, había más de 600 sitios que utilizaban MAPPER para Windows NT .

MAPPER mantiene un registro de transacciones y funciones, que documenta quién hizo qué, cuándo y dónde. Este registro mantiene una cadena de eventos incorruptible y accesible para usuarios sin permisos del Coordinador. Además, fue la primera hoja de cálculo , más de una década antes de LOTUS123.

Características

Una de las primeras descripciones de MAPPER fue el artículo "MAPPER fue el primer lenguaje de comandos de usuario", presentado en la conferencia técnica de la USE en marzo de 1983 por Michael Nicoll-Griffith de Canadian Pacific Consulting Services y publicado como parte de las actas de la USE. En 1988, se publicó el libro "User-driven Computing" de Louis Schlueter.

El uso de MAPPER requiere que la comunidad cuente con un Coordinador de MAPPER, quien dispone de un conjunto de herramientas con privilegios para supervisar y optimizar el desarrollo y controlar los abusos. MAPPER cuenta con más de 150 funciones que se pueden usar manualmente, y casi todas tienen un comando de script correspondiente.

MAPPER era tan fácil de aprender y usar que muchos usuarios se convirtieron en desarrolladores "RUN" que crearon aplicaciones que cubrían todas sus necesidades de procesamiento de datos.

Estructura de datos

La unidad básica de datos se denomina «informe». Su apariencia es similar a la de una hoja de cálculo de Microsoft Excel . Es habitual tener conjuntos de informes similares con la misma estructura de columnas que se aplican a diferentes categorías o agrupaciones de elementos. Los informes se organizan en «cajones» de informes con la misma estructura, y grupos de hasta 8 cajones forman un «gabinete» (4000 en total por sistema MAPPER). Los informes pueden tener entre 40 y 998 caracteres de ancho, según la plataforma. En las plataformas «Core MAPPER» (Windows/Unix/Linux), el tamaño del cajón debe ser un múltiplo de 2; en las plataformas 1100/2200 puede ser un número impar.

Los informes se numeran del 1 al máximo establecido para el cajón; también hay un informe cero, que tiene un significado especial ya que actúa como plantilla y como filtro para el resto de los informes en el cajón. Los cajones tienen una letra de cajón, del Ba I. Los gabinetes se numeran del 0 y se incrementan de 2 en 2; los gabinetes impares hacen referencia a los mismos datos que el gabinete par correspondiente, pero proporcionan una vista de solo lectura de los datos (por ejemplo, el gabinete 0 y el gabinete 1 representan acceso completo y limitado a los mismos datos). Hay un máximo del sistema para un sistema dado, que varía según la plataforma y está representado por el trabajo reservado del sistema MAXCAB$. Los cajones van del Ba Iporque Aes un cajón especial; se considera que existe simultáneamente en todos los gabinetes, por lo que actúa como un recurso global. El cajón Ase usa normalmente para conjuntos de datos temporales "rápidos y sencillos", datos capturados, código de ejecución de prototipos, notas, documentación, etc. El tercer informe en el cajón Cdel gabinete 36 se referenciaría como 3C36, o simplemente 3Csi el usuario ya ha iniciado sesión en el gabinete 36.

Una diferencia fundamental con respecto a las hojas de cálculo es que los informes de MAPPER no tienen capacidad de cálculo integrada. El procesamiento se realiza aplicando un "Comando" o "Función" al informe, lo que genera un "resultado" duplicado. Este resultado se puede procesar aún más, refinando los datos hasta obtener la información más relevante; un resultado que es una copia manipulada del informe original. Por lo tanto, el sistema de procesamiento de informes forma parte de las capacidades del sistema original. Esto permite a los usuarios acceder a sus datos y manipularlos según sus necesidades.

Otra diferencia importante es que los datos de MAPPER son datos de registro visible; lo que ves es literalmente lo que obtienes. Dentro de cada panel, todos los informes tienen la misma longitud de línea, rellena con espacios o tabulaciones para facilitar la navegación y la introducción o modificación de registros. Del mismo modo, el tamaño de las columnas dentro de un registro de datos es fijo, aunque se puede crear cualquier tamaño de campo, hasta 999 caracteres. Los datos se pueden localizar en columnas de campo o en formato libre, similar a texto o párrafos. Existen varias funciones que permiten localizar datos de forma rápida y eficiente. Se pueden implementar numerosas funciones y métodos para estructurar los datos y obtener respuestas aún más rápidas. El tiempo de respuesta al manipular datos fue casi siempre inferior a un segundo. (Incluso en un PC con la CPU al 100%, gracias a su código optimizado, la búsqueda de más de un millón de registros tarda un segundo en responder).

En versiones anteriores de MAPPER, la seguridad se aplicaba a nivel de gabinete; en las versiones actuales, la seguridad tiene una granularidad más precisa y se aplica a nivel de cajón. Si un usuario no tiene acceso a un cajón específico, los datos no serán visibles para ese usuario. Es posible otorgar acceso de solo lectura o de actualización a un cajón determinado.

Fue pionero en muchos aspectos, entre ellos, ser un sistema compatible con ODBC .

Lenguaje de comandos

Cuando se ejecuta un comando, el software obtiene la organización de datos a partir de los encabezados de columna que se encuentran encima de los datos. En esencia, genera el "esquema" bajo demanda. Los comandos más comunes son "Buscar" para crear un subconjunto, "Ordenar" para cambiar el orden de las líneas y "Totalizar" para generar subtotales por tipo, categoría o fecha. Se pueden combinar dos informes independientes con "Coincidir", mientras que comandos muy sofisticados como "Calcular y Actualizar" incluyen pasos sucesivos en una sola operación. El resultado de un comando puede ser procesado por otro comando posterior. De esta manera, se pueden cumplir grandes requisitos de procesamiento con solo unos pocos comandos. El código del script, como un solo comando, ejecutaría una función manual y, de esta forma, minimizaría la cantidad de código necesaria para realizar las tareas. Es decir, escribir un programa de búsqueda de muchas líneas de código ya se había hecho. Y de esta forma, MAPPER esencialmente llamaba a macros; el primero de su tipo también.

Eficiencia en tiempo real

En el funcionamiento de MAPPER, los datos no se obtienen mediante un programa que los lea, sino que esperan la acción del usuario, además de las tareas en segundo plano. Los comandos programados se utilizan para operar sobre ellos. Sin embargo, el conjunto completo de comandos disponibles permanece en la memoria activa del ordenador como comandos residentes interpretados. Al estar escrito en código reentrante , cualquier comando puede ser utilizado simultáneamente por miles de usuarios diferentes.

Para evitar cuellos de botella en el acceso al disco, los datos se distribuyen en varios informes de poca profundidad, de modo que muchos usuarios puedan acceder a los datos sin que un solo informe les impida hacerlo. Esto se traduce en un menor número de lecturas de disco por informe que la mayoría de las alternativas.

El coordinador, que actúa como administrador, recibe una alerta cuando las prácticas de procesamiento ineficientes ralentizan el sistema. En ese caso, se podría restringir o limitar la cantidad de recursos que ese usuario puede utilizar o el tiempo que puede dedicar a ejecutar scripts o funciones.

Capacidades ampliadas

Ejecutar lenguaje de programación Diseño de aplicaciones principales por usuarios no DP

Con el tiempo, el producto ha incorporado extensiones a partir de la base descrita anteriormente. La primera de ellas, exigida por la compañía ferroviaria Santa Fe, fue la función de repetición de comandos, denominada "Ejecutar", similar en concepto a una macro de Excel. El uso de comandos preprobados aplicados sucesivamente reduce la probabilidad de errores de programación.

El "lenguaje de ejecución" utiliza formas programadas de comandos de pantalla normales en los informes (por ejemplo, la ordenación manual y el elemento del lenguaje de ejecución @SOR invocarán el mismo módulo de código reentrante compilado).

Permite la selección lógica de diferentes rutas de procesamiento, bucles y ramificaciones lógicas, interacción con el usuario y funciones similares. También tiene la capacidad de realizar cálculos o lógica de procesamiento basada en cualquier carácter o campo de datos de toda la base de datos. Naturalmente, esto está sujeto a la categoría de seguridad de los datos.

Procesamiento cooperativo

Mediante conexiones de red, dos o más sistemas MAPPER pueden trabajar de forma cooperativa. En este caso, uno esperará a que el otro complete su tarea. MAPPER gestiona el tráfico de datos o mensajes de texto entre usuarios.

Las operaciones en una máquina pueden iniciarse a través de la red. Se pueden emitir comandos de recuperación de datos SQL con sintaxis SQL completa en bases de datos externas, y los resultados se utilizan en el procesamiento posterior de MAPPER. MAPPER puede ejecutar sitios web con su propio front-end .asp , cuenta con un motor JavaScript integrado , puede generar XML para B2B y es capaz de manipular objetos SOAP . Vea algunos ejemplos a continuación.

  • MAPPER en el foro de la lista de 99 cervezas
  • Vídeo con una descripción general completa y detallada.
  • Vídeo tutorial con datos históricos detallados y una descripción general.
  • Vídeo tutorial que muestra cómo instalar y configurar
  • Vídeo tutorial que muestra MAPPER en un navegador.
  • Vídeo tutorial que muestra cómo agregar campos y una base de datos.
  • Vídeo tutorial que muestra cómo utilizar varias funciones.
  • https://sites.google.com/view/businessinformationserver/home

Referencias

  1. 1 2 3 4 5 6 "Mapeador de idiomas (ahora conocido como BIS)" . 99 botellas de cerveza .
  2. 1 2 Del Fiacco, Gerry (23 de agosto de 2008). "MAPPER: Un legado de misión crítica" . Enterprise Networks & Servers . Archivado del original el 23 de agosto de 2008. Recuperado el 3 de febrero de 2019 .
  3. Oracle se puede utilizar como base de datos backend.
  4. "Categoría:MAPPER" . Código Rosetta . 28 de septiembre de 2019. Archivado del original el 20 de enero de 2025.