Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Versin <1.0>
Historia de Revisin
Fecha 20/06/2005 Versin <0.1> Descripcin Creacin. Responsable Alejandro Bez Cristian Castaeda Diego Castaeda 3/07/2005 <1.0> Se especifican con mayor Alejandro Bez detalle las etapas de la Cristian Castaeda metodologa y se analizan nuevos aspectos de las Diego Castaeda interfaces grficas
INVESTIGADORES: ALEJANDRO BAEZ CRISTIAN CASTAEDA DIEGO CASTAEDA DIRECTOR: JAVIER SNCHEZ
Framework unificado para desarrollo de interfaces J2EE Metodologa para el diseo y desarrollo de Interfaces de Usuario Versin 1.0
TABLA DE CONTENIDO
1. Introduccin......................................................................................................... 3 2. Anlisis, diseo, implementacin y pruebas de una aplicacin en J2EE ............ 4 2.1 Modelo de negocio ........................................................................................ 4 2.2 Anlisis de requerimientos............................................................................. 6 2.2.1 Documento de requerimientos ................................................................ 6 2.2.2 Documento de casos de uso ................................................................... 8 2.3 Diseo del sistema ........................................................................................ 9 2.4 Diseo de la lgica del negocio ................................................................... 10 2.4.1 Modelo entidad relacin ........................................................................ 11 2.4.2 Modelo de clases persistentes: ............................................................. 11 2.4.3 Modelo de acceso a los datos (Patrn DAO) ........................................ 11 2.4.4 Definicin de servicios........................................................................... 12 2.5 Diseo de las interfaces de usuario ............................................................. 12 2.6 Implementacin ........................................................................................... 12 2.7 Pruebas ....................................................................................................... 13 3. Relacin con RUP ............................................................................................. 13 3.1 Qu es RUP? ............................................................................................ 13 3.1.1 Fase de Inicio........................................................................................ 14 3.1.2 Fase de Elaboracin ............................................................................. 14 3.1.3 Fase de Construccin ........................................................................... 14 3.1.4 Fase de Transicin................................................................................ 15 3.1.5 Artefactos .............................................................................................. 15 3.2 RUP en nuestra metodologa....................................................................... 16 4. Interfaz grfica J2EE ......................................................................................... 18 4.1 Elementos funcionales de una interfaz grafica ............................................ 19 4.1.1 Validaciones .......................................................................................... 19 4.1.2 Informacin a presentar y recolectar ..................................................... 20 4.1.3 Relacin entre datos ............................................................................. 20 4.1.4 Flujo de Pginas.................................................................................... 20 4.2 Elementos de diseo de una interfaz grafica ............................................... 21 4.2.1 Diseo estructural ................................................................................. 21 4.2.2 Componentes ........................................................................................ 22 4.2.3 Zona de Mensajes................................................................................. 23 4.2.4 Diagrama de navegabilidad................................................................... 23 5. Otros problemas................................................................................................ 24 5.1 Seguridad................................................................................................. 24 5.2 Reportes................................................................................................... 24 5.3 Performance............................................................................................. 25 5.4 Integracin con otro Software .................................................................. 25
Framework unificado para desarrollo de interfaces J2EE Metodologa para el diseo y desarrollo de Interfaces de Usuario Versin 1.0
1. Introduccin
Uno de los principales problemas en el desarrollo de aplicaciones J2EE es el poco conocimiento que se tiene de cmo unir la lgica del negocio con la forma en que se presentara esta a los usuarios finales del software. Es por eso de vital importancia para el desarrollo de este proyecto, la definicin de una metodologa que nos ayude a decir como se debe realizar este proceso, para reducir la complejidad inherente de este tipo de desarrollos. El objetivo de este documento es presentar una metodologa para el anlisis, diseo, implementacin y pruebas en desarrollos de software en J2EE, adems de esto definir como disear las interfaces graficas de usuario en este tipo de aplicaciones y describir algunos problemas que se deben tener en cuenta en el desarrollo de interfaces pero que van mas all del alcance de este proyecto.
Framework unificado para desarrollo de interfaces J2EE Metodologa para el diseo y desarrollo de Interfaces de Usuario Versin 1.0
Remitirse a los documentos de requerimientos, casos de uso y arquitectura de la videotienda en la pagina http://pegasus.javeriana.edu.co/~fwj2ee/
Framework unificado para desarrollo de interfaces J2EE Metodologa para el diseo y desarrollo de Interfaces de Usuario Versin 1.0
Tiempo de realizacin: Indica el tiempo promedio de duracin del procedimiento. Descripcin: Indica de manera detallada todos los pasos que se deben cumplir para la realizacin del procedimiento. Resultados esperados: Indica los resultados que se deben obtener luego de la realizacin del procedimiento.
Para un proceso se deben conocer: Nombre: identificador nico del proceso Objetivo: Indica la finalidad que se busca alcanzar con el desarrollo del proceso. Alcance: Define de manera especfica las reas, departamentos, procesos, etc. que van a ser afectadas por el proceso y sus resultados. Importancia: Indica el nivel de prioridad del proceso respecto a otros. Tiempo de realizacin: Indica el tiempo promedio de duracin del proceso. Procesos con los que se relaciona: Indica los procesos que intervienen o se ven afectados con el desarrollo del proceso. Resultados esperados: Indica los resultados que se deben obtener luego de la realizacin del proceso. Procedimientos implicados: Indica el conjunto de procedimientos que incluye el desarrollo de este proceso.
Luego de llenar este formato para todos los procesos que se quieren analizar, se podr determinar que procesos van a ser automatizados por el sistema. Para estos procesos se debern realizar las etapas posteriores de la metodologa.
Framework unificado para desarrollo de interfaces J2EE Metodologa para el diseo y desarrollo de Interfaces de Usuario Versin 1.0
Este anlisis servir como base para el diseo de la aplicacin. 2.2.1.1 Definicin de los usuarios del Sistema En esta seccin del documento de requerimientos se busca identificar las caractersticas de los usuarios que interactuaran con el sistema. Para esto se utilizara la definicin de roles. Un rol es un conjunto de funciones que debe cumplir el papel de una persona que interacta con el sistema. Para la definicin de un rol, se deben especificar los siguientes elementos:
2 3
Para Mayor Informacin dirjase a: Http://www.microsoft.com/spanish/MSDN/estudiantes/ingsoft/ingenieria/analisis.asp Para mas informacin remitirse al estndar IEEE 830-1998 (SRS)
Framework unificado para desarrollo de interfaces J2EE Metodologa para el diseo y desarrollo de Interfaces de Usuario Versin 1.0
Nombre: identificador nico de un grupo de usuarios que interactan con el sistema. Funciones: Conjunto de tareas que cumplen este tipo de usuarios. Privilegios: Conjunto de derechos que deben tener este tipo de usuarios dentro del sistema.
2.2.1.2 Requerimientos Funcionales Los requerimientos funcionales son todas las funcionalidades que debe satisfacer el sistema para cumplir con las necesidades de los usuarios, a partir del anlisis del negocio que se halla hecho. Para la definicin de los requerimientos funcionales se deben especificar los siguientes elementos. Id: Identifica de manera nica un requerimiento. Nombre: identificador de un requerimiento. Descripcin: Indica una funcionalidad que debe cumplir el sistema. Prioridad: indica la importancia de un requerimiento(Baja, Media, Alta).
2.2.1.3 Requerimientos No Funcionales Los requerimientos no funcionales son todos aquellas caractersticas que debe cumplir el sistema para responder de manera adecuada a todos los requerimientos Funcionales y a las caractersticas de funcionamiento que requiera el usuario. Para la definicin de los requerimientos no funcionales se deben identificar lo siguientes elementos: Id: Identifica de manera nica un requerimiento. Nombre: identificador de un requerimiento. Descripcin: Indica una caracterstica del sistema que ayudara a satisfacer los requerimientos funcionales Prioridad: indica la importancia de un requerimiento(Baja, Media, Alta).
2.2.1.4 Requerimientos de interfaz Los requerimientos de interfaz son todos aquellos elementos que debe proveer el sistema para permitir la interaccin entre el usuario y las funcionalidades que este tiene, con el fin de que en el proceso de diseo se tenga claridad de las interfaces que se deben crear y la relacin que debe existir entre ellas. Para la definicin de los requerimientos de interfaz se deben identificar lo siguientes elementos:
Framework unificado para desarrollo de interfaces J2EE Metodologa para el diseo y desarrollo de Interfaces de Usuario Versin 1.0
Id: Identifica de manera nica una interfaz grfica Descripcin: Indica los elementos que debe tener la interfaz. Requerimientos asociados: Indican las funcionalidades asociadas a la interfaz grfica.
En este nivel, no se va definir de manera detallada la interfaz, solo se pretende tener una primera aproximacin a los elementos que deben ser tenidos en cuenta en el desarrollo de estas.
2.2.2.1 Definicin de actores En esta seccin del documento de casos de uso, se especificaran el tipo de personas que de alguna manera interactan en alguno de los procesos del sistema, estos actores estimulan al sistema con eventos de entrada o la recepcin de algn resultado que este produzca. Para la definicin de los actores se deben identificar los siguientes elementos: Nombre: Identifica de manera nica un tipo de actor. Papel: Indica el tipo de estimulacin que ejerce el actor sobre el sistema.
2.2.2.2 Definicin de casos de uso En esta seccin del documento de casos de uso, se definen de manera formal todos los casos de uso en los cuales se ejecutan cada uno de los requerimientos funcionales que se especificaron en el documento de requerimientos (vase 2.2.1)
4
Framework unificado para desarrollo de interfaces J2EE Metodologa para el diseo y desarrollo de Interfaces de Usuario Versin 1.0
Para la definicin de cada caso de uso se deben tener en cuenta al menos los siguiente elementos: Nombre: Identifica de manera nica un caso de uso. Actores involucrados: Indica los actores que de alguna manera participan en el desarrollo del caso de uso. Propsito: Indica la finalidad que se busca con el caso de uso. Resumen: Breve descripcin de los eventos que se realizan en el caso de uso. Tipo: Indica si la implementacin del caso de uso es opcional u obligatoria. Importancia: Indica el nivel de prioridad del caso de uso(Baja, Media, Alta). Curso normal y alterno de los eventos: Indica la secuencia de eventos que suceden en la realizacin del caso de uso, especificando un curso normal y alterno, dependiendo si se presenta o no algn evento inesperado que afecte el desarrollo del caso de uso. Requerimientos que satisface: Hace una referencia a los identificadores de los requerimientos que satisface el caso uso.
2.2.2.3 Diagrama de casos de uso En esta seccin del documento de casos de uso, se presenta el diagrama de casos de uso. Un diagrama de casos de uso Explica grficamente un conjunto de casos de uso de un sistema, los actores y la relacin entre estos y los casos de uso.5 Para mayor informacin para la realizacin de estos diagramas a la especificacin de UML6.
5 6
Framework unificado para desarrollo de interfaces J2EE Metodologa para el diseo y desarrollo de Interfaces de Usuario Versin 1.0
Este tipo de arquitectura se puede considerar genrico para el desarrollo de aplicaciones J2EE; en nuestro caso hemos decidido utilizar los siguientes frameworks: Interfaz: Java Server Faces (JSF), Tapestry Servicios: JBoss y Tomcat Manejador de persistencia: Hibernate Base de datos: Oracle
Tomcat
Inter net
JBOSS
HIBERNATE
ORACLE
La herramienta que se desarrollara, servir para la creacin de aplicaciones con la arquitectura anteriormente descrita.
El orden de realizacin de estos productos no es estricto. Se puede utilizar otros diagramas tiles para el diseo, para mayor informacin remtase a la especificacin de UML. 8 Data Access Object, patrn que sirve para encapsular y administrar el acceso a los datos.
Framework unificado para desarrollo de interfaces J2EE Metodologa para el diseo y desarrollo de Interfaces de Usuario Versin 1.0
Luego del proceso de anlisis del sistema, se deben establecer un conjunto de entidades, con sus atributos, que permitan representar todos los objetos que estn involucrados en el problema a solucionar. Con este conjunto de entidades y con el documento de casos de uso, se debern establecer las relaciones entre estas. El objetivo del modelo de entidad relacin es representar grficamente estas entidades y las relaciones que existen entre ellas, as como definir la estructura que debe existir en la base de datos10.
Modelo entidad relacin, http://alvherre.atentus.cl/modBasico/node3.html Para mayor informacin: SILBERSCHATZ, A., et al. Fundamentos de Bases de Datos. Cuarta Edicin. McGraw Hill. 2002 Persistent Old Java Object, objeto al cual solo se le definen los atributos, los set y get para accesarlos. 12 Create, Read, Update, Delete. Operaciones que bsicamente se hacen sobre los datos
10 11
Framework unificado para desarrollo de interfaces J2EE Metodologa para el diseo y desarrollo de Interfaces de Usuario Versin 1.0
Con la definicin de los servicios, se puede tener claro como van a ser implementados los requerimientos funcionales del sistema; esta informacin ser vital para el proceso de integracin de la aplicacin.
2.6 Implementacin
En esta etapa se debe llevar a la realidad todo lo que se ha descrito en los modelos de las fases anteriores. Para tener un buen proceso de implementacin se recomienda tener en cuanta los siguientes aspectos: Manejo de versiones Definicin de iteraciones Documentacin
Framework unificado para desarrollo de interfaces J2EE Metodologa para el diseo y desarrollo de Interfaces de Usuario Versin 1.0
Estos aspectos se van tratar con mas detalle en la seccin 3, donde se establece la relacin entre nuestra metodologa y RUP.
2.7 Pruebas
La ultima etapa de nuestra metodologa, busca asegurar que las funcionalidades implementadas en el sistema funcionen de acuerdo a las especificaciones, para esto se deben definir un conjunto de pruebas que nos ayuden a verificar esto. La definicin de las pruebas y la administracin podrn ser manejadas con RUP, ver la seccin 3.
3.1 Qu es RUP?
RUP es un proceso de Ingeniera de Software en el cual se especifican una serie de tareas que se deben realizar con el fin de asegurar un producto de Software de alta calidad a sus usuarios finales. Dentro de RUP se pueden identificar cuatro etapas que son: Inicio Elaboracin Construccin Transicin
En cada una de estas etapas se propone la ejecucin de una serie de disciplinas, que se deben ejecutar de forma iterativa para cada una de las fases. Estas disciplinas son: Modelamiento del negocio: Busca identificar el negocio, para el cual se realizara el proyecto. Levantamiento de requerimientos: Identifica los procesos que deben ser automatizados, la manera como se deben proveer estos y los objetivos del proyecto. Anlisis y Diseo: Se busca determinar una solucin para alcanzar los objetivos del proyecto.
Framework unificado para desarrollo de interfaces J2EE Metodologa para el diseo y desarrollo de Interfaces de Usuario Versin 1.0
Implementacin: Disciplina donde se busca llevar a la realidad la solucin que se defini en el anlisis y diseo. Pruebas: Busca comprobar la correcta implementacin de la solucin dada.
Cada una de estas disciplinas se debe realizar en mayor o menor medida dependiendo de la fase del proyecto en que se encuentre; A continuacin especificaremos cuales son los objetivos de estas fases.
Establecer el objetivo y el alcance del proyecto de Software. Determinar requerimientos y casos de uso. Dar una primera aproximacin de la arquitectura en la cual se desarrollar el proyecto de Software. Estimar los costos y el cronograma del proyecto de Software Estimar los riesgos potenciales del proyecto de Software. Preparar un ambiente de soporte para el proyecto.
Asegurar que la arquitectura escogida cumpla los requerimientos y planes previamente establecidos. Definir los riesgos que la arquitectura escogida pueda traer al proyecto. Establecer una lnea de base de la arquitectura para mitigar los riesgos en los distintos escenarios y que soporte los requerimientos especificadas a un costo y tiempo razonable . Construir un prototipo que permita visualizar al usuario final una posible solucin del problema con el fin de mitigar riesgos en el futuro y adems levantar nuevos requerimientos del sistema.
Minimizar los costos y optimizar los recursos del proyecto. Alcanzar los niveles de calidad adecuados. Utilizar un control de versiones que sean practicas y rpidas. Completar el anlisis, diseo y desarrollo y probar todos los requerimientos funcionales. Iterativamente e incrementalmente desarrollar la totalidad del producto.
Framework unificado para desarrollo de interfaces J2EE Metodologa para el diseo y desarrollo de Interfaces de Usuario Versin 1.0
Permitir la modularidad del producto con el fin de tener equipos de software que desarrolle en paralelo.
Prueba para validar el nuevo sistema ante las expectativas del usuario final. Capacitacin a usuario y administradores del sistema Valorar si la lnea base del desarrollo cumple con la visin del proyecto y los criterios de aceptacin de este. Establecer un plan de soporte para el proyecto.
3.1.5 Artefactos
Debido a que el proceso de RUP es iterativo, no se puede definir claramente en que etapa se deben desarrollar los diferentes artefactos que propone RUP, en trminos generales consideramos que los siguientes artefactos son los mas importantes que define este proceso: Descripcin Disciplina Relaciona los casos de uso del Modelo del Negocio negocio con sus actores y relaciones. Modelo de Objetos Relaciona en un modelo la Modelo del Negocio del Negocio organizacin las entidades y trabajadores del negocio. Especificacin de Identifica las necesidades que debe Levantamiento de requerimientos satisfacer el sistema. requerimientos Casos de Uso Identifica un escenario, los eventos y Levantamiento de actores para la realizacin de un requerimientos proceso del negocio. Modelo de Casos de Relaciona grficamente los casos de Levantamiento de Uso uso. requerimientos Especificacin de Define la arquitectura sobre la que se Anlisis y Diseo arquitectura desarrollara el software Modelo de datos Define el modelo sobre el cual se Anlisis y Diseo creara la base de datos. Diseo de clases Define la forma en que se Anlisis y Diseo implementara la solucin. Diseo de paquetes Identifica los paquetes con los que Anlisis y Diseo se implementaran la solucin. Pantallas Define las interfaces de usuario. Anlisis y Diseo Mapa de Navegacin Indica la navegacin entre las Anlisis y Diseo pantallas de usuario. Plan de Pruebas Define las pruebas que se le Implementacin Artefacto Modelo de Casos de Uso del negocio
Framework unificado para desarrollo de interfaces J2EE Metodologa para el diseo y desarrollo de Interfaces de Usuario Versin 1.0
Implementacin Pruebas
Esta seccin es una breve introduccin al proceso de RUP, fue extrada de el documento About the RUP Configuration for Java Developers13.
13
RUP Configuration for Java Developers, Version 2002.05.20, Rational Software Corporation
Framework unificado para desarrollo de interfaces J2EE Metodologa para el diseo y desarrollo de Interfaces de Usuario Versin 1.0
En el grafico nos podemos dar cuenta, que nuestras disciplinas estn pensadas para realizarse mediante un proceso iterativo. Esto quiere decir que luego de realizarse por completo cada una de estas disciplinas se va a realizar nuevamente con base a la versin anterior, mejorndola hasta que cumpla con las necesidades planteadas. Por otra parte nuestros artefactos aunque no son iguales a los que RUP propone, son capaces de alcanzar los objetivos que la metodologa da para cada caso. A continuacin, vamos a relacionar nuestros artefactos con las diferentes disciplinas que propone RUP: Artefactos Modelo del Negocio Documento de Requerimientos Documento de Casos de Uso Modelo entidad relacin Modelo de clases persistentes Modelo de acceso a los Datos Documento de Interfaces de usuario Implementacin(Cdigo Fuente) Pruebas Disciplinas RUP Modelo del Negocio Levantamiento de requerimientos Levantamiento de requerimientos Anlisis y Diseo Anlisis y Diseo Anlisis y Diseo Anlisis y Diseo Implementacin Pruebas
De esta manera podemos ver como asociar la metodologa propuesta con el proceso que realiza RUP, logrando seguir este pero con los pasos que en la metodologa se proponen.
Framework unificado para desarrollo de interfaces J2EE Metodologa para el diseo y desarrollo de Interfaces de Usuario Versin 1.0
Los elementos comunes entre pantallas que se podran definir son: Encabezado (Opcional) Men (Opcional) Zona de Contenido Hojas de estilo (CSS)14 Zona de mensajes (error, xito)
Una practica recomendable para verificar la completitud entre las paginas definidas y las funcionalidades del sistema es llenar una matriz como la que se muestra a continuacin:
Pagina 1 Funcionalidad 1 Funcionalidad 2 .... Funcionalidad n X X X Pagina 2 X .... Pagina m
El marcar la interseccin entre una pagina y una funcionalidad, indica que la pagina implementa esa funcionalidad.
14
Las hojas de estilo en cascada permiten estandarizar la forma de presentacin de los componentes en una pagina. Para mas informacin http://www.csszengarden.com/
Framework unificado para desarrollo de interfaces J2EE Metodologa para el diseo y desarrollo de Interfaces de Usuario Versin 1.0
En esta seccin se describe en detalle componentes y caractersticas de las interfaces grficas en desarrollos J2EE. Para llevar esto acabo dividimos los elementos de una interfaz grfica en dos: los que hacen referencia a su funcionalidad y los que corresponden al diseo de la interfaz.
4.1.1 Validaciones
Validacin: Una validacin se lleva a cabo cuando se compara un dato con un valor esperado, buscando coherencia e integridad. Las validaciones que se van tener en cuenta son: Tipo: Se evala el dato respecto al tipo que se especifico que deba ser. Los tipo que se tendrn en cuenta son: o Nmeros (Enteros y decimales). o Cadena de Caracteres o Fechas. Longitud: Dependiendo de la longitud mnima o mxima que se requiera se evaluar si el dato cumple con esta caracterstica. Obligatoriedad: Se valida si en algunos casos el usuario tiene que llenar un campo para realizar una operacin. Caracteres Especiales: Dependiendo si el usuario necesita que algn tipo de dato tenga o no caracteres especiales se debe verificar si cumple con el requisito. Valores mximos(mnimos): En algunas aplicaciones los datos deben estar entre unos limites establecido segn los requerimientos del sistema. Esto tambin debe ser evaluado
Framework unificado para desarrollo de interfaces J2EE Metodologa para el diseo y desarrollo de Interfaces de Usuario Versin 1.0
Las validaciones que se generen pueden ser agrupadas en cdigo reutilizable(clase), que funcione para todas las pantallas que requieran las mismas.
Framework unificado para desarrollo de interfaces J2EE Metodologa para el diseo y desarrollo de Interfaces de Usuario Versin 1.0
El diagrama de secuencia describir el curso particular de eventos para cada uno de los casos de uso, mostrando la navegacin a travs de las pantallas definidas, incluyendo los autores y los eventos generados en dichas operaciones En el diagrama de secuencia se tiene los elementos: Pantalla X
Framework unificado para desarrollo de interfaces J2EE Metodologa para el diseo y desarrollo de Interfaces de Usuario Versin 1.0
Otra ventajas es que se le da uniformidad al sistema haciendo que este sea mas agradable estticamente. Entre los elementos que se deben tener en cuenta en el diseo encontramos: 4.2.1.1 Encabezado El encabezado se ubica en la parte superior de la pagina, por lo general contiene un logo o una imagen que identifique la aplicacin, es recomendable utilizar frames para que esta imagen se cargue solo una vez. 4.2.1.2 Men El men es necesario para una navegabilidad rpida, se puede ubicar en varios lugares y debe ser accesible desde cualquier pgina. Es una buena practica de programacin web el utilizar mens, para no tener que regresar a paginas y causar mayor demora. 4.2.1.3 Zona de Contenido La zona de contenido cambia constantemente, dependiendo de la operacin requerida por el usuario, en esta zona se podrn visualizar el resto de paginas de la aplicacin y a las que se pueda dirigir segn el tipo de rol de usuario que este en interaccin. 4.2.1.3 Hojas de Estilo Las hojas de estilo permiten que el diseo sea flexible, debido a que recogen un conjunto de caractersticas comunes a una serie de pginas web; as cuando convenga, cambiando una caracterstica de la hoja de estilo automticamente cambiar en todas las pginas web.
4.2.2 Componentes
Un componente es un elemento que posee unas caractersticas definidas, las cuales sirven para el cumplimiento de un objetivo para el que fue creado. Los componentes a usarse deben ser definidos en el diseo estructural, algunos son comunes pero la gran mayora son nicos para cada pagina. Al observar cuales se necesitan, tambin se debe tener en cuenta como van a configurarse, es decir como se van a manejar las validaciones y cuales se van a hacer. Al definir los componentes desde el comienzo se tiene la ventaja de que se tendr estipulado lo que se necesita para el desarrollo de las pantallas, as no se incluirn componentes que no aporten, porque todos estarn cumpliendo con un objetivo. En el documento de Descripcin de Pantallas y Navegabilidad se encuentra un ejemplo de cmo se definen las validaciones y los componentes necesarios para el caso de prueba.
Framework unificado para desarrollo de interfaces J2EE Metodologa para el diseo y desarrollo de Interfaces de Usuario Versin 1.0
Vale aclarar que cualquiera de los diseos anteriores es valido y adicionalmente que se pueden hacer mezclas entre estos utilizando dos o los tres al mismo tiempo.
Representacin de una pantalla Indica direccionamiento de una pantalla a otra Indica el evento que genero el direccionamiento
Etiqueta
Luego de la construccin de este diagrama se habr terminado el uso de la metodologa y se deber comenzar el proceso de implementacin de la aplicacin.
Framework unificado para desarrollo de interfaces J2EE Metodologa para el diseo y desarrollo de Interfaces de Usuario Versin 1.0
5. Otros problemas
A continuacin se presentaran algunos problemas que van mas all del alcance del proyecto pero que son importantes en el desarrollo de aplicaciones en J2EE.
5.1 Seguridad
En todos los desarrollos de software es de gran importancia la seguridad que deben tener estos frente a intrusos. La seguridad des software se puede asociar con la seguridad de informacin que bsicamente se refiere a la proteccin de sistema de informacin contra accesos sin autorizacin o la modificacin de informacin. Por ser los sistemas un desarrollo humano es muy probable que este quede con errores que no se identifiquen porque no afectan el funcionamiento normal para el que fueron creados, sin embargo siguen siendo errores y son estos los que se buscan por un atacante para generar problemas informticos en los sistemas; Debido esto es necesario determinar una seguridad al sistema tratando de mitigar estos ataques. Existen muchas maneras de realizar seguridad en Software, entre ellos encontramos otro software probado y que se puede adquirir en el mercado que haga esta tarea o mdulos creados por el programador del sistema que solucionen dicho problema. Es importante, e independiente de la manera como se valla a realizar la seguridad, que antes que todo se debe conocer los riesgos de seguridad que tiene el sistema en su contexto, una tarea del programador; Determinados estos riesgos, se debe proceder a identificar medidas de seguridad apropiadas que busquen solucionar de alguna manera los riesgos planteados, todo esto con el fin de buscar la mejor estrategia de seguridad para el sistema.
5.2 Reportes
Por la filosofa y arquitectura de las aplicaciones J2EE los reportes se han convertido de gran utilidad en este tipo de desarrollos; crear reportes de manera fcil, rpida, y til, es de gran aceptacin para los clientes y usuarios finales y con la ventaja que desde un browser se puede acceder a tan importante informacin. En el mercado existen diferentes software que ayudan a el diseo y construccin de reportes, entre ellos Jasper Report15que lo caracteriza por ser open source y ofrecer soporte, servicios y entrenamiento de manera gratuita.
15
Framework unificado para desarrollo de interfaces J2EE Metodologa para el diseo y desarrollo de Interfaces de Usuario Versin 1.0
5.3 Performance
Software performance hace referencia a la capacidad de reducir el coste y fiabilidad de los sistemas, evitar defectos en las aplicaciones, detectar cuellos de botellas y mitigarlos, detectar y anticipar la cada de servicios entre otras acciones que busca este deseable estado del software. Hay muchas compaas que ofrecen servicios de aseguramiento de esta necesaria caracterstica del software, claro a un costo, sin embargo si se realiza un correcto proceso de Ingeniera de Software la probabilidad de que el sistema tenga un buen rendimiento es mayor.
16