<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>21projects - Consultoría tecnológica y desarrollo Web y Móvil &#187; agil</title>
	<atom:link href="http://www.21projects.com/blog/tag/agil/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.21projects.com</link>
	<description>Projects from the 21st century</description>
	<lastBuildDate>Wed, 07 Oct 2009 13:07:02 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Gestión de proyectos software con Trac</title>
		<link>http://www.21projects.com/blog/gestion-de-proyectos-software-con-trac/</link>
		<comments>http://www.21projects.com/blog/gestion-de-proyectos-software-con-trac/#comments</comments>
		<pubDate>Tue, 06 Oct 2009 06:50:26 +0000</pubDate>
		<dc:creator>Ariel Camus</dc:creator>
				<category><![CDATA[Gestión]]></category>
		<category><![CDATA[agil]]></category>
		<category><![CDATA[desarrollo]]></category>
		<category><![CDATA[extreme programming]]></category>
		<category><![CDATA[scrum]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[subversion]]></category>
		<category><![CDATA[trac]]></category>

		<guid isPermaLink="false">http://www.21projects.com/?p=68</guid>
		<description><![CDATA[Desde hace tiempo y con la aparición de Internet el esquema de desarrollo de software de las empresas ha cambiado. Aunque algunas aún siguen trabajando con los antiguos procesos en cascada en donde se dedica el 70% del tiempo a los procesos burocráticos y de documentación,  la realidad es que hay muchas empresas nuevas que [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: left;">Desde hace tiempo y con la aparición de Internet el esquema de desarrollo de software de las empresas ha cambiado. Aunque algunas aún siguen trabajando con los antiguos procesos en cascada en donde se dedica el 70% del tiempo a los procesos burocráticos y de documentación,  la realidad es que hay muchas empresas nuevas que basan el desarrollo en equipos pequeños y ágiles.</p>
<p style="text-align: left;">Así han aparecido multitud de metodologías de desarrollo ágil como pueden ser Extreme Programming o Scrum. Parte de la filosofía de estas metodologías consiste en reducir al mínimo el proceso de documentación y evitar mantener largas reuniones para tomar las decisiones necesarias.</p>
<p style="text-align: left;">Sin embargo, que el desarrollo se haga de manera ágil no significa que se deba obviar el proceso de captura de requisitos, testeo y documentación. Por el contrario, consiste en utilizar otro tipo de técnicas que permita realizar estos procesos de manera sencilla y productiva.</p>
<p><img class="size-full wp-image-69" style="border: 0pt none;float:right;" title="trac_logo" src="http://www.21projects.com/wp-content/uploads/2009/09/trac_logo.png" alt="trac logo Gestión de proyectos software con Trac" width="214" height="61" /></p>
<p style="text-align: left;">En 21projects y en muchas otras empresas de desarrollo se utiliza una herramienta de gran valor y potencial. Se trata de Trac. En <a title="Trac-web" href="http://trac.edgewall.org/" target="_blank">la web</a> de este proyecto open source se define a la herramienta de la siguiente manera:</p>
<blockquote>
<p style="text-align: left;">Trac is an enhanced wiki and issue tracking system for software development projects. Trac uses a minimalistic approach to web-based software project management.</p>
</blockquote>
<p style="text-align: left;">
<p style="text-align: center;">
<p style="text-align: left;">Resumiendo, Trac es una herramienta que permite llevar un control de las funcionalidades y errores del código que se está implementando. Sin embargo, Trac es una herraminta mucho más completa que esto, pues está construido sobre una wiki que permite documentar todo el software sobre una única plataforma, integrando la documentación con el control de funcionalidades y errores a implementar así como también con el propio código a través de un repositorio de Subversion del cual ya se habló en un <a title="Gestión de software con Subversion" href="http://www.21projects.com/blog/gestion-de-software-con-subversion/" target="_blank">post anterior</a>.</p>
<p style="text-align: left;">Conozco mucha gente que después de haber probado Trac en su equipo de desarrolladores han dicho frases como: <em>&#8220;No se como puedo haber vivido hasta ahora sin una herramienta como Trac&#8221;</em>. Y la verdad es que, aunque no se trata de una herramienta imprescindible, sí que resulta extremadamente útil. Además de las opciones básicas de Trac, también es posible instalar nuevos plugins que cubren desde la integración de repositorios Git hasta la gestión de metodologías ágiles como Scrum.</p>
<p style="text-align: left;">¿Pero qué significa todo esto a la hora de la práctica? Lo mejor es verlo con un ejemplo. Veamos como sería el proceso de creación de un nuevo proyecto en el equipo de 21projects (Trac puede utilizarse para cualquier tipo de lenguaje, ya sea una aplicación web, desarrollo para iPhone o Android o bien para gestionar documentación, imágenes o cualquier otro tipo de contenido).</p>
<p style="text-align: left;"><strong>Captura de requisitos:</strong></p>
<p style="text-align: left;">En esta fase, nos reunimos todo el equipo de desarrolladores (y  el cliente, si se trata de un proyecto para terceros) bien en persona o utilizando un documento compartido en GoogleDocs para definir cuáles son los requisitos de la aplicación. Normalmente, primero desarrollamos los casos de uso básicos de la aplicación y a partir de ellos creamos la lista de requisitos, siempre en colaboración directa con el cliente.</p>
<p style="text-align: left;">De esta fase saldrá una lista de requisitos funcionales con una descripción de cada uno, dejando claro qué es lo que se espera y que ha de tener para que se considere que ese requisito está &#8220;hecho&#8221;.</p>
<p style="text-align: left;"><strong>Integración de los requisitos en Trac:</strong></p>
<p style="text-align: left;">A partir de este momento, procederíamos a ingresar en Trac cada uno de los requisitos como un nuevo Ticket. En Trac, cada funcionalidad a implementar o cada bug debe ser introducido como un Ticket, que estará asociado a una persona y a un Milestone del proyecto así como a una serie de propiedades adicionales como pueden ser la versión del desarrollo, el tipo de Ticket, o la severidad de este. Un Milestone es un hito de desarrollo que se propone. Dentro de Trac podemos crear tantos Milestones como queramos y ponerles una fecha límite. Así, se podría decidir crear un nuevo Milestone que representa el lanzamiento de la primera versión del producto y todos los Tickets de esta iteración serán agregados a este Milestone.</p>
<p style="text-align: center;"><strong><span style="color: #ff0000;"><a rel="attachment wp-att-82" href="http://www.21projects.com/blog/gestion-de-proyectos-software-con-trac/trac-new-ticket-interface/"><img class="size-full wp-image-82 aligncenter" style="border: 0pt none;" title="trac-new-ticket-interface" src="http://www.21projects.com/wp-content/uploads/2009/09/trac-new-ticket-interface.JPG" alt=" Gestión de proyectos software con Trac" width="580" height="454" /></a></span></strong></p>
<p style="text-align: center;"><em>Interfaz de creación de Tickets</em></p>
<p style="text-align: center;">
<p style="text-align: left;">Trás haber ingresado todos los Tickets en el sistema, cada desarrollador participante podrá decidir en qué funcionalidad va a trabajar y asignarse ese Ticket, que quedará marcado con su nombre para que los demás sepan que él está trabajando en su implementación.</p>
<p style="text-align: left;">Mientras el desarrollo esté en curso, podremos utilizar la Wiki de Trac para ir documentando todo el proceso. Aunque esta Wiki tiene una sintaxis particular que viene reflejada en <a title="documentación de Trac" href="http://trac.edgewall.org/wiki/TracGuide" target="_blank">la documentación</a> de la aplicación, sus posibilidades son muy amplias e interesantes, ya que por ejemplo, cada vez que pongamos el caracter &#8220;#&#8221; seguido de un número se creará un enlace automáticamente al Ticket que tenga asignado ese número (cada Ticket tiene un identificador numérico único).</p>
<p style="text-align: left;">En nuestro caso, utilizamos la página principal de nuestro Trac (que es una página wiki) para enlazar los diferentes documentos que utilizamos, mantener una lista de enlaces externos de interés y documentar los proyectos propios y de clientes así como las ideas de posibles proyectos futuros.</p>
<p style="text-align: center;">
<p style="text-align: center;"><img class="aligncenter size-full wp-image-121" title="inicio" src="http://www.21projects.com/wp-content/uploads/2009/10/inicio.jpg" alt="inicio Gestión de proyectos software con Trac" width="580" height="370" /></p>
<p style="text-align: center;"><em>Página principal del Trac de 21projects</em></p>
<p style="text-align: center;">
<p style="text-align: left;">
<p style="text-align: left;">De esta manera, es posible ir documentando todo el proceso de desarrollo, incluir imágenes, enlaces y crear una documentación fácil de modificar y sobre todo, muy potente gracias a las funcionalidades de Trac.</p>
<p style="text-align: left;">Cada vez que un desarrollador acabe con la implementación de un Ticket, deberá marcar ese Ticket como resuelto y trás haber subido el código al repositorio Subversion, este cambio se reflejará en Trac a través de la sección que nos permite navegar por nuestro código.</p>
<p style="text-align: left;"><span style="color: #ff0000;"><span style="color: #000000;">Aunque existen muchas otras funcionalidades que vienen con Trac por defecto y muchas más que pueden añadirse a través de nuevos plugins, os dejamos que experimentéis con esta fantástica herramienta que permite mejorar la gestión de un nuevo proyecto software tanto a nivel de código como a nivel de documentación.</span></span> Otra fantástica idea es abrir el Trac para que los usuarios u otras empresas puedan ver lo que hacemos e incluso colaborar añadiendo nuevos Tickets al encontrar un bug en la aplicación.</p>
<p style="text-align: left;">Si tenéis cualquier duda acerca de esta herramienta u os interesa utilizarla en vuestro negocio y no sabéis como empezar contactad con nosotros, estaremos encantados de ayudaros.<strong><br />
</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.21projects.com/blog/gestion-de-proyectos-software-con-trac/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>

