“Construimos, integramos y ponemos a disposición conocimiento y herramientas tecnológicas para el
progreso”
TRAC para la integración y control de proyectos de
software
Jonathan Vargas RodríguezAdministrador de Proyectos
TRAC es una plataforma Web basada
en el modelo de software libre, cuyo
objetivo es facilitar la gestión,
integración y seguimiento de proyectos
de desarrollo de software y de
infraestructura tecnológica, empleando
el popular modelo de tickets
Presentación
Conceptos
Ticket: Unidad atómica que
concentra un conjunto de
atributos, propiedades, un
histórico de cambios y un flujo de
trabajo colaborativo. Es la base
principal del funcionamiento de
Trac
Conceptos
VCS: Alude a “Sistema de Control de
Versiones” (siglás en inglés).
Permite llevar el histórico de cambios en
el código fuente de un proyecto de forma
centralizada y desacoplada. Por ejemplo
Subversion, Bazaar, Git, CVS
Conceptos
Wiki: Es un sitio web cuyas páginas
pueden ser editadas por múltiples
voluntarios a través del navegador web.
Los usuarios pueden crear, modificar o
borrar un mismo texto con mucha
facilidad, facilitando la documentación y
la compartición de conocimiento
CaracterísticasIntegración nativa con repositorios Subversión
Plataforma Wiki integrada sumamente flexible
Tipos de tickets personalizables
Fácil reporte y detección de defectos
Sistema de notificaciones por correo electrónico
Adaptación del flujo de trabajo en los tickets
Agrupación de tickets en Hitos (milestones)
Monitor de la actividad reciente en el proyecto
Colaboración entre miembros del equipo
CaracterísticasEnriquecida clasificación y priorización de tickets
Creación ágil de múltiples tipos de links
Ampliamente extensible a través de Plugins
Autenticación nativa o integrable a otros sistemas
Autorización mediante grupos y permisos
Ágil creación de reportes personalizados
Exploración de código fuente
Consulta de control de cambios y revisiones
Código abierto fácil de personalizar
Aspectos TécnicosDesarrollado en el lenguaje Python
Cuenta con servidor Web integrado
Normalmente integrado a servidor Web Apache
Licenciado bajo software libre BSD
Base de datos Sqlite o MySQL
Localizado al idioma español mediante Babel
Envío de notificaciones por SMTP
Sistema de plantillas basado en Genshi
Resaltado de sintaxis con Silverlight
Soportado por la empresa EdgeWall
Arquitectura Sistema de Gestión yControl del Proyecto
Mutuamente integrados
Repositorios de Versionesde Código Fuente
Actualizaciónautomática o manual
Máquinas virtuales deprueba y desarrollo
WikiFacilita colaboración en documentación
Creación de enlaces usando CamelCase
Uso de TracLinks enlaza a nodos del sistema:
Tickets, Adjuntos, Revisiones, Cambios, etc
Sintaxis de fácil comprensión y edición
Plantillas permiten personalizar apariencia
Cada página tiene su propio histórico
Las páginas pueden estar jerarquizadas
Es posible adjuntar archivos a páginas
Permite creación personalizada de macros
Wiki
Edición del Wiki
Eventos
Monitoreo de actividades en el proyecto
Permite filtrar por tipo de actividad
Enlaza con detalle de actividades
Muestra rápida descripción de la actividad
Lista los cambios en el código fuente
Lista los cambios en las incidencias
Lista los cambios en las páginas del Wiki
Notifica cuando hitos son alcanzados
Eventos
Progreso
Lista hitos (milestones) del proyecto
Muestra el nivel de avance por hito
Avance calculado en base a tickets
Muestra fechas límite y retrasos por hito
Acceso directo a reportes de tickets por hito
Estimación de horas estimadas e invertidas (plugin)
Filtrar por hitos alcanzados
Progreso
Reportes
Cuenta con reportes predefinidos de tickets
Filtros por cualquier propiedad del ticket
Ordenamiento por cualquier propiedad del ticket
Agrupación por cualquier propiedad del ticket
Personalización de columnas a mostrar
Creación de reportes personalizados
Búsqueda avanzada de tickets
Creación de reporte a partir de búsqueda
Resaltado colorizado de la prioridad del ticket
Reportes
Reportes
Búsqueda personalizada
Incidencias(tickets)
Cualquier cosa por hacer es una incidencia (ticket)
Fácil identificación por número o título
Creada por un “informante” y a cargo de un “asignado”
Cada ticket tiene un estado que indica situación actual
Posee prioridad, gravedad, componente e hito
Permite indicar palabras clave que faciliten búsqueda
Incidencias(tickets)
Descripción permite uso de formato Wiki y TracLinks
Colaboradores añaden comentarios en el historial
Comentarios permiten formato Wiki y TracLinks
Acciones sobre el ticket siguen flujo de trabajo
El ticket muestra todo su historial de cambios
Es posible anexar múltiples archivos al ticket
Propiedades Incidencia
Historial Incidencia
Explorador(de código fuente)
Lista uno o más repositorios del proyecto
Permite navegar entre carpetas y abrir ficheros
Muestra versión del fichero y última modificación
Indica tamaño de archivo y autor del cambio
Muestra comentario del último cambio realizado
Aplica sintaxis coloreada a archivos de código
Permite explorar cambios y otras versiones
Genera “diferencias” entre versiones
Explorador
Explorador
Recursos Adicionales
Sitio oficial del proyectohttp://trac.edgewall.com
¿Quién usa Trac?http://trac.edgewall.org/wiki/TracUsers
Documentación de usuariohttp://trac.edgewall.org/wiki/TracGuide
¿Demostración en Línea?Escríbanos a [email protected]
Otras herramientas
Control de versionesSubversion, Git, Bazaar, CVS, Mercurial
Gestión de proyectosTrac, Redmine, OpenProj, Bugzilla, Mantis, Jira
IDE'sNetbeans, Eclipse, Monodevelop, Anjuta,
ConstrucciónAnt, Nunit, jUnit, Nant, Maven