Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
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
ÍndiceIntroducciónIntroducciónObjetivosEl Proyecto
Elementos funcionalesTecnología utilizada
ArquitecturaConclusiones
Elementos funcionalesTecnología utilizada
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
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
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.
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
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
ELEMENTOS FUNCIONALES
Crear XML
Gestión documentos
XMLModificar XML
Borrar XMLBorrar XML
Listar Docs
documentos Conectar/ Desconectar
ConfigurarConfigurar
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
TECNOLOGIAS UTILIZADAS
J2EE
JXTA
JDOMJDOM
SWING
DERBY DB
LOG4JLOG4J
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
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
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
ARQUITECTURA
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
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