View
218
Download
3
Category
Preview:
Citation preview
1
SISTEMA DE INFORMACIÓN PARA LA INSCRIPCIÓN Y CLASIFICACIÓN DE PARTICIPANTES EN CAMPEONATOS DE HAPKIDO
ANDREI EDUARDO FLOREZ MATIZ ANDRES FABIAN LAGUNA GARZON
UNIVERSIDAD DISTRITAL FRANCISCO JOSE DE CALDAS FACULTAD TECNOLOGICA
TECNOLOGIA EN SISTEMATIZACION DE DATOS BOGOTA D.C.
2016
2
SISTEMA DE INFORMACIÓN PARA LA INSCRIPCIÓN Y CLASIFICACIÓN DE PARTICIPANTES EN CAMPEONATOS DE HAPKIDO
ANDREI EDUARDO FLOREZ MATIZ Código: 20121078064
Andrei_nepo@hotmail.com
ANDRES FABIAN LAGUNA GARZON
Código: 20111078048 Andres02000@hotmail.com
Proyecto presentado como requisito para optar el título de
Tecnólogo en Sistematización de Datos
PROYECTO DE DESARROLLO TECNOLOGICO
Tutor: Carlos Alberto Vanegas Ingeniero de Sistemas
UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS FACULTAD TECNOLOGICA
TECNOLOGIA EN SISTEMATIZACION DE DATOS BOGOTÁ
2016
3
NOTA ACEPTACION
___________________________
___________________________
___________________________
__________________________ ING. CARLOS ALBERTO VANEGAS
__________________________ ING.MARILUZ ROMERO GARCIA
__________________________ ING.JOSE VICENTE REYES MOZO
Bogotá DC 23 de MAYO de 2016
4
TABLA DE CONTENIDO
Pág.
INTRODUCCIÓN................................................................................................................08
1. FASE DE INICIO............................................................................................................09
1.1 PLANTEAMIENTO DEL PROBLEMA......................................................................09
1.1.1 DESCRIPCION DEL PROBLEMA.......................................................................09
1.1.2 FORMULACIÓN DEL PROBLEMA.....................................................................10
1.2 JUSTIFICACIÓN.......................................................................................................10
1.3 OBJETIVOS..............................................................................................................11
1.3.1 OBJETIVO GENERAL.......................................................................................11
1.3.2OBJETIVOS ESPECÍFICOS...............................................................................11
1.4 ALCANCES Y LIMITACIONES................................................................................12
1.4.1 ALCANCES........................................................................................................12
1.4.2 LIMITACIONES..................................................................................................12
1.5 MARCO DE REFERENCIA........................................................................................12
1.5.1 MARCO HISTÓRICO.........................................................................................12
1.5.2 MARCO TEÓRICO............................................................................................14
1.5.3 MARCO CONCEPTUAL....................................................................................22
1.6 FACTIBILIDAD..........................................................................................................23
1.6.1 FACTIBILIDAD TÉCNICA.................................................................................23
1.6.1.1 RECURSO HUMANO……………………………………………………….23
1.6.1.2 HARDWARE Y SOFTWARE……………………………………………....23
1.6.2 FACTIBILIDAD OPERATIVA.............................................................................24
1.6.3 FACTIBILIDAD LEGAL..................................................................................... 24
1.6.4 FACTIBILIDAD ECONÓMICA...........................................................................24
1.7REQUERIMIENTOS...................................................................................................25
1.7.1FUNCIONALES................................................................................................. 25
1.7.2NO FUNCIONALES........................................................................................... 25
1.8 CRONOGRAMA DE ACTIVIDADES.........................................................................26
2 FASE DE ELABORACION..............................................................................................28
2.1MODELO DEL NEGOCIO..........................................................................................28
2.2 DEFINICION DE ACTORES......................................................................................29
2.3 DIAGRAMA DE CASOS DE USO.............................................................................30
2.4DOCUMENTACION CASOS DE USO.......................................................................33
2.5MODELO DEL DOMINIO...........................................................................................41
3FASE DE CONSTRUCCION............................................................................................42
3.1 DIAGRAMA DE CLASES..........................................................................................42
3.2DIAGRAMA ENTIDAD – RELACION........................................................................43
3.3 DIAGRAMAS DE SECUENCIA.................................................................................43
3.4 DIAGRAMAS DE ESTADO.......................................................................................46
3.5 DIAGRAMAS DE COMUNICACIÓN.........................................................................48
5
3.6DIAGRAMAS DE ACTIVIDADES..............................................................................51
4 FASE DE IMPLEMENTACION........................................................................................56
4.1DIAGRAMA DE COMPONENTES.............................................................................56
4.2DIAGRAMA DE PAQUETES.....................................................................................56
4.3DIAGRAMA DE DESPLIEGUE..................................................................................57
4.4PRUEBAS DEL SISTEMA.........................................................................................58
4.5DICCIONARIO DE DATOS………………………………………………………………..61
CONCLUSIONES...............................................................................................................64
RECOMENDACIONES.......................................................................................................66
BIBLIOGRAFIA..................................................................................................................67
ANEXOS…………………………………………………………………………………………...68
6
LISTA DE TABLAS Tabla 1. Costos de desarrollo. ......................................................................................... 25
Tabla 2 Actividades Cronograma. .................................................................................... 26
Tabla 3 CRONOGRAMA. ................................................................................................ 27
Tabla 4 CASO DE USO (Crear evento) ........................................................................... 34
Tabla 5 CASO DE USO (Inscribir deportistas al evento) .................................................. 35
Tabla 6 CASO DE USO (Registro deportistas) ................................................................ 36
Tabla 7 CASO DE USO (Registro de resultados) ............................................................ 37
Tabla 8 CASO DE USO (Observar reportes) ................................................................... 38
Tabla 9 CASO DE USO (Modificación de evento) ............................................................ 39
Tabla 10 CASO DE USO (Registrarse a evento creado) ................................................ 40
Tabla 11 PRUEBA DE FUNCIONALIDAD POR PARTE DEL ORGANIZADOR ............... 58
Tabla 12 PRUEBA DE FUNCIONALIDAD POR PARTE DEL DELEGADO ...................... 59
Tabla 13 PRUEBA DE FUNCIONALIDAD POR PARTE DEL JUEZ ................................ 60
Tabla 14 CIUDAD ............................................................................................................ 61
Tabla 15 CLUB ................................................................................................................ 61
Tabla 16 COMBATE ........................................................................................................ 61
Tabla 17 DEFENSA ......................................................................................................... 61
Tabla 18 DEPARTAMENTO ............................................................................................ 62
Tabla 19 DEPORTISTA ................................................................................................... 62
Tabla 20 DESCALIFICACION .......................................................................................... 62
Tabla 21 DESCALIFICACION_DEPORTISTAS ............................................................... 62
Tabla 22 EDAD ................................................................................................................ 63
Tabla 23 EVENTO ........................................................................................................... 63
Tabla 24 GÉNERO .......................................................................................................... 63
Tabla 25 GRADO ............................................................................................................. 63
7
LISTA DE ILUSTRACIONES
Ilustración 1LOGO XHTML….………………………………………………………...15 Ilustración 2 Esquema de la evolución de HTML y XHTML….………….………...17 Ilustración 3 LOGO FRAMEWORK PRIME FACES...……………….……………..18 Ilustración 4 MySQL……………………………………….………………..………....20 Ilustración 5 Diagrama casos de uso…………….…………………………....……. 30 Ilustración 6 CANCELAR EVENTO…………………….……………..………….…..31 Ilustración 7 CONSULTAR EVENTOS…………………………..……………….….31 Ilustración 8 CREAR EVENTO…………………………………………………….....31 Ilustración 9 EDITAR PERFIL………………………………………………………...32 Ilustración 10 MODIFICAR EVENTO……..……………………………….…………32 Ilustración 11 SOLICITAR USUARIO ORGANIZADOR……………………………33 Ilustración 12 SOLICITAR USUARIO DELEGADO…………………………………33 Ilustración 13 Diagrama de dominio………………………………………………….41 Ilustración 14 Diagrama de clases……………………………………………………42 Ilustración 15 Diagrama de secuencia (crear evento) ……………………………..43 Ilustración 16 Diagrama de secuencia (Inscribir deportista al evento)…………..44 Ilustración 17 Diagrama de secuencia (Registrar deportista) ……………………..44 Ilustración 18 Diagrama de secuencia (Registrar resultados)…………………….45 Ilustración 19 Diagrama de secuencia (Observar reportes)………………………45 Ilustración 20 Diagrama de estados (Administrador)………………………………46 Ilustración 21 Diagrama de estados (Jueces)………………………………………47 Ilustración 22 Diagrama de estados (Delegado)……………………………………47 Ilustración 23 Diagrama de estados (Organizador)…………………………………48 Ilustración 24 Diagrama de comunicación (Crear evento)…………………………48 Ilustración 25 Diagrama de comunicación (Inscribir deportistas al evento) ……..49 Ilustración 26 Diagrama de comunicación (Registrar deportistas en plataforma).49 Ilustración 27 Diagrama de comunicación (Registro de rultados)………………...50 Ilustración 28 Diagrama de comunicación (Observar reportes)…………………..50 Ilustración 29 Diagrama de actividades (Crear evento)……………………………51 Ilustración 30 Diagrama de actividades (Inscribir deportistas al evento…………52 Ilustración 31 Diagrama de actividades (Registrar deportistas en la plataforma).53 Ilustración 32 Diagrama de actividades (Registro de resultados)..……………….54 Ilustración 33 Diagrama de actividades (Observar reportes) ……………………..55 Ilustración 34 Diagrama de componentes………..………………………….………56 Ilustración 35 Diagrama de paquetes……………..…………………………….……57 Ilustración 36 Diagrama de despliegue………………………………………………57
8
INTRODUCCIÓN
Para las organizaciones es de vital importancia la información, su manejo,
seguridad, facilidad de consulta y la integridad de la misma, debido a que
basándose en ella se pueden tomar decisiones que repercutirán directamente a la
organización y/o a sus integrantes; en este orden de ideas la información
almacenada servirá para el desarrollo de la organización teniendo en cuenta esto
se debe administrar de tal manera que asegure su veracidad.
Este proyecto está enfocado a entidades deportivas que necesiten un plan de
organización, administración y almacenamiento para toda la información
correspondiente a sus miembros, deportistas y en especial datos referentes a
eventos y/o campeonatos (pertenecientes a la disciplina marcial coreana
denominada Hapkido) organizados por esta entidad; eventos donde se debe
manejar un gran volumen de información de gran valor para deportistas,
entrenadores y clubs, pues en esta se ve reflejado su desarrollo personal y
colectivo en la disciplina.
Debido al gran avance tecnológico actual y las ventajas que ofrece a la hora de
administrar de información, ofreciendo optimas prestaciones en cuanto a
seguridad, integridad y veracidad; este proyecto busca dar una solución
tecnológica a la entidad deportiva, de la información referente a la realización del
campeonato y más aún apoyar el desarrollo de las competencias a nivel regional
teniendo registros de deportistas, resultados, rankings, posiciones, y demás datos
importantes para los allegados al evento deportivo; se pretende generar como
solución a este problema un sistema de información.
9
1. FASE DE INICIO 1.1 PLANTEAMIENTO DEL PROBLEMA 1.1.1 Descripción del problema
El Hapkido es un arte marcial coreano que a su vez es un deporte, en el cual, al
igual que en cualquier otro se organizan campeonatos.
A la hora de organizar campeonatos en una liga de Hapkido, debe realizar el
siguiente proceso que consta de varias etapas.
En la etapa de inscripción un delegado de cada club envía la información de todos
los deportistas a inscribir en el campeonato a los organizadores de esté, bien sea
en una hoja de cálculo Excel o bien en un archivo de Word, presentándose en este
momento un problema, al estar en uno de estos archivos la información es
vulnerable a cualquier modificación o perdida.
El campeonato se organiza basándose en la información obtenida por los
delegados de cada club, esta información se clasifica teniendo en cuenta, para
categoría de combate (edad, peso, rango, género) para defensa personal (Rango)
y para Categoría de saltos (edad, genero); toda esta clasificación la realiza la
persona encargada de la organización del campeonato de manera manual.
El principal problema se encuentra en el bajo nivel de seguridad que información,
adicionándole la organización y clasificación la información solicitada por parte del
organizador, debido a que es un gran volumen de información; además que se
debe organizar basándose en las categorías de participación, lo que puede llevar
a que se puedan cometer errores a la hora de la clasificación y categorización de
los participantes.
Otra situación que se puede encontrar es que el delegado se tarde en él envió de
la información al organizador, lo que conlleva a que se pierda más tiempo en la
clasificación de categorías, incomodando así al organizador, delegado y porque no
al deportista, además de atrasar la organización del evento.
Durante el desarrollo del campeonato la información es impresa y llevada a las
mesas de jueces los cuales son los encargados y responsables de ella, a medida
que se lleva a cabo la competencia dicha información va siendo actualizada al
escribir resultados de las contiendas y de competencias.
10
El tener la información a lo largo de la competencia en físico y el estarla
manipulando puede llevarla a su deterioro, pérdida, manipulación inescrupulosa y
demás acciones que atenten contra la integridad de la información.
Acción posterior al culminar el evento deportivo se tiene tanto la información de
cada competidor como sus resultados finales en el campeonato de manera física
en formatos que se han diligenciado durante el transcurso del evento.
Ya que la información acerca del campeonato, deportistas y resultados se
encuentra de forma física a la hora de querer consultar algún histórico, o resultado
de alguna categoría se tendrá que buscar en todo el volumen de información que
se tiene en este momento, lo que es una acción muy engorrosa y tediosa para
quien la esté realizando.
1.1.2 Formulación del problema
¿Qué tan viable y veraz será el desarrollar un sistema de información web que
permita realizar los procesos de Inscripción, Organización de los campeonatos de
Hapkido y culminación de los mismos, en donde se almacene y gestione toda la
información referente a estos de forma segura y eficaz antes, durante y después
del desarrollo de las competencias; tendrá este proyecto un gran impacto en el
desarrollo de esta disciplina?
1.2 JUSTIFICACION La organización y desarrollo de las competencias de Hapkido realizadas por la
Ligas son de vital importancia para el desarrollo del deporte del mismo modo como
lo es para los deportistas que participan en dichos eventos, la organización de los
campeonatos implica gran responsabilidad tanto con su desarrollo como con la
información que se maneja en los eventos esto con el fin de tener en cuenta todos
los campeonatos en los cuales participa cada competidor, ya que el registro de los
deportistas se tiene en cuenta para clasificaciones a distintos eventos nacionales.
Debido al gran volumen de información que se maneja a medida que se
desarrollan los campeonatos y a la importancia que tiene para la continuidad de
los mismos, es vital que esta información tenga un buen nivel de seguridad,
además de permitir un buen manejo de los datos relacionados con cada deportista
11
y su desarrollo deportivo, facilitando las acciones de consulta y modificación de la
mismos según la necesidad. Para lograr que estas acciones se lleven a cabo con
la seguridad y efectividad requerida, la mejor opción es el desarrollo de un sistema
de información, en donde se implementen los métodos necesarios para que la
información de los deportistas y de los campeonatos sea almacenada y
gestionada de manera óptima, cumpliendo con los requerimientos anteriormente
mencionados.
El desarrollo de este proyecto evidenciará un mejor y más ordenado
almacenamiento de la información con lo que el desarrollo de la competencia
podrá ser acelerado y más eficaz, del mismo modo como el acceder a estadísticas
a nivel de deportista, club y avances deportivos.
1.3 OBJETIVOS 1.3.1 Objetivo general Desarrollar un sistema de información Web que permita realizar los procesos de
inscripción, Organización y Desarrollo de campeonatos de Hapkido.
1.3.2 Objetivos específicos
Levantar la información necesaria referente a la organización de
campeonatos de Hapkido, mediante entrevistas realizadas al personal
administrativo de la liga y observación directa de los procesos que se
ejecutan durante el desarrollo del campeonato.
Elaborar el módulo de registro que permita a los delegados inscribir la lista
de deportistas que participaran en el campeonato.
Desarrollar el módulo de competencia, en donde los jueces se encargaran
de ingresar los marcadores y puntajes de cada combate.
Construir un módulo de reportes, que según el tipo de usuario, permita -
acceder a información sobre resultados, puntajes, calendario y datos de
interés para deportistas y público en general.
Implementar un módulo administrativo para la gestión de usuarios,
permisos y creación de campeonatos.
Realizar las pruebas que permitan detectar fallos y errores que posea el
sistema, para hacer su debida corrección.
12
1.4 ALCANCES Y LIMITACIONES 1.4.1 Alcances
El software permitirá al delegado de cada club realizar la inscripción de los
deportistas que participaran en el campeonato.
Confirmada la información de los deportistas a participar el sistema será
capaz de clasificar de las categorías de competencia y realizara las
pirámides respectivas.
Durante el campeonato tan solo los jueces tendrán acceso a la información
pertinente para el desarrollo del evento, permitiéndoles actualizar puntajes
de las contiendas que se estén llevando a cabo.
El sistema se encargara de presentar el informe respectivo al campeonato
ya culminado, indicando la tabla de medallero según deportista o club.
El software permitirá consultar el ranking a nivel regional de los deportistas
que han puntuado e histórico de torneos.
1.4.2 Limitaciones
El software será desarrollado para que se ejecute desde el navegador web
de un computador con conexión a internet.
La modificación de los datos dependerá del tipo de usuario y de la etapa
que se esté desarrollando del torneo.
1.5 MARCO DE REFERENCIA
1.5.1 Marco histórico El Hapkido constituye un método sistemático de enseñanza de técnicas de Defensa Personal y de lucha. Busca a su vez transmitir valores como la humildad, la superación propia, la perseverancia, el fomento de la salud, la amistad y el compromiso. El Hapkido fue fundado por Choi Yong Sul (1904-1986). Al parecer, él desarrolló el
sistema combinando métodos de lucha coreanos nativos con el japonés Daito Ryu
Aiki-Ju Jitsu. Choi había aprendido ese sistema de su Maestro Sogaku Takeda
13
mientras vivió en Japón, desde 1915 a 1945. Después de su regreso a Corea,
Choi comenzó a enseñar Defensa Personal (Yawara) en la ciudad de TaeGu.1
Actualmente el Hapkido no se ha tenido en cuenta para su sistematización ya que
no es tan reconocido a nivel mundial o local. Pero estamos observando que ya hay
Universidades que están tratando de apoyar estos deportes brindándoles un
sistema de información para que puedan realizar sus campeonatos con
Organización. Un software muy reconocido es el que hicieron en la Fundación
Universitaria Konrad Lorenz en la facultad de Ingeniería de sistemas llamado:
“SISTEMA DE INFORMACIÓN PARA LA ORGANIZACIÓN Y ADMINISTRACION DE
CAMPEONATOS PARA DEPORTES DE CONJUNTO SPORTACUS” este sistema de
información apoya procesos logísticos a la hora de realizar eventos deportivos con
el objetivo de optimizar el manejo de los resultados en la disciplina deportiva en la
que se aplique.
Este facilita la organización de los procesos y Apoyos logísticos en la realización
de eventos deportivos. El programa contribuye a la optimización del trabajo,
agilización y la exactitud en el manejo de los Resultados estadísticos en cualquier
disciplina deportiva.2
A su vez se han creado diversos sistemas de información que son obsoletos para
este deporte ya que abarcan una rama muy pequeña de lo que en verdad es la
competencia del hapkido, tenemos 2 software muy peculiares que tratan de
organizar campeonatos de este deporte pero como su sistema es tan incompleto
no son utilizados y los organizadores prefieren seguir utilizando sus métodos
antiguos.
Estos sistemas de información son:
Hércules
Sistema de gestión deportiva, desarrollado por la compañía colombiana Deporte
Virtual, facilita la organización de eventos deportivos, permite gestionar los
procesos de inscripción, acreditación, programación de competencias, resultados
y tabla de medallero, entre muchos otros, ofreciendo la posibilidad de consolidar
1 HAPKIDO http://hapkido.com.es/historia-y-definicion-de-hapkido/ [Citado en 20 Octubre de 2015].
2 Murillo cruz Jeison Antonio; Roa torres Jorge Ernesto, 2007,
http://www.konradlorenz.edu.co/images/stories/suma_digital_sistemas/2009_01/Sistemqa%20de%20Informacion_Organizacion_y_Administracion_Deportiva_final.pdf [Citado en 20 Octubre de 2015].
3 DEPORTE VIRTUAL, Hércules® [En línea]. <http://hercules.deportevirtual.com/> [Consulta Septiembre 15 de
14
informes en tiempo real. También se usa para programar rutinas de entrenamiento
y para llevar control médico individualizado de los deportistas.3
R2sports
Sistema en línea que ofrece en el que se puede llevar la organización de torneos
deportivos, clasificaciones y membresías.4
1.5.2 Marco teórico Las herramientas tecnológicas físicas y lógicas que se implementaran en el desarrollo de los módulos del sistema de información web Sistema de información para la inscripción y clasificación de participantes en campeonatos de hapkido son:
XHTML XHTML es un lenguaje similar a HTML, pero con algunas diferencias que lo hacen más robusto y aconsejable para la modelación de páginas web. Las siglas corresponden con las palabras inglesas extensible Hypertext Markup Language, que vendría a significar en castellano algo así como lenguaje extensible de marcación hipertexto. Como sabemos, HTML tiene diferentes versiones, en las que ha cambiado bastante con respecto a la idea inicial. La web ha crecido muy rápido y ha evolucionado con mayor velocidad que los propios estándares de HTML, al surgir necesidades como la incorporación de vídeo, sonido, animaciones complejas, etc. Por ello, el propio lenguaje HTML se ha visto superado por las necesidades de las empresas y desarrolladores y ha crecido muchas veces sin atender al plano director creado desde el W3C.
XHTML es una vuelta hacia atrás, que intenta recuperar la línea marcada por los estándares, pero que trata de solucionar diversos casos de uso del HTML, a la vez que lo prepara para adaptarse a las nuevas necesidades y corrientes tecnológicas5.
3 DEPORTE VIRTUAL, Hércules® [En línea]. <http://hercules.deportevirtual.com/> [Consulta Septiembre 15 de
2014] 4 R2SPORTS, Tournament Software and Management Applications [En Línea]. http://www.r2sports.com/
[Consulta Septiembre 15 de 2014] 5 DESARROLLOWEB http://www.desarrolloweb.com/articulos/que-es-xhtml.html [Citado en 20 Octubre de 2015].
15
Ilustración 1LOGO XHTML
Fuente: http://cursos.com/cursos-propios/curso-introduccion-xhtml.php
XML
Una de las tecnologías que más ha llamado la atención de los creadores de estándares abiertos para la web es el XML, un lenguaje de marcación que sirve como base para crear otros lenguajes multidisciplinares, que solucionan muchas necesidades de documentación de distintos tipos de colectivos en la nueva sociedad de la información. XML es un lenguaje que también funciona por etiquetas, igual que HTML, pero cuyas reglas de creación de documentos son mucho más estrictas que las del propio lenguaje HTML, lo que da pie a la posibilidad de procesarlos automáticamente por programas informáticos. Ese pequeño detalle, realmente es la base para toda una serie de ventajas que hacen que XML sea una herramienta ideal para el momento actual, donde la información circula sin límite por las redes globales y XHTML intenta aprovecharse de ello.
Por tanto, podemos decir que XHTML es la versión XML de HTML. Desde el punto de vista del desarrollador, veremos que XHTML hereda la rigidez de XML, con lo cual no se puede escribir documentos XHTML de cualquier manera, como ocurría con HTML, sino atendiendo a unas normas. Ese detalle, que en principio pueda parecer una limitación, en realidad tiene una serie de ventajas.
Se puede procesar su contenido por cualquier programa informático (igual que ocurre con el XML).
Los navegadores no tienen por qué volverse locos intentando interpretar lo que el desarrollador ha querido escribir ni solucionar los posibles errores de código cometidos, como ocurría con HTML6.
6 Área de Programación y Desarrollo Manual de XML http://www.mundolinux.info/que-es-xml.htm
[Citado en 20 Octubre de 2015].
16
XHTML
Pero atención a este punto, puesto que XHTML no es sólo un HTML con sintaxis XML. En realidad XHTML incorpora una nueva concepción o si lo preferimos, una nueva filosofía de modelación de las páginas web, que busca la creación de una web semántica. HTML tiene muchas etiquetas como FONT, B, I... que expresan la forma con la que tiene que mostrarse un elemento, es decir, sirven para definir el aspecto de los contenidos de la página. Del mismo modo, existen muchos atributos, como align, bgcolor, vspace, que sirven también para definir asuntos relacionados son aspecto de los elementos de la página. Todo eso, con el tiempo de uso de HTML y la evolución de la web, se ha demostrado que era incorrecto.
Lo ideal es que las personas, que realizan una página escribiendo HTML, escriban
el contenido de manera que se exprese qué es cada cosa y no cómo tiene que
verse cada cosa. De ese modo, la web sería semántica, porque se especificaría
sólo el significado de cada elemento y no cómo se debe de visualizar.
XHTML procura acercarse a ese ideal, por lo que se suprimen todas las etiquetas
y atributos que sirven para definir el aspecto y sólo se dejan las etiquetas que
sirven para definir el significado de cada elemento de la página.
Por ejemplo, la etiqueta <strong> sirve para definir que una información está
destacada. Es correcto, porque sirve para definir qué es ese contenido (un texto a
resaltar). Sin embargo, otras etiquetas como B no son correctas desde el punto de
vista de la web semántica, porque sirven para definir cómo debe mostrarse un
texto en concreto (en Bold, negrita).
La web semántica permite separar el contenido de la presentación y eso es algo
que se lleva intentando desde hace años y un asunto que se ha puesto
especialmente en práctica en el XHTML7.
7 HTML SEMANTICO https://es.wikipedia.org/wiki/HTML_sem%C3%A1ntico [Citado en 20 Octubre de 2015].
17
Ilustración 2 Esquema de la evolución de HTML y XHTML
Fuente: Introducción a XHTML
Framework
El concepto framework se emplea muchos ámbitos del desarrollo de sistemas
software, no solo en el ámbito de aplicaciones Web. Podemos encontrar
frameworks para el desarrollo de aplicaciones médicas, de visión por computador,
para el desarrollo de juegos, y para cualquier ámbito que pueda ocurrírsenos. En
general, con el término framework, nos estamos refiriendo a una estructura
software compuesta de componentes personalizables e intercambiables para el
desarrollo de una aplicación. En otras palabras, un framework se puede considerar
como una aplicación genérica incompleta y configurable a la que podemos
añadirle las últimas piezas para construir una aplicación concreta.
Los objetivos principales que persigue un framework son: acelerar el proceso de
desarrollo, reutilizar código ya existente y promover buenas prácticas de desarrollo
como el uso de patrones. Un framework Web, por tanto, podemos definirlo como
un conjunto de componentes (por ejemplo clases en java y descriptores y archivos
de configuración en XML) que componen un diseño reutilizable que facilita y
agiliza el desarrollo de sistemas Web8.
8 ¿Qué es un framework web? http://www.lsi.us.es/~javierj/investigacion_ficheros/Framework.pdf [Citado en 20
Octubre de 2015].
18
Framework Primefaces
Cuando utilizas la tecnología JSF para la vista de una aplicación Web, no puedes menos que sentir que te faltan componentes más potentes, y con más versatilidad. Para suplir estas carencias existen varias empresas que compiten con distintos frameworks, y que nos hacen la vida más fácil. Hoy presentamos a uno de ellos que nos viene de tierras turcas: Primefaces.
El punto fuerte de Primefaces es la sencillez de instalación y lo poco pesado que
es. El mantenerlo liviano, sin complicaciones a la hora de instalarlo, es decir, sin
dependencias ni configuraciones, hace que podamos estar usándolo en unos
pocos segundos9.
Ilustración 3 LOGO FRAMEWORK PRIME FACES
Fuente: http://www.primefaces.org/
Algunas de las cosas que nos ofrece Primefaces son:
Un interesante conjunto de componentes (editor HTML, autocompletado, gráficas).
Soporte para interfaces de usuario sobre dispositivos móviles, nos provee de un kit para este menester.
Múltiples temas de apariencia, listos para usar.
La documentación, para mi forma de entender, está muy currada y organizadita
9 Primefaces: framework sobre JSF 2.0. Primeros pasos. http://www.genbetadev.com/frameworks/primefaces-
framework-sobre-jsf-2-0-primeros-pasos [Citado en 20 Octubre de 2015].
19
Amplia difusión del framework, con lo cual existe una comunidad que respalda al proyecto10.
XAMPP
Xampp es un servidor independiente en base a software libre, con el cual
podemos disponer de un servidor propio o simplemente usarlo para hacer pruebas
de nuestras páginas web, bases de datos, para desarrollar aplicaciones en php,
con conexión a base de datos sql (LAMPP= Linux + Apache + MySQL + PHP +
Perl)
El programa está liberado bajo la licencia GNU y actúa como un servidor web libre,
fácil de usar y capaz de interpretar páginas dinámicas. Actualmente Xampp está
disponible para GNU/Linux, Microsoft Windows, Solaris y MacOS X.
XAMPP incluye además servidores de bases de datos como MySQL y SQLite con
sus respectivos gestores phpMyAdmin y phpSQLiteAdmin11.
MySQL
MySQL es un sistema de administración de bases de datos relacionales que
almacena los datos en tablas separadas brindando velocidad y flexibilidad, en
lugar de poner todos los datos en un solo lugar formando duplicidad de
información y otros problemas. Las tablas son enlazadas al definir relaciones que
hacen posible combinar datos de varias tablas cuando se necesitan consultar
datos. La parte SQL de "MySQL" significa "Lenguaje Estructurado de Consulta", y
es el lenguaje más usado y estandarizado para accesar a bases de datos
relacionales.
El servidor MySQL fue desarrollado originalmente para manejar grandes bases de
datos mucho más rápido que las soluciones existentes y ha estado siendo usado
exitosamente en ambientes de producción sumamente exigentes por varios años.
Aunque se encuentra en desarrollo constante, el servidor MySQL ofrece hoy un
conjunto rico y útil de funciones. Su conectividad, velocidad, y seguridad hacen de
MySQL un servidor bastante apropiado para accesar a bases de datos en
Internet12.
10 Primefaces http://www.primefaces.org/showcase/ [Citado en 20 Octubre de 2015]. 11
Desarrollo de Aplicaciones Web Xampp http://www.um.es/docencia/barzana/DAWEB/Desarrollo-de-aplicaciones-
web-Xampp.html [Citado en 20 Octubre de 2015]. 12
MYSQL https://es.wikipedia.org/wiki/MySQL [Citado en 20 Octubre de 2015].
20
Una base de datos es una entidad en la cual se pueden almacenar datos de
manera estructurada, con la menor redundancia posible. Diferentes programas y
diferentes usuarios deben poder utilizar estos datos. Por lo tanto, el concepto de
base de datos generalmente está relacionado con él una red ya que se debe
poder compartir esta información. De allí el término base. Sistema de información
es el término general utilizado para la estructura global que incluye todos los
mecanismos para compartir datos que se han instalado.
Ilustración 4 MySQL
Fuente: http://www.mysql.com/
APACHE
Es uno de los servidores web más utilizados a nivel mundial en gran parte se debe
a que es Freeware bajo licencia GNU, y en parte también se debe a su robustez y
sus múltiples posibilidades, es un sistema multiplataforma.
Posee infinidad de paquetes y módulos que nos permiten trabajar con gran
cantidad de lenguajes de programación web, así como intérpretes de SQL y otras
funciones, permite transacciones seguras mediante SSL (Secure Socket Layer),
contiene soporte para Hosts virtuales.13
JAVA
Java es un lenguaje de programación y una plataforma informática comercializada
por primera vez en 1995 por Sun Microsystems. Hay muchas aplicaciones y sitios
web que no funcionarán a menos que tenga Java instalado y cada día se crean
más. Java es rápido, seguro y fiable. Desde portátiles hasta centros de datos,
desde consolas para juegos hasta súper computadoras, desde teléfonos móviles
hasta Internet, Java está en todas partes.
13
¿Qué es Apache? Http://culturacion.com/que-es-apache/ [Citado en 20 Octubre de 2015].
21
Java es una tecnología que se usa para el desarrollo de aplicaciones que
convierten a la Web en un elemento más interesante y útil. Java no es lo mismo
que javascript, que se trata de una tecnología sencilla que se usa para crear
páginas web y solamente se ejecuta en el explorador.14
JSF
JavaServerFaces (JSF) es una tecnología y framework para aplicaciones Java
basadas en web que simplifica el desarrollo de interfaces de usuario en
aplicaciones Java EE. JSF usa JavaServer Pages (JSP) como la tecnología que
permite hacer el despliegue de las páginas, pero también se puede acomodar a
otras tecnologías como XUL (acrónimo de XML-based User-interface Language,
lenguaje basado en XML para la interfaz de usuario).15
NETBEANS
Es un entorno de desarrollo integrado libre, hecho principalmente para el lenguaje
de programación Java. Existe además un número importante de módulos para
extenderlo. NetBeans IDE1 es un producto libre y gratuito sin restricciones de uso.
NetBeans es un proyecto de código abierto de gran éxito con una gran base de
usuarios, una comunidad en constante crecimiento, y con cerca de 100 socios en
todo el mundo. Sun MicroSystems fundó el proyecto de código abierto NetBeans
en junio de 2000 y continúa siendo el patrocinador principal de los proyectos.
La plataforma NetBeans permite que las aplicaciones sean desarrolladas a partir
de un conjunto de componentes de software llamados módulos. Un módulo es un
archivo Java que contiene clases de java escritas para interactuar con las APIs de
NetBeans y un archivo especial (manifest file) que lo identifica como módulo. Las
aplicaciones construidas a partir de módulos pueden ser extendidas agregándole
nuevos módulos. Debido a que los módulos pueden ser desarrollados
independientemente, las aplicaciones basadas en la plataforma NetBeans pueden
ser extendidas fácilmente por otros desarrolladores de software.
14
Java Disponible en Internet: http://www.java.com/es/about/whatis_java.jsp [Citado en 20 Octubre de 2015]. 15
Java server faces https://es.wikipedia.org/wiki/JavaServer_Faces [Citado en 20 Octubre de 2015].
22
1.5.3 Marco conceptual
Hardware
Termino en ingles que se refiere a cualquier componente físico tecnológico, que
interactúa o trabaja con la un computador, incluye elementos internos como discos
duros, unidades de cd, unidad central de procesamiento, tarjetas de memoria, y
elementos externos como teclado, mouse, impresora, monitor y demás periféricos.
Realiza las tareas de entrada y salida, permitiendo la comunicación entre el equipo
y el usuario, es decir es la maquinaria real utilizada para el procesamiento
electrónico de datos.16
Software
Componente de un sistema informático no tangible, indispensable para el
funcionamiento del computador. Está formado por instrucciones y datos que
permiten aprovechar los recursos físicos que posee la máquina, es decir el
hardware, para dar solución a gran cantidad de problemas. Actúa como
intermediario entre el usuario y la información almacenada17.
Campeonato
Evento que implica una competencia entre diferentes partes (Individuales o
grupales), en cierta disciplina, en donde se disputa un premio con el resto de
participantes. Por lo general se desarrolla en etapas en las que los competidores
avanzan o eliminan según sus habilidades y/o puntajes. Es habitual distinguir al
ganador del campeonato entregándole un diploma o medalla, en algunos casos
también se hace entrega de dinero18.
Pirámide
Nombre con que se conoce la gráfica en donde se encuentra la organización de
los combates entre los participantes, para un campeonato de Hapkido. La
construcción se determina por la potencia de 2 a la n (2n), inmediatamente
16
EL HARDWARE. Evolución y características http://ing.unne.edu.ar/pub/informatica/U2.pdf [Citado en 20
Octubre de 2015]. 17
Concepto de Software http://fraba.galeon.com/software.htm [Citado en 20 Octubre de 2015]. 18
Definición de campeonato http://www.definicionabc.com/general/campeonato.php [Citado en 20 Octubre de
2015].
23
superior o igual al número de participantes, estableciendo así el número de
participantes que deben o no competir en la primera ronda. Además define los
combates futuros para los participantes que resulten ganadores de cada ronda.
Sistema de información
Un sistema de información es grupo compuesto de elementos como personas,
datos y procedimientos que funcionan en conjunto, estos variados
componentes buscan un objetivo común para apoyar las actividades de la
organización. Los sistemas reciben entradas, como datos, energía o materia
del ambiente y proveen salida de información, materia o energía. Pueden ser
físicos, como una computadora o un televisor o abstractos como el software.19
1.6 FACTIBILIDAD
1.6.1 FACTIBILIDAD TÉCNICA
1.6.1.1 Recurso humano
El desarrollador del proyecto debe tener bases suficientes en conocimientos de
modelado y creación de Bases de datos, y aplicaciones web con el fin de poder
dar solución al problema planteado en el proyecto, del mismo modo que debe
tener buena actitud y habilidad a la hora de investigación bien sea de desarrollo o
información pertinente al desarrollo del sistema. Además de contar con la
disponibilidad de tiempo para llevar a cabo el desarrollo de cada una de las etapas
del proyecto.
1.6.1.2 Hardware y software
Para el desarrollo del sistema es necesario contar con dos equipos de cómputo
que posean los siguientes requerimientos de hardware y software como mínimo:
Tipo Equipo: Ordenador de mesa o Computador portátil;
Procesador: Doble núcleo de 2,0 GHz o superior.
RAM: 2GB
Disco Duro: 500GB
Sistema Operativo: Windows 7 de 64 bits
19
Definición de sistema http://www.alegsa.com.ar/Dic/sistema.php [consulta septiembre 15 de 2014]
24
Sistema gestor de datos: MYSQL
Interface de desarrollo: NetBeans.
Lenguaje de Programación: XHTML, JAVA.
1.6.2 Factibilidad operativa
Se espera al implementar el sistema de información web, sea aceptado
positivamente por parte de los usuarios, debido a:
El sistema buscará ser amigable con el usuario, con el fin de que este
pueda operarlo de forma sencilla, pues se manejará la misma información
con la que están familiarizados, tan solo que en formato digital y por medio
de formularios en una página web, además el software ofrecerá un buen
soporte para tratar de evitar las fallas y errores que puedan llegar a cometer
los usuarios.
El sistema no desplazará personas de su puesto de trabajo, tan solo
alivianará la carga del trabajo al organizador del evento y al resto de
operarios.
1.6.3 Factibilidad legal
Para el desarrollo de este proyecto se utilizará software de código abierto o bajo
licencia educativa.
1.6.4 Factibilidad económica
En la tabla 1, se muestran los costos que acarreará el desarrollo del sistema de
información.
- Se realiza la cotización de 2 equipos de cómputo, que serán utilizados tanto
para el desarrollo como para la realización de pruebas, en donde uno de ellos hará
las veces de servidor y el otro de cliente.
25
RECURSO RESPONSABLE DESCRIPCION CANTIDAD COSTO UNITARIO
COSTO TOTAL
Equipo de desarrollo
Ejecutores del proyecto
Computador 2 $ 1.800.000 $ 3.600.000
Papelería Ejecutores del proyecto
Resma de papel
2 $ 10.000 $ 20.000
Conexión internet Ejecutores del proyecto
Plan internet 4(meses) $60.000 $240.000
Horas Desarrollador
Ejecutores del proyecto
Ejecutor de Proyecto
480*2 $ 15.000 $ 14.400.000
Horas Tutor Universidad Ejecutor de Proyecto
160 $ 45.000 $ 7.200.000
Total $ 25.460.000
Tabla 1. Costos de desarrollo.
1.7 REQUERIMIENTOS
1.7.1 Funcionales
Permitir la actualización, eliminación e ingreso de los usuarios al sistema.
El sistema permitirá a los organizadores crear eventos.
El sistema permitirá que los delegados puedan inscribirse a uno o más
campeonatos.
El sistema permitirá visualizar reportes de uno o más eventos.
1.7.2 No funcionales
El sistema deberá tener una interfaz sencilla, legible y de fácil uso para los
usuarios.
El sistema se desarrolla bajo el lenguaje JAVA 7 con el framework JSF
PrimeFaces.
El sistema contendrá bases de datos en MySQL.
El sistema estará desplegado en un Servidor Apache Tomcat 8.0.20
26
1.8 CRONOGRAMA DE ACTIVIDADES
El siguiente cronograma especifica el tiempo en que se planeara el análisis y desarrollo del sistema de información web SOC-HKD (sistema de información para la inscripción y clasificación de participantes en campeonatos de hapkido).
Tabla 2 Actividades Cronograma.
28
2. FASE DE ELABORACION
2.1 MODELO DEL NEGOCIO
Se aplicó una encuesta que se encuentran en el anexo F al personal
administrativo de la liga de hapkido mostrando la necesidad de implementar esta
aplicación para la facilitación de los procesos que se realizan en este deporte.
Se implementará una interfaz gráfica por medio de lenguajes de programación que
proporcionen e implementen un adecuado desarrollo durante el tiempo estimado
del proyecto, se integrará una base de datos relacional y se diseñará un entorno
gráfico para los usuarios.
A continuación se detallará los módulos que contendrá el sistema de información
web:
Módulo de Información de eventos donde los usuarios deportistas y
delegados podrán observar cuales eventos están por comenzar y cuáles
son sus fechas de inscripción.
Módulo de creación de eventos donde el organizador podrá crear múltiples
campeonatos.
Módulo de reportes donde se analizara los resultados pasados y los
ganadores.
Módulo de inscripción de deportistas donde el delegado de un respectivo club
iniciara con la inscripción para que estos puedan participar en los torneos.
29
2.2 DEFINICION DE ACTORES
El sistema de información SOC – HKD (sistema de información para la inscripción
y clasificación de participantes en campeonatos de hapkido) contiene 4 actores
fundamentales Administrador, Organizador, Jueces y Delegados.
Actor Funciones
Administrador Este actor es el encargado de manejar, editar, y eliminar información
del programa y de la base de datos es el que les da permisos a los
demás usuarios para que puedan acceder a la página web.
Organizador Este actor es el encargado de crear, editar, información de los
eventos que de creen.
Jueces Este actor es el encardo de insertar los resultados de los eventos
realizados en el sistema de información.
Delegado Este actor es el encargado de inscribir, Modificar y eliminar
deportistas además de eso puede hacer lo mismo con su club.
Tabla 3. Definición de actores
30
2.3 DIAGRAMAS DE CASOS DE USO
El diagrama de Casos de uso representa las actividades a realizar en el sistema de información SOC- HKD, en total son
22 casos de uso en donde interactúan los usuarios del sistema
Ilustración 5 Diagrama de casos de uso
31
CASO DE USO CANCELAR EVENTO
Ilustración 6 CANCELAR EVENTO
CASO DE USO CONSULTAR EVENTOS
Ilustración 7 CONSULTAR EVENTOS
CASO DE USO CREAR EVENTO
Ilustración 8 CREAR EVENTO
32
CASO DE USO EDITAR PERFIL
Ilustración 9 EDITAR PERFIL
CASO DE USO MODIFICAR EVENTO
Ilustración 10 MODIFICAR EVENTO
33
CASO DE USO SOLICITAR USUARIO ORGANIZADOR
Ilustración 11 SOLICITAR USUARIO ORGANIZADOR
CASO DE USO SOLICITAR USUARIO DELEGADO
Ilustración 12 SOLICITAR USUARIO DELEGADO
2.4 DOCUMENTACION CASOS DE USO A continuación se documentara los casos de uso más relevantes del sistema de
información SOC-HKD, donde se describirá de forma ordenada sus flujos de eventos
y condiciones necesarios para el caso de uso.
34
IDENTIFICACION CASO DE USO ACTORES
CU-01 Crear evento Organizador
OBJETIVO
Creación de un evento para dar inicio a campeonato.
DESCRIPCION
En este caso de uso el organizador creara un evento para que se les notifique a
todos los delegados quienes se inscribirán en el evento que quieran.
Precondiciones
El usuario debió solicitar un usuario al administrador.
El usuario se le debió otorgar un permiso de organizador.
El usuario organizador debió iniciar sesión.
Post-condiciones El usuario aceptara crear un evento
Alternativas Cancelar la operación
CURSO NORMAL DE LOS EVENTOS
ACCION DEL ACTOR
1) EL usuario le dará clic en crear
evento.
2) El usuario ingresara la
información solicitada por el
programa.
3) El usuario dará clic en
REGISTRAR para finalizar el
proceso de creación.
RESPUESTA DEL SISTEMA
4) El sistema mostrara la creación del
evento en la tabla de EVENTOS
REGISTRADOS.
5) Mostrará los eventos registrados en la
página principal.
PUNTOS DE INTERRUPCION
El usuario puede cancelar la operación en el punto 3 Tabla 4 CASO DE USO (Crear evento)
35
IDENTIFICACION CASO DE USO ACTORES
CU-02 Inscribir deportistas al evento Delegado
OBJETIVO
Este actor registrara uno o más deportista que quieran participar en el evento.
DESCRIPCION
El delegado se le dará un cierto número de inscripciones disponibles y tendrá que
decidir que deportistas entraran en la competencia.
Precondiciones
El usuario debió solicitar un usuario al administrador.
El usuario se le debió otorgar un permiso de delegado.
El usuario delegado debió iniciar sesión.
El usuario organizador debió autorizar participación al evento a este delegado.
El organizador debió dar número de participantes a inscribir.
El delegado no puede inscribir participantes que estén en otro evento.
Post-condiciones
Escogerá la categoría en la que participara el deportista.
Alternativas
Cancelar la operación.
CURSO NORMAL DE LOS EVENTOS
ACCION DEL ACTOR
1) Aparecerá una tabla donde están los
eventos para inscribir los deportistas le
dará clic en inscribir para iniciar el
proceso.
2) Aparecerá otra tabla con los nombres
de los deportistas, dará doble clic en el
nombre para inscribirlo.
RESPUESTA DEL SISTEMA
3) El sistema mandara un mensaje si la
inscripción fu satisfactoria o no.
PUNTOS DE INTERRUPCION
El usuario puede cancelar la operación en el punto 2
Tabla 5 CASO DE USO (Inscribir deportistas al evento)
36
IDENTIFICACION CASO DE USO ACTORES
CU-03 Registro de deportistas Delegado
OBJETIVO
El delegado registrara sus deportistas en su club.
DESCRIPCION
El delegado registrara en la plataforma sus deportistas con su respectiva información
para que puedan tener acceso a los eventos y puedan participar en estos.
Precondiciones
El usuario debió solicitar un usuario al administrador.
El usuario se le debió otorgar un permiso de delegado.
El usuario delegado debió iniciar sesión.
El deportista a inscribir no debe estar registrado en este club por eso se pide su identificación para comprobar que no sea así.
Post-condiciones
No puede cambiar se a otro club.
Alternativas
Cancelar la operación.
CURSO NORMAL DE LOS EVENTOS
ACCION DEL ACTOR
1) El usuario se dirigirá a la pestaña
deportista.
2) El usuario digitara la id del
deportista para habilitar su
inscripción.
3) Llenara el delegado la información
del deportista a inscribir y por
ultimo le dará clic en REGISTRAR.
RESPUESTA DEL SISTEMA
4) El sistema mandara un mensaje al
delegado diciendo si su inscripción fue
satisfactoria.
PUNTOS DE INTERRUPCION
El usuario puede cancelar la operación en el punto 3
Tabla 6 CASO DE USO (Registro deportistas)
37
IDENTIFICACION CASO DE USO ACTORES
CU-04 Registro de resultados Jueces
OBJETIVO
Que este actor sea el encargado de registrar los resultados en la plataforma de jueces.
DESCRIPCION
El juez se le dará permisos para poder registrar los resultados de todas las
competencias en este caso, el registro de salto alto, combate, salto largo, defensa.
Precondiciones)
El usuario organizador debió darle permisos para acceder a la plataforma JUECES.
El usuario juez debió iniciar sesión.
Ya debe estar un evento en transcurso para que los jueces puedan insertar los resultados.
Post-condiciones
Se deshabilitara el usuario juez para evitar modificaciones futuras.
Alternativas
Cancelar usuario juez.
No insertar resultados.
CURSO NORMAL DE LOS EVENTOS
ACCION DEL ACTOR
1) El usuario juez ya debe tener un login.
2) El usuario entra al evento que se está
realizando.
3) Depende a la categoría que se esté
evaluando el usuario insertara los
resultados.
6) El usuario seguirá insertando los
resultados hasta que la competición quede
100% terminada con sus resultados
finales.
RESPUESTA DEL SISTEMA
4) El sistema le informara si los
resultados fueron guardados.
5) El sistema le mostrara en una gráfica
cuanto porcentaje del torneo sea
realizado.
PUNTOS DE INTERRUPCION
El usuario puede cancelar la operación en el punto 4
Tabla 7 CASO DE USO (Registro de resultados)
38
IDENTIFICACION CASO DE USO ACTORES
CU-05 Observar reportes Organizador
OBJETIVO
Se tendrá un reporte de todos los eventos creados.
DESCRIPCION
El organizador será el único que pueda ver este reporte de los eventos que el creo,
donde se observara los ganadores y los resultados de los campeonatos realizados.
Precondiciones
El usuario debió solicitar un usuario al administrador.
El usuario se le debió otorgar un permiso de organizador.
El usuario delegado debió iniciar sesión.
Debe haber un evento ya terminado para ver los reportes.
Post-condiciones
No hay pos-condiciones
Alternativas
El usuario se abstendrá de ver los reportes.
CURSO NORMAL DE LOS EVENTOS
ACCION DEL ACTOR
1) El usuario organizador dará clic en
proceso, aquí se mostrara una tabla
del evento terminado.
2) Al mostrar esa tabla en la parte
inferior hay una pestaña que se
llama reportes le dará clic en esa
ventana.
4) El organizador podrá observar los
reportes sobre el campeonato.
RESPUESTA DEL SISTEMA
3) El sistema buscara información de la
base de datos y la mostrara en una
ventana.
PUNTOS DE INTERRUPCION
El usuario puede cancelar la operación en el punto 2
Tabla 8 CASO DE USO (Observar reportes)
39
IDENTIFICACION CASO DE USO ACTORES
CU-06 Modificación de evento Organizador
OBJETIVO
Que se pueda modificar la información sobre el evento que haya sido creado por parte
del organizador.
DESCRIPCION
En este caso de uso el organizador podrá modificar la información de algún evento que
este creado, entonces se podrá dirigir a la información del evento y lo podrá modificar.
Precondiciones(Antes
de, que debe hacer el
usuario antes de iniciar
el sistema)
El usuario debió solicitar un usuario al administrador.
El usuario se le debió otorgar un permiso de organizador.
El usuario delegado debió iniciar sesión.
Debe estar creado un evento para poder modificarlo.
Post-condiciones
Se notificara a todos los delegados de la modificación de los eventos.
Alternativas
El usuario organizador cancelara la modificación y dejara la información actual.
CURSO NORMAL DE LOS EVENTOS
ACCION DEL ACTOR
1) El usuario organizador ya debe
estar registrado y haber iniciado
sesión.
2) Observara en la tabla los eventos
creados por este usuario.
3) Ya consultado la tabla escogerá el
evento a modificar y le dará clic en
MODIFICAR.
5) El usuario editara la información que
Necesite y dará clic en MODIFICAR.
RESPUESTA DEL SISTEMA
4) El sistema mostrara la información de
este evento para que sea editado por el
usuario.
6) El sistema mandara una ventana donde dirá
si fue exitosa la operación o no.
PUNTOS DE INTERRUPCION
El usuario puede cancelar la operación en el punto 5
Tabla 9 CASO DE USO (Modificación de evento)
40
IDENTIFICACION CASO DE USO ACTORES
CU-07 Registrarse a evento creado Delegado , Organizador
OBJETIVO
Se registrara en el evento creado para poder participar en este.
DESCRIPCION
Los delegados solicitaran participación al evento y el organizador será el que acepte la
solicitud de registro para que el delegado pueda inscribir a sus deportistas en este
evento.
Precondiciones
El usuario debió solicitar un usuario al administrador.
El usuario se le debió otorgar un permiso de organizador y delegado.
El usuario delegado debió iniciar sesión.
El usuario delegado debió solicitar inscripción al evento.
Post-condiciones
El organizador le dará un límite de inscripción de deportistas.
Alternativas
Cancelar solicitud de inscripción al evento.
CURSO NORMAL DE LOS EVENTOS
ACCION DEL ACTOR
1) El usuario delegado se le notificara
los eventos creados.
2) El usuario delegado decidirá en
cuál de los eventos quiere
participar.
3) El delegado dará clic en solicitud
de inscripción en el evento.
5) El organizador decidirá si aceptara el
registro o no.
RESPUESTA DEL SISTEMA
4) El sistema mandara una notificación de
registro al evento al organizador.
PUNTOS DE INTERRUPCION
El usuario puede cancelar la operación en el punto 5
Tabla 10 CASO DE USO (Registrarse a evento creado)
41
2.5 MODELO DEL DOMINIO
El siguiente modelo del dominio identifica las relaciones entre las entidades
identificadas en el dominio del problema.
Ilustración 13 Diagrama de dominio
42
3. FASE DE CONSTRUCCION
3.1 DIAGRAMA DE CLASES
El diagrama de clases representa la estructura básica del desarrollo del sistema
SOC-HKD, se ve reflejado las clases con sus atributos y métodos a utilizar para el
buen funcionamiento del sistema.
Ilustración 14 Diagrama de clases
43
3.2 DIAGRAMA ENTIDAD RELACION
Es una herramienta para el modelado de datos que permite representar las
entidades relevantes de un sistema de información así como sus interrelaciones y
propiedades. El diagrama entidad relación del sistema de información SOC-HKD
cuenta con 38 relacionales. Este diagrama se puede observar en el anexo A.
3.3 DIAGRAMA DE SECUENCIA
A continuación se ilustran los diagramas de secuencia más relevantes del sistema
de información los demás estarán en anexos, en la cual, se puede identificar la
interacción entre los objetos utilizados en el sistema para cada caso de uso.
CREAR EVENTO
Este diagrama de secuencia representa el camino recorrido por las clases y el usuario
para la creación de los eventos.
Ilustración 15 Diagrama de secuencia (crear evento)
44
INSCRIBIR DEPORTISTAS AL EVENTO
Este diagrama de secuencia representa el camino recorrido por las clases y el usuario
para la inscripción de deportistas al evento.
Ilustración 16 Diagrama de secuencia (Inscribir deportista al evento)
REGISTRAR DEPORTISTAS EN PLATAFORMA
Este diagrama de secuencia representa el camino recorrido por las clases y el usuario
para el registro de deportistas en la plataforma
Ilustración 17 Diagrama de secuencia (Registrar deportista)
45
REGISTRO DE RESULTADOS
Este diagrama de secuencia representa el camino recorrido por las clases y el
usuario para ingresar los respectivos resultados de la competencia.
Ilustración 18 Diagrama de secuencia (Registrar resultados)
OBSERVAR REPORTES
Este diagrama de secuencia representa el camino recorrido por las clases y el
usuario para observar reportes de los eventos realizados y hacer un análisis de
participación.
Ilustración 19 Diagrama de secuencia (Observar reportes)
46
3.4 DIAGRAMA DE ESTADO
A continuación se ilustran los diagramas de estado más relevantes del sistema de
información SOC-HKD los demás estarán en anexos, en la cual se ilustran qué
eventos pueden cambiar el estado de los objetos de la clase.
ADMINISTRADOR
Ilustración 20 Diagrama de estados (Administrador)
47
JUECES
Ilustración 21 Diagrama de estados (Jueces)
DELEGADO
Ilustración 22 Diagrama de estados (Delegado)
48
ORGANIZADOR
Ilustración 23 Diagrama de estados (Organizador)
3.5 DIAGRAMA DE COMUNICACIÓN
A continuación se ilustran los diagramas de comunicación más relevantes del
sistema de información SOC-HKD los demás estarán en anexos, en la cual, se
puede identificar las interacciones organizadas alrededor de los tipos de usuarios
definidos en el sistema SOC-HKD.
CREAR EVENTO
Ilustración 24 Diagrama de comunicación (Crear evento)
49
INSCRIBIR DEPORTISTAS AL EVENTO
Ilustración 25 Diagrama de comunicación (Inscribir deportistas al evento)
REGISTRAR DEPORTISTAS EN PLATAFORMA
Ilustración 26 Diagrama de comunicación (Registrar deportistas en plataforma)
50
REGISTRO DE RESULTADOS
Ilustración 27 Diagrama de comunicación (Registro de resultados)
OBSERVAR REPORTES
Ilustración 28 Diagrama de comunicación (Observar reportes)
51
3.6 DIAGRAMA DE ACTIVIDADES
A continuación se ilustran los diagramas de actividades más relevantes del
sistema de información SOC-HDK los demás estarán en anexos, en la cual, se
puede identificar el algoritmo o proceso que interfieren en cada actividad del
sistema.
CREAR EVENTO Este diagrama de actividad visualiza como crear un evento y las actividades que
interfieren tanto en el sistema como por parte del usuario.
Ilustración 29 Diagrama de actividades (Crear evento)
52
INSCRIBIR DEPORTISTAS AL EVENTO
Este diagrama de actividad visualiza como inscribir deportistas a un evento y las
actividades que interfieren tanto en el sistema como por parte del usuario.
Ilustración 30 Diagrama de actividades (Inscribir deportistas al evento
53
REGISTRAR DEPORTISTAS EN PLATAFORMA
Este diagrama de actividad visualiza como registrar deportistas a la plataforma y
las actividades que interfieren tanto en el sistema como por parte del usuario.
Ilustración 31 Diagrama de actividades (Registrar deportistas en la plataforma)
54
REGISTRO DE RESULTADOS
Este diagrama de actividad visualiza como registrar resultados a la plataforma y
las actividades que interfieren tanto en el sistema como por parte del usuario.
Ilustración 32 Diagrama de actividades (Registro de resultados)
55
OBSERVAR REPORTES
Este diagrama de actividad visualiza como observar reportes en la plataforma y las
actividades que interfieren tanto en el sistema como por parte del usuario.
Ilustración 33 Diagrama de actividades (Observar reportes)
56
4. FASE DE IMPLEMENTACION 4.1 DIAGRAMA DE COMPONENTES
A continuación se ilustra el diagrama de componentes del sistema de información
SOC-HKD, en la cual representa como este sistema de información está dividido
en 4 componentes, donde los Web Pages con los Beans (paquete de clases)
envía los datos a los Daos respecto al Modelo asociado a la BD.
Ilustración 34 Diagrama de componentes
4.2 DIAGRAMA DE PAQUETES A continuación se ilustra el diagrama de paquetes del sistema de información
SOC-HKD, en la cual representa la descomposición de la jerarquía lógica de un
sistema. Uno de los paquetes contiene los Beans quienes son responsables de la
intenciones en las vistas web, el paquete Dao es el encargado de realizar las
consultas a la BD respecto del dato recibido por el Bean y el paquete modelo
contiene el diseño de la BD.
57
Ilustración 35 Diagrama de paquetes
4.3 DIAGRAMA DE DESPLIEGUE
A continuación se ilustra el diagrama de despliegue del sistema de información
SIAT, en la cual representa la disposición física de los artefactos del sistema en 2
nodos, uno es el servidor utilizado Apache Tomcat y la base de datos en Mysql.
Ilustración 36 Diagrama de despliegue
58
4.4 PRUEBAS DEL SISTEMA A continuación se presentan las pruebas realizadas al sistema de información tanto por usuarios como por desarrolladores donde los errores encontrados fueron corregidos.
PRUEBA DE FUNCIONALIDAD POR PARTE DEL ORGANIZADOR
Ejecutor: Johanna Katherine Soriano Rol: Organizador
Fecha inicio: 01/03/16
Fecha Final: 06/03/16 Estado: Terminado
Modulo Resultados esperados
Resultados obtenidos Estado
Registro de usuario
- Se realice el registro en el sistema y que pueda ser aceptado por el Administrador
- Se hace el registro efectivamente para que el Administrador lo apruebe.
OK
Iniciar Sesión
- El sistema valide que el usuario
existe.
- El sistema valida existencia del
usuario en Base de datos
OK - Se valide el
estado del usuario.
- El sistema valida el estado del usuario
en (Activo/Desactivo)
- Se realice el inicio de sesión y redirección
pertinente al rol
- Dependiendo del rol se hace el re direccionamiento
Creación de evento - Se realice el
registro en la Base de Datos del evento
- El sistema permite hacer el registro del
evento OK
Generación Pirámides
- Ya finalizadas las Inscripciones el sistema permita
generar pirámides de competencia
- El sistema permítela generación
de pirámides de competencia
OK
Desarrollo Campeonato
- Que el sistema permita consultar los deportistas de cada
categoría
- El sistema lista las categorías y al
seleccionar alguna muestra el listado de
deportistas
OK
Tabla 11 PRUEBA DE FUNCIONALIDAD POR PARTE DEL ORGANIZADOR
59
PRUEBA DE FUNCIONALIDAD POR PARTE DEL DELEGADO
Ejecutor: Fabián Alberto Muñoz Contreras Rol: Delegado
Fecha inicio: 01/03/16
Fecha Final: 04/03/16
Estado: Terminado
Modulo Resultados esperados
Resultados obtenidos Estado
Registro de usuario
- Se realice el registro en el sistema y que pueda ser aceptado por el Administrador
- Se hace el registro efectivamente para que el Administrador lo apruebe.
OK
Iniciar Sesión
- El sistema valide que el usuario
existe.
- El sistema valida existencia del
usuario en Base de datos
OK - Se valide el
estado del usuario.
- El sistema valida el estado del usuario
en (Activo/Desactivo)
- Se realice el inicio de sesión y redirección
pertinente al rol
- Dependiendo del rol se hace el re direccionamiento
Registro de Deportistas
- Se realice el registro en la Base
de Datos de deportistas
- El sistema permite hacer el registro de deportistas a Base
de Datos
OK
Solicitar Inscripción al Evento
- Realizar solicitud de inscripción en los eventos registrados
- El sistema permite solicitar la
inscripción en eventos registrados
OK
Inscripción al Evento
- Ya aceptada la solicitud de
inscripción al evento se puedan realizar las inscripciones de los deportistas en
las categorías deseadas
- El sistema permite la inscripción del
número de deportistas
autorizados por el Organizador. OK
- Realizar las inscripciones de los
deportistas que desean ser jueces
- El sistema permite la inscripción de deportistas como jueces al evento.
Tabla 12 PRUEBA DE FUNCIONALIDAD POR PARTE DEL DELEGADO
60
PRUEBA DE FUNCIONALIDAD POR PARTE DEL JUEZ
Ejecutor: Christian Camilo Fuentes Rol: Juez
Fecha inicio: 05/03/16 Fecha Final:
06/03/16 Estado: Terminado
Modulo Resultados esperados
Resultados obtenidos Estado
Realizar pesaje
- Sistema permita registrar el pesaje
de los deportista en tiempo real
- El sistema deja realizar el pesaje pero generó un
conflicto con una categoría
OK, Conflicto solucionado.
Desarrollo Campeonato
- Que el sistema permita consultar los deportistas de cada categoría y registrar
resultados del desarrollo de la
categoría
- El sistema lista las categorías y al
seleccionar alguna muestra el listado
de deportistas se da inicio a la categoría y se registran los resultados de los
deportistas
OK
Finalización de categorías
- El sistema permita realizar la finalización de las categorías siempre y cuando ya se hayan registrado todos los resultados
- El sistema permite Generar la Finalización de la categoría al ingresar todos los datos de los resultados, Genera un conflicto en algunas categorías y en el módulo de combate
OK, Conflictos
solucionados.
Tabla 13 PRUEBA DE FUNCIONALIDAD POR PARTE DEL JUEZ
61
4.5 DICCIONARIO DE DATOS A continuación se muestran todas las tablas de la base de datos completamente explicadas son 38 tablas en este documento colocaremos las más relevantes las demás se encuentran en el ANEXO G.
TABLA CIUDAD
# NOMBRE ATRIBUTO
TIPO NULO DESCRIPCION
1 2 3
Ciu_codigo Ciu_descripcion Fk_dep_codigo
INT VARCHAR(24) INT
NO NO NO
Código ciudad. Descripción ciudad. Foránea con departamento.
Tabla 14 CIUDAD
TABLA CLUB
# NOMBRE ATRIBUTO
TIPO NULO DESCRIPCION
1 2 3 4 5
Clu_nit Clu_nombre Clu_direccion Clu_barrio Club_telefono.
VARCHAR(15) VARCHAR(25) VARCHAR(50) VARCHAR(20) VARCHAR(10)
NO NO NO NO NO
Código de los clubs. Nombre de club. Dirección de club. Barrio de club. Teléfono de club.
Tabla 15 CLUB
TABLA COMBATE
# NOMBRE ATRIBUTO TIPO NULO DESCRIPCION
1 2 3
Com_codigo Fk_meg_codigo Fk_pg_Codigo
Smallint VARCHAR(5) VARCHAR(5)
NO NO NO
Código combate. Foránea mod_edad_grado Foránea peso_genero.
Tabla 16 COMBATE
TABLA DEFENSA
# NOMBRE ATRIBUTO TIPO NULO DESCRIPCION
1 2 3
Def_codigo Fk_meg_codigo Fk_gen_codigo
Smallint VARCHAR(5) VARCHAR(5)
NO NO NO
Código defensa. Foránea mod_edad_grado Foránea género.
Tabla 17 DEFENSA
62
TABLA DEPARTAMENTO
# NOMBRE ATRIBUTO TIPO NULO DESCRIPCION
1 2
Dep_codigo Dep_descripcion.
INT VARCHAR(20)
NO NO
Código departamento. Nombre departamento.
Tabla 18 DEPARTAMENTO
TABLA DEPORTISTA
# NOMBRE ATRIBUTO TIPO NULO DESCRIPCION
1 2 3
Fk_per_codigo. Fk_clu_nit Fk_gra_codigo
INT VARCHAR(15) VARCHAR(5)
NO NO NO
Foránea persona código. Foránea club nit. Foránea grado código.
Tabla 19 DEPORTISTA
TABLA DESCALIFICACION
# NOMBRE ATRIBUTO TIPO NULO DESCRIPCION
1 2 3
Des_codigo Des_descripcion Des_modalidad.
INT VARCHAR(100) VARCHAR(20)
NO NO NO
Código descalificación. Descripción descalificación.
Modalidad.
Tabla 20 DESCALIFICACION
TABLA DESCALIFICACION_DEPORTISTAS
# NOMBRE ATRIBUTO TIPO NULO DESCRIPCION
1 2 3 4 5 6
FK_dep_codigo FK_eve_codigo FK_des_combate FK_des_defensa FK_des_saltoalto FK_des_saltolargo
INT INT INT INT INT INT
NO NO SI SI SI SI
Foránea departamento código. Foránea evento código. Foránea descalificación combate Foránea descalificación defensa Foránea descalificación saltoalto Foránea descalificación saltolarg
Tabla 21 DESCALIFICACION_DEPORTISTAS
TABLA EDAD
# NOMBRE ATRIBUTO TIPO NULO DESCRIPCION
63
1 2 3 4
Eda_codigo Eda_descripcion Eda_minima Eda_maxima
VARCHAR(5) VARCHAR(8) INT INT
NO NO SI SI
Edad código. Descripción de edad. Edad mínima. Edad máxima.
Tabla 22 EDAD
TABLA EVENTO
# NOMBRE ATRIBUTO TIPO NULO DESCRIPCION
1 2 3 4 5 6 7 8 9 10 11 12
Eve_codigo Eve_nombre Eve_F_inicio Eve_F_culminado Eve_direccion Eve_ini_inscrip Eve_Fin_inscrip Eve_lugar Fk_ciu_codigo Fk_usu_per Fk_usuario Eve_estado
INT VARCHAR(40) DATE DATE VARCHAR(50) DATE DATE VARCHAR(60) INT INT VARCHAR(15) VARCHAR(15)
NO NO NO NO NO NO NO NO NO NO NO SI
Código evento. Nombre evento. Dirección del evento. Inicio inscripción evento. Final inscripción evento. Lugar del evento. Foránea código ciudad. Foránea persona. Foránea usuario. Estado del evento.
Tabla 23 EVENTO
TABLA GENERO
# NOMBRE ATRIBUTO TIPO NULO DESCRIPCION
1 2
Gen_codigo. Gen_descripcion.
VARCHAR(5) VARCHAR(9)
No No
Código género. Descripción género.
Tabla 24 GÉNERO
TABLA GRADO
# NOMBRE ATRIBUTO TIPO NULO DESCRIPCION
1 2
Gra_codigo Gra_descripcion
VARCHAR(5) VARCHAR(12)
No No
Grado código. Descripción de grado.
Tabla 25 GRADO
64
CONCLUSIONES
Se construyó un módulo de registro para que los delegados inscriban los
deportistas en los campeonatos.
Se crearon varios módulos de competencia donde los jueces asignados podrán
ingresar los marcadores y puntajes respectivos de cada competencia.
Se elaboró un módulo de reportes para que según el tipo de usuario puedan
observar los datos de interés, resultados y puntajes de los campeonatos
realizados.
Se desarrolló un módulo de administración que se encarga de dar permisos a las
solicitudes de los usuarios para que puedan organizar sus campeonatos.
Se desarrollaron las pruebas pertinentes al sistema de información y los
resultados ayudaron a detectar los errores y fallos; Como se observa desde la
tabla 11 a la 13.
El SGBD MySQL permite diseñar una base de datos aceptable a los datos
administrados por el sistema de información, también para el desarrollo de los
módulos de registro, contenido, comunicación y notificaciones, se desarrolla con el
lenguaje Java con JSF(Java Server Faces) porque así se consigue aplicar lo
aprendido durante el transcurso del proyecto curricular
Se utilizó técnicas de programación como DAOS que permite el acceso de datos
y los Beans (paquete de clases) que logra ahorrar y reutilizar código funcional.
65
Para la interfaz gráfica se utilizó la extensión de PrimeFaces porque cuenta con un
conjunto de componentes enriquecidos para aplicaciones web la cual se utilizó
para el diseño de cada módulo.
El sistema SOC-HKD aporta una gran ayuda para la organización de campeonatos
de Hapkido, gracias a la sistematización de los procesos que se hacen
manualmente.
Se desarrollaron pruebas de funcionalidad con desarrolladores y usuarios al
sistema SOC-HKD, sin embargo, para verificar su objetivo a fondo esperamos sea
implementado en la Universidad Distrital en la facultad Tecnológica donde se
pueda observar el funcionamiento del sistema en un entorno real, para que este se
vaya complementando y sea más óptimo para los usuarios.
66
RECOMENDACIONES
El sistema de información estará sometido a actualizaciones por constantes
cambios a nuevas funciones del framework primefaces que surgen de nuevas necesidades.
Es recomendable que el organizador, jueces y delegados quienes van
hacer uso del sistema de información SOC-HKD se capaciten mediante los manuales anexos en este documento con el fin de obtener una experiencia de usuario satisfactorio.
Es recomendable al usuario o programador que si va modificar las vistas o
funcionalidad utilizar el mismo framework para no tener problemas de
compatibilidad.
Implementar las nuevas herramientas tecnológicas como apoyo a la
organización de eventos deportivos ya que no es funcional la que se está utilizando en el momento.
Se recomienda que este sistema sea utilizado solo para gestionar
campeonatos de Hapkido, debido a que no está diseñado para desarrollo de competencias en otras disciplinas marciales.
67
BIBLIOGRAFIA
GARCIA, Andres Mauricio. REGLAMENTO TÉCNICO DE COMPETENCIA FEDERACION COLOMBIANA DE HAPKIDO MODALIDAD DEFENSA PERSONAL – HO SIN SUL. Edición 2, Porto Alegre, 2012,45.
MURILLO CRUZ, Jeison Antonio; ROA TORRES Jorge Ernesto. Sistema de información para la organización y administración de campeonatos para deportes de conjunto SPORTACUS. [En línea].2007. [Consultado 01 Septiembre de 2014]. Disponible en <http://www.konradlorenz.edu.co/images/stories/suma_digital_sistemas/2009_01/Sistemqa%20de%20Informacion_Organizacion_y_Administracion_Deportiva_final.pdf>
DEPORTE VIRTUAL, Hércules [En línea]. [Consulta septiembre 15 de 2014]. Disponible en <http://hercules.deportevirtual.com/>
Proclama del Cauca. [En línea].2012. [Consulta septiembre 15 de 2014]. Disponible en <http://www.proclamadelcauca.com/2012/04/en-cali-se-realizo-el-pasado-fin-de.html>
R2SPORTS, Tournament Software and Management Applications [En línea [Consulta septiembre 15 de 2014]. Disponible en http://www.r2sports.com/
PITA, Laura, 2014 http://www.utadeo.edu.co/es/blog/blog-zona-deportiva/56631/primer-campeonato-distrital-de-hapkido
ALEGSA.COM.AR, Definición de sistema [En línea]. [Consulta septiembre 15 de 2014]. Disponible en <http://www.alegsa.com.ar/Dic/sistema.php>
Metodología RUP, [En línea]. [Consulta septiembre 15 de 2014] Disponible en <http://mtdologiarup.blogspot.com/>
De Lourdes Santiago Zaragoza, María, Desarrollando aplicaciones informáticas con el proceso de desarrollo unificado (RUP), [En Línea] [Consulta septiembre 15 de 2014] http://www.utvm.edu.mx/OrganoInformativo/orgJuI07/RUP.htm
Recommended