<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
	>
<channel>
	<title>Comments on: Rastreabilidade em User Stories</title>
	<atom:link href="http://blog.fragmental.com.br/2008/07/18/rastreabilidade-em-user-stories/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.fragmental.com.br/2008/07/18/rastreabilidade-em-user-stories/</link>
	<description>Software e Batatas</description>
	<pubDate>Sun, 14 Mar 2010 05:11:59 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7.1</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Ramon Oliveira</title>
		<link>http://blog.fragmental.com.br/2008/07/18/rastreabilidade-em-user-stories/comment-page-1/#comment-112156</link>
		<dc:creator>Ramon Oliveira</dc:creator>
		<pubDate>Fri, 29 May 2009 04:41:39 +0000</pubDate>
		<guid isPermaLink="false">http://blog.fragmental.com.br/?p=478#comment-112156</guid>
		<description>Olá. Vi este post e achei interessante o questionamento. Sei que já tem algum tempo, mas vai um case pessoal que fiz e que me ajudou muito nesse aspecto:  ao longo da codificação, o programador insere @tags nos comentários javadoc das classes e em algums métodos "introdutórios de transações" (aqueles métodos principais que normalmente são os que mais geram necessidade de manutenção posterior). Estas tags são definidas através do framework xdoclet, e são parametrizadas com as regras do negócio e requisitos definidos pela análise, e que o programador vai aos poucos implementando na sua programação. Ao final, e posteriormente, de forma periódica, gera-se um artefato externo, em xml, com a identificação das classes e métodos que estão associados a determinadas regras e requisitos. Em seguida, faz-se o parser desse xml com um xslt qualquer, e tem-se uma página html com a matriz de rastreabilidade desejada, que pode ser publicada no wiki de documentação da aplicação, ou outro local.</description>
		<content:encoded><![CDATA[<p>Olá. Vi este post e achei interessante o questionamento. Sei que já tem algum tempo, mas vai um case pessoal que fiz e que me ajudou muito nesse aspecto:  ao longo da codificação, o programador insere @tags nos comentários javadoc das classes e em algums métodos &#8220;introdutórios de transações&#8221; (aqueles métodos principais que normalmente são os que mais geram necessidade de manutenção posterior). Estas tags são definidas através do framework xdoclet, e são parametrizadas com as regras do negócio e requisitos definidos pela análise, e que o programador vai aos poucos implementando na sua programação. Ao final, e posteriormente, de forma periódica, gera-se um artefato externo, em xml, com a identificação das classes e métodos que estão associados a determinadas regras e requisitos. Em seguida, faz-se o parser desse xml com um xslt qualquer, e tem-se uma página html com a matriz de rastreabilidade desejada, que pode ser publicada no wiki de documentação da aplicação, ou outro local.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Rubem Azenha</title>
		<link>http://blog.fragmental.com.br/2008/07/18/rastreabilidade-em-user-stories/comment-page-1/#comment-97344</link>
		<dc:creator>Rubem Azenha</dc:creator>
		<pubDate>Tue, 05 Aug 2008 19:16:34 +0000</pubDate>
		<guid isPermaLink="false">http://blog.fragmental.com.br/?p=478#comment-97344</guid>
		<description>Na verdade a princípio nenhum shoes, não tinha sacado a alternativa que você montou :)</description>
		<content:encoded><![CDATA[<p>Na verdade a princípio nenhum shoes, não tinha sacado a alternativa que você montou :)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Gustavo</title>
		<link>http://blog.fragmental.com.br/2008/07/18/rastreabilidade-em-user-stories/comment-page-1/#comment-96193</link>
		<dc:creator>Gustavo</dc:creator>
		<pubDate>Sat, 19 Jul 2008 21:58:40 +0000</pubDate>
		<guid isPermaLink="false">http://blog.fragmental.com.br/?p=478#comment-96193</guid>
		<description>Eu também nunca vi um documento de rastreabilidade atualizado. Acompanhar como especificações (testes, historias, UCs) são traduzidas em um design tem custo alto, mas o mínimo de rastreabilidade, talvez em uma abstração diferente como, por exemplo, serviços associados aos processos de negócio,  pode ajudar gerenciar mudanças.</description>
		<content:encoded><![CDATA[<p>Eu também nunca vi um documento de rastreabilidade atualizado. Acompanhar como especificações (testes, historias, UCs) são traduzidas em um design tem custo alto, mas o mínimo de rastreabilidade, talvez em uma abstração diferente como, por exemplo, serviços associados aos processos de negócio,  pode ajudar gerenciar mudanças.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Phillip Calçado</title>
		<link>http://blog.fragmental.com.br/2008/07/18/rastreabilidade-em-user-stories/comment-page-1/#comment-96182</link>
		<dc:creator>Phillip Calçado</dc:creator>
		<pubDate>Sat, 19 Jul 2008 17:36:06 +0000</pubDate>
		<guid isPermaLink="false">http://blog.fragmental.com.br/?p=478#comment-96182</guid>
		<description>Mas, Rubem, qual o problema com a alternativa que eu apresentei? Ela não tem incompatibilidade com refactoring e a informação está sempre atualizada, não apenas "mantendo histórico".</description>
		<content:encoded><![CDATA[<p>Mas, Rubem, qual o problema com a alternativa que eu apresentei? Ela não tem incompatibilidade com refactoring e a informação está sempre atualizada, não apenas &#8220;mantendo histórico&#8221;.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Rubem Azenha</title>
		<link>http://blog.fragmental.com.br/2008/07/18/rastreabilidade-em-user-stories/comment-page-1/#comment-96177</link>
		<dc:creator>Rubem Azenha</dc:creator>
		<pubDate>Sat, 19 Jul 2008 15:35:36 +0000</pubDate>
		<guid isPermaLink="false">http://blog.fragmental.com.br/?p=478#comment-96177</guid>
		<description>Isso na verdade é só uma forma de conseguir a tal de rastreabilidade se ela for realmente necessária no ambiente de desenvolvimento.

Um refactoring pode sim apagar um arquivo, mas o histórico do arquivo esta armazenado no SCM\version control.

Realmente não sei exatamente por que o cara que postou na lista dol XP-rio precisa de rastreabilidade.</description>
		<content:encoded><![CDATA[<p>Isso na verdade é só uma forma de conseguir a tal de rastreabilidade se ela for realmente necessária no ambiente de desenvolvimento.</p>
<p>Um refactoring pode sim apagar um arquivo, mas o histórico do arquivo esta armazenado no SCM\version control.</p>
<p>Realmente não sei exatamente por que o cara que postou na lista dol XP-rio precisa de rastreabilidade.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Phillip Calçado</title>
		<link>http://blog.fragmental.com.br/2008/07/18/rastreabilidade-em-user-stories/comment-page-1/#comment-96142</link>
		<dc:creator>Phillip Calçado</dc:creator>
		<pubDate>Sat, 19 Jul 2008 03:03:06 +0000</pubDate>
		<guid isPermaLink="false">http://blog.fragmental.com.br/?p=478#comment-96142</guid>
		<description>Qual o benefício no final?

Você aaba introduzindo uma burocracia -criar uma 'requisição de refactoring'- para algo que num time áil deve ser espontâneo e incentivado. Mais que isso: um refactoring pode fazer com que um arquivo anteriormente associado à uma história não o seja mais. Creio que esta opção seja não só excessivamente burocrática bem como ineficaz, já que não há como saber se um arquivo que na última iteração estava associado com uma história ainda o é.</description>
		<content:encoded><![CDATA[<p>Qual o benefício no final?</p>
<p>Você aaba introduzindo uma burocracia -criar uma &#8216;requisição de refactoring&#8217;- para algo que num time áil deve ser espontâneo e incentivado. Mais que isso: um refactoring pode fazer com que um arquivo anteriormente associado à uma história não o seja mais. Creio que esta opção seja não só excessivamente burocrática bem como ineficaz, já que não há como saber se um arquivo que na última iteração estava associado com uma história ainda o é.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Rubem Azenha</title>
		<link>http://blog.fragmental.com.br/2008/07/18/rastreabilidade-em-user-stories/comment-page-1/#comment-96100</link>
		<dc:creator>Rubem Azenha</dc:creator>
		<pubDate>Fri, 18 Jul 2008 13:35:40 +0000</pubDate>
		<guid isPermaLink="false">http://blog.fragmental.com.br/?p=478#comment-96100</guid>
		<description>@Shoes

"O ponto é que você sempre vai ter refactoring e (num ambiente sadio) nem sempre refactorin vai estar associado à uma história - da última vez que segui esta técnica usávamos o ID #000 para refactoring. Desta forma não há como saber quais histórias foram impactadas nestas mudanças."

Hum... o que eu vou propôr não é a solução mais elegante, mas você pode consultar no SCM o histórico de alteração de um arquivo, pegar os comentários dos commits\links para as issues(ou Crs, ou bugs, etc...) e com isso verificar a quais stories o arquivo em questão esta "associado". 
Aí quando você fizer um refactoring, você pode criar uma uma issue(ou cr, ou bug, ou atividade, etc...) para aquele refactoring. Você pode cruzar os dados obtidos: os arquivos alterados pelo refactoring com as stories associadas com os arquivos alterados.

Aí vai depender muito de como se usa o de SCM e a ferramenta de tracking. Também criar uma issue para cada refactoring talvez não seja a coisa mais ágil do mundo, mas pelo menos você consegue essa rastreabilidade.</description>
		<content:encoded><![CDATA[<p>@Shoes</p>
<p>&#8220;O ponto é que você sempre vai ter refactoring e (num ambiente sadio) nem sempre refactorin vai estar associado à uma história - da última vez que segui esta técnica usávamos o ID #000 para refactoring. Desta forma não há como saber quais histórias foram impactadas nestas mudanças.&#8221;</p>
<p>Hum&#8230; o que eu vou propôr não é a solução mais elegante, mas você pode consultar no SCM o histórico de alteração de um arquivo, pegar os comentários dos commits\links para as issues(ou Crs, ou bugs, etc&#8230;) e com isso verificar a quais stories o arquivo em questão esta &#8220;associado&#8221;.<br />
Aí quando você fizer um refactoring, você pode criar uma uma issue(ou cr, ou bug, ou atividade, etc&#8230;) para aquele refactoring. Você pode cruzar os dados obtidos: os arquivos alterados pelo refactoring com as stories associadas com os arquivos alterados.</p>
<p>Aí vai depender muito de como se usa o de SCM e a ferramenta de tracking. Também criar uma issue para cada refactoring talvez não seja a coisa mais ágil do mundo, mas pelo menos você consegue essa rastreabilidade.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Phillip Calçado</title>
		<link>http://blog.fragmental.com.br/2008/07/18/rastreabilidade-em-user-stories/comment-page-1/#comment-96077</link>
		<dc:creator>Phillip Calçado</dc:creator>
		<pubDate>Fri, 18 Jul 2008 06:43:28 +0000</pubDate>
		<guid isPermaLink="false">http://blog.fragmental.com.br/?p=478#comment-96077</guid>
		<description>@Yoshima

Rodrigo, uma coisa é rastreabilidade do ponto de vista técnico outra coisa é gerência de escopo. O posto acima e a pergunta falam do ponto de vista técnico.

Para gerência de escopo existe uma disciplina enorme chamada Análise de Negócios. Creio que este seja outro assunto.

[]s</description>
		<content:encoded><![CDATA[<p>@Yoshima</p>
<p>Rodrigo, uma coisa é rastreabilidade do ponto de vista técnico outra coisa é gerência de escopo. O posto acima e a pergunta falam do ponto de vista técnico.</p>
<p>Para gerência de escopo existe uma disciplina enorme chamada Análise de Negócios. Creio que este seja outro assunto.</p>
<p>[]s</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Phillip Calçado</title>
		<link>http://blog.fragmental.com.br/2008/07/18/rastreabilidade-em-user-stories/comment-page-1/#comment-96054</link>
		<dc:creator>Phillip Calçado</dc:creator>
		<pubDate>Thu, 17 Jul 2008 22:59:27 +0000</pubDate>
		<guid isPermaLink="false">http://blog.fragmental.com.br/?p=478#comment-96054</guid>
		<description>Rubem,

Eu acredito que utilizando o ID da issue no comentário de check-in temos algumas estatísticas bem interessantes, mas não acho que resolva o problema.

O ponto é que você sempre vai ter refactoring e (num ambiente sadio) nem sempre refactorin vai estar associado à uma história - da última vez que segui esta técnica usávamos o ID #000 para refactoring. Desta forma não há como saber quais histórias foram impactadas nestas mudanças.

Outra coisa importante é que histórias impactam em outras, assim se eu tive que mudar algo relativo à história X enquanto executava a história Y voc6e perde esta informação.

[]s</description>
		<content:encoded><![CDATA[<p>Rubem,</p>
<p>Eu acredito que utilizando o ID da issue no comentário de check-in temos algumas estatísticas bem interessantes, mas não acho que resolva o problema.</p>
<p>O ponto é que você sempre vai ter refactoring e (num ambiente sadio) nem sempre refactorin vai estar associado à uma história - da última vez que segui esta técnica usávamos o ID #000 para refactoring. Desta forma não há como saber quais histórias foram impactadas nestas mudanças.</p>
<p>Outra coisa importante é que histórias impactam em outras, assim se eu tive que mudar algo relativo à história X enquanto executava a história Y voc6e perde esta informação.</p>
<p>[]s</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Juan Bernabó</title>
		<link>http://blog.fragmental.com.br/2008/07/18/rastreabilidade-em-user-stories/comment-page-1/#comment-96042</link>
		<dc:creator>Juan Bernabó</dc:creator>
		<pubDate>Thu, 17 Jul 2008 18:14:57 +0000</pubDate>
		<guid isPermaLink="false">http://blog.fragmental.com.br/?p=478#comment-96042</guid>
		<description>A gente já usou ferramentas UML (together) que geram a partir de um metodo um diagrama de sequencia ou colaboração, assim se usa um teste que mostre um cenario de uso, é so mandar gerar o diagrama a partir de esse metodo.

A geração dessa documentação era feita no ciclo de integração continua, assim alem da rastreabilidade tinhamos diagramas gerados apartir do codigo que estabam 100% sincronizados com a versão do software que estabamos mandando construir.

Essa foi uma das formas de entregar os artefatos requeridos pelo cliente continuando a ser ágil.

Abraços,
Juan</description>
		<content:encoded><![CDATA[<p>A gente já usou ferramentas UML (together) que geram a partir de um metodo um diagrama de sequencia ou colaboração, assim se usa um teste que mostre um cenario de uso, é so mandar gerar o diagrama a partir de esse metodo.</p>
<p>A geração dessa documentação era feita no ciclo de integração continua, assim alem da rastreabilidade tinhamos diagramas gerados apartir do codigo que estabam 100% sincronizados com a versão do software que estabamos mandando construir.</p>
<p>Essa foi uma das formas de entregar os artefatos requeridos pelo cliente continuando a ser ágil.</p>
<p>Abraços,<br />
Juan</p>
]]></content:encoded>
	</item>
</channel>
</rss>
