Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Año 2010
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Página 1
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
PRÓLOGO
La idea inicial del tema elegido para este trabajo ha surgido por la iniciativa personal de
aplicar y ampliar los conocimientos brindados desde la Universidad relacionados a temáticas de
desarrollo de aplicaciones Web, metodologías modernas de construcción de software, y
herramientas de desarrollo rápido de aplicaciones (RAD), especialmente las orientadas a tratar
proyectos incrementales y evolutivos.
Parte de este trabajo ha sido realizado en conjunto con el Sr. Fabián Escalante,
estudiante avanzado de la carrera, bajo la orientación de Mgter. Sonia I. Mariño; a quienes estoy
especialmente agradecido por la dedicación y paciencia empeñadas en este proyecto.
Expreso del mismo modo mi gratitud hacia aquellos docentes de esta Alta Casa de
Estudios que han puesto su mejor esfuerzo en la difícil tarea de formar un Profesional de
Sistemas.
Página 2
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
INDICE GENERAL
RESUMEN SINTÉTICO. 9
RESUMEN EXTENDIDO. 10
CAPÍTULO I: INTRODUCCIÓN. 13
Página 3
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
2.3-Actividad de Modelado. 66
2.3.1. Fase de Análisis. 66
2.3.1.1. Construcción del diagrama de casos de uso. 66
2.3.1.2. Construcción de los diagramas de comunicación. 68
2.3.1.3. Construcción de los diagramas de secuencia. 72
2.3.2. Fase de Diseño. 74
2.3.2.1. Diseño de Transacciones. 74
2.3.2.2. Diseño de Web Panels. 78
Página 4
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
3.1. Transacciones. 85
Página 5
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
INDICE DE FIGURAS
Página 6
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Página 7
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
INDICE DE TABLAS
Página 8
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
RESUMEN SINTETICO
El sistema de publicación fue concebido como una aplicación web, por lo que se
presenta una breve introducción a dicho tema. Asimismo, se incluye una síntesis de varias
metodologías que han sido estudiadas con el propósito de compararlas y elegir la más adecuada
para el desarrollo, como ser Proceso Unificado, Modularizado y Medible (basado en el Proceso
Unificado de Rational), Programación Extrema y la Metodología Genexus. Esta última, que ha
sido la empleada, fue adaptada tomando conceptos y diagramas de otros procesos, para lograr
un análisis más detallado del sistema.
Genexus ha resultado apto para la construcción del sistema, permitiendo lograr una
aplicación que cuenta con las funcionalidades necesarias, así como con una interfaz gráfica
agradable. Las interfaces principales y el modo de funcionamiento de la aplicación se exponen
en el último capítulo del trabajo.
Página 9
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
RESUMEN EXTENDIDO
El sistema fue concebido como una aplicación web. Se conoce como Aplicaciones
Web (o WebApps) a aquellos programas que los usuarios pueden utilizar mediante un
navegador de Internet. Las aplicaciones web son populares debido a la ubicuidad de los
navegadores y su conveniencia de utilizarlo como “cliente ligero”. La capacidad de implementar
y mantener éstas aplicaciones web sin instalar software particular en cada computadora es otra
razón de su popularidad.
Página 10
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Modelo de Capacidad y Madurez Integral (CMMI). MUM considera los conceptos y las
recomendaciones del proceso RUP, de la metodología Métrica versión 3 y del modelo CMMI
para mejorar la calidad del proceso en cuanto a las actividades que conforman el mismo.
Incorpora métricas para evaluar las distintas actividades del proceso particularmente, las
vinculadas a Requerimientos, Verificación, Implementación, Implantación y Administración.
MUM cuenta con una base común, y extensiones para tecnologías particulares (para desarrollos
OO y desarrollos con Genexus), este es un proceso que hace énfasis en la satisfacción del
cliente.
Página 11
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
de publicación son: posibilitar la divulgación de los resúmenes sintéticos de los Trabajos Finales
de la carrera, presentar información general de los TFA, alumnos, docentes orientadores, etc. y
almacenar estadísticas de consultas de los trabajos. Los actores del sistema de gestión integral
son: alumno, usuario general, y usuario administrativo, cuyo ingreso se valida mediante una
contraseña, y a partir del cual se derivan 7 subcategorías con distintos permisos de acceso. De
los mencionados, el usuario general, el administrador y el consultor de TFA interactúan con el
sistema de publicación.
Página 12
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
CAPÍTULO I:
INTRODUCCIÓN
También se presenta una breve descripción de la herramienta utilizada, así como de los
principales conceptos que intervienen en su utilización.
Página 13
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
lado del cliente, como JavaScript, Flash, etc., para añadir elementos dinámicos a la interfaz de
usuario y permitir una experiencia interactiva. Es tarea del navegador interpretar y mostrar cada
página, además de permitir el ingreso de datos y órdenes por parte del usuario.
Como desventaja, este tipo de aplicaciones suelen tener funcionalidades más reducidas
que las de escritorio, que se ejecutan localmente sobre el sistema operativo. Gracias a la
aparición de nuevas tecnologías la brecha es cada vez más pequeña, aunque surge la necesidad
del agregado de complementos (plug-ins) al navegador para ejecutar estas características
avanzadas. Otro cuestionamiento reside en que la disponibilidad de la WebApp frecuentemente
depende de terceros, por ejemplo del proveedor del servicio de Internet.
Diseño estético: se puede considerar a las aplicaciones web como una mezcla entre
publicación impresa y desarrollo de software, por tal motivo cobra vital importancia
el diseño gráfico de la misma. Esta consideración es aún más relevante para sistemas
en los que el marketing constituye su objetivo principal.
Página 14
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Seguridad: por ser accesibles a través de una red, las aplicaciones web requieren de
fuertes medidas de seguridad tanto a nivel de la aplicación, como a lo largo de la
infraestructura.
Las aplicaciones web generalmente están conformadas por varios niveles o capas
lógicas, donde cada uno de ellos tiene asignada una función específica.
La estructura más utilizada es la de tres capas, las que se conocen como capa de
presentación, aplicación y almacenamiento. El navegador web constituye el primer nivel
(presentación), un servidor web capaz de soportar alguna tecnología dinámica de contenidos
(ASP, PHP, Ruby) es el nivel intermedio (lógica de la aplicación) y un gestor de base de datos
conforma el nivel de almacenamiento. En una interacción típica, el navegador envía peticiones a
la capa intermedia (servidor web), ésta solicita consultas y actualizaciones en la base de datos
(tercera capa), y construye una interfaz como respuesta a la solicitud del navegador.
Página 15
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Además, la Ingeniería Web requiere contribuciones de áreas muy diferentes, como ser:
arquitectura de la información, ingeniería de requisitos, diseño gráfico, usabilidad, ingeniería de
software, ingeniería de datos, gestión de proyectos, entre otras.
Página 16
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Una de las características más destacables de este producto es la facilidad que posee
para generar un prototipo de la aplicación. El uso de prototipos asegura que la interpretación
de los requisitos del usuario haya sido correcta por parte de los analistas, al exhibirle formatos
de pantallas, informes, etc. Genexus va un paso más allá con este paradigma, ya que el
prototipo es una aplicación funcionalmente equivalente al producto final, hasta en los mínimos
detalles.
Es decir, ésta es una herramienta que parte de las “visiones de los datos”, captura su
conocimiento y lo sistematiza en una base de conocimiento (Knowledge Base o KB). A partir
de esta base es capaz de diseñar, generar y mantener de manera totalmente automática la
estructura de la base de datos y los programas de aplicación (ver Figura 1). En este repositorio
se mantienen las especificaciones de diseño de manera abstracta, o sea que no depende del
Página 17
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
ambiente en el que se implementará el sistema, lo que permite que a partir del mismo
repositorio se puedan generar aplicaciones funcionalmente equivalentes, para ser ejecutadas en
diferentes plataformas.
No sólo es posible desarrollar una aplicación que se ejecute sobre distintas plataformas.
Además existe la posibilidad de dividir una aplicación de manera tal que cada parte pueda ser
ejecutada en una plataforma diferente, generándose el código en el lenguaje elegido para cada
una.
Página 18
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Plataformas de ejecución:
Sistemas Operativos:
Internet:
Es riguroso
Página 19
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
cotidianamente. Estas visiones pueden ser de distinto tipo: pantallas, flujos de procesos,
listados, etc. y componen el aspecto exterior de la aplicación. Es la base de conocimiento la
encargada de almacenar estas visiones. También es en la KB donde se representan las reglas del
negocio.
Está demostrado que, dado un conjunto de visiones de datos de los usuarios, existe
siempre una base de datos mínima que las satisface, la cual, además es única. Esta parte del
proceso es automatizable porque es básicamente un problema lógico/matemático. La forma
general de trabajo en Genexus se observa en la Figura 2.
Página 20
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Determinar el impacto de los cambios sobre los datos y procesos, para evaluar la
conveniencia de aplicarlos.
Generar los programas necesarios para convertir los datos a la nueva representación
en la base de datos.
Generar código más eficiente, para los programas que no han sido modificados.
Genexus trabaja con conocimiento puro, lo que permite: generar programas, permitir la
interpretación de ese conocimiento por los seres humanos (minimizando la necesidad de
documentación adicional rigurosa), y operar automáticamente con ese conocimiento. La
manera de trabajar de Genexus permite la administración de ese conocimiento, de forma
independiente de cuestiones físicas, posibilitando integrarlo con otras fuentes, difundirlo
otorgando licencias a terceros para que lo integren en sus aplicaciones, etc. Es decir, se hace
posible el “negocio del conocimiento”. Por estas razones, Genexus puede describirse como
una herramienta de administración del conocimiento en sistemas de negocios.
Página 21
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Página 22
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Los cambios generalmente afectarán a los programas y/o a la base de datos del sistema.
En estas situaciones se realizará un análisis de impacto por parte de Genexus para ambos
aspectos, presentando en cada caso un informe sobre cuales programas deberán ser
regenerados en el primer caso, o sobre la manera en la que se realizará la reorganización de la
base de datos en el segundo caso, así como posibles problemas de conversión (inconsistencias
de los datos ya cargados con el nuevo diseño o las nuevas reglas). Con esta información, el
analista decide si sigue adelante o no.
A mediados de los 80, sus creadores se proponen la construcción de una herramienta que
pueda generar de forma automática el diseño de una base de datos en tercera forma normal a
partir de las visiones de los distintos usuarios. La versión 1.0 del producto fue publicada en
febrero de 1989. La versión a la que se refiere específicamente este informe en la especificación
teórica, es Genexus X (versión 10) Evolution 1. Para el desarrollo de la aplicación se utiliza la
versión de prueba (Genexus X Evolution 1 Trial) la cual está restringida en cuanto al generador
que utiliza (sólo soporta Microsoft .NET) y al DBMS1 (Microsoft SQL Server) y permite crear
un máximo de 90 atributos y 140 objetos.
Página 23
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Todos estos procesos son válidos y han sido probados en desarrollos reales, pero
presentan diferencias que los hacen convenientes para uno u otro tipo de proyecto. La
intención es estudiarlos, sopesando sus ventajas e inconvenientes, para luego decidir cuál será
utilizado en el desarrollo del sistema.
Este proceso toma como base el Proceso Unificado de Rational (RUP), Métrica versión
3, el Modelo de Capacidad y Madurez Integral (CMMI); por lo que previamente se da una
introducción a cada uno de estos temas. Además, MUM se encuentra basado en el Proyecto
Factorizado (también llamado Factor) creado por el mismo grupo en el año 2004 [PIS07].
Página 24
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Figura 3: Énfasis relativo en las distintas disciplinas según la fase en RUP. (Fuente: [BL04])
RUP es un marco genérico que puede especializarse para una variedad de tipos de
sistemas, diferentes áreas de aplicación, tipos de organizaciones, niveles de aptitud y diferentes
tamaños de proyectos. El RUP es esencialmente iterativo e incremental y en donde los
artefactos del proceso de desarrollo se van refinando en el tiempo. Además está dirigido por
casos de uso, y centrado en la arquitectura.
Página 25
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
implementación que llevan a cabo los casos de uso. De este modo no sólo sirven para iniciar el
proceso de desarrollo sino que le proporcionan un hilo conductor, ya que se avanza a través de
una serie de flujos de trabajo que parten de los casos de uso.
Los casos de uso y la arquitectura están profundamente relacionados. Los casos de uso
deben encajar en la arquitectura, y a su vez la arquitectura debe permitir el desarrollo de todos
los casos de uso requeridos, actualmente y a futuro.
Proceso Integrado: RUP es un proceso integrado porque provee una estructura que
incluye: ciclos, fases, flujos de trabajo, riesgos, controles de calidad, aspectos de gestión del
proyecto y control de configuraciones.
Página 26
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Las actividades son las unidades de trabajo que una persona en cumplimiento de un
rol podrá ejecutar. El objetivo de una actividad es crear o actualizar un producto.
Responde a la pregunta: ¿Cómo?
RUP se organiza en cuatro fases, las que se exponen a continuación (ver Figura 4):
Página 27
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Fase de Inicio: durante la fase de inicio se desarrolla una descripción del producto
final, y se presenta el análisis del negocio. El objetivo de esta fase es ayudar al equipo del
proyecto a decidir cuáles son los verdaderos objetivos del proyecto. Las iteraciones exploran
diferentes soluciones y arquitecturas posibles.
¿Cuáles son las principales funciones del sistema para los usuarios más importantes?
¿Se ha determinado con claridad el ámbito del sistema? ¿Se ha determinado lo que
va a estar dentro del sistema y fuera del sistema?
Página 28
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Casos de prueba
La mayoría de los casos de uso (80%) que describen la funcionalidad del sistema.
¿Se ha creado una línea base de la arquitectura3? ¿Es adaptable y robusta? ¿Puede
evolucionar?
¿Se ha desarrollado un plan del proyecto hasta el nivel necesario para respaldar una
agenda, costes, y calidad realistas?
Al final de esta fase, el producto contiene todos los casos de uso implementados, sin
embargo puede que no esté libre de defectos.
El sistema software
Página 29
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Los artefactos construidos en esta fase son los mismos que en la fase de construcción.
El equipo se encuentra ocupado fundamentalmente en corregir y extender la funcionalidad del
sistema desarrollado en la fase anterior.
Página 30
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Página 31
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Así los procesos de la estructura principal de Métrica Versión 3 son los siguientes:
Página 32
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Página 33
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
A su vez estas áreas de proceso se agrupan en cinco niveles de madurez de modo que
una organización que tenga institucionalizadas todas las prácticas incluidas en un nivel y sus
inferiores, se considera que ha alcanzado ese nivel de madurez. Es decir, CMMI permite una
aproximación paso a paso a la optimización de las prácticas de desarrollo de sistemas.
Gestión de requisitos
Planificación de proyectos
Gestión de proveedores
Aseguramiento de la calidad
Página 34
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Gestión de la configuración
3 – Nivel Definido. Además de una buena gestión de proyectos, a este nivel las
organizaciones disponen de correctos procedimientos de coordinación entre grupos, formación
del personal, técnicas de ingeniería más detalladas y un nivel más avanzado de métricas en los
procesos. Se implementan técnicas de revisión por pares (peer reviews).
Los procesos que hay que implantar para alcanzar este nivel son:
Desarrollo de requisitos
Solución Técnica
Verificación
Validación
Planificación de la formación
Gestión de riesgos
Los procesos que hay que implantar para alcanzar este nivel son:
Página 35
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Año 2000: Se crean dos modelos de proceso llamados Java I y Java II, ambos
basados en el Proceso Unificado (U.P.) de Booch, Jacobson y Rumbaugh.
Año 2002: se define MoDSGX, basado en MP Java y en RUP para desarrollo con
Genexus.
Página 36
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
desarrollo con Genexus (extensión GX) y otra para desarrollo orientado a objetos
(extensión OO)
MUM ([PB06] y [PBP06]) considera los conceptos y las recomendaciones del proceso
RUP, de la metodología Métrica versión 3 y modelo CMMI para mejorar la calidad del proceso
en cuanto a las actividades que conforman el mismo. Incorpora métricas, por ejemplo de
Aceptación de los Requerimientos, Pruebas Cubiertas, Productividad Orientada al Tamaño del
Producto, entre otras, para evaluar las distintas actividades del proceso particularmente las
actividades vinculadas a Requerimientos, Verificación, Implementación, Implantación y
Administración.
El proceso ha sido probado por grupos de estudiantes con clientes reales, permitiendo
depurarlo, y llegando a obtener excelentes resultados. Para una especificación completa del
proceso MUM consultar [PB06] .Además, existe un sitio Web que cual permite visualizar y
acceder desde una única página todas las actividades, entregables, roles y roles involucrados en
cada disciplina [PB07].
Página 37
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Estructura del proceso MUM. La estructura del proceso MUM se describe con los
siguientes elementos (ver Figura 8):
Página 38
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Entregables: son los productos tangibles del Proyecto, los cuales pueden ser
entrada y/o salida de las distintas actividades. Cumplen propiedades de calidad y
tienen una plantilla asociada que sirve como guía para realizarlos.
Página 39
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Página 40
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
una nueva versión del producto, también en este momento el equipo vuelve a evaluar las
prioridades del proyecto.
En 2001 diecisiete críticos de los modelos de mejora del desarrollo de software basados
en procesos, convocados por Kent Beck4 se reunieron para tratar sobre técnicas y procesos
para desarrollar software, como resultado elaboraron el Manifiesto Ágil5.
Los integrantes de la reunión resumieron los principios sobre los que se basan los
métodos alternativos, en oposición a las metodologías tradicionales, en cuatro postulados o
valores.
4
Kent Beck es un Ingeniero de Software, creador de la Programación Extrema y el Desarrollo Guiado
por Pruebas (TDD). Es también uno de los pioneros en Patrones de Diseño de Software
5 Sitio Web del Manifiesto Ágil (en inglés) http://www.agilemanifesto.org/
Página 41
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Los valores anteriores inspiran los doce principios del manifiesto. Son características
que diferencian un proceso ágil de uno tradicional. Los dos primeros principios son generales y
resumen gran parte del espíritu ágil. El resto tienen que ver con el proceso a seguir y con el
equipo de desarrollo, en cuanto a metas a seguir y organización del mismo. Los principios son
[CLP05]:
II. Dar la bienvenida a los cambios. Se capturan los cambios para que el cliente tenga
una ventaja competitiva.
III. Entregar frecuentemente software que funcione desde un par de semanas a un par
de meses, con el menor intervalo de tiempo posible entre entregas.
IV. La gente del negocio y los desarrolladores deben trabajar juntos a lo largo del
proyecto, de manera cotidiana.
VI. El diálogo cara a cara es el método más eficiente y efectivo para comunicar
información dentro de un equipo de desarrollo.
Página 42
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
XI. Las mejores arquitecturas, requisitos y diseños surgen de los equipos auto-
organizados.
XII. En intervalos regulares, el equipo reflexiona respecto a cómo llegar a ser más
efectivo, y ajusta su comportamiento en consecuencia.
Página 43
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
En este escenario, las metodologías ágiles emergen como una posible respuesta para
llenar ese vacío metodológico (ver comparación en Tabla 2). Por estar especialmente orientadas
para proyectos pequeños, las metodologías ágiles constituyen una solución a medida para ese
entorno, aportando una elevada simplificación pero sin renunciar a las prácticas esenciales para
asegurar la calidad del producto.
Página 44
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
1.3.2.2.1. Prácticas XP
Diseño simple. Se debe diseñar la solución más simple que pueda funcionar y ser
implementada en un momento determinado del proyecto.
Página 45
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Integración continua. Cada pieza de código es integrada en el sistema una vez que
esté lista. Así, el sistema puede llegar a ser integrado y construido varias veces en un
mismo día.
Cliente in-situ. El cliente tiene que estar presente y disponible todo el tiempo para
el equipo. Éste es uno de los principales factores de éxito del proyecto en XP El
cliente conduce constantemente el trabajo hacia lo que aportará mayor valor de
negocio y los programadores pueden resolver de manera inmediata cualquier duda
asociada. La comunicación oral es más efectiva que la escrita.
Página 46
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Simplicidad:
Comunicación:
Retroalimentación (feedback):
Página 47
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Coraje o valentía:
La programación en parejas puede ser difícil de aceptar, porque hace suponer que la
productividad se podría reducir a la mitad ya que sólo la mitad de los programadores está
escribiendo código, esta técnica requiere valentía por parte de los gerentes de programación.
No se debe emprender el desarrollo de grandes marcos de trabajo (frameworks) mientra el
cliente espera. En ese tiempo el cliente no recibe noticias sobre los avances del proyecto y el
equipo de desarrollo no recibe retroalimentación para saber si va en la dirección correcta. La
forma de construir marcos de trabajo es mediante la refactorización del código en sucesivas
aproximaciones.
Respeto:
El respeto se manifiesta de varias formas. Los miembros del equipo se respetan los
unos a otros, porque los programadores no pueden realizar cambios que hacen que las pruebas
existentes fallen o que demore el trabajo de sus compañeros. Los miembros respetan su trabajo
porque siempre están luchando por la alta calidad en el producto y buscando el diseño óptimo
o más eficiente para la solución a través de la refactorización del código. Los miembros del
equipo respetan el trabajo del resto no haciendo menos a otros, si no orientándolos a realizarlo
mejor, obteniendo como resultado una mejor autoestima en el equipo y elevando el ritmo de
producción en el equipo.
1.3.2.2.3. Roles XP
Cliente. Escribe las historias de usuario y las pruebas funcionales para validar su
implementación. Además, asigna la prioridad a las historias de usuario y decide
cuáles se implementan en cada iteración centrándose en aportar mayor valor al
negocio.
Página 48
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Son la técnica utilizada para especificar los requisitos del software. Se trata de tarjetas de
papel en las cuales el cliente describe brevemente las características que el sistema debe poseer,
sean requisitos funcionales o no funcionales. El tratamiento de las historias de usuario es muy
dinámico y flexible. Cada historia de usuario es lo suficientemente comprensible y delimitada
para que los programadores puedan implementarla en unas semanas. Las historias de usuario
son descompuestas en tareas de programación (task-card) y asignadas a los programadores para
ser implementadas durante una iteración.
1.3.2.2.5. Proceso XP
El cliente junto al equipo de desarrollo definen qué es lo que se quiere hacer. Para ello
utilizan las historias de usuario. Se estima el esfuerzo necesario para implementar cada historia,
el tiempo necesario para cada una debe ser corto, de aproximadamente una semana. Si es más
largo, hay que partir la historia en otras más pequeñas. Luego se acomodan en el orden en que
se van a desarrollar y se establecen las mini-versiones, de forma que cada mini-versión
implementa varias de las historias de usuario.
Página 49
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Esta planificación necesitará ser modificada a medida que avance el proyecto. Las
historias de usuario se modificarán, se quitarán o se añadirán nuevas sobre la marcha. Puesto
que el cliente estará presente día a día durante todo el proyecto, verá el efecto y el esfuerzo
necesario para las modificaciones pedidas y sabrá evaluar si merecen o no la pena.
Todos los días se hace una pequeña reunión a primera hora de la mañana con todo el
equipo en la que se comentan problemas, código que se está realizando, historias de usuario
terminadas, etc.
Cada vez que se consigue codificar y que funcione una historia de usuario, se le da al
cliente para que la vea, la pruebe y añada las posibles modificaciones para las siguientes mini-
versiones. Cuando se realiza un mini-versión completa (compuesta por varias de las historias de
usuario), se entrega al usuario final para que empiece a trabajar con ella y reportar incidencias o
mejoras.
Este ciclo se va repitiendo una y otra vez hasta que el cliente se dé por satisfecho y
cierre el proyecto.
Página 50
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Página 51
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Estas situaciones tienen como principal problema el alto costo que significa desarrollar
las modificaciones. Además son causa de falencias graves en cuanto a calidad del software
modificado, y deficiencias en cuanto a documentación.
Definir el objetivo
Se debe conocer los objetivos específicos de los usuarios de la aplicación y por medio
de qué actividades planean alcanzarlos, para determinar la manera en la que el sistema puede
colaborar en su concreción. Así se definirán los objetivos de la aplicación.
Página 52
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Este objetivo debe poder ser expresado en uno o dos párrafos. Si no es posible
explicitarlo, es muy probable que la idea no sea clara, o que el objetivo sea muy general. Este
documento debe ser conocido por todas las personas involucradas en el proyecto.
Esta acción consiste en especificar los recursos humanos que serán necesarios para el
proyecto de sistemas. Como mínimo debe contar con dos personas: el analista de sistemas
(mencionado como Analista Genexus en los cursos de capacitación de Artech [AC10]) y el
usuario. El analista debe tener experiencia en la utilización de la herramienta.
Es muy importante la participación de los usuarios en todas las etapas del desarrollo. El
analista obtendrá los requerimientos interrogando al usuario, y analizará sus opiniones y
reacción al presentarle los prototipos. El usuario debe tener predisposición para estas tareas.
Esta idea (fuerte integración del cliente en el proceso) es compartida con las Metodologías
Ágiles de desarrollo.
Se debe tener entrevistas con el nivel gerencial más alto posible, para obtener un
panorama sobre la posición e importancia relativas de la aplicación dentro del sistema
informático de la organización.
Análisis y Diseño
Página 53
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
ambiente del usuario final, lo que permite trabajar con un bajo nivel de abstracción, utilizando
términos y conceptos que son bien conocidos por el mismo. El objetivo es conseguir una
actitud participativa del usuario en el proyecto, logrando que considere al sistema como “su
obra”, en parte. De esta manera se obtendrá su compromiso en el trabajo de diseño, y gracias a
su seguimiento constante del proyecto, se obtendrá un incremento significativo de calidad.
Genexus captura el conocimiento por medio de objetos que se utilizan para representar
la realidad del usuario. Los principales tipos de objetos soportados son: Transacciones,
Procedimientos, Web Panels, Tipos Estructurados de Datos (SDT), entre otros.
Diseño de Transacciones
Para empezar con la definición de las transacciones, se comenzará con un estudio de los
principales objetos, reales o imaginarios, con los que el usuario interactúa. Es posible encontrar
la mayor parte de las transacciones a partir de:
Página 54
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Definir la estructura: ¿qué atributos la componen, y qué relación existe entre los
mismos?
Definir las fórmulas: ¿qué atributos son calculables a partir de otros? ¿cuál es el
cálculo necesario para cada uno?
Definir las reglas: ¿qué condiciones que debe cumplir la transacción (o sus
atributos)? Por ejemplo, establecer los valores por defecto de los atributos, y los
controles que se deben hacer sobre sus datos.
Incluir ayuda: agregar texto formateado para la ayuda a los usuarios en el uso de la
transacción.
Además de las transacciones en esta fase se definirán los demás tipos de objetos
mencionados. Su explicación, así como mayores detalles sobre las transacciones serán dados en
capítulos posteriores.
Prototipado
Página 55
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
A partir de una base de conocimiento (que contiene todas las especificaciones del
diseño) es posible generar varias implementaciones, para distintas plataformas de ejecución.
Cada una de estas versiones podrá ser optimizada para el ambiente en el cual correrá.
Página 56
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Figura 10: Interrelación entre etapas: diseño - prototipado y diseño – producción. (Fuente: [AC08])
Por otra parte, existen aspectos que son bien diferentes a las metodologías más
conocidas, como por ejemplo, incluir en el análisis la creación o personalización de la interfaz,
la muy escasa referencia a la implementación física del sistema, etc.
Página 57
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Realizando el análisis con orientación a los datos se pueden obtener las siguientes
ventajas:
Más estabilidad: los datos tienden a ser más estables que los procesos,
permitiendo desarrollar una aplicación más fácil de mantener.
En estas metodologías, una vez analizados los datos se estudia la realidad desde el
punto de vista de las funciones (análisis funcional). Sería conveniente que la especificación
funcional lograda sólo dependiese de la realidad. Sin embargo, generalmente, se obtiene una
especificación funcional que se refiere a las entidades del modelo de datos, que son
esencialmente equivalentes a las tablas de la base de datos.
Página 58
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Este enfoque presenta como primer inconveniente la dificultad en la práctica para construir un
modelo de datos completo, con suficiente nivel de detalle y objetividad por parte del analista.
Pero aún si fuera posible construir el modelo exacto, en toda organización será
necesario realizar cambios en los datos representados, al evolucionar la empresa. Considerando
que la especificación funcional se refiere a la base de datos, esto implicará modificar
manualmente el código de aplicación (segundo inconveniente). La principal desventaja para la
empresa en este panorama son los elevados costos de mantenimiento.
Dado que es dificultoso, en este contexto, propagar las consecuencias de los cambios en
la base de datos a los procesos, muchas veces se recurre a la alternativa de introducir nuevas
tablas redundantes, con la inevitable degradación de la calidad y el incremento mayor de las
necesidades de mantenimiento.
Por otra parte, se entiende que no es posible construir un modelo de datos estable
de la empresa, en cambio, se utiliza la filosofía incremental y el desarrollo basado en el
conocimiento. Esto es, se sabe que los datos cambian de acuerdo a las nuevas necesidades,
por lo tanto se disminuye la dependencia de las funciones con respecto a las estructuras de
datos. Se trata de que cambios en los datos no requieran modificar el código escrito por el
analista, sino que la herramienta genere nuevo código compatible con la representación
modificada. La diferencia entre los enfoques de las metodologías tradicionales y la metodología
Genexus se ilustra en la siguiente figura:
Página 59
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Figura 11: Comparación Metodología Genexus (flechas en amarillo oscuro) vs. Metodologías
tradicionales (flechas en amarillo claro). (Fuente: [EJ01])
Es la mejor adaptada para el uso con esta herramienta, esto se evidencia por
ejemplo en el hecho de que considera el diseño de transacciones, principal tipo de
objeto de Genexus, como una tarea particular dentro del diseño.
Página 60
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Página 61
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
CAPÍTULO II:
METODOLOGÍA
Página 62
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
consideraciones necesarias para guiar el desarrollo. Parte de la etapa de análisis, así como el
diseño de datos, son llevados a cabo en conjunto por ambos alumnos, ya que estas actividades
se realizan considerando el sistema completo. Las actividades exclusivas del Sistema de
Publicación de Tesinas son llevadas a cabo por el autor, quien ocupa el rol de analista Genexus,
encargándose del análisis, diseño de modelos, y desarrollo propiamente dicho en la herramienta
Genexus.
Facilitar la descarga de archivos en formato PDF con los datos principales de los
trabajos.
Es conveniente aclarar que durante la ejecución de las demás actividades del desarrollo
los requerimientos pueden ser reformulados, así como pueden aparecer nuevos requerimientos.
Página 63
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Administrador
Gestor de proyectos
Consultor de TFA
Gestor de alumnos
Gestor de exámenes
Gestor de resúmenes
Gestor de recursos
Usuario general
Alumno
Página 64
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Usuario General: es aquel que accede a través de la Web sin contar con una cuenta
en el sistema. Sólo puede consultar los datos públicos de los trabajos.
Página 65
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
tutoriales con ejemplos prácticos (Curso Básico Genexus X [AC09] y Curso Genexus X
[AC10]) y documentos en formato PDF ([AC08], [AC99]).
Página 66
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Figura 13: Diagrama de casos de uso del Sistema de Administración de la Asignatura en su conjunto.
Página 67
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
8
El diagrama de comunicación reemplaza al diagrama de colaboración en la versión 2.0 de UML.
Página 68
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Página 69
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Página 70
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Página 71
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Página 72
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Página 73
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
La fase de diseño incluye la creación de instancias de los objetos que Genexus provee
para representar la realidad, como por ejemplo las transacciones y los Web Panels.
Página 74
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Página 75
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Figura 24: Definiciones de dominios utilizados (se incluyen dominios creados automáticamente y
creados por el analista)
Página 76
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Atributo descriptor, aquel que tiene mayor significado semántico para la transacción.
Atributo simple.
Página 77
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Figura 27: Porción del modelo de datos que muestra las tablas creadas a partir de las transacciones
Profesional y Proyecto.
Página 78
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
las sentencias SQL necesarias para crear la estructura de la base de datos, de acuerdo al DBMS
seleccionado.
Página 79
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Figura 28: Modelo de datos completo. Las claves primarias se representan con el ícono y las claves
foráneas con círculo azul relleno.
Esta tarea consiste en el diseño de las interfaces gráficas en formato web que componen
el sistema.
Página 80
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
La Figura 29 muestra el proceso de diseño de la interfaz (web form) del web panel
BuscarTrabajosFinales, el cual contiene, en su parte superior, una tabla que agrupa text blocks,
variables y combo boxs dinámicos, que actúan como criterios de filtrado; y un grid, en la parte
inferior, que presenta los datos de Trabajos Finales, orientadores y alumnos, cuando se
satisfacen las condiciones.
La Figura 30 presenta la vista de diseño del web panel BuscarPorOrientador que tiene
dos tablas, dos controles de tipo grid, varios text blocks y un control de tipo botón. El grid
superior se utiliza para mostrar los nombres de los orientadores que cumplen con la condición
de filtrado, y el grid inferior sirve para presentar los proyectos en los que trabaja dicho
coordinador, una vez se selecciona uno de los ellos, y se presiona el botón “Ver Trabajos
Finales”.
Página 81
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
2.4.1. Codificación
En Genexus, esta fase se realiza de dos maneras muy distintas, dependiendo de las
funcionalidades a implementar. La primera es la codificación declarativa, que consiste
simplemente en definir reglas a nivel de los objetos de Genexus. Esta característica es de muy
alto nivel ya que libera al analista de la necesidad de especificar cómo se debe realizar una
función del programa y tiene como ventaja principal un importante aumento de la
Página 82
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
productividad. A modo de ejemplo se cita la regla Error que despliega un mensaje en caso de
cumplirse una condición de error. Así la definición Error (‘No se permiten Trabajos Finales sin
título’) if ProyectoTitulo.isEmpty() evita que se cree un TFA sin indicar su título y muestra un
mensaje. Las reglas se definen en la solapa Rules de los objetos de Genexus.
2.4.2. Prototipado
Además de las pruebas realizadas mediante prototipos, en esta fase del desarrollo se
realizan pruebas con datos reales facilitados por la asignatura Trabajo Final de Aplicación.
Una vez que el prototipo cumple correctamente con los requerimientos se procede a la
construcción de la aplicación que se utilizará en el ambiente de producción.
Página 83
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Página 84
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
CAPITULO III
HERRAMIENTA UTILIZADA
3.1. Transacciones
Una transacción es un proceso interactivo con una interfaz (Interfaz Windows o Web)
que permite a los usuarios crear, modificar o eliminar información de la base de datos, es decir
implementa automáticamente los procesos de alta, baja y modificación de registros. Estas
diferentes operaciones se realizan en una misma interfaz, con un diseño atractivo, sin la
necesidad de acceder a un menú para hacer una u otra. Es a partir de la estructura de las
transacciones como Genexus infiere la organización de la base de datos relacional, siempre
llevando los datos a una representación en tercera forma normal, sin redundancias.
Web Form: es la interfaz con la que interactúa el usuario. Cada transacción contiene un
Web Form (pantalla) mediante el cual se realizarán las altas, bajas y modificaciones en ambiente
Web. Las transacciones y otros objetos poseen un Web Form predeterminado, pero siempre es
posible agregar otros controles de usuario, variables y atributos a ser mostrados en pantalla, etc.
En ambientes Windows en lugar del Web Form se utiliza el Win Form. Ver Figura 25.
Página 85
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
programación tradicionales. Otro uso frecuente de las reglas es para especificar los parámetros
de entrada y salida que posee un objeto Genexus.
Ayuda: permite la inclusión de texto de ayuda, para ser consultado por los usuarios en
tiempo de ejecución de la transacción.
Los Web Panels son objetos Genexus que permiten al usuario realizar consultas
interactivas a la base de datos a través de una interfaz en tiempo de ejecución. Son flexibles, por
lo que se prestan para múltiples usos.
Los siguientes elementos, ya explicados para las transacciones, también se utilizan en los
Web Panels: Web Form, reglas, eventos, variables, ayuda, documentación y propiedades.
Además el Web Panel cuenta con el elemento Condiciones, que permite definir filtros que
deben cumplir los datos a ser tratados en dicho Web Panel.
El diseño de un web panel consiste en crear su interfaz con los controles provistos por
Genexus, como text blocks, tables, grid, etc. y las variables a ser utilizadas para entrada y/o
salida de datos en pantalla (Ver Figuras 29 y 30). Posteriormente en la solapa Events se
introduce el código necesario, siguiendo el modelo de eventos proporcionado por este
Página 86
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
generador. Al tratarse de un desarrollo para ambiente Web, existen una secuencia de eventos
predeterminada que se ejecuta al producirse un GET o un POST al servidor Web. Además
algunos tipos de controles tienen eventos característicos, como el evento Load de un grid (que
permite cargarlo con datos), y otros controles permiten la definición de eventos de usuario. La
codificación se realiza en un lenguaje propio de Genexus, permitiendo luego la generación de
código en varias tecnologías, y la utilización de distintos DBMS.
En los web panels la solapa Rules (reglas) generalmente se utiliza para definir los
parámetros de entrada y/o salida necesarios, mediante la regla Parm. Por ejemplo la definición
Parm(in:&ProyectoId, in:&TabCode) del web panel VerTrabajoFinal, indica dos parámetros de
entrada: ProyectoId y TabCode. En esta solapa solo pueden incluirse reglas de manera
declarativa, es decir, no se permite código procedural.
Un web panel puede ser definido como Web Component mediante su propiedad Type,
con el fin de permitir que sea utilizado dentro de los web forms de otros web panels o
transacciones, así como por separado. El objetivo de esta característica es permitir la
reutilización de la interfaz y el comportamiento del web panel.
Al elegir la opción Run Developer Menu (o presionar F5) del menú Build se procede a
la especificación, y posteriormente la generación de código, de los objetos contenidos en la base
de conocimiento que hayan sufrido modificaciones desde la última especificación/generación.
Al terminar este proceso se ejecuta el prototipo de la aplicación, para evaluar su desempeño,
iniciándose el Developer Menu. El Developer Menu, o menú del desarrollador, es una interfaz
web creada por Genexus para permitir al programador probar los objetos creados sin necesidad
de armar previamente la aplicación completa.
Página 87
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Página 88
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
CAPITULO IV:
Página 89
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Página 90
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Figura 33: Interfaz de búsqueda por distintos criterios para el Usuario General.
Página 91
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Las Figuras 35 y 36 presentan las interfaces de información del Trabajo Final y de sus
orientadores (mediante pestañas). Obsérvese que sólo se muestran los datos más generales del
trabajo y del orientador.
Página 92
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Página 93
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Figura 36: Interfaz de Información de los orientadores del TFA para el Usuario General.
Página 94
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Página 95
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Figura 38: Interfaz principal de la Aplicación, con las opciones del Modo Docente habilitadas.
Página 96
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Figura 39: Interfaz de búsqueda por distintos criterios para el Consultor de TFA.
Página 97
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Las Figuras 41 y 42, muestran las interfaces de Información del TFA y de los
profesionales (orientadores, jurados y coordinador) que intervienen de alguna manera en el
Trabajo Final. Por tratarse de una interfaz para el Consultor de TFA se exhibe toda la
información del TFA, así como la correspondiente con los jurados y el coordinador, a
diferencia de las interfaces para el Usuario General.
Página 98
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Página 99
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Figura 42: Interfaz de Información de los orientadores, coordinador y jurados del TFA para el
Consultor de TFA
Página 100
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
CAPITULO V:
CONCLUSIONES
Página 101
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
Página 102
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
REFERENCIAS BIBLIOGRÁFICAS
[BL04] Baño, A., Lasso, A. (2004). “Proceso Unificado. Un Caso Práctico”. Disponible en:
http://www.microsoft.com/Argentina/conferencias_tecnicas/download/ProcesoUnifica
do.PPT Fecha de consulta: Abril de 2010.
[DP06] Delgado, A., Pérez, B. (2006) “Modelo de Desarrollo de Software OO”. Grupo de
Ingeniería de Software. Universidad de la República. Uruguay. Disponible en:
http://www.fing.edu.uy/~bperez/public/ModOOJIISIC.pdf Fecha de consulta: Abril de
2010.
Página 103
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
[GJ09] Gonda, B., Jodal, N. (2009). “Genexus: Filosofía”. ARTech. Uruguay. Disponible en:
http://inti.browse.cl/gxpfiles/site001/design/style000001/00000000050000000747.pdf
Fecha de consulta: Abril de 2010.
[GJS96] Gonda, B., Jodal, N., Santo, K. (1996) “Desarrollando y Manteniendo Grandes
Aplicaciones Corporativas con Genexus”. ARTech. Uruguay. Disponible en:
http://genexus.es/documentos/pub/ARTech%20Desarrollo%20y%20manto%20de%20
grandes%20aplicaciones.PDF Fecha de consulta: Abril de 2010.
Página 104
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
[PB06] Pedrana Murolas, M., Bellini Pazos, M. (2006). “Proceso Modularizado Unificado y
Medible”. Instituto de Computación. Universidad de la República. Uruguay. Disponible
en: http://www.fing.edu.uy/~bperez/grado/Informe_final-Bellini-Pedrana.doc Fecha
de consulta: Abril de 2010.
[PB07] Pedrana Murolas, M., Bellini Pazos, M. (2007). “Sitio del Proceso Modularizado
Unificado y Medible”. Instituto de Computación. Universidad de la República.
Uruguay. Disponible en:
http://www.fing.edu.uy/inco/cursos/ingsoft/pis/proceso/MUM/index.htm Fecha de
consulta: Abril de 2010.
[PBP06] Pedrana, L., Bellini, M., Pérez, B. (2006). “MUM - Proceso de Desarrollo de
Software Modularizado, Unificado y Medible”. Instituto de Computación.
Universidad de la República. Uruguay. Disponible en:
http://www.fing.edu.uy/~bperez/public/Proceso%20de%20desarrollo%20de%20Softw
are%20Modularizado%20Unificado%20y….pdf Fecha de consulta: Abril de 2010.
[VA06] Villagra, S., Axentia (2006). “White Paper: Una Introducción a CMMI”. Disponible
en:
Página 105
Diseño de un Sistema de Información para la Publicación de Tesinas de Grado
Luis F. Dellamea Liva
Licenciatura en Sistemas de Información
http://www.sergiovillagra.com/Contenidos/Recursos/WP03%20Una%20Introduccion
%20a%20CMMI.pdf Fecha de consulta: Abril de 2010.
Página 106