aplicaciones web para trabajo...

16
Universitat Oberta Estudios de ingeni Proyecto Final Aplicaciones Web para Diseño y prototipo de un softwar en sistemas de tra en sistemas de tra a de Catalunya iería informática de Carrerra a Trabajo Colaborativo re para la replicación de ficheros abajo colaborativo abajo colaborativo Alumno: Ángel Navarro Estepa Consultor: Fatos Xhafa

Upload: others

Post on 30-Jul-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Aplicaciones Web para Trabajo Colaborativoopenaccess.uoc.edu/webapps/o2/bitstream/10609/11167/2/a... · 2017-10-04 · colaborativo de trabajo donde ofrecer una herramienta para poder

Universitat Oberta de Catalunya

Estudios de ingeniería informática

Proyecto Final de Carrerra

Aplicaciones Web para Trabajo Colaborativo

Diseño y prototipo de un software para la replicación de ficheros en sistemas de trabajo colaborativo en sistemas de trabajo colaborativo

Universitat Oberta de Catalunya

Estudios de ingeniería informática

Proyecto Final de Carrerra

Aplicaciones Web para Trabajo Colaborativo

Diseño y prototipo de un software para la replicación de ficheros en sistemas de trabajo colaborativo en sistemas de trabajo colaborativo

Alumno: Ángel Navarro Estepa

Consultor: Fatos Xhafa

Page 2: Aplicaciones Web para Trabajo Colaborativoopenaccess.uoc.edu/webapps/o2/bitstream/10609/11167/2/a... · 2017-10-04 · colaborativo de trabajo donde ofrecer una herramienta para poder

ÍndiceIntroducciónIntroducciónObjetivosEl Proyecto

Elementos funcionalesTecnología utilizada

ArquitecturaConclusiones

Elementos funcionalesTecnología utilizada

Page 3: Aplicaciones Web para Trabajo Colaborativoopenaccess.uoc.edu/webapps/o2/bitstream/10609/11167/2/a... · 2017-10-04 · colaborativo de trabajo donde ofrecer una herramienta para poder

INTRODUCCION

En los tiempos que vivimos, y sobre todo,trabajo en grupo es uno de los puntos másllevar un proyecto a cabo.Cada vez se está incentivando no sólo el estudiouna realidad, sino el trabajo con diferentes equiposgeográficamente distintos.Por eso, es muy importante desarrollar herramientasPor eso, es muy importante desarrollar herramientastengan en cuenta esa premisa para el trabajobarrera geográfica sea un impedimento.

Esta evolución ha ido acompañada decomunicaciones. Los entornos colaborativos objetivohuye de la utilización de la clásica arquitecturaadentra en una arquitectura conocida como redpares o red entre iguales.

todo, hacia donde vamos, elmás relevantes a la hora de

estudio a distancia, que ya esequipos situados en lugares

herramientas y sistemas queherramientas y sistemas quetrabajo en equipo sin que la

una evolución en lasobjetivo de este proyecto,

arquitectura cliente-servidor y sered peer to peer, red de

Page 4: Aplicaciones Web para Trabajo Colaborativoopenaccess.uoc.edu/webapps/o2/bitstream/10609/11167/2/a... · 2017-10-04 · colaborativo de trabajo donde ofrecer una herramienta para poder

INTRODUCCION

� Red peer to peer: Una red peer to peer esen la que todos o algunos aspectos funcionanfijos, sino una serie de nodos que se comportanEs decir, actúan simultáneamente como clientesa los demás nodos de la red. Las redes P2Pdirecto de información, en cualquier formato,interconectados.interconectados.

� Red peer to peer / cliente - servidor:aprovechan, administran y optimizan el uso deldemás usuarios de la red por medio de lamismos, y obtienen así más rendimientotransferencias que con algunos métodos centralizadosdonde una cantidad relativamente pequeñatotal del ancho de banda y recursos compartidosaplicación.

una red de computadorasfuncionan sin clientes ni servidores

comportan como iguales entre sí.clientes y servidores respecto

P permiten el intercambioformato, entre los ordenadores

Las redes peer-to-peerdel ancho de banda de losla conectividad entre los

rendimiento en las conexiones ycentralizados convencionales,

pequeña de servidores provee elcompartidos para un servicio o

Page 5: Aplicaciones Web para Trabajo Colaborativoopenaccess.uoc.edu/webapps/o2/bitstream/10609/11167/2/a... · 2017-10-04 · colaborativo de trabajo donde ofrecer una herramienta para poder

OBJETIVOS

Los objetivos principales son:

� Crear una aplicación mediante la cual poder crear un entorno

colaborativo de trabajo donde ofrecer una herramienta para poder

compartir documentos y habilitar los mecanismos necesarios para

que esta plataforma ofrezca los servicios para que cada miembro

del equipo disponga de los documentos de otros compañeros

actualizados en todo momento.

� Profundizar en las comunicaciones tipo peer to peer

Crear una aplicación mediante la cual poder crear un entorno

colaborativo de trabajo donde ofrecer una herramienta para poder

compartir documentos y habilitar los mecanismos necesarios para

que esta plataforma ofrezca los servicios para que cada miembro

del equipo disponga de los documentos de otros compañeros

peer to peer.

Page 6: Aplicaciones Web para Trabajo Colaborativoopenaccess.uoc.edu/webapps/o2/bitstream/10609/11167/2/a... · 2017-10-04 · colaborativo de trabajo donde ofrecer una herramienta para poder

EL PROYECTO - DESCRIPCIÓN

El diseño y prototipo de un softwareficheros en sistemas de trabajo en grupossistema de gestión de documentos sobre undistribuido que permite a un equipo de trabajocompartir documentos que podrían formarcomún.

Cada miembro del equipo puede crearcompartiéndolos con los demás miembros delactualizada toda la documentación que otrospodido crear/editar.

Para crear esta red entre los miembrosconexiones entre nodos (miembros del grupo)existencia de un superpeer que es el encargadoconsistencia entre los diferentes nodosactualizada en todo momento.actualizada en todo momento.

para la replicación degrupos P2P, consiste en un

entorno descentralizado ytrabajo (grupo de usuarios)

formar parte de un proyecto

crear y editar documentosdel grupo y a su vez, tieneotros compañeros hayan

miembros del equipo, se creangrupo) peer to peer con laencargado de mantener la

y tener la información

Page 7: Aplicaciones Web para Trabajo Colaborativoopenaccess.uoc.edu/webapps/o2/bitstream/10609/11167/2/a... · 2017-10-04 · colaborativo de trabajo donde ofrecer una herramienta para poder

EL PROYECTO - ALCANCE

El sistema creado consiste en:

� Sistema colaborativo con un número reducido

(4) y con un único nodo tipo superpeer.

� Sólo se tratarán ficheros XML� Sólo se tratarán ficheros XML

� Se habilitará una interficie de usuario en

permitir realizarar las acciones oportunas

xml.

� Sólo se podrán modificar documentos xml

� El nodo tipo superpeer también realizará

center.

reducido de nodos tipo peer

en los nodos tipo peer para

oportunas sobre los documentos

xml de propiedad del nodo

realizará las funciones de data

Page 8: Aplicaciones Web para Trabajo Colaborativoopenaccess.uoc.edu/webapps/o2/bitstream/10609/11167/2/a... · 2017-10-04 · colaborativo de trabajo donde ofrecer una herramienta para poder

ELEMENTOS FUNCIONALES

Crear XML

Gestión documentos

XMLModificar XML

Borrar XMLBorrar XML

Listar Docs

documentos Conectar/ Desconectar

ConfigurarConfigurar

Page 9: Aplicaciones Web para Trabajo Colaborativoopenaccess.uoc.edu/webapps/o2/bitstream/10609/11167/2/a... · 2017-10-04 · colaborativo de trabajo donde ofrecer una herramienta para poder

ELEMENTOS FUNCIONALES

Mediante las funcionalidades definidas el usuario

� Crear XML: Dar de alta documentos xmlresto de componentes del grupo.

� Modificar XML: Sólo podrá modificar lospropiedad. Los cambios realizados sepropiedad. Los cambios realizados secomponentes del grupo

� Borrar XML: Dar de baja un documentobaja será notificada al resto de componentes

� Listar documentos: Posibilita al usuariolos documentos del entorno colaborativolistado, se podrá acceder a un determinado

� Conectar / Desconectar: Posibilita� Conectar / Desconectar: Posibilitagrupo de trabajo. Si se trabaja desconectado,realizados en los documentos no son informadosforma que no obtiene las actualizacionesconectarse informará y obtendrá todos los

� Configurar: Permitirá modificar parámetrosaplicación.

usuario puede:

xml que compartirá con el

los documentos xml de suinformarán al resto deinformarán al resto de

documento xml de su propiedad. Lacomponentes del grupo

usuario poder consultar todoscolaborativo (grupo). Mediante estedeterminado documento.

conectar la aplicación alconectar la aplicación aldesconectado, los cambiosinformados al grupo de igual

actualizaciones que se hagan. Allos cambios.

parámetros de la propia

Page 10: Aplicaciones Web para Trabajo Colaborativoopenaccess.uoc.edu/webapps/o2/bitstream/10609/11167/2/a... · 2017-10-04 · colaborativo de trabajo donde ofrecer una herramienta para poder

TECNOLOGIAS UTILIZADAS

J2EE

JXTA

JDOMJDOM

SWING

DERBY DB

LOG4JLOG4J

Page 11: Aplicaciones Web para Trabajo Colaborativoopenaccess.uoc.edu/webapps/o2/bitstream/10609/11167/2/a... · 2017-10-04 · colaborativo de trabajo donde ofrecer una herramienta para poder

TECNOLOGÍAS UTILIZADAS

En la construcción del proyecto se han utilizando

� J2EE: Java es el lenguaje de programacióndesarrollo íntegro de la solución y todasherramientas utilizadas están pensados para

� SWING: Al tratarse de una aplicación� SWING: Al tratarse de una aplicacióndesarrollado todo el core e interficie gráficanodos tipo peer con esta tecnología.

utilizando:

programación escogido para ellas librerías, protocolos y

para trabajar con Java.

de desktop pesada se hade desktop pesada se hagráfica de usuario de los

Page 12: Aplicaciones Web para Trabajo Colaborativoopenaccess.uoc.edu/webapps/o2/bitstream/10609/11167/2/a... · 2017-10-04 · colaborativo de trabajo donde ofrecer una herramienta para poder

TECNOLOGÍAS UTILIZADAS

� JXTA: Tecnología consistente en un conjuntoabiertos (open source) peer to peer quela red comunicarse, colaborar y compartircomunicaciones del proyecto.

En esta red virtual JXTA cualquier par puedeEn esta red virtual JXTA cualquier par puedepesar de su ubicación, tipo de dispositivo o sistemaPeer/SuperPeer: Un igual es cualquier entidado más de los protocolos de JXTA. Existensiendo el tipo superpeer un igual que implementasoportar el despliegue y operación de una redUn grupo de iguales, es una colección deacuerdo en un conjunto común de servicios o

conjunto de simples protocolosque permiten a los dispositivos de

compartir recursos. Es la base de las

puede interactuar con otros pares apuede interactuar con otros pares asistema operativo.

entidad de red que implemente unodiferentes tipologías de iguales

implementa y provee recursos parared JXTA.de iguales que se han puesto de

intereses

Page 13: Aplicaciones Web para Trabajo Colaborativoopenaccess.uoc.edu/webapps/o2/bitstream/10609/11167/2/a... · 2017-10-04 · colaborativo de trabajo donde ofrecer una herramienta para poder

TECNOLOGÍAS UTILIZADAS

� DERBY DB: Base de datos (JavaDB) 100forma de trabajo empotrado que ofrecede datos transparente para el usuarioinstalación previa y en caliente se van creando

� JDOM: Librerías java pensadas paradocumentos XML que permiten trabajardocumentos XML que permiten trabajarde una forma rápida y sencilla.

� LOG4J: Biblioteca open source desarrolladaApache Software Foundation que permitesoftware elegir la salida y el nivel de granularidado “logs” (data logging) a tiempo de ejecucióncompilación como es comúnmente realizadoproyecto para dar salida a un sistemaqué está pasando en la aplicación.

100% java que permite unaun servicio de repositorio

usuario; no necesita de unacreando las tablas a utilizar.

para el tratamiento detrabajar con ese tipo de ficherostrabajar con ese tipo de ficheros

desarrollada en Java por lapermite a los desarrolladores de

granularidad de los mensajesejecución y no a tiempo derealizado. Utilizada en el

de logs donde poder ver

Page 14: Aplicaciones Web para Trabajo Colaborativoopenaccess.uoc.edu/webapps/o2/bitstream/10609/11167/2/a... · 2017-10-04 · colaborativo de trabajo donde ofrecer una herramienta para poder

ARQUITECTURA

Page 15: Aplicaciones Web para Trabajo Colaborativoopenaccess.uoc.edu/webapps/o2/bitstream/10609/11167/2/a... · 2017-10-04 · colaborativo de trabajo donde ofrecer una herramienta para poder

ARQUITECTURA

La arquitectura del proyecto está formada por

� Nodos tipo Peer: Se crearán n (en nuestropeer con nombre PFC_Nodox, donde x indicaCada nodo puede estar instalado en uno en el mismo (siempre y cuando el directoriodistinto). Estos nodos ofrecen al usuariodistinto). Estos nodos ofrecen al usuariopoder gestionar los documentos xml del grupo

� Nodo tipo superpeer: Se creará unserá el encargado de orquestar tododispone de ninguna interficie gráfica.peticiones de los nodos tipo peer. Es el primeren servicio. Realiza las tareas de dataconsistencia de los documentos creados.

� Grupo de trabajo – PFC_GrupoTrabajo� Grupo de trabajo – PFC_GrupoTrabajomediante el cual todos los nodos estaránintercambiarán los documentos que gestionen

� PFCGrupoBD: Cada uno de los nodos disponede datos donde mantiene su configuracióndocumentos.

por:

nuestro caso 4) nodos tipoindica el número de nodo.dispositivo independiente

directorio de instalación seausuario una interficie con la queusuario una interficie con la que

grupo.

nodo tipo superpeer queel grupo de trabajo. NoProceso a la espera de

primer elemento a ponersecenter para mantener la

PFC_GrupoTrabajo: Espacio colaborativoPFC_GrupoTrabajo: Espacio colaborativoestarán conectados y se

gestionen.

dispone de su propia baseconfiguración y la relación de

Page 16: Aplicaciones Web para Trabajo Colaborativoopenaccess.uoc.edu/webapps/o2/bitstream/10609/11167/2/a... · 2017-10-04 · colaborativo de trabajo donde ofrecer una herramienta para poder

CONCLUSIONES

� Peer to peer en mucho más que unpelículas, música o cualquier tipo de programacomunicación que rompe la idea de únicoclientes (con la problemática que esto aporta)concepto de que todos podemos ser clientes y

� Con esta base, y con la traducción técnica que� Con esta base, y con la traducción técnica quese ha creado un entorno colaborativo dondepuede publicar documentos xml y puede disponerpor los otros miembros del grupo. A parte, temomento de los cambios realizados enflexibilidad y ventajas que esto aporta a la hora

� Aunque el entorno de trabajo creado es un entornogestión de documentos xml, con un númerosolo nodo del tipo superpeer, se han establecidocrear un entorno de trabajo donde el númerocrear un entorno de trabajo donde el númeromás elevado, donde los documentos a compartirtipo de documento que forme parte del proyectotrabajando y pudiendo elevar los nodos del tipouna mayor fiabilidad y elevar los vectores de

� Destacar las grandes ventajas que este tipodando aspectos de movilidad y trabajo enbase de trabajo.

software para compartirprograma. Es una forma deúnico servidor con múltiples

aporta) para extender ely servidores.

que las librería jxta te dan,que las librería jxta te dan,donde cada miembro del grupo

disponer de los xmls creadoste permite disponer en todo

los documentos con lahora de trabajar en grupo.

entorno que se reduce a lanúmero reducido de nodos y unestablecido las bases para podernúmero de usuarios sea muchonúmero de usuarios sea muchocompartir puedan ser cualquier

proyecto en el que estemostipo superpeer para ofrecerrendimiento.

tipo de sistemas aportangrupo como parte de su