stringtranslate.com

MAPEADOR

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

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

Historia

MAPPER (Mantener, preparar y producir informes ejecutivos) (alternativamente apodado "Producto de programación más sorprendente jamás lanzado" por los entusiastas), oficialmente rebautizado como BIS (Business Information Server), pero muchos usuarios todavía lo llaman MAPPER [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. [5] [6] Inicialmente se llamó CRT RPS (Report Processing System), para diferenciarlo de RPG . Su primer cliente externo fue Ferrocarril Santa Fe . Además del 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. Las comunidades de grupos de usuarios se formaron 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 Report Processing System a la gerencia y aceptado para su desarrollo de inmediato. Tres desarrolladores (Bill Grey, Louis Schlueter y Chuck Hanson) comenzaron a codificar con otro presupuesto que inicialmente fue aprobado para un proyecto diferente. Tuvieron mucha resistencia, como el programador principal (Jack Olgren) del departamento de pruebas iniciales (la programación original era para probar el hardware), afirmando: "¡No se pueden usar las computadoras de esa manera!" pero después de ver más de lo que estaba sucediendo, se unió al equipo y finalmente se convirtió en el programador principal debido a su genio mental. Desafortunadamente, murió un año después y nunca vio implementada la realización completa. Había mucha obstrucción continua, luchando contra la disonancia cognitiva en torno al pensamiento tradicional en ese momento.

CRT RPS pasó a llamarse MAPPER en 1975. Debido a su estatus no oficial, fue un desarrollo de bajo presupuesto y fue construido para un uso mínimo de recursos. Hoy en día, todo el sistema, menos los datos de los usuarios, ocupa sólo 25 megabytes. Fue escrito en lenguaje ensamblador . [1] Inicialmente solo tenía manipulación limitada de cadenas; [1] que desde entonces ha sido corregido. Posteriormente también se agregó una capacidad Macro . 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, incluida publicidad en la que aparecía "MAPPER Man", el usuario final ejecutivo autoempoderado. En los países escandinavos, Sperry tenía una canción de MAPPER: "¡Hazlo a la manera MAPPER!" (1983), escrito e interpretado por un grupo al estilo ABBA .

Bajo Sperry Corp, un sistema MAPPER controlaba ocho fábricas, lo que demuestra el diseño de aplicaciones importantes por parte de los USUARIOS. El sistema MAPPER admitía más de 1.300 aplicaciones, el 99 por ciento de las cuales fueron diseñadas por usuarios que no eran DP (Departamento de Procesamiento de Datos, por ejemplo, los antiguos métodos de programación). Tenía alrededor de 20 millones de líneas en la 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 inician más de 500 000 funciones manuales con más de 405 000 funciones adicionales bajo el control de más de 90 000 ejecuciones de aplicaciones RUN. Se procesaron más de 355 millones de líneas de datos de informes en ese día de servicio.

Los tiempos de respuesta promedio del sistema MAPPER para las funciones manuales y ejecuciones de RUN fueron ~ 0,4 segundos. Se registraron más de 7.000 terminales para su uso en este sistema. Cualquier muestra instantánea en horario de máxima audiencia mostrará más de 1.000 usuarios registrados utilizando el sistema. Este es un sistema de entorno informático mixto. Además del servicio MAPPER, también se realizaron aplicaciones COBOL por lotes en segundo plano y procesamiento de transacciones en el sistema mainframe.

El primer cliente fue Ferrocarril Santa Fe. Los sistemas MAPPER se tradujeron a 15 idiomas, incluidos chino y japonés (que se amplió 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 valor de 7 mil millones de dólares. Esta adquisición contundente ha sido vista como la caída de MAPPER. Básicamente se archivó en ese momento, ya que no se realizó ninguna promoción adicional. Y el nombre fue cambiado a BIS (Business Information Server). (Varias fuentes internas dijeron que esto se debió a que se llegó a un acuerdo para suprimirlo debido al uso intensivo por parte de las agencias militares y de inteligencia. Como ejemplo, Japón tuvo un auge en toda su industria manufacturera debido a 500 Mainframes con MAPPER).

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

Su historia es un fuerte testimonio y ejemplo de la eficiencia y el potencial de los servicios de sistemas de procesamiento de informes en tiempo real, informáticos y diseñados por el usuario, bien promovidos y coordinados.

Es interesante señalar que MAPPER fue esencialmente la primera cadena de bloques debido a la función LOG Ledger, que es un registro de todas las transacciones; quién hizo qué, cuándo y dónde. Este LOG mantenía una cadena de eventos que era incorruptible o accesible para usuarios que no tenían derechos de acceso por parte del Coordinador. También fue la primera hoja de cálculo, como lo fue 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 comando de usuario" presentado en la conferencia técnica de USE en marzo de 1983 por Michael Nicoll-Griffith de Canadian Pacific Consulting Services y publicado como parte de las actas de 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 tenga un conjunto de herramientas privilegiadas para monitorear y sintonizar el desarrollo y controlar los abusos. MAPPER tiene más de 150 funciones que se pueden usar manualmente, casi cada una tiene un comando de script correspondiente.

MAPPER era tan fácil de aprender y utilizar que muchos usuarios se convirtieron en desarrolladores "RUN" que creaban aplicaciones que ejecutaban todos sus requisitos de procesamiento de datos.

Estructura de datos

La unidad básica de datos se llama "informe". Esto parece similar a 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 estructurados idénticamente y grupos de hasta 8 cajones forman un "gabinete" (4000 en total por sistema MAPPER). Los informes pueden tener entre 40 y hasta 998 caracteres de ancho, según la plataforma. En las plataformas "Core MAPPER" (Windows/Unix/Linux), el tamaño del cajón debe ser múltiplo de 2: en el 1100/2200 puede ser un número impar.

Los informes están numerados 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 informes del cajón. Los cajones tienen una letra de cajón, de B a I. Los gabinetes están numerados de 0 y se incrementan en 2; los gabinetes con números impares hacen referencia a los mismos datos que el gabinete par correspondiente, pero brindan una vista de solo lectura de los datos (por ejemplo, gabinete 0 y gabinete 1 representa el acceso total y limitado a los mismos datos). Existe un máximo de sistema para un sistema determinado, que varía según la plataforma y está representado por el trabajo reservado del sistema MAXCAB$. Los cajones van de B a I porque A es 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 A se utiliza normalmente para conjuntos de datos temporales "rápidos y sucios", datos capturados, código de ejecución de prototipos, notas, documentación, etc. El tercer informe en el cajón C del gabinete 36 se denominaría 3C36, o simplemente 3C si el usuario ya ha iniciado sesión en el gabinete 36.

Una diferencia importante con las hojas de cálculo es que los informes MAPPER no tienen capacidad de cálculo incorporada. El procesamiento se logra aplicando un "Comando" o "Función" a un informe, acción que produce un "resultado" duplicado. Este resultado se puede procesar más, refinando los datos hasta la información más significativa; como resultado, una copia manipulada del informe original. Por lo tanto, el sistema de procesamiento de informes forma parte de la capacidad original del sistema. Permitiendo así a los usuarios acceder y manipular sus necesidades de datos de acuerdo con sus especificaciones.

Otra diferencia importante es que los datos de MAPPER son una forma de datos de registros visibles; lo que ves es literalmente lo que obtienes. Dentro de un cajón individual, todos los informes tienen la misma longitud de línea, que se rellena con espacios o caracteres de tabulación para moverse a través de los datos para ingresar o modificar registros. Del mismo modo, los tamaños de las columnas dentro de un registro de datos son fijos; sin embargo, puede crear cualquier tamaño de campo que desee, hasta 999 caracteres. Puede ubicar datos en columnas de campo o en datos de formato libre similares a texto escrito o datos de estilo de párrafo. Hay varias funciones que hacen que la localización de datos sea rápida y eficiente. Se pueden implementar muchas funciones y métodos para estructurar 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 si se usa en una PC y la CPU está al 100%, debido al código delgado produce una segunda respuesta en una búsqueda de más de 1 millón de registros).

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

Fue el primero en muchas cosas, incluido ser un sistema compatible con ODBC. (Open Database Connectivity (ODBC) es una interfaz de programación de aplicaciones (API) estándar para acceder a sistemas de gestión de bases de datos (DBMS).

Lenguaje de comando

Cuando se debe ejecutar un comando, el software obtiene la organización de los datos de los encabezados de las columnas que se encuentran encima de los datos. En esencia, genera el "esquema" bajo demanda. Los comandos populares son "Buscar" para crear un subconjunto, "Ordenar" para cambiar la secuencia de líneas, "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 operado por un comando posterior. De esta manera, se podrían cumplir grandes requisitos de procesamiento con sólo unos pocos comandos. El código del script como un solo comando ejecutaría una función manual y de esta manera minimizaría la cantidad de código necesario para realizar las tareas. es decir, ya se había escrito un programa de búsqueda de muchas líneas de código. Y de esta manera MAPPER esencialmente estaba llamando macros; el primero de su tipo también.

Eficiencia en tiempo real

En el funcionamiento de MAPPER, los datos no los obtiene un programa que los "lee", sino que espera la acción del usuario, aparte de los trabajos en segundo plano. Los comandos programados actúan sobre él. Sin embargo, el conjunto completo de comandos disponibles permanece en la memoria activa de la computadora como comandos residentes interpretados. Al estar escrito en " código reentrante ", cualquier comando puede ser utilizado por miles de usuarios diferentes simultáneamente.

Para evitar un cuello de botella en los accesos al disco, los datos se distribuyen en varios informes poco profundos, de modo que muchos usuarios puedan estar en los datos y no quedar excluidos de un solo informe. Esto da como resultado menos lecturas de disco por informe que la mayoría de las alternativas.

El Coordinador, que es como un Administrador, recibe alertas cuando las prácticas de procesamiento ineficientes ralentizan el sistema. Luego, ese usuario podría verse restringido o limitado en cuanto a la cantidad de recursos que podía usar o el tiempo que podía realizar scripts o funciones.

Capacidades extendidas

Ejecutar lenguaje Diseño de aplicaciones principales por usuarios que no son DP

Con el tiempo, el producto ha visto extensiones hechas a partir de la base descrita anteriormente. El primero de ellos, ordenado por el Ferrocarril de Santa Fe, era una capacidad de comando repetido, llamada "Ejecutar", y similar en concepto a una macro de Excel. Este uso de comandos probados previamente aplicados sucesivamente reduce la posibilidad de errores de programación.

El "lenguaje de ejecución" utiliza formas escritas de comandos de pantalla normales en los informes (por ejemplo, el SORT 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, permite bucles y ramificaciones lógicas, interacción con el usuario y similares. También tiene la capacidad de realizar cálculos o basar la lógica de procesamiento 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

Al utilizar conexiones de red, dos o más sistemas MAPPER pueden procesar de forma cooperativa. En esto, uno esperará a que otro complete la tarea. MAPPER maneja el tráfico de datos o mensajes de texto entre usuarios.

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

enlaces externos

Referencias

  1. ^ abcdef "Mapeador de idiomas".
  2. ^ Del Fiacco, Gerry (23 de agosto de 2008). "MAPPER: Un legado de misión crítica". EnterpriseNetworksandServers.com . Archivado desde el original el 23 de agosto de 2008 . Consultado el 3 de febrero de 2019 .
  3. ^ Oracle se puede utilizar como base de datos backend
  4. ^ "Código Rosetta - Categoría: MAPPER".
  5. ^ Colección MAPPER, 1983-1996
  6. ^ Motivación temprana (Gerry Del Fiacco)