Presentacion med line ed bennett con ajax y dwr
-
Upload
garciafjgs -
Category
Documents
-
view
118 -
download
0
Transcript of Presentacion med line ed bennett con ajax y dwr
MedLine-Ed Bennettcon AJAX y DWR
Equipo Alef 2013Master diseño y desarrollo de aplicaciones webItinerario JavaUNED
1. Requisitos previos2. Relación con proyectos anteriores3. Estudio previo, planificación y presupuesto.4. Análisis5. Diseño6. SCRUM: Reparto de tareas7. Implementación. Archivos principales.8. Control de errores9. Pruebas
10. Versión con DWR11. Manual de usuario12. Archivos y configuración13. Componentes del equipo
ÍNDICE
1. Requisitos previos
El proyecto se desarrollará utilizando el IDE Eclipse. Se utilizará la plataforma de programación Java EE y se creará utilizando como base un Dynamic Web Project.Para su funcionamiento es necesario tener instalado un servidor Tomcat y un gestor de base de datos MySQL.La base teórica se extrae del libro “Ajax en J2EE” de Antonio J. Martín Sierra, con la ayuda de diferentes foros como “javahispano”,“stackoverflow” o “adictosaltrabajo” y en general con diferente informacíon de proyectos similares publicados en la Web.
volver a INDICE
2. Relación con proyectos anterioresEste nuevo proyecto, es un proyecto de consulta de las bases de conocimiento MedLinePlus y la Lista Ed Bennett utilizando la técnica AJAX para acceder a sus datos a través de un web service creado utilizando la arquitectura RESTful.El procedimiento de consulta se desarrolló en el proyecto MedLineBennett y el web service fue desarrollado en el proyecto MedLineBennettWS.Se ha necesitado la creación de un nuevo servicio web dentro de MedLineBennettWS y alguna pequeña modificación en las consultas realizadas a través de MedLineBennett.
volver a INDICE
3. Estudio previo,planificación y presupuesto.
Se realiza un estudio previo de la especificación del proyecto y se define el objetivo final en contacto con el Product Owner.Tras el estudio previo y una vez definidos los objetivos se crea un diagrama con la planificación general del proyecto.Se presenta un presupuesto inicial resumido para obtener una primera valoración, después de las discusiones con el Product Owner se llega a un acuerdo y se presenta el presupuesto final.
volver a INDICE
4. AnálisisPartiendo del estudio previo se especifican las funcionalidades que debe realizar el proyecto.Estas funcionalidades se transforman en una especificación de requisitos.Los requisitos se reparten en tres áreas principales de desarrollo:
1. crear un cliente REST sobre XHTML2. añadir un servicio más al servicio REST3. crear funcionalidad AJAX sobre el cliente
volver a INDICE
5. Diseño
Se crea un mockup, basado en el cliente RESTful del proyecto MedLineBennettWS, para el diseño visual de la página principal del proyecto.Dado que solo existe un tipo de usuario y una página, se omite el diseño navegacional y se realiza un caso de uso típico.Este caso de uso típico se relaciona directamente con la implementación en el diseño funcional.
volver a INDICE
6. SCRUM: Reparto de tareas
Para la realización del proyecto se utiliza la metodología de desarrollo SCRUM.Adaptando esta metodología a un equipo virtual, y utilizando TRAC como herramienta de gestión del desarrollo de software, se crean tickets que contienen las tareas a realizar. Estos tickets se reparten entre los miembros del equipo.Se establecen timelines que marcan el final de cada sprint.
volver a INDICE
7. Implementación. Archivos principales.
7.1 index.jspEs la página principal y única que contiene el formulario de consulta y la tabla donde se muestran los resultados.Se utiliza css para mejorar el diseño y la interacción con JavaScript.Hace uso de funciones JavaScript para mejorar su diseño e implementar la funcionalidad de los diferentes componentes que la conforman.
volver a INDICE
7. Implementación. Archivos principales.
7.2 medben.jsAlmacena las diferentes funciones JavaScript necesarias para la funcionalidad del proyecto.En todas las funciones hay una breve descripción de la funcionalidad que implementan.Se puede hacer un seguimiento del proceso de ejecución en el diagrama de flujo de datos, en el que se detalla la función que corresponde a cada proceso de la búsqueda.
volver a INDICE
8. Control de erroresEn el lado del usuario se muestra un mensaje en pantalla si se ha producido algún error durante la consulta.Se introduce un campo de texto bajo la tabla principal que informa al usuario del número de resultados o si su consulta no ha devuelto ninguno.En el lado del servidor, se crea un archivo application.log que se encuentra en la carpeta de despliegue del servidor en el que se vuelca información sobre la actividad de la aplicación así como los posibles errores que hayan ocurrido.
volver a INDICE
9. Pruebas9.1 Pruebas de unidadSe realizan pruebas de unidad para comprobar que las funciones principales cumplen con la funcionalidad requerida.Se realizan en primer lugar utilizando solo JavaScript y posteriormente se mejoran las pruebas utilizando la librería QUnit para JavaScript. Se crean dos páginas para realizar las pruebas:qTests.html y unitTests.html
volver a INDICE
9. Pruebas9.2 Pruebas de integraciónSe realizan pruebas de integración para comprobar la funcionalidad completa del programa.No se realizan pruebas exhaustivas ya que el servicio web se supone testado en versiones anteriores.Se podría considerar una versión Beta, con posibles fallos pero estable.Se han realizado dos videos con las pruebas: video1, video2 volver a INDICE
10. Versión con DWR (1)A mitad de proyecto el Product Owner solicita una nueva versión implementada utilizando la librería DWR.Se crea un nuevo proyecto con la configuración y archivos necesarios para implementar un proyecto DWR.En el lado servidor se crea una nueva clase Dwrwsrest.java que implementa los métodos de gestión con el web service y que, gracias a DWR, se puede utilizar desde el lado cliente.También se utliliza la clase Search.java, creada utilizando Jaxb, que parsea directamente la respuesta.
volver a INDICE
10. Versión con DWR (2)En el lado cliente se modifican las funciones JavaScript, sustituyendo todas aquellas funciones que tienen su equivalente en la librería utils.js de DWR, esto mejora significativamente la legibilidad y reduce el código.Finalmente se realiza el mismo test de integralidad del proyecto original, comprobando su correcto funcionamiento.Según se acordó con el Product Owner no se crea documentación propia de este proyecto, se entiende que es una posible versión del proyecto original.
volver a INDICE
11. Manual de usuario. Ya que la aplicación no presenta una gran complejidad de uso para el usuario y dado que realmente lo que se realiza es una adaptación del cliente del anterior proyecto, se ha confeccionado un manual de usuario en video, mostrando el funcionamiento de la aplicación.Para el funcionamiento de la aplicación es necesario tener instalado un servidor como Tomcat y MySQL.
volver a INDICE
12. Archivos y configuración● MedBenAjax ● MedBenAjaxDWR● Por defecto el puerto utilizado por el servidor es el 8080, se
puede modificar en el método localizaPalabra() del archivo medben.js en MedBenAjax y en el método busquedaRest() de la clase Dwrwsrest en MedBenAjaxDWR.
● Para poder probar la funcionalidad en Bennett es necesario tener creada la base de datos medlinebennett con datos cargados en la tabla bennett. Este archivo (.sql) genera la base de datos y carga datos directamente los datos en la tabla bennett.
● El usuario, la password y el puerto MySQL se encuentran en el archivo context.xml de MedBenAjax
volver a INDICE
10. Componentes del equipo AlefAlberto Delso
David Martín
Diego Fernández
Francisco García
Gonzalo García
Juan Sánchez
Reyes Badillo
Rubén Rodríguezvolver a INDICE