PDF de programación - Evolución de los objetivos de Genexus hacia la Cuarta Generación

Imágen de pdf Evolución de los objetivos de Genexus hacia la Cuarta Generación

Evolución de los objetivos de Genexus hacia la Cuarta Generacióngráfica de visualizaciones

Actualizado el 21 de Marzo del 2018 (Publicado el 2 de Marzo del 2018)
950 visualizaciones desde el 2 de Marzo del 2018
118,1 KB
11 paginas
Creado hace 18a (06/03/2006)
EVOLUCIÓN DE LOS OBJETIVOS DE GENEXUS




PÁGINA 1

Evolución de los objetivos de Genexus

hacia la Cuarta Dimensión

Preparado por: Breogán Gonda y Juan Nicolás Jodal [1]

ARTech, febrero de 2006



¿Qué podemos decir, 15 años después, de los objetivos de Genexus? [2]: ¿Cómo han evolucionado?,
¿cómo ha sido su cumplimiento?

Los objetivos de Genexus han evolucionado constantemente y siempre hacia otros más exigentes en la
medida que nuestras investigaciones, el desarrollo tecnológico general y un mejor conocimiento de la
realidad lo han ido aconsejando.

Los hechos muestran un muy buen grado de cumplimiento de los objetivos.

Las Cuatro Dimensiones

Se ha conseguido una buena manera de visualizar los objetivos y evaluar su cumplimiento introduciendo
cuatro dimensiones:

1. Completitud (Será de un 100% si tanto la base de datos como todos los programas necesarios

son generados por Genexus)

2. Productividad (Es el aumento potencial de productividad obtenible con una buena utilización
de Genexus respecto a la que obtendrían buenos desarrolladores utilizando manualmente
lenguajes de programación comunes (como COBOL o RPG originalmente, Java o C# hoy)

3. Universalidad (Será el 100% si pueden generarse aplicaciones para cualquier plataforma viva)

4. Usabilidad (Cuantifica la facilidad de uso: será 100% si cualquier persona puede utilizarlo sin

mayor capacitación específica)

Es interesante ver como han evolucionado los objetivos y los logros desde la primer versión liberada de
Genexus a fines de 1989.

Siempre es difícil representar cuatro dimensiones sobre un plano. La siguiente es una representación
razonable e ilustrativa (aunque no rigurosa).

Representamos cada dimensión por una flecha según el diagrama siguiente y, a cada una de estas flechas,
le atribuimos el valor que le asigna la evaluación de Genexus según esa dimensión.

Arbitrariamente colocamos las dimensiones de la siguiente manera: Completitud apuntando hacia la
izquierda, Productividad hacia arriba, Universalidad hacia abajo y Usabilidad hacia la derecha, de
acuerdo al siguiente gráfico.

Copyright © 2006, ARTech, todos los derechos reservados

EVOLUCIÓN DE LOS OBJETIVOS DE GENEXUS




PÁGINA 2

LAS CUATRO DIMENSIONES

PRODUCTIVIDAD

COMPLETITUD

USABILIDAD

UNIVERSALIDAD



Objetivos en el momento de la liberación de la primera versión de Genexus

Cuando la primera versión de Genexus fue liberada ya tenía importantes logros en relación a la
Completitud, Productividad y Usabilidad.

Completitud:

En la primera versión se tuvo como objetivo generar el 70% de los programas. Para cada uno de ellos, se
generaba el 100% del código. De esta manera se evitaba la necesidad de modificar manualmente los
programas generados.

Esta característica fue siempre considerada esencial: dado que el sistema tiene pleno conocimiento para
generar tanto la Base de Datos como aquellos programas (los que caen dentro del 70% que Genexus era
capaz de generar), también tiene conocimiento para efectuar el mantenimiento automático de todo lo que
genera (Base de Datos -estructura y contenido - y programas).

Era claro, sin embargo, que lo ideal sería generar el 100% de los programas. Si ello fuera conseguido,
Genexus sería capaz de efectuar automáticamente el mantenimiento de todo el sistema, con una
disminución dramática de costos (tiempo y dinero). La tecnología de que se disponía en ese momento no
lo permitía.

Productividad

La Productividad aumentaba de manera muy importante dado que el desarrollador no necesitaba dedicar
su atención a un conjunto de tareas tradicionales: análisis de datos, proyecto de la base de datos, proyecto
y escritura de los programas.

Las pruebas básicas de los sistemas consisten en verificar la corrección de las especificaciones por la vía
de prototipos vivos, completos, muy fáciles de usar y oportunos.

El objetivo desde el primer momento fue un aumento potencial de productividad del 500% sobre
programar manualmente con los lenguajes disponibles (en el caso RPG y COBOL).

Usabilidad

La Usabilidad aumentaba comparándola con la de programar manualmente (en aquella primera versión
sobre el sistema operativo IBM OS/400, el Sistema de Gerencia de Base de Datos nativo del computador
IBM AS/400, su lenguaje de comandos y un lenguaje de programación que podía ser RPG o COBOL).

¿Por qué aumentaba la usabilidad? Porque el desarrollador no necesitaba conocimiento detallado alguno
de dichos elementos. Permitía entonces que el desarrollador se independizara de estos elementos de bajo
nivel y pudiera dedicar su atención a entender y resolver conceptualmente el problema del cliente:

Copyright © 2006, ARTech, todos los derechos reservados

EVOLUCIÓN DE LOS OBJETIVOS DE GENEXUS




PÁGINA 3

dedicarse a resolver los problemas reales y no los que le presentan las limitaciones de la tecnología que
utiliza.

No era fácil cuantificar este aumento de la usabilidad pero era importante, porque permitía tanto a viejos
usuarios, acostumbrados a tecnología obsoleta, como a nuevos usuarios con poca o ninguna experiencia,
usar la nueva tecnología de inmediato.

Los objetivos se cumplieron. ¿cuál fue la reacción de los clientes?, ¿por qué contrataron Genexus?, ¿qué
características valoraron más?

Los principales elementos que llevaron a la contratación a los primeros clientes fueron:

• Genexus viabilizaba el desarrollo de aplicaciones para el nuevo computador IBM AS/400 a técnicos

con muy poco conocimiento de ese nuevo computador y su tecnología.

• Genexus permitía un aumento muy grande en la productividad de los desarrolladores.

• En particular no fue considerada como una ventaja esencial por parte de los potenciales
clientes el hecho de que Genexus prometiera el mantenimiento automático de todo lo que
generaba. ¡Realmente nadie evaluaba seriamente esta ventaja porque nadie creía que el
mantenimiento automático fuera posible!

A poco de usar Genexus, los clientes mantuvieron la evaluación positiva anterior: técnicos con muy poco
conocimiento del AS/400 desarrollaban sin dificultades y con gran productividad su trabajo.

Sin embargo el mayor cambio fue que los clientes pasaron a evaluar como una ventaja fundamental
que Genexus mantenía automáticamente todo lo que generaba.

Al mismo tiempo, Genexus sólo pretendía generar el 70% de los programas necesarios. Este hecho había
sido acogido como razonable en el momento de la contratación pero luego pasaba a ser considerado una
gran limitación para los clientes. ¿Por qué? Porque ahora les quedaban claras varias ventajas de Genexus:

• Fuerte aumento de la productividad de la programación automática sobre la manual.

• Enorme ventaja del mantenimiento automático sobre el mantenimiento manual.

• Sólo lo generado automáticamente podría ser mantenido también automáticamente.

Como consecuencia de todo esto, los usuarios quisieron evitar el desarrollo manual del restante 30% de
los programas. Pero, más importante, la necesidad de mantener manualmente para siempre todos los
programas desarrollados manualmente.

Como resultado de lo anterior se dieron dos cosas importantes:

• Todos comprendieron muy bien que en ningún caso debían modificar manualmente los programas

generados, para preservar la capacidad de mantenimiento automático.

• Los clientes ejercieron sobre ARTech una fuerte presión para lograr que Genexus generara el 100%

de los programas.

Generar el 100% de los programas era un muy buen objetivo, por múltiples razones. Algunas de estas
razones eran muy claras:

Mantenimiento automático del 100% de la aplicación. Aumento de productividad consiguiente.

Otras sólo quedaron claras años después:

Portabilidad de las aplicaciones de unas plataformas a otras.

Comercialización de Bases de Conocimiento, etc.

Pero el objetivo de generar y mantener automáticamente toda la aplicación no era un objetivo fácil de
lograr (ninguna otra herramienta lo hacía - ni lo hace hoy - en todo el mundo) ¿sería posible?

Para generar el 100% de una aplicación, primero es necesario poder describirla total y fielmente. En aquel
momento, Genexus no tenía el suficiente poder expresivo para ello.

¿Cómo se podría adicionar rápidamente poder expresivo a Genexus? Genexus era 100% declarativo, si se
le agregaba un lenguaje de programación – por ejemplo un lenguaje de 4ª Generación - se ganaría poder
expresivo. Pero, al mismo tiempo, se perdería la capacidad de mantener automáticamente todo lo que se

Copyright © 2006, ARTech, todos los derechos reservados

EVOLUCIÓN DE LOS OBJETIVOS DE GENEXUS




PÁGINA 4

generaba, porque en los lenguajes procedurales [3] conocidos, los programas fuente no se mantenían
válidos ante modificaciones de la Base de Datos.

Lo que se necesitaba era un lenguaje procedural cuyos programas fuente se mantengan válidos ante
modificaciones en la base de datos (y que sea del mayor nivel posible).

No se consiguió ninguna solución inmediata y se colocó el asunto en primer lugar en la lista de
investigación.

OBJETIVOS EN EL MOMENTO DE LA PRIMERA VERSIÓN DE GENEXUS (1990)

PRODUCTIVIDAD

COMPLETITUD

USABILIDAD

UNIVERSALIDAD



Objetivos de 1992: 100% de Completitud

Luego de considerar y descartar muchas alternativas se llegó a un planteamiento simple del problema:

Solución a través del Sistema de Gerencia de Base de Datos. La solución más razonable (e
independiente de Genexus) era la implementación por parte de los fabricantes de Sistemas de Gerencia de
Base de Datos de la recomendación ANSI Sparc del Esquema de tres
  • Links de descarga
http://lwp-l.com/pdf9161

Comentarios de: Evolución de los objetivos de Genexus hacia la Cuarta Generación (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad