Issue tracker

2009 Facultad Politecnica UNA. Licenciatura en Ciencias de la Informacion. Ingenieria del Software II. Lic. Lilian Demattei. Lic. Romina Rojas. Integrantes: Mirian Correa Edgar Martinez ISSUE TRACKER ISSUE TRACKER 26/10/2009 Tabla de contenido 1 PROPOSITO DEL SISTEMA. ……………………………………………………………………………………………………….. 1 1. 1 2 OBJETIVOS DEL DISENO……………………………………………………………………………………………………………………. 1 ARQUITECTURA DEL SISTEMA. …………………………………………………………………………………………………. 2 2. 1 ARQUITECTURA ACTUAL…………………………………………………………………………………………………………………… 2 2. 2 ARQUITECTURA PROPUESTA ……………………………………………………………………………………………………………… 2 2. 2. 1 Vision Global ……………………………………………………………………………………………………………………. 2 2. 2. Diseno de la Arquitectura ………………………………………………………………………………………………….. 2 2. 2. 2. 1 2. 2. 2. 2 2. 2. 2. 3 2. 2. 2. 4 2. 2. 2. 5 Descomposicion en subsistemas ………………………………………………………………………………………………. 2 Topologia del sistema……………………………………………………………………………………………………………… 2 Gestion de la persistencia. ………………………………………………………………………………………………………. Aspectos globales y de seguridad……………………………………………………………………………………………… 3 Aspectos de Rendimiento y Tamano. ………………………………………………………………………………………… 3 2. 2. 3 2. 2. 4 Diseno de los subsistemas …………………………………………………………………………………………………. 3 Casos de uso ……………………………………………………………………………………………………………………. 4

Generar Issue ………………………………………………………………………………………………………………………… 5 Buscar Issue …………………………………………………………………………………………………………………………… 6 Gestionar Track ……………………………………………………………………………………………………………………… 7 Login al sistema ……………………………………………………………………………………………………………………… Gestionar Usuarios …………………………………………………………………………………………………………………. 9 Generar Reportes …………………………………………………………………………………………………………………… 9 2. 2. 4. 1 2. 2. 4. 2 2. 2. 4. 3 2. 2. 4. 4 2. 2. 4. 5 2. 2. 4. 6 3 DISENO DETALLADO ……………………………………………………………………………………………………………… 10 3. 1 INTRODUCCION. …………………………………………………………………………………………………………………………. 10 3. 2 DISENO

Lo sentimos, pero las muestras de ensayos completos están disponibles solo para usuarios registrados

Elija un plan de membresía
DETALLADO DE LAS CLASES. …………………………………………………………………………………………………… 10 3. 3 DISENO LOGICO DEL SISTEMA ………………………………………………………………………………………………………….. 10 3. 3. 1 Autenticacion. ………………………………………………………………………………………………………………… 0 3. 3. 2 Pagina principal del servidor central. ………………………………………………………………………………… 11 3. 3. 3 Visualizacion de los Issues ……………………………………………………………………………………………….. 11 3. 3. 4 Gestion de usuarios ………………………………………………………………………………………………………… 11 3. 3. 5 Dar de alta usuario …………………………………………………………………………………………………………. 1 3. 3. 6 Dar de baja / inhabilitar usuarios ……………………………………………………………………………………… 11 3. 3. 7 Gestion de Issue ……………………………………………………………………………………………………………… 11 3. 3. 8 Dar de alta y baja Issue …………………………………………………………………………………………………… 11 3. 3. 9 Mostrar un resumen de los Issues activos ………………………………………………………………………….. 2 3. 3. 10 Gestion de Track ………………………………………………………………………………………………………… 12 3. 3. 11 Dar de alta ………………………………………………………………………………………………………………… 12 Ingenieria del Software II ISSUE TRACKER Historial de revisiones Fecha 01/10/2009 Version 1. 0 Descripcion Primera version del trabajo. Se agregan modificaciones solicitadas en primera revision Se agregan apartados como: Descomposicion en subsistemas Topologia del sistema 31/10/2009 1. Descripcion de las interfaces Gestion de la persistencia Aspectos globales y de seguridad Aspectos de rendimiento y tamano Asi como las modificaciones solicitados en los diagramas, en la primera revision. 03/11/2009 1. 2 Correcciones ortograficas y de formato. Mirian Correa Edgar Martinez Mirian Correa Edgar Martinez Autor Mirian Correa Edgar Martinez 26/10/2009 Ingenieria del Software II ISSUE TRACKER 31/10/2009 1 Proposito del sistema. Proveer a las empresas desarrolladoras de sistemas una aplicacion sencilla para el seguimiento de incidentes ocasionados por errores o bugs de los sistemas proveidos por los mismos.

ISSUE TRACKER tiene como fin reemplazar el acostumbrado ambiente de trabajo en el que el cliente envia mails y/o genera reclamos via telefonica, ayudando a las empresas proveedoras de software a centralizar la atencion de los reclamos y brindar una sensacion de atencion a las quejas de los clientes. 1. 1 Objetivos del diseno Entre los objetivos principales del sistema se puede citar la capacidad de poder brindar en linea la posibilidad de que los clientes puedan interactuar con el sistema mediante una simple conexion a Internet, ofreciendo asi la posibilidad de que puedan estar ubicados en cualquier localidad por mas remota que sea.

Por esto es que la interfaz utilizada es la web, ya que con la misma no hay la necesidad de ir fisicamente en las instalaciones del cliente para poner en funcionamiento la aplicacion, sino que con saber la direccion web en la que esta publicada la pagina inicial del sisma mas el usuario y la contrasena bastan para acceder al soporte de la empresa proveedora.

Tambien se puede agregar que el sistema clasifica los casos en tres estados iniciales, como Recibido, Activo y Finalizado, los cuales permiten agrupar a los casos que fueron abiertos pero aun no fueron asignados a un encargado, al que esta en seguimiento para la busqueda de la solucion y al finalizado respectivamente. Esto permite la posibilidad de sacar reportes de los mismos y tener un historial de las soluciones obtenidas, lo cual puede ayudar a dar soluciones en otros clientes con el mismo problema.

Entre otras caracteristicas de la aplicacion estan los tipos de usuarios, los cuales estan clasificados entre usuarios clientes y usuario proveedor. El usuario cliente podra visualizar los casos abiertos por los usuarios de su misma empresa y dar seguimiento a estos, y los usuarios del proveedor podran tener acceso a todos los casos de cualquier cliente. Esto posibilita proteger los datos del cliente de manera a que no se produzca filtrado de informacion entre empresas clientes. Ingenieria del Software II

Pagina 1 ISSUE TRACKER 31/10/2009 2 2. 1 Arquitectura del sistema. Arquitectura actual Las empresas proveedoras de software generalmente se enfocan en mejorar sus aplicaciones, darles mas funcionalidades, solucionar errores de sistema, etc. y la atencion de los casos que abre el cliente lo organizan mediante mails, llamadas telefonicas o documentos internos, esto hace que sea mas tedioso ver el historial del seguimiento que se le brindo a un caso abierto o culminado. 2. 2 Arquitectura propuesta

La arquitectura que se propone es la de centralizar estos pedidos o casos en un solo medio, obteniendo asi la facilidad de tener un historial y visualizar mediante que pasos se llego a la solucion de errores del sistema o pedidos de nuevas funcionalidades. 2. 2. 1 Vision Global [Presenta la estructura global de la arquitectura del sistema y una breve descripcion de la asignacion de funcionalidad de cada subsistema. Descripcion de la arquitectura software elegida para el sistema (patron arquitectonico)] 2. 2. 2 Diseno de la Arquitectura

La aplicacion como se venia mencionando en apartados anteriores puede ser visualizado como dos tipos de usuarios del tipo cliente y proveedor. Esto permite que el cliente pueda visualizar solo los casos abiertos desde usuarios de la misma empresa, permitiendole ver si hay trabajos realizandose a la par de otros que el esta solicitando. 2. 2. 2. 1 Descomposicion en subsistemas Issue tracker esta subdividido en dos subsistemas principales el del cliente y del proveedor. El subsistema del cliente esta encargado de mostrar y permitir hacer modificaciones sobre los Issues y Tracks de los mismos ademas de permitir quitar reportes correspondientes.

De la misma manera pero con mas opciones, el subsistema proveedor permite a los usuarios que acceden a el administrar los Issues como los Tracks, ademas de esto da la posibilidad de gestionar todos los tipos de datos de definicion del sistema y acceder a reportes. 2. 2. 2. 2 Topologia del sistema. En el siguiente apartado se muestran las herramientas hardware y software a ser utilizados. Plataforma de desarrollo Para el desarrollo del sistema se utilizara el lenguaje JAVA con su tecnologia JAVA2EE. Con la cual se implementaran en egun su necesidad las siguientes tecnologias: JavaServer Faces Bibliotecas de marcas para JSP Mecanismos de seguridad (SSL) Ingenieria del Software II Pagina 2 ISSUE TRACKER Servidor de aplicaciones El servidor de aplicaciones a utilizar sera Apache Tomcat 6. 1. 2. 2. 2. 3 Gestion de la persistencia. En la gestion de la persistencia se utilizara la libreria Hibernate para de esta manera poder utilizar al maximo las ventajas de la tecnologia java, ademas de ayudar con la velocidad y la versatilidad que ofrece esta tecnologia.

Ya que Hibernate busca solucionar el problema de la diferencia entre los dos modelos de datos coexistentes en una aplicacion: el usado en la memoria de la computadora (orientacion a objetos) y el usado en las bases de datos (modelo relacional). Base de datos 31/10/2009 Oracle Database 10g Express Edition, la cual es la version free de la plataforma Oracle hasta 4GB de espacio en disco, lo cual provee una ventana amplia de aseguramiento de los datos asi como tambien la seguridad que ofrece las bases de datos Oracle. 2. 2. 2. Aspectos globales y de seguridad Los servidores J2EE de aplicaciones Web estan comenzando a ser cada vez mas populares en los ambientes corporativos. J2EE y segun varias fuentes se perfila como la plataforma por excelencia en aplicaciones corporativas para los negocios. Tomando este comentario como fundamento para el sistema Issue Tracker utilizara la tecnologia Java Enterprise Edition, de manera a poder utilizar las facilidades que este ofrece para el desarrollo sobre web y la seguridad que implica el uso de la misma 2. 2. 2. 5 Aspectos de Rendimiento y Tamano.

La base de datos a utilizar permite poder almacenar 4GB de datos de forma gratuita, esto permite tener una ventana amplia para el uso inicial de la aplicacion. Ademas de que el tipo de informacion a guardar no es semejante a un sistema de facturacion, es decir, los registros no seran demasiado voluminosos entonces se puede concluir que se tiene una ventana muy amplia para el uso del sistema. En el caso de que se llegara a utilizar por completo los 4GB se tendria que ampliar la capacidad de la base de datos comprando licencias del proveedor. . 2. 3 Diseno de los subsistemas El sistema esta dividido en dos partes fundamentales, la de administracion y seguimiento de Issue y la de generacion de informes, ademas de la administracion de usuarios y clientes. Las configuraciones de administracion pueden ser accedidas solo con un usuario del tipo administrador, en el que el mismo tiene la posibilidad de crear usuarios, asignarle perfiles, crear clientes y asignarle sus correspondientes usuarios entre otras.

El seguimiento de Issue es posible ser accedido ya sea como usuario del tipo cliente o administrador, en el mismo se puede visualizar el historial completo de un incidente dado, ademas de poder agregar comentarios y continuar con seguimiento del mismo hasta ser cerrado. Como tercera caracteristica se tienen los reportes que dependiendo del tipo de usuario podra acceder a la informacion privada de la empresa cliente o si es del tipo administrador podra acceder a la totalidad de los Issue cargados en el sistema, y podra listarlos por diferentes categorias, ya sea por prioridad, estado, fecha, cliente, Issue, etc.

Ingenieria del Software II Pagina 3 ISSUE TRACKER 2. 2. 4 Casos de uso Los casos de usos obtenidos en el primer analisis son los de Gestionar Issue, Buscar Issue, Login, Gestionar Track, gestion de Usuario, gestion de reportes y los actores son el cliente y el proveedor. Algunos de los mismos pueden ser visualizados en el apartado siguiente. 31/10/2009 Ingenieria del Software II Pagina 4 ISSUE TRACKER 2. 2. 4. 1 Generar Issue Generar Issue 31/10/2009 Super Use Case Author Date Brief Description Preconditions Post-conditions 9-sep-2009 17:37:08 Este caso de uso describe los pasos para gestionar la creacion, modificacion y cierre de un issue Estar logueado y autenticado como usuario cliente Generar el issue con la asignacion correspondiente del track Actor Input El usuario especifica el proceso que desea realizar, si crear, modificar o cerrar un issue System Response 1 2 Flow of Events 3 4 5 fin de caso de uso El usuario ingresa los datos correspondientes a la opcion El sistema verifica la opcion y despliega los mensajes correspondientes a la creacion o modificacion del issue

El sistema valida los datos ingresados, despliega los mensajes correspondientes y graba los mismos Error en la entrada de datos Author Date Brief Description Preconditions Post-conditions 29-sep-2009 17:56:43 Este caso de uso describe los pasos a seguir en el caso de error en la entrada de datos Haber ingresado datos en los modulos correspondientes Actor Input El usuario ingresa los datos correspondiente a las opciones y mensajes desplegados System Response 1 Flow of Events 2 3 El sistema valida los datos y en el caso de error despliega los mensajes correspondientes y vueve a la pantalla de ingreso de datos fin de caso de uso

Ingenieria del Software II Pagina 5 ISSUE TRACKER 31/10/2009 2. 2. 4. 2 Buscar Issue Login 29-sep-2009 18:00:08 Este caso de uso describe los pasos a seguir en la busqueda de un issue Estar logeado al sistema Actor Input El usuario ingresa los datos correspondientes a la busqueda del issue System Response Super Use Case Author Date Brief Description Preconditions Post-conditions 1 Flow of Events 2 3 El sistema valida los datos y despliega la informacion correspondiente. Fin de caso de uso

Error en la entrada de datos Author Date Brief Description Preconditions Post-conditions 29-sep-2009 18:02:58 Este caso de uso describe los pasos a seguir en el error de la entrada de datos de busqueda Estar logeado al sistema Actor Input El usuario ingresa los datos correspondientes a la busqueda System Response 1 Flow of Events 2 3 El sistema valida los datos, en caso de ser incorrectos o no encontrarse, emite los mensajes correspondientes y vuelve a la pantalla de busqueda fin de caso de uso Ingenieria del Software II Pagina 6 ISSUE TRACKER 31/10/2009 2. . 4. 3 Gestionar Track Super Use Case Author Date Brief Description Preconditions Post-conditions 29-sep-2009 18:05:16 Este caso de uso describe los pasos a seguir en la gestion de los track Existir un issue Genera el track asociado al issue Actor Input El proveedor ingresa datos para la asignacion o modificacion del track System Response 1 Flow of Events 2 3 Error en Track Author Date Brief Description Preconditions Post-conditions El sistema valida los datos ingresados y genera los mensajes correspondientes y graba las modificaciones fin de caso de uso

Miriam 29-sep-2009 18:10:49 Este caso de uso describe los pasos a seguir en el caso de error en los datos ingresados Existir un issue Generar datos para track Actor Input El proveedor ingresa los datos para la asignacion del track System Response 1 Flow of Events 2 3 El sistema valida los datos ingresados y en caso de error despliega los mensajes correspondientes y vuelve a la pantalla de gestion de track fin de caso de uso Ingenieria del Software II Pagina 7 ISSUE TRACKER 31/10/2009 2. 2. 4. 4 Login al sistema Super Use Case Author Date Brief Description Preconditions Post-conditions 9-sep-2009 17:45:06 Este caso de uso autentica al usuario del sistema Luego de esto, el usuario podra efectuar o no las demas operaciones dentro del sistema, dependiendo de su login satisfactorio o no Actor Input El usuario ingresa los datos de nombre y contrasena System Response 1 Flow of Events 2 3 Error al ingresar Login Author Date Brief Description Preconditions Post-conditions El sistema valida los datos y en caso de ser afirmativo despliega las opciones correspondientes fin de caso de uso 29-sep-2009 17:50:08 Este caso de uso especifica los pasos a seguir en caso de error en el login Flow of Events 2 3 Actor Input El usuario ingresa los datos de nombre y contrasena System Response El sistema valida los datos, en caso de ser erroneo despliega el mensaje correspondiente y vuelve a la pantalla de login fin de caso de uso Ingenieria del Software II Pagina 8 ISSUE TRACKER 31/10/2009 2. 2. 4. 5 Gestionar Usuarios Loguin 26-oct-2009 20:11:13 Permite crear, modificar, o eliminar un usuario Estar logueado con perfil de administrador Actor Input Ingresar con perfil de administrador System Response Desplegar las ventanas de alta, baja, modificacion de usuarios fin de caso de uso

Super Use Case Author Date Brief Description Preconditions Post-conditions 1 Flow of Events 2 3 2. 2. 4. 6 Generar Reportes Super Use Case Author Date Brief Description Preconditions Post-conditions 26-oct-2009 20:14:50 Genera los reportes del sistema Estar logueado al sistema Actor Input Ingresar al sistema System Response El sistema despliega opciones de generacion de reportes, por issue, tracker o usuario El usuario selecciona segun opciones presentadas por el sistema El sistema imprime verifica impresora e imprime los reportes solicitados fin de caso de uso 2 Flow of Events 3 4 5 Ingenieria del Software II Pagina 9 ISSUE TRACKER 31/10/2009 3 3. 1 Diseno detallado Introduccion. En el apartado actual se muestran las diferentes clases con los metodos a ser utilizados en el sistema, esto describe la parte estatica del sistema. 3. 2 Diseno detallado de las clases. 3. 3 3. 3. 1 Diseno Logico del sistema Autenticacion. El acceso al servicio por parte de los usuarios se hara a traves del servidor central, donde los usuarios se podran registrar y autenticar para poder acceder al servicio.

Desde ese momento, las credenciales del usuario en el servidor central seran validas para cualquiera accion con el sistema. Ingenieria del Software II Pagina 10 ISSUE TRACKER 3. 3. 2 Pagina principal del servidor central. La pagina principal contendra links para acceder a los reportes ya sea asignado al usuario, modificados recientemente, nuevos, cerrados. Asi como tambien un grafico estadistico de las cantidades de Issues Activos, Cerrados y Recibidos. Asi como la posibilidad de crear Issues, acceder a los Issues abiertos para crear track, etc. 31/10/2009 3. 3. 3 Visualizacion de los Issues

En la pagina principal se visualizaran ordenadas alfabeticamente todas las etiquetas de los Issues Abiertos. Cada etiqueta se mostrara con un tamano de fuente distinto y proporcional a su importancia. La medida de la importancia sera en funcion del numero de veces que aparece el Issue y de la ultima vez que anoto una incidencia con esa etiqueta 3. 3. 4 Gestion de usuarios Existira una pagina de administracion, para acceder a esta pagina se volvera a solicitar usuario y contrasena, y solo podran acceder usuarios de un tipo administrador y permitira las siguientes tareas: 3. 3. 5 Dar de alta usuario

El usuario administrador podra dar de alta usuario, y asignarle los perfiles necesarios asi como tambien poder asignarle un cliente especifico de manera a conservar la privacidad de los datos de los clientes entre si. 3. 3. 6 Dar de baja / inhabilitar usuarios El administrador podra eliminar un usuario definitivamente o inhabilitarlo temporalmente. 3. 3. 7 Gestion de Issue El sistema debera almacenar para cada Issue creado: La prioridad El usuario solicitante Descripcion del problema Fecha de ingreso Estado (Activo, Cerrado, Recibido) Archivos adjuntos Historial Asociado de tracker abiertos.

A continuacion se detallan las operaciones a realizar en el servidor central en cuanto a la gestion de las Issues: 3. 3. 8 Dar de alta y baja Issue Esta opcion del sistema permite crea un nuevo Issue asi como tambien darlo de baja. El darlo de baja contempla pasarlo a estado cancelado y necesariamente borrarlo del sistema. Ingenieria del Software II Pagina 11 ISSUE TRACKER 3. 3. 9 Mostrar un resumen de los Issues activos Indicando todas los Issues disponibles y el numero de usuarios conectados 31/10/2009 3. 3. 10

Gestion de Track Para dar solucion a un Issue es necesario darle seguimiento, este seguimiento es hecho mediante la carga de track, en los cuales pueden operar los usuarios clientes y los usuarios del lado del proveedor. El track principalmente debera almacenar El usuario participante Comentario Fecha Archivo adjunto 3. 3. 11 Dar de alta Esta opcion del sistema permite crea un nuevo Track asociandolo a un solo Issue. Los Issues abiertos por los usuarios asociados a la empresa cliente. Ingenieria del Software II Pagina 12