Está en la página 1de 18

ESCUELA POLITCNICA DEL EJRCITO DEPARTAMENTO DE CIENCIAS DE LA COMPUTACIN

CARRERA DE INGENIERA EN SISTEMAS E INFORMTICA

APLICACIN

DE SEAM FRAMEWORK PARA LA INTEGRACION DE EJB3+ RICH FACES MEDIANTE LA UTILIZACIN DE LA PLATAFORMA JAVA ENTERPRISE EDITION JEE WEB. CASO PRCTICO: SISTEMA ESCOLASTICO INTERNATIONAL CRISTHIAN SCHOOL. PARA SION

Previa a la obtencin del Ttulo de: INGENIERO EN SISTEMAS E INFORMTICA

POR:

CHUCHO KALO

Sangolqu, enero de 2011

Captulo 1.........................................................................................................1-4 1

GENERALIDADES......................................................................................1-4

1.1 INTRODUCCION.........................................................................................1-4 1.2 PLANTEAMIENTO DEL PROBLEMA.......................................................1-5 1.3 OBJETIVOS................................................................................................1-7 1.4 General.......................................................................................................1-7 1.5 Especficos.................................................................................................1-7 1.6 JUSTIFICACION.........................................................................................1-7 1.7 ALCANCE...................................................................................................1-8 Captulo 2.......................................................................................................2-11 2 MARCO TEORICO....................................................................................2-11

2.1 TECNOLOGIA...........................................................................................2-11 2.2 METODOLOGIA.......................................................................................2-11 2.2.1 SCRUM+XP............................................................................................2-11 2.2.2 Caracteristicas......................................................................................2-12 2.2.3 ROLES...................................................................................................2-13 2.2.4 PROCESO..............................................................................................2-14 2.2.5 Backlog..................................................................................................2-15 2.2.6 Fase Sprint............................................................................................2-15 2.2.7 Scrum Diario.........................................................................................2-15 2.2.8 Demostracin........................................................................................2-16 2.2.9 Retrospectiva........................................................................................2-16 2.2.10 PRODUCTOS.......................................................................................2-17 2

Captulo 1
1 GENERALIDADES

1.1INTRODUCCION La educacin en general siempre ha estado ligada al desarrollo de la

sociedad y los individuos. Siendo la educacin la etapa de formacin de los individuos en la que se desarrollan las habilidades del pensamiento y las competencias bsicas para favorecer el aprendizaje sistemtico y continuo, as como las disposiciones y actitudes que regirn su vida. En una educacin bsica de buena calidad el desarrollo de las competencias bsicas y el logro de los aprendizajes de los alumnos son los propsitos centrales, son las metas a las cuales los profesores, la escuela y el sistema dirigen sus esfuerzos. Para lograr esta educacin de calidad nace dentro de las instituciones educativas la necesidad de apoyarse en los sistemas informticos para automatizar sus procesos y atender eficientemente la necesidad institucional de informacin oportuna consistente y rpida en todos sus procesos. Por dicho motivo se ha planteado el desarrollo de un SISTEMA ESCOLASTICO PARA SION INTERNATIONAL CHRISTIAN SCHOOL. que brinde las facilidades necesarias para atender los principales procesos de la institucin.

Sin International Christian School y sus autoridades emprendieron este proyecto que naci debido a la necesidad de establecer un modelo de escuela con caractersticas que afiancen la educacin para futuras generaciones. 4

Por tal motivo la Escuela siempre ha estado en constante innovacin en su modelo de educacin.

1.2PLANTEAMIENTO DEL PROBLEMA Actualmente Sin International Christian School dispone de un sistema hecho en visual Basic 6.0 y una base de datos en Access los cuales no cubren las necesidades bsicas de un sistema. La escuela Sin International Christian School actualmente no dispone de la automatizacin de sus procesos acadmicos y administrativos siendo los principales afectados la escuela como institucin, los profesores, padres de familia y alumnos. En la poca escolar la escuela afronta dificultades en su sistema por problemas de manejo de informacin, como por ejemplo el generar un reporte de matriculacin de alumnos, informacin acerca de profesores o alumnos, en fin el sistema antiguo no puede brindar ciertas caractersticas como el trabajo en red para contar con una aplicacin distribuida; el sistema actual no cubre las necesidades de informacin para una escuela. El problema se manifiesta en los siguientes procesos: Proceso de Matriculacin: actualmente la escuela tiene una base de datos obsoleta (sin claves primarias ni relaciones) sin un front end completo ni amigable para manejar las matriculas de los estudiantes cada ao lectivo. Como consecuencia de esta carencia la escuela no puede generar las fichas informativas de cada alumno que tiene que ser entregadas al Ministerio de Educacin y Cultura. Adems al generar algn informe de alumnos matriculados para un determinado ciclo, el reporte da respuesta incoherente como nios matriculados en aos anteriores. 5

Proceso de Facturacin de matriculas: no tiene. Procesos de Control de asistencia de personal administrativo y docente: no tiene.

Proceso de manejo de nomina: no tiene. Proceso Acadmico: La escuela actualmente no cuenta con ningn tipo de sistema para la administracin de notas, asistencia y observaciones de los alumnos. Adems de no contar con la informacin necesaria acerca del profesor asignado a cada curso y cada materia. Otro problema en este proceso es la generacin manual de la libreta de calificaciones (record acadmico)

desperdiciando as tiempo y recursos en esta tarea.

En conclusin, la escuela carece de un sistema acadmico-administrativo apropiado para las necesidades acordes con la tecnologa actual para satisfacer a requerimientos de administracin en una Escuela y sus correspondientes actividades a fin de brindar una correcta y rpida atencin por eso se necesita dar solucin mediante un sistema informtico a medida que abastezca las mencionadas necesidades. 1.1OBJETIVOS 1.2General Utilizar Seam Framework integrando EJB3+Rich Faces para el caso prctico: Desarrollo del Sistema Escolstico para Sin International Christian School. 1.1Especficos.

Realizar el estudio y anlisis de Seam Framework conjuntamente con Rich faces, la arquitectura JEE y EJB 3.0. para determinar su aplicabilidad en sistemas web .

Utilizar Scrum+Xp+Uml como metodologa para el desarrollo del aplicativo web.

Realizar la Especificacin de requerimientos funcionales del sistema definidos por Sin International Christian School de acuerdo al Standard IEEE 830-1998.

Disear y ejecutar un plan de pruebas para ambiente web acorde al proyecto realizado.

Capacitar al personal sobre el uso del aplicativo web y brindar documentacin de apoyo a travs de los manuales tcnicos y de usuario.

1.1JUSTIFICACION La produccin de software en nuestro pas es una ciencia joven, la cual se ha impulsado rpidamente gracias al desarrollo de las ciencias informticas en las universidades y a organizaciones, surgidas con el objetivo de impulsar, facilitar y ordenar el uso masivo de servicios y productos de las Tecnologas de la Informacin, las Comunicaciones y la Automatizacin de procesos para satisfacer las expectativas de todas las esferas de la sociedad. La creciente demanda solicita aplicar procesos que ayuden a gestionar de mejor manera el tiempo y los recursos, y la solucin es un sistema software en plataforma Web.

En la actualidad existen sistemas orientados a la administracin de una escuela, pero no ofrecen la solucin completa a sus necesidades tanto acadmicas como institucionales. La incorporacin de nuevas tecnologas en el tratamiento de la informacin beneficiara a la Sin International Christian School dotando de procesos ms transparentes en su administracin. 1.2ALCANCE El alcance del proyecto viene dado por la creacin de un Sistema Informtico para la escuela Sin International Christian School que

automatizara y atender los siguientes procesos bsicos de la institucin: 1. Proceso Acadmico Dentro de este proceso el sistema nos permitir realizar las inscripciones de alumnos que desean ingresar a un nuevo ao lectivo. Posteriormente nos permitir gestionar la matriculacin de dichos alumnos. Para el efecto tambin ser una base de apoyo para la administracin de niveles, paralelos y materias tanto como la gestin de Profesores y

tutores. Luego en el transcurso de todo el ciclo educativo el nuevo sistema ser un apoyo para la administracin de asistencia tanto de alumnos como profesores. Finalmente dentro de este proceso el sistema atender todas las necesidades de administracin de notas para cada alumno. Inscripcin de Alumnos Matriculacin de Alumnos Administracin de niveles y paralelos Administracin de Profesores y tutores. Gestin de Asistencia de alumnos Ingreso y gestin de Notas. 1. Proceso Administrativo - Recursos Humanos El sistema para el proceso de administracin de recursos humanos nos permitir el manejo de Empleados de la institucin que incluye 8

Autoridades, Profesores, personal administrativo, personal de apoyo. Luego gestionara y reportara la asistencia, permisos y novedades de todos los empleados. Paralelamente a esto el sistema gestionara mensualmente la nomina y rol de pagos. Administracin de Personal y empleados Administracin de Asistencia Administracin de Nomina. 1. Proceso Administrativo Financiero La institucin tiene dentro de sus principales procesos el cobro de pensiones y venta de materiales del almacn. Procesos que sern automatizados por el sistema permitiendo la facturacin de materiales del almacn, as como la facturacin por rubros referentes a cuotas y pensiones mensuales. Proceso de Facturacin Administracin de Clientes Manejo de pensiones y cuotas. 1. Proceso Administrativo - Seguridad Como apoyo para los procesos mencionados anteriormente el sistema incluir el modulo de seguridad permitindonos el manejo de usuario, perfiles y roles para garantizar el acceso, seguridad y veracidad de toda la informacin del sistema. Administracin de usuario Administracin de perfiles Administracin de roles 1. Modulo Reportes Para todos los procesos el sistema permitir generar los principales reportes necesitados por el usuario. El proyecto ser instalado y funcionar en la intranet de la institucin. El proyecto no incluye configurar la intranet de la institucin, el modulo de contabilidad y migracin de datos excepto los acordados para pruebas.

Captulo 1
1 MARCO TEORICO

1.1TECNOLOGIA 1.2METODOLOGIA La metodologa usada ser Scrum combinada con Extreme Programming, Scrum toma su nombre y principios de los estudios sobre practicas de produccion por Hirotaka Taekuchi e Ikujijo Nonaka en la decada de los 80. A pesar que las Practicas Scrum son utilizadas para el desarrollo de productos tecnologicos, resulta valido en entornos que trabajan con requisitos inestables, y necesitan rapidez y flexibilidad, caracteristicas comunes en el desarrollo del software. En 1996, Jeff Sutherland y Ken Shwaber lo presentaron como proceso formal para gestion del desarrollo de software en OOPSLA 96 y a partir del 2001 formaron parte de la lista de modelos agiles de Agile Alliance. Scrum es una metodologia que requiere trabajo duro, la gestion del desarrollo no se basa en el seguimiento de un plan mas bien en la adaptacion continua a las circunstancias del avance de proyecto. El Control de la Evolucion del Proyecto se lo realiza mediante practicas de gestion Agiles como: Revision de Iteraciones 10

Desarrollo Incremental Desarrollo evolutivo Auto-organizacin. Colaboracion.

1.1.1SCRUM+XP Es una metodologa gil que gestiona proyectos de software, se definira como la metodologa de gestin de trabajo, cuyo objetivo es elevar al mximo la productividad de un equipo mediante la autoorganizacin. Scrum se basa en lo que llaman un Sprint que es un esfuerzo concentrado para en un periodo de tiempo lograr metas fijadas.1 Las practicas Scrum fueron diseadas por Schwaber y Sutherland para gestionar el desarrollo de software ,las cuales estn incluidas en la lista de modelos giles de Agile Alliance.

1.1.2Caracteristicas Las fases de la metodologa tradicional ahora pasan a ser tareas, lo seran las fases de requisitos del sistema, requisitos del software, anlisis, diseo, construccin, pruebas, y se ejecutaran de forma

1 http://www.scrumalliance.org/pages/what_is_scrum 11

secuencial. Normalmente a lo largo de pequeas iteraciones durante todo el desarrollo denominados Sprint. Se empieza a trabajar sin el detalle cerrado de lo que se va a producir. Se parte de la visin general. El descubrimiento paulatino durante el desarrollo, y las circunstancias que se irn produciendo en el entorno, dibujarn el detalle de forma paralela al desarrollo . Con Scrum conseguiremos la planificacin y seguimiento del proyecto, mientras que con Xp gestionaremos la parte de Desarrollo del software. Adems, utilizaremos modelos de UWE2 ,ya que presenta unos modelos de diseo que se ajustan al diseo de sitios web. Los diagramas de secuencia y componentes de UML en la parte del diseo sern parte de nuestro marco de trabajo. Los modelos sern: Modelo de Navegacin y Modelo de

Presentacin, ya que son muy tiles a la hora de poder visualizar como se navegar por un sitio web y como ser mostrada la informacin al usuario respectivamente. Para de esta forma facilitarnos encontrar errores de diseo, pues de un simple vistazo podemos observar si una pgina es difcilmente alcanzable mediante la navegacin o si hay informacin que no se representa en el sitio web El modelo de Navegacin se especifica la relacin interna del sitio web, en definitiva es como se navega por el sitio web.

UWE acrnimo de UML-based Web Engineering,es un enfoque de ingeniera de software para el dominio web.

12

El modelo de Presentacin provee una visin abstracta de la interfaz del usuario. Planificacin: ocurre durante la planificacin del sprint: el product owner propone funcionalidades a desarrollar, y el equipo de desarrollo las estima en horas de trabajo. Entregas pequeas y frecuentes: duran 1 a 4 semanas. Historias de usuario: funcionalidades que apuntamos en el product backlog. Diseo simple: Programar el mnimo cdigo posible que implementa una funcionalidad, sin adornos. Pruebas unitarias: Pruebas antes que el propio cdigo, al menos cuando es posible. Refactorizaciones: Cdigo en continua evolucin. Integracin continua: hacemos versiones frecuentes y automticas. Estndares de programacin: la gua de estilo de Oracle-Sun.

1.1.1ROLES El Scrum Team denominado como equipo de trabajo, son los desarrolladores del proyecto de software, ellos deciden como ser realizado el trabajo y como distribuir las asignaciones o requerimientos y cuanto van ha tardar en ello. El Product Owner representa la voz del cliente, trabaja con el Scrum Team desde una perspectiva del negocio, administra un Product Back log que es una lista de tareas con especificaciones de un producto, prioriza las funcionalidades posibles. El Scrum Mster Mantiene procesos y trabaja como el director del proyecto en las reuniones diarias que mantiene, su funcin es eliminar los

13

impedimentos posibles para el cumplimiento de objetivos de cada Sprint.

1.1.2PROCESO Anlisis Diseo Construccin Release

1.1.3Planificacion En Scrum un proyecto se ejecuta en bloques temporales cortos y fijos (iteraciones de un mes natural y hasta de dos semanas, si as se necesita). Cada iteracin tiene que proporcionar un resultado completo, un incremento de producto final que sea susceptible de ser entregado con el mnimo esfuerzo al cliente cuando lo solicite. Product Owner recoge todas las peticiones y especificaciones que son la base de los cambios del producto, pueden ser correcciones de errores y nuevas funcionalidades 14

Al mismo tiempo se hace una lista de prioridades, el Product owner toma las decisiones personalmente acerca de prioridades en los cambios y entregas. 1.1.4Fase Sprint El tiempo de cada Sprint es de 2 a 4 semanas, en esta fase se crea primeramente un Spring Backlog, y cuando las tareas y el tiempo requerido es definido el product owner pone en marcha la fase. En esta fase el Scrum Team trabaja por su propia

responsabilidad, al combinarlo con Extreme programming se adaptara su practicas de ingeniera para el anlisis, diseo, desarrollo y la entrega del producto ayudndonos con diagramas de UML. Scrum Diario Todos los das el Scrum Team y el Scrum Mster deben tener una breve reunin tratando tres preguntas esenciales Que has hecho desde la ultima reunin? Que hars hoy hasta la prxima reunin? Hay algo que impida lo que haces segn lo tenas planeado? Las dos primeras preguntas dan una visin a los participantes de cmo estn avanzando en el proyecto. La tercera pregunta sirve de base pilas para solucionar el problema. Todos los interesados en el proyecto pueden estar en la reunin pero solo el Scrum Team y el Scrum Mster pueden hablar.

15

1.1.1Cierre de Proyecto / Demostracin Cada Sprint termina con una demostracin en un grafico burndown que marca el da a da y el trabajo programado en horas y objetivos cumplidos. Retrospectiva Se analiza cmo ha sido su manera de trabajar y cules son los problemas que podran impedirle progresar adecuadamente,

mejorando de manera continua su productividad.

1.1.1Productos/Artefactos

16

Grafico de Scrum3

Product Backlog:
Listado con los requerimientos del sistema. Contiene: features, requerimientos de desarrollo (no funcionales), tareas investigativas, bugs. Es responsabilidad del Product Owner: Es una combinacin de funcionalidades y tareas Es un documento dinmico que incorpora constantemente las necesidades del sistema. Se mantiene durante todo el ciclo de vida incluso hasta el retiro del aplicativo.

Sprint Backlog
Son tareas determinadas por el equipo para realizar en un sprint y lograr al final del mismo un incremento de funcionalidad del aplicativo. Las tareas de mayor duracin deben intentar descomponerse en sub-tareas de ese rango de tiempo En Scrum se debe ir registrando los tiempos da a da para poder armar el grfico de avance del proyecto El equipo agrega tareas cuando lo crea necesario, pudiendo eliminar las que considere innecesarias, y ajusta estimaciones a medida se avanza.

Burndown Chart

3 http://es.wikipedia.org/wiki/Archivo:Ficha_scrum.png 17

El Burndown Chart es una grfica pblica que mide la cantidad de requisitos en el Backlog del proyecto pendientes al comienzo de cada Sprint. Dibujando una lnea que conecte los puntos de todos los Sprints completados, podremos ver el progreso del proyecto. Lo normal es que esta lnea sea descendente (en casos en que todo va bien en el sentido de que los requisitos estn bien definidos desde el principio y no varan nunca) hasta llegar al eje horizontal, momento en el cual el proyecto se ha terminado (no hay ms requisitos pendientes de ser completados en el Backlog).

18