Está en la página 1de 16

Laboratorio de Tecnologas de la Informacin

Sesin

Pagina:

47

Generadores de Cdigo

I
OBJETIVOS
Analizar la funcionabilidad de una herramienta generadora de aplicaciones de
software, como alternativa de solucin para el desarrollo de software en las
instituciones.
Aplicar a travs de la utilizacin de la herramienta los conocimientos adquiridos en el
modelamiento del negocio, diseo de base de datos e interfaces, as como de reportes.
Evaluar la aplicabilidad de la herramienta en el desarrollo de sistemas automatizados y
en la creacin de informacin y conocimiento; visualizando la integracin que se da a
las aplicaciones.

II
TEMAS A TRATAR

Proceso de transacciones
Modelo de negocio a partir del proceso de transacciones
Desarrollo de aplicaciones interactivas
Generacin de reportes de explotacin
Generacin de Mens
Herramientas adicionales de la herramienta a utilizar
Explotacin de la informacin a travs de la herramienta

III
MARCO TEORICO
El problema
Aqu se analiza la empresa desde el punto de vista de los objetos que existen en ellas y
sus relaciones. Construir un sistema integrado, que requiere un modelo de datos
Corporativo de la empresa no es una tarea simple debido a que el numero de los objetos y
relaciones hace que esta tarea sea extremadamente compleja.
Metodologa incremental
Una manera alternativa de resolver el problema pasa por la sustitucin de la premisa
bsica enunciada: asumir que no es posible construir un modelo de datos desde el inicio
Dr. Ing. Csar Baluarte Araya

Laboratorio de Tecnologas de la Informacin

Pagina:

48

sin que pase mucho tiempo desde su inicio y estable de la empresa; y en cambio, utilizar
una filosofa incremental. Un esquema incremental parece muy natural: no se encaran
grandes problemas, sino que se van resolviendo los pequeos problemas a medida que se
presentan y se va incrementado la base del conocimiento a ser utilizada por diversos
elementos de un modelo.
Sistematizacin del Conocimiento
Veamos ahora con ms detalle el proceso de desarrollo de una aplicacin con GeneXus.
GeneXus captura el conocimiento que reside en los objetos descritos y lo sistematiza en
una base de conocimiento.
El trmino base de conocimiento hace referencia a la capacidad de reutilizar en forma
automtica el conocimiento almacenado y sobre todo a la capacidad de realizar
inferencias que permiten obtener ms conocimiento

Sistematizacin del Conocimiento


Transacciones

Reportes

Procedimientos

Paneles de
Trabajo

Mens

Base de conocimiento

Inferencia de la Base de Datos


Transacciones

Reportes

Procedimientos

Paneles de
Trabajo

Mens

Base de
conocimiento

Base de
Datos

Fuente: Artech
A partir del conocimiento especificado a travs de las transacciones, GeneXus disea el
modelado de datos normalizado (en 3ra forma normal).
Dr. Ing. Csar Baluarte Araya

Laboratorio de Tecnologas de la Informacin

Pagina:

49

Debe tenerse en cuenta que muchas veces, con la tecnologa de hoy, para obtener los
tiempos de respuesta necesarios, deben admitirse desvos a la 3ra forma normal. GeneXus
permite hacerlo mediante la definicin de redundancias que luego, mantiene
automticamente. GeneXus genera automticamente los programas necesarios para crear
la base de datos, y la crea mediante ellos.
Generacin de los Programas de Aplicacin

Generacin de los Programas de la


Aplicacin
Transacciones

Reportes

Procedimientos

Paneles de
Trabajo

Mens

Base de
conocimiento

Base de
Datos

Programas de Aplicacin
TRN, RTP, PROC, WKP y MNO

Fuente: Artech
GeneXus genera automticamente, a partir de la base de conocimiento, los programas de
la aplicacin. Como se ha dicho, durante el ciclo de vida de la aplicacin, existen muchas
modificaciones. Ante cambios en la visiones de usuarios, GeneXus disea la nueva base
de datos

Las visiones de los usuarios


cambian
Nuevas
Transacciones
Transacciones

Nuevos
Reportes
Reportes

Nuevos
Nuevos
Paneles de
Procedimientos Paneles de
Trabajo
Procedimientos
Trabajo

Nuevos
Mens
Mens

Base de
Base
de
conocimiento
conocimiento

Base de
Datos

Fuente: Artech

Dr. Ing. Csar Baluarte Araya

Nueva
Base de
Datos

Programas de Aplicacin
TRN, RTP, PROC, WKP y MNO

Laboratorio de Tecnologas de la Informacin

Pagina:

50

Algunas veces, la nueva base de datos coincide con la anterior, en cuyo caso, todos los
programas existentes seguirn siendo validos. Otras veces, existen cambios en la base de
datos. El anlisis de impacto de los cambios nos informa si debe reorganizarse la base de
datos, como debe ser hecha esa reorganizacin y, los eventuales problemas que esa
reorganizacin podra ocasionar.
Una vez analizado el anlisis de impacto, el analista resolver efectuar la reorganizacin o
renunciar a ella volviendo a la situacin anterior.
Si el analista ha dado el visto bueno a la reorganizacin, GeneXus genera
automticamente los programas necesarios para la reorganizacin. La reorganizacin
consiste entonces, en ejecutar esos programas (luego de tomar la copia de respaldo
correspondiente).
Aqu se han dibujado como disjuntas la nueva y la vieja Base de Datos por claridad de
dibujo. En realidad es de esperar que tengan muchas tablas comunes, que no se
modificaran en la reorganizacin.
GeneXus, considerando la base de conocimiento nueva y la vieja, estudia el impacto de
los cambios sobre los programas actuales y produce un informe sobre el tema
GeneXus genera/regenera automticamente los programas necesarios.
Ahora se tiene las nuevas aplicaciones en produccin. El ciclo de mantenimiento esta
completo.

IMPLEMENTACIN DEL DESARROLLO INCREMENTAL


GeneXus implementa esta teora. Cuando una aplicacin se desarrolla con GeneXus la
primera etapa consiste en hacer el Diseo de la misma registrando las visiones de usuarios
(a partir de las cuales el sistema captura y sistematiza el conocimiento).
Posteriormente se pasa a la etapa de Prototipacin en donde GeneXus genera la base de
datos (estructura y datos) y programas para el ambiente de prototipo. Una vez generado el
Prototipo debe ser puesto a prueba por el analista y los usuarios.
Si durante la prueba del Prototipo se detectan mejoras o errores se retorna a la fase de
Diseo, se realizan las modificaciones correspondientes y se vuelve al Prototipo.
Llamaremos a este ciclo de Diseo/ Prototipo. Una vez que el Prototipo est aprobado, se
pasa a la etapa de Implementacin, en donde GeneXus genera, tambin automticamente,
la base de datos y programas para el ambiente de produccin. En resumen, una aplicacin
comienza con un Diseo, luego se Prototipa, luego se Implementa y en cualquiera de los
pasos anteriores se puede regresar al Diseo para realizar modificaciones.

Dr. Ing. Csar Baluarte Araya

Laboratorio de Tecnologas de la Informacin

Pagina:

51

Ciclo Diseo-Prototipo y DiseoProduccin


Diseo

Prototipo

Produccin

Fuente: Artech
Se detalla cada una de estas tareas:
Diseo
Tarea es realizada conjuntamente por el analista y el usuario, y consiste en identificar
y describir las visiones de datos de los usuarios. El trabajo se realiza en el ambiente
del usuario. Este esquema permite trabajar con un bajo nivel de abstraccin,
utilizando trminos y conceptos que son bien conocidos por el usuario final.
De acuerdo a lo visto, GeneXus captura el conocimiento por medio de visiones de
objetos de la realidad del usuario.
Los tipos de objetos soportados por GeneXus son: Transacciones, Reportes,
Procedimientos, Work Panels, Web Objects, Menes, Data Views, Styles y
Transacciones de Data Warehouse.
La tarea de diseo consiste, fundamentalmente, en identificar y describir estos
objetos. A partir de estas descripciones, y automticamente, GeneXus sistematiza el
conocimiento capturado y va construyendo, en forma incremental, la Base de
Conocimiento.
La Base de Conocimiento es un repositorio nico de toda la informacin del diseo, a
partir de la cual GeneXus crea el modelo de datos fsico (tablas, atributos, ndices,
redundancias, reglas de integridad referencial, etc.) , y los programas de aplicacin.
As, la tarea fundamental en el anlisis y diseo de la aplicacin se centra en la
descripcin de los objetos GeneXus.
Objetos GeneXus ms importantes:
Transacciones
La transaccin es un proceso interactivo que permite a los usuarios crear, modificar o
eliminar datos/informacin de la base de datos.
Dr. Ing. Csar Baluarte Araya

Laboratorio de Tecnologas de la Informacin

Pagina:

52

Ejemplos:
Pantalla para crear, modificar o eliminar los Clientes de la Empresa.
Pantalla de facturacin: proceso que permite a un usuario crear facturas e incluso
imprimirlas.
Una pantalla permite al usuario tomar diferentes acciones como insertar, actualizar
eliminar, imprimir sin tener que volver al men para hacerlo.
Reportes
Un informe es un proceso que permite visualizar los datos de la base de datos. La
salida del listado puede ser enviada a pantalla o a la impresora (y con ello tenemos un
listado convencional).
Con este objeto se pueden definir desde listados simples (por ejemplo, listar los
clientes) hasta muy sofisticados, en donde existan varios cortes de control, mltiples
lecturas a la base de datos y parametrizacin.
Procedimientos
Tiene todas las caractersticas de los Reportes, y adems permite actualizar la base de
datos. Los Procedimientos son comnmente usados para dos tipos de procesos:
- Procesos batch de actualizacin. Por ejemplo: eliminar todas las facturas de fecha
anterior a una fecha dada y que ya fueron pagadas.
- Subrutinas de uso general. Por ejemplo: rutina de monto escrito en donde, dado un
importe se devuelve un literal con el importe en letras (1010 = > 'Mil diez')
- Procesos a ejecutar en un servidor de aplicaciones o servidor de base de datos:
procesos (generalmente escritos en C/ SQL, Java o .NET) para una MultiTier
Architecture, para ser ejecutados en un servidor de aplicaciones o de bases de
datos.
Work Panels
Es una pantalla que permite al usuario realizar consultas interactivas a la base de
datos. Cuanto ms los usuarios utilizan el computador para su trabajo, se torna ms
necesaria la utilizacin de dilogos sofisticados, que le permitan sentarse a pensar
frente al mismo.
Los work panels permiten disear este tipo de dilogos del usuario.
Por ejemplo: Un work panel que muestra la lista de clientes y que permite (a eleccin
del usuario) ver cuales son sus facturas o su deuda.
Web Objects
Son similares al conjunto de Work Panels y Transacciones, pero son usados en
browsers en ambiente Internet / Intranet / Extranet.
Menes
Un men es una pantalla que contiene una serie de opciones fijas que el usuario
selecciona para ejecutar.
Dr. Ing. Csar Baluarte Araya

Laboratorio de Tecnologas de la Informacin

Pagina:

53

Data Views
Permiten considerar correspondencias entre tablas de bases de datos preexistentes y
tablas GeneXus y tratar aquellos con la misma inteligencia como si fueran objetos
GeneXus.
Styles
El estandarizar lo ms posible una aplicacin es un reconocido buen criterio de diseo
En particular, la interfaz de usuario de una aplicacin resulta crtica para construir
sistemas amigables. Cuanto ms estndar sean los dilogos, ms fcil de usar ser la
aplicacin.
Los Styles constituyen un tipo de objeto GeneXus orientado a la definicin de
interfaces de usuario y estndares de programacin. Los Styles ofrecen una serie de
mecanismos para definir formatos de pantallas, reglas del negocio y eventos que sern
utilizados luego por GeneXus en forma automtica, obteniendo sistemas de mayor
calidad y disminuyendo sensiblemente los tiempos de desarrollo.
GeneXus trabaja con el conocimiento puro
Partiendo de los objetos descritos, el modelo de datos fsico es diseado con base en
la Teora de Bases de Datos Relacionales, y asegura una base de datos en tercera
forma normal (sin redundancia). Esta normalizacin es efectuada automticamente
por GeneXus. El analista puede, sin embargo, definir redundancias que, a partir de
ello, pasan a ser administradas (controladas o propagadas, segn corresponda),
automticamente por GeneXus.
El repositorio de GeneXus mantiene las especificaciones de diseo en forma
abstracta, o sea que no depende del ambiente objeto, lo que permite que, a partir del
mismo repositorio, se puedan generar aplicaciones funcionalmente equivalentes, para
ser ejecutadas en diferentes plataformas.
Mltiples Plataformas / Arquitectura de Mltiples Capas
Como consecuencia de lo anterior es posible, por ejemplo, que un usuario de una
aplicacin IBM AS/ 400 centralizada desarrollada 100% con GeneXus, pueda hacerla
funcionar total o parcialmente en un ambiente JAVA o .NET sin tener que modificar
los objetos originales.
Por otra parte, las especificaciones funcionales son totalmente independientes de la
base de datos, por lo que se mantienen vlidas an luego de cambios en sta. Esta
propiedad permite que GeneXus pueda mantener automticamente todos los
programas que genera.
Hoy es comn que una misma aplicacin debe tener algunas partes corriendo en una
plataforma y alguna en otras, y que todas se puedan comunicar correctamente.
El desarrollo con GeneXus permite que una aplicacin pueda ser dividida para ser
ejecutada en diferentes plataformas y generada, para cada una, en el lenguaje ms
adecuado, obteniendo as arquitecturas de mltiples partes y que hagan un mejor uso
de los recursos disponibles.
Veremos una apreciacin de alguna de las interfaces del software de generacin de
cdigo como es Genexus.
Dr. Ing. Csar Baluarte Araya

Laboratorio de Tecnologas de la Informacin

La pagina principal de Artech


http://www.genexus.com

Si vamos por el tema Desarrollo gil de aplicaciones

Dr. Ing. Csar Baluarte Araya

Pagina:

54

Laboratorio de Tecnologas de la Informacin

Pagina:

Si retornamos a la pgina principal y Si luego ingresamos por Comunidad Genexus,


disponemos de varios centros, de los cuales GXtechnical contiene lo que se puede
disponer o bajar para ser estudiado u otro (triales por ejemplo)

Si esta registrado podr tener acceso a muchos elementos de Gxtechnical

Dr. Ing. Csar Baluarte Araya

55

Laboratorio de Tecnologas de la Informacin

Pagina:

56

Si retornamos a la pgina principal y Si luego ingresamos por Desarrollo de Aplicaciones


Mviles, disponemos de desarrollo de diversas plataformas (Android, W8, iOS,
Blackberry, as como de testeo en la nube, trabajo con GPS

Ir a la ficha PRODUCTOS e ingresar a cada uno de ellos y documentarse de que se trata


(ver videos)

Dr. Ing. Csar Baluarte Araya

Laboratorio de Tecnologas de la Informacin

Pagina:

57

Ir a Comunidad y Soporte,, seleccionar Training

Se puede efectuar una revisin (Overview), luego ingresar a Tutorial y all se encuentra la
basta gama de videos y tutoriales de Genexus y relacionados.
Ingresar por ejemplo a: Construccin de la Aplicacin, revisar todos los videos y nos
enfocaremos lo que hace Genexus para construir una aplicacin y otros temas.

Dr. Ing. Csar Baluarte Araya

Laboratorio de Tecnologas de la Informacin

Pagina:

58

Genexus puede ser descargado desde diversas pantallas, sin embargo podemos ir a la
pantalla principal y BAJAR TRIAL, nos muestra la pantalla de la que descargamos
Genexus y en la parte inferior de la pantalla encontramos informacin al respecto:

Descargar Genexus TRIAL Tutorial, primeros pasos


Ver caractersticas de la versin Trial
Ver Requerimientos mnimos (instalacin)

(La prctica tiene una duracin de 12 horas)

IV
ACTIVIDADES

01. Encienda su computador.


02. Efectuar la bsqueda en el site de Artech lo relacionado a Genexus
En ello efectuar la revisin de Genexus, as como en la ficha productos los
relacionados, como ser: Gxplorer, GxFlow.GxTest, GxPortal y otros.
Para comprender y tener mejor conocimiento de la herramienta Genexus realizar una
visita por cada una de las pestaas y accesos que tiene y as poder tener la visin
completa de este producto.

Dr. Ing. Csar Baluarte Araya

Laboratorio de Tecnologas de la Informacin

Pagina:

59

03. Para poder efectuar la descarga debe haberse registrado previamente y Artech le
proveer el o los cdigos de acceso. As tambin considerar los requerimientos
mnimos de instalacin y otros que se encuentran en la pgina de descarga
04. Mediante el manual de instalacin proceda a instalar la herramienta de trabajo.
Para ello considerar que debe haber obtenido la versin Trial de Genexus
correspondiente del site www.genexus.com ello de la pgina principal BAJAR
TRIAL, en la pgina que se muestra; y en la parte inferior de la pantalla descargar
el Tutorial y especificaciones de instalacin

Dr. Ing. Csar Baluarte Araya

Laboratorio de Tecnologas de la Informacin

Pagina:

Descargar Genexus TRIAL Tutorial, primeros pasos


Ver caractersticas de la versin Trial
Ver Requerimientos mnimos (instalacin)

Para descargar documentacin de los productos y otros de GENEXUS se tiene la


siguiente direccin de manera directa. Se debe haber registrado previamente.
http://www.genexus.com/Comunidad/comunidad?es

Dr. Ing. Csar Baluarte Araya

60

Laboratorio de Tecnologas de la Informacin

Pagina:

61

Se puede apreciar las historias de xito, las cuales seran conveniente poderlas revisar
cada una de ellas.

As mismo el site cuenta con plataforma de aprendizaje y capacitacin;


deber ingresar a la direccin http://training.genexus.com/principal/inicio?es y correr
todos los videos, los cuales lo instruyen para realizar la prctica.
O
En la pgina Principal Ir a Comunidad y Soporte, seleccionar Training
Se puede efectuar una revisin (Overview), luego ingresar a Tutorial y all se
encuentra la basta gama de videos y tutoriales de Genexus y relacionados.
05. En base al tutorial de la herramienta se proceder a:
Efectuar el conocimiento de las diversas funciones del software
Efectuar el crear una transaccin en base a una factura
Realizar paso a paso los puntos del tutorial
Deber considerar en cada paso del Tutorial, recorrer las funcionabilidades que se
tiene en cada pantalla y as comprender todo lo relacionado.
06. Seguir las pautas generales de creacin de creacin de aplicaciones con la
herramienta para realizar el desarrollo del trabajo con su grupo
Crear las transacciones
Efectuar el impacto
Complementar la creacin de las entidades relacionadas
Efectuar el impacto
Construir el prototipo de las transacciones creadas
Dr. Ing. Csar Baluarte Araya

Laboratorio de Tecnologas de la Informacin

Pagina:

62

Creacin del ejecutable de la aplicacin


Crear un primer reporte de una transaccin simple
Construir un segundo reporte de la complejidad mayor, ejemplo padre-hijo
(cabecera-detalle)
Construir un reporte de conjuncin de ms de tres transacciones (entidades)
07. Busque en el site de Artech (Genexus), lo relacionado a los temas a tratar; como
ejemplos y otros. Existe videos para lo que se necesita
08. Prepare los informes de entregables de cada avance para cada sesin de aprendizaje.

V
CUESTIONARIO
1.
2.
3.
4.
5.
6.

Qu es el desarrollo incremental?
Cules y en que se basan las herramientas incorporadas en Genexus?
Realice una comparacin entre el desarrollo a travs de un lenguaje de programacin
y el desarrollo a travs de un generador de aplicaciones
La herramienta al modelar los datos lo hace llegando a: Explique.
En cuales plataformas trabaja la herramienta?
Cuan importante es el modelo de la base de datos para trabajar con Genexus?

Dr. Ing. Csar Baluarte Araya

También podría gustarte