Publicado el 16 de Abril del 2017
989 visualizaciones desde el 16 de Abril del 2017
1,3 MB
44 paginas
Creado hace 17a (10/11/2007)
07036 DESARROLLO WEB
COLABORATIVO EN FORJA
Ramón M. Gómez ( ramongomez @ us.es )
Rafael Sierra del Pino ( rsierra @ us.es )
Noviembre 2.007
ÍNDICE
1.Introducción al trabajo colaborativo
2.El entorno de la Forja
3.Trabajar con un sistema de control de
versiones
4.Referencias
1. INTRODUCCIÓN AL
TRABAJO COLABORATIVO
● Modelos de trabajo colaborativo
● Definiciones
● Sistemas de control de versiones
Modelos de trabajo
colaborativo
● Catedral [3]
● Proyectos muy grandes controlados por gurus
informáticos, con una estricta jerarquía.
● Se liberan versiones completas.
● Software propietario en general.
● Bazar [3]
● Proyectos que evolucionan a su ritmo sin un
control central.
● Se libera gran cantidad de revisiones de prueba.
● Pueden tener diferentes enfoques
contradictorios.
● Método de trabajo del software libre.
Definiciones
● Control de versiones (CVS),
control de revisiones,
gestión de código fuente (SCM) [iii]:
sistema de archivado y gestión de las
múltiples revisiones históricas de un
mismo proyecto.
● Modelo cliente/servidor o distribuido.
● Modelo exclusivo o colaborativo.
● Repositorio: almacén de datos que
incluye todos los cambios ocurridos en el
desarrollo de un proyecto.
Definiciones
● Bug tracking: sistema de seguimiento,
control y generación de informes para la
corrección de errores de programación.
● Roadmap (hoja de ruta): planificación
para el seguimiento del desarrollo de un
proyecto.
● Diagrama de Gantt: esquema gráfico
donde se muestran los tiempo estimados
para el desarrollo de las tareas y
actividades en las que se subdivide un
proyecto.
Definiciones
● Tarea: conjunto de actividades básicas
que realizan un pequeño cambio.
● Revisión: estado actual del proyecto.
● Revisión nocturna (nighly build): revisión
publicada al finalizar la jornada.
● Versión: revisión importante que contiene
los cambios indicados en la hoja de rutas.
● Milestone (mojón de carretera): versión
que supone un punto importante en el
desarrollo del proyecto.
Control de versiones
exclusivo
● El usuario bloquea
el acceso a los
elementos que va a
modificar.
● El elemento se
desbloquea tras el
cambio.
● Pueden generarse
problemas por
bloqueos
simultáneos.
[4]
Control de versiones
colaborativo
● El usuario descarga una copia del
repositorio.
● Se trabaja editando su copia local.
● El enviar los datos modificados, se
mezcla el contenido de la copia con el del
repositoio para obtener la nueva revisión.
● Modelo válido para código fuente, no
binario.
Control de versiones
colaborativo
[4]
Ramas
● Líneas de desarrollo independientes que
comparten una historia común.
● Las ramas se crean como copias de la
versión troncal (trunk) para realizar
cambios muy importantes en el proyecto.
● Una revisión importante de una rama
puede denominarse por una etiqueta (tag).
[4]
2. EL ENTORNO DE LA FORJA
● Normas de uso
● Características
● Tipos de usuarios
● Mapa de proyectos
● El proyecto
Normas de uso de la Forja
de RedIRIS [ii]
● El usuario debe registrarse como miembro de la
Forja introduciendo sus datos personales.
● Un usuario registrado puede dar de alta un
nuevo proyecto y ser su administrador.
● Un usuario registrado puede solicitar formar
parte de un proyecto para publicar información.
● Las solicitudes de altas de usuarios y proyectos
deben ser aprobadas por los administradores de
la Forja.
● El administrador del proyecto aprueba las
solicitudes de participación.
● Un usuario anónimo puede descargar
información libre.
Características de GForge [iv]
● Página web para cada proyecto.
● Sistema de control de versiones.
● Servidor web para coordinación de proyectos:
● Agrupación de proyectos en diversas categorías.
● Foros de discusión para miembros del proyecto.
● Seguimiento de errores.
● Soporte a peticiones y consultas.
● Listas de correo para los miembros.
● Compartir documentación.
● Gestión de tares pendientes.
● Envío de ficheros y revisiones.
● Noticias propias para cada proyecto.
● Sencilla base de conocimientos.
Acceso anónimo a la Forja
● Ver el mapa de
clasificación de los
proyectos.
● Ver recortes de código.
● Ver la página web de
los proyectos
● Descargar versiones de
código y documentos.
● Acceso de lectura a la
última revisión de los
proyectos.
● Ver noticias, tareas y
seguimiento de errores.
Miembros de un proyecto
(roles por defecto [ii])
● Administrador:
● Control completo del proyecto y sus componentes.
● Programador senior:
● Administra foros, registros, tareas y documentos y
publica código.
● Programador junior:
● Publica código, documentos, en registro y en foros.
● Soporte técnico:
● Administra documentos y publica en registros.
● Documentador:
● Administra documentos y publica en foros.
Mapa de proyectos
Clasificación del
proyecto para que
pueda ser localizado
fácilmente por temas:
● estado de desarrollo
● entorno de trabajo
● audiencia
● licencia
● idioma
● lenguaje de programación
● sistema operativo
● tipo de proyecto
● otros
Página del usuario
Informa el usuario de
su estado general:
● Proyectos de los que es
miembro.
● Tareas y registros
asignados.
● Monitorización de foros y
ficheros.
● Crear apuntes y notas.
● Editar su información
personal.
● Crear un nuevo proyecto.
Página del proyecto
Permite acceder a los
componentes del
proyecto:
● Muestra los componentes
(admin., foros, registros,
listas, tareas, SCM, etc.).
● Clasificación en el mapa
de proyectos.
● Lista de miembros.
● Ficheros y noticias
publicados.
● Acceso a la página web.
● Sumario del estado
general del proyecto.
Dar de alta un proyecto
● Rellenar el formulario de registro.
1. Nombre del proyecto.
2. Descripción del proyecto y de los recursos que
necesita de la Forja.
3. Tipo de licencia.
4. Descripción pública para el sumario del proyecto.
5. Nombre Unix: nombre corto usado en el
repositorio y en la página web.
6. Repositorio SCM: sólo SVN (Subversion).
● El administrador de la Forja recibe un
correo con la solicitud.
● Si es aprobada, el proyecto es accesible
y el usuario recibe la confirmación.
Administración del proyecto
● Gestión y planificación del trabajo:
● Asignar roles a los miembros.
● Activar y administrar los componentes del
proyecto.
● Crear la página web del proyecto.
● Establecer la clasificación del proyecto dentro
del mapa de proyectos general.
● Editar la información general.
● Ver informe y estadísticas de evolución del
proyecto.
● Publicar solicitudes de ayuda para realizar un
trabajo determinado.
Componentes de un
proyecto
● Foros de discusión.
● Registros.
● Listas de distribución.
● Tareas asignadas.
● Gestor de documentos.
● Encuestas.
● Noticias publicadas.
● Control de versiones.
● Ficheros publicados.
● Wiki.
Registros
Grupos de apuntes
para el seguimiento
de la evolución del
proyecto.
● tipo de apunte
● estado (abierto o cerrado)
● producto y componente
afectado
● gravedad y prioridad
● tipo de hardware y S.O.
● usuario asignado
● tarea generada
● tipo de resolución
● resumen y descripción
Tareas
Planificación del
trabajo del proyecto
en divisiones
temporales.
● se agrupan en
subproyectos y categorías
● relación de dependencia
● prioridad
● fecha de inicio y fin
● horas estimadas
● usuarios asignados
● porcentaje de resolución
● resumen y descripción
● diagrama de Gantt
Gestor de documentos
Almacén de
documentación
general del proyecto.
● resumen y descripción
● fichero a publicar o URL
de localización
● categoría
● idioma del documento
● se establece un límite de
tamaño para el
documento
Otros componentes
● Foros: listas de mensajes clasificadas por
grupos de conversaciones.
● crear conversaciones o participar en existentes
● asunto y mensaje
● un foro puede ser monitorizado
● Listas: dirección de correo electrónico
para distribuir mensajes a sus miembros.
● suscripción a listas de distribución de correo
● administración mediante MailMan
● Wiki: espacio colaborativo para escribir
contenidos.
● sintaxis WikiWikiWeb
●
Otros componentes
● Noticias: notas breves sobre el proyecto
que se publican en la página principal de
la Forja.
● título y detalles de la noticia
● Encuestas: grupos de preguntas que el
administrador realiza a los miembros del
proyecto.
● activar o desactivar una encuesta
● redactar las preguntas
● asignar tipos de preguntas (sí/no, rango, texto, ...)
● ver resultados y gráficas
●
Otros componentes
● SCM: acceso al sistema de control de
versiones.
● informe de versiones
● notas de acceso anónimo o restringido
● interfaz web
● Ficheros: paquetes de código .
● definir paquetes
● estado visible o invisible
● publicar ficheros
● notas y cambios
3. EL SISTEMA DE CONTROL
DE VERSIONES
● Forma de trabajar.
● Subversion.
● Herramientas gráficas.
● Eclipse.
Forma de trabajar con un
repositorio colaborativo
● La Forja crea automáticamente el
repositorio SVN.
● Descargar la copia personal del
repositorio.
● Trabajar con el código.
● Añadir o modificar elementos.
● Si otro usuario modifica el repositorio
puede ser necesario mezclar (revisar) el
código con la copia local.
● Publicar una nueva revisión.
Órdenes básicas de
Subversion [v]
● Ayuda:
● Descargar repositorio:
● Enviar nueva revisión *:
● Agregar archivos al
svn help
svn checkout URL
svn commit -m 'Comentario'
svn add Archivo ...
sistema de versiones:
● Quitar del control de
versiones:
● Actualizar la copia con los
cambios del repositorio:
● Limpiar la copia de trabajo
(terminar operaciones):
● Mostrar información:
● Bloquear repositorio *:
● Desbloquear repositorio *:
svn delete Archivo ...
svn update
svn cleanup
svn info
svn lock URL ... -m 'Mens
Comentarios de: Desarrollo Web Colaboratio en Forja (0)
No hay comentarios