<?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>Blog de desenvolvimento da Milfont Consulting, Client e Server-side &#187; Behaviour Driven Development</title>
	<atom:link href="http://www.milfont.org/tech/category/engenharia-de-software/metodologia/metodos-ageis/behaviour-driven-development-metodos-ageis-metodologia-engenharia-de-software/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.milfont.org/tech</link>
	<description>Blog da Comunidade Milfont Consulting, uma empresa especializada em desenvolvimento Web, principalmente Javascript, node.js e muito Javascript.</description>
	<lastBuildDate>Thu, 26 Jan 2012 11:30:28 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
		<item>
		<title>Material do terceiro encontro XPCE</title>
		<link>http://www.milfont.org/tech/2009/10/27/material-do-terceiro-encontro-xpce/</link>
		<comments>http://www.milfont.org/tech/2009/10/27/material-do-terceiro-encontro-xpce/#comments</comments>
		<pubDate>Tue, 27 Oct 2009 11:27:47 +0000</pubDate>
		<dc:creator>cmilfont</dc:creator>
				<category><![CDATA[Behaviour Driven Development]]></category>
		<category><![CDATA[Rails]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[Test Driven]]></category>
		<category><![CDATA[XP]]></category>
		<category><![CDATA[xpce]]></category>
		<category><![CDATA[bdd]]></category>
		<category><![CDATA[behaviour driven development]]></category>
		<category><![CDATA[cucumber]]></category>
		<category><![CDATA[selenium]]></category>

		<guid isPermaLink="false">http://www.milfont.org/tech/?p=801</guid>
		<description><![CDATA[Projeto de exemplo com Cucumber, Selenium e Rails http://github.com/cmilfont/bddonrails Para executar o exemplo deve se lembrar de ter o java instalado [de preferência o da SUN] por dependência do Selenium. Execute os comandos abaixo para baixar e rodar a aplicação: BDD com Cucumber, Selenium e Rails View more presentations from Christiano Milfont.]]></description>
			<content:encoded><![CDATA[<p>Projeto de exemplo com Cucumber, Selenium e Rails <a href="http://github.com/cmilfont/bddonrails">http://github.com/cmilfont/bddonrails</a></p>
<p>Para executar o exemplo deve se lembrar de ter o java instalado [de preferência o da SUN] por dependência do Selenium. Execute os comandos abaixo para baixar e rodar a aplicação:</p>
<div id="gist-219501" class="gist">

        <div class="gist-file">
          <div class="gist-data gist-syntax">
              <div class="highlight"><pre><div class='line' id='LC1'><span class="n">git</span> <span class="nb">clone</span> <span class="n">git</span><span class="vi">@github</span><span class="o">.</span><span class="n">com</span><span class="ss">:cmilfont</span><span class="o">/</span><span class="n">bddonrails</span><span class="o">.</span><span class="n">git</span></div><div class='line' id='LC2'><span class="n">cd</span> <span class="n">bddonrails</span><span class="o">/</span></div><div class='line' id='LC3'><span class="n">sudo</span> <span class="n">rake</span> <span class="n">gems</span><span class="ss">:install</span> <span class="no">RAILS_ENV</span><span class="o">=</span><span class="nb">test</span></div><div class='line' id='LC4'><span class="c1">#lembre de trocar a senha do root no mysql ou mudar o banco</span></div><div class='line' id='LC5'><span class="n">rake</span> <span class="n">db</span><span class="ss">:create:all</span></div><div class='line' id='LC6'><span class="n">rake</span> <span class="n">db</span><span class="ss">:migrate</span></div><div class='line' id='LC7'><span class="n">rake</span> <span class="n">cucumber</span><span class="ss">:ok</span></div></pre></div>
          </div>

          <div class="gist-meta">
            <a href="https://gist.github.com/raw/219501/95276a429fd753cdf85620cd4d56aa2cd326d583/gistfile1.rb" style="float:right;">view raw</a>
            <a href="https://gist.github.com/219501#file_gistfile1.rb" style="float:right;margin-right:10px;color:#666">gistfile1.rb</a>
            <a href="https://gist.github.com/219501">This Gist</a> brought to you by <a href="http://github.com">GitHub</a>.
          </div>
        </div>
</div>

<div id="__ss_2356178" style="width: 425px; text-align: left;"><a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" title="BDD com Cucumber, Selenium e Rails" href="http://www.slideshare.net/cmilfont/bdd-com-cucumber-selenium-e-rails">BDD com Cucumber, Selenium e Rails</a><object style="margin:0px" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="355" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowScriptAccess" value="always" /><param name="src" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=3encontro-091027061527-phpapp01&amp;stripped_title=bdd-com-cucumber-selenium-e-rails" /><param name="allowfullscreen" value="true" /><embed style="margin:0px" type="application/x-shockwave-flash" width="425" height="355" src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=3encontro-091027061527-phpapp01&amp;stripped_title=bdd-com-cucumber-selenium-e-rails" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<div style="font-size: 11px; font-family: tahoma,arial; height: 26px; padding-top: 2px;">View more <a style="text-decoration:underline;" href="http://www.slideshare.net/">presentations</a> from <a style="text-decoration:underline;" href="http://www.slideshare.net/cmilfont">Christiano Milfont</a>.</div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.milfont.org/tech/2009/10/27/material-do-terceiro-encontro-xpce/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>3º Encontro XPCE &#8211; 2º Palestra confirmada</title>
		<link>http://www.milfont.org/tech/2009/09/21/3-encontro-xpce-2-palestra-confirmada/</link>
		<comments>http://www.milfont.org/tech/2009/09/21/3-encontro-xpce-2-palestra-confirmada/#comments</comments>
		<pubDate>Mon, 21 Sep 2009 11:29:35 +0000</pubDate>
		<dc:creator>cmilfont</dc:creator>
				<category><![CDATA[Behaviour Driven Development]]></category>
		<category><![CDATA[Engenharia de Software]]></category>
		<category><![CDATA[Melhores práticas]]></category>
		<category><![CDATA[Metodologia]]></category>
		<category><![CDATA[Métodos Ágeis]]></category>
		<category><![CDATA[Rails]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[teste]]></category>
		<category><![CDATA[XP]]></category>
		<category><![CDATA[xpce]]></category>
		<category><![CDATA[bdd]]></category>
		<category><![CDATA[behaviour driven development]]></category>
		<category><![CDATA[cucumber]]></category>
		<category><![CDATA[rspec]]></category>
		<category><![CDATA[selenium]]></category>
		<category><![CDATA[testes]]></category>

		<guid isPermaLink="false">http://www.milfont.org/tech/?p=782</guid>
		<description><![CDATA[A grade foi finalizada com a confirmação da segunda palestra para o evento com um profissional experiente falando e demonstrando na prática como desenvolver com Rspec e Cucumber seguindo uma moderna abordagem chamada Behaviour Driven Development. Palestra: BDD prático com Cucumber, Selenium e RSpec Resumo: Palestra na forma de &#8220;hands on&#8221; com a construção de [...]]]></description>
			<content:encoded><![CDATA[<p>A grade foi finalizada com a confirmação da segunda palestra para o evento com um profissional experiente falando e demonstrando na prática como desenvolver com Rspec e Cucumber seguindo uma moderna abordagem chamada Behaviour Driven Development.</p>
<p><strong>Palestra: </strong><strong>BDD prático com Cucumber, Selenium e RSpec</strong></p>
<p><strong>Resumo:</strong> Palestra na forma de &#8220;hands on&#8221; com a construção de uma aplicação utilizando conceitos de BDD. Outside in development visto na prática através da construção e automação de user stories com Cucumber + Selenium e descrição de comportamento com RSpec e Remarkable</p>
<p><strong>Palestrante: Jefferson Jean Martins Girão</strong><br />
Desenvolvedor no Grupo Tubform (<a href="http://www.grupotubform.com.br/" target="_blank">http://www.grupotubform.com.br</a>) atualmente trabalhando na migração de um ERP industrial de MS FoxPro para Ruby on Rails e Javascript com EXTjs. Tem 4 anos de experiência em desenvolvimento de software já tendo passado por áreas como automação comercial, terceiro setor e gestão pública municipal.</p>
<p>Informações sobre o evento:</p>
<h2>Título: 3º Encontro XPCE &#8211; Comunidade eXtreme Programming do Ceará</h2>
<h2>Local: Faculdade FA7</h2>
<h2>Data: 24 de Outubro</h2>
<h2>Agenda</h2>
<ol>
<li>08:30 as 09:30 &#8211; BDD prático com Cucumber, Selenium e RSpec &#8211; Jefferson Girão</li>
<li>09:30 as 10:00 &#8211; Intervalo</li>
<li>10:00 as 11:00 &#8211; Automação de Testes Funcionais de Software com Selenium &#8211; Fabrício Lemos</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.milfont.org/tech/2009/09/21/3-encontro-xpce-2-palestra-confirmada/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Qualidade Interna vs Qualidade Externa</title>
		<link>http://www.milfont.org/tech/2009/09/17/qualidade-interna-vs-qualidade-externa/</link>
		<comments>http://www.milfont.org/tech/2009/09/17/qualidade-interna-vs-qualidade-externa/#comments</comments>
		<pubDate>Thu, 17 Sep 2009 13:07:21 +0000</pubDate>
		<dc:creator>cmilfont</dc:creator>
				<category><![CDATA[Behaviour Driven Development]]></category>
		<category><![CDATA[Engenharia de Software]]></category>
		<category><![CDATA[Melhores práticas]]></category>
		<category><![CDATA[Metodologia]]></category>
		<category><![CDATA[Métodos Ágeis]]></category>
		<category><![CDATA[Scrum]]></category>
		<category><![CDATA[Test Driven]]></category>
		<category><![CDATA[teste]]></category>
		<category><![CDATA[XP]]></category>
		<category><![CDATA[Extreme Programming]]></category>
		<category><![CDATA[scrumbut]]></category>
		<category><![CDATA[Test]]></category>
		<category><![CDATA[Test Driven Development]]></category>
		<category><![CDATA[testes]]></category>
		<category><![CDATA[xpce]]></category>

		<guid isPermaLink="false">http://www.milfont.org/tech/?p=764</guid>
		<description><![CDATA[Processos de desenvolvimento de software são quase todos iguais em termos de práticas e todos podem assumir práticas novas de outros processos, até cascata pode aplicar qualquer prática de XP e Scrum em seu modelo naturalmente. O que diferencia esses processos não são as práticas, são os valores. O problema é que entender, compreender e [...]]]></description>
			<content:encoded><![CDATA[<p>Processos de desenvolvimento de software são quase todos iguais em termos de práticas e todos podem assumir práticas novas de outros processos, até cascata pode aplicar qualquer prática de XP e Scrum em seu modelo naturalmente.</p>
<p>O que diferencia esses processos não são as práticas, são os valores. O problema é que entender, compreender e adotar valores é algo subjetivo que varia de pessoa para pessoa por mais que se tenha princípios bem definidos que conectem as práticas a esses valores.</p>
<p>Diante disso, nenhum processo garante que seu projeto será um sucesso por estar o seguindo, mesmo que seja &#8220;By The Book&#8221;.</p>
<p>Há uma preocupação com o chamado Scrumbut, mas eu já vejo e vi projetos Scrum que não são Scrumbut e mesmo assim o software produzido, por mais ágil que seja, não tem qualidade e no primeiro refactoring você já entra no prejuízo similar a um software desenvolvido em Cascata.</p>
<p>Fato é que esses valores e princípios não garantem software com código coeso, desacoplado, limpo, claro e facilmente lido, ou seja, com qualidade interna.</p>
<p>Hoje minha preocupação em todos os projetos é a qualidade interna do software, não importa que metodologia seja adotada. Qualidade interna garante que o software tem boa saúde e é fácil de ser medida.</p>
<p>Saúde do software é o quão rápido e efetivo ele se recupera de mudanças e o quão limpo ele está de defeitos. Para se recuperar de mudanças o software precisa ser limpo e claro, ser facilmente entendível e lido.</p>
<p>Livre de defeitos é ter uma cobertura de testes que explorem e machuquem o código até descobrir falhas que passam despercebidas.</p>
<p>A grande maioria dos processos se preocupa mais com a qualidade externa do que a interna. Não importa se você faz reuniões em pé, tenha o cliente presente ou faça Scrumban ou até mesmo que você esteja entregando software rápido, nada disso vai garantir qualidade e que não vá ter prejuízo no futuro.</p>
<p>Vender qualidade externa tem um apelo comercial fácil porque você não precisa comprovar a qualidade do software e sim do processo, o discurso é sempre mais elegante do que falar em código, principalmente para alta gerência e burocratas, tanto é que todos os modelos de qualidade reconhecidos avaliam o processo e não o produto.</p>
<p>CMMi, ISO ou seja lá que for, não garantem que o produto será de qualidade e sim que o processo seja e se pararmos para pensar um momento, o processo realmente é de qualidade, temos um conjunto de métodos eficazes para produzir&#8230; processo e não produto.</p>
<p>Um exemplo de qualidade interna de um software são os testes automáticos em suas diversas nuances como unitários, aceitação, integração e funcional, mas não apenas isso, métricas de coesão, cobertura, LOC, complexidade e tantas outras.</p>
<p>No Maré de Agilidade eu fiz questão de enfatizar:</p>
<blockquote><p>&#8220;Não importa que processo você siga, se é ágil ou não, se você não faz testes de Software vocês está errado em todos.&#8221;</p></blockquote>
<p>Não existe um software sem bateria de testes automáticos com qualidade, isso é lenda. Em mais de 10 anos de profissão o que tenho notado é que a grande maioria, senão todos, são fortemente acoplados e de baixa coesão como consequência da falta de testes. Aplicar testes nesses softwares é uma tarefa quase impossível e proibitiva em relação a custos, sai mais barato fazer um software novo.</p>
<p>Outra coisa que falei no Maré de Agilidade foi:</p>
<blockquote><p>&#8220;Não seja ágil, seja o melhor possível, porque ao procurar ser o melhor você invariavelmente vai se deparar com práticas que o tornam melhor e aí você se tornará ágil&#8221;.</p></blockquote>
<p>Assim como o lema da Rossi: &#8220;Armas não matam pessoas, pessoas matam pessoas&#8221; podemos induzir que: Processos não desenvolvem software, pessoas desenvolvem software!</p>
<p>Ao trabalhar com pessoas, precisamos entender que modelos de negócios como software são de terceira onda [Alvin Toffler aqui] e não da segunda onda [industrialismo]. Qualquer analogia com modelos de segunda onda provocará insuficiência no trabalho dessas pessoas [por isso Lean faz tanto sucesso hoje] e elas precisam estarem motivadas para produzir qualidade interna, coisa que o trabalho sobre qualidade externa não produz.</p>
<p>Esse tema sobre pessoas e processos [como homem/hora] será escrito em outro artigo.</p>
<p>Resumo desse artigo é: Pessoas são responsáveis por produzirem qualidade interna ao produto e não processo, invista nelas.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.milfont.org/tech/2009/09/17/qualidade-interna-vs-qualidade-externa/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Recomendação sobre o JBehave</title>
		<link>http://www.milfont.org/tech/2009/09/14/recomendacao-sobre-o-jbehave/</link>
		<comments>http://www.milfont.org/tech/2009/09/14/recomendacao-sobre-o-jbehave/#comments</comments>
		<pubDate>Mon, 14 Sep 2009 10:15:10 +0000</pubDate>
		<dc:creator>cmilfont</dc:creator>
				<category><![CDATA[Behaviour Driven Development]]></category>
		<category><![CDATA[DSL]]></category>
		<category><![CDATA[Engenharia de Software]]></category>
		<category><![CDATA[Metodologia]]></category>
		<category><![CDATA[Métodos Ágeis]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[teste]]></category>
		<category><![CDATA[cucumber]]></category>
		<category><![CDATA[jbehave]]></category>
		<category><![CDATA[rspec]]></category>
		<category><![CDATA[selenium]]></category>

		<guid isPermaLink="false">http://www.milfont.org/tech/?p=761</guid>
		<description><![CDATA[Minha recomendação sobre JBehave: use Cucumber! Depois de quebrar cabeça para conseguir escrever histórias em Java eu resolvi trocar o Jbehave [java] pelo cucumber [ruby] em quase todos os projetos Java [falta só um projeto agora] e o resultado é uma pessoa mais feliz e menos trabalho para resolver coisas simples. Não façam juízo de [...]]]></description>
			<content:encoded><![CDATA[<p>Minha recomendação sobre <a href="http://jbehave.org/">JBehave</a>: use <a href="http://cukes.info/">Cucumber</a>!</p>
<p>Depois de quebrar cabeça para conseguir escrever histórias em Java eu resolvi trocar o Jbehave [java] pelo cucumber [ruby] em quase todos os projetos Java [falta só um projeto agora] e o resultado é uma pessoa mais feliz e menos trabalho para resolver coisas simples.</p>
<p>Não façam juízo de valores sobre uma linguagem ser superior a outra, isso não existe. A questão é que escrever os passos das histórias no Ruby é muito mais fácil pela natureza da linguagem, como os blocos. Até coisas simples como parsear listas de valores é algo muito complexo e leva tempo, aliás, parsear os parâmetros é sem dúvida o mais trabalhoso do JBehave.</p>
<p>Com JRuby e Cucumber você consegue utilizar o Storyrunner com facilidade, acessando sua API Java normalmente e tem também a integração natural com o Selenium.</p>
<p>Pretendo abordar esses assuntos no <a href="http://www.milfont.org/tech/2009/09/13/3-encontro-xpce-1-palestra-confirmada/">3º encontro da XPCE</a> no dia 24/10, até lá.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.milfont.org/tech/2009/09/14/recomendacao-sobre-o-jbehave/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Cobertura do Maré de Agilidade</title>
		<link>http://www.milfont.org/tech/2009/08/12/cobertura-do-mare-de-agilidade/</link>
		<comments>http://www.milfont.org/tech/2009/08/12/cobertura-do-mare-de-agilidade/#comments</comments>
		<pubDate>Thu, 13 Aug 2009 01:27:01 +0000</pubDate>
		<dc:creator>cmilfont</dc:creator>
				<category><![CDATA[Behaviour Driven Development]]></category>
		<category><![CDATA[Engenharia de Software]]></category>
		<category><![CDATA[Maré de Agilidade]]></category>
		<category><![CDATA[Melhores práticas]]></category>
		<category><![CDATA[mercado]]></category>
		<category><![CDATA[Metodologia]]></category>
		<category><![CDATA[Métodos Ágeis]]></category>
		<category><![CDATA[palestras]]></category>
		<category><![CDATA[Scrum]]></category>
		<category><![CDATA[Test Driven]]></category>
		<category><![CDATA[XP]]></category>
		<category><![CDATA[xpce]]></category>

		<guid isPermaLink="false">http://www.milfont.org/tech/?p=737</guid>
		<description><![CDATA[Ainda na ressaca do Maré de Agilidade &#8211; Fortaleza, vou indexar toda a cobertura nesse post, se você conhece mais conteúdo sobre o evento, por favor me avise. Fotos http://picasaweb.google.com.br/lucianobeserra/CursoCaelum http://picasaweb.google.com.br/cmilfont/CursoCaelumRR11 http://picasaweb.google.com.br/handersonbf/MareDeAgilidade http://picasaweb.google.com/maredeagilidade/SwellFortalezaMinicursos http://picasaweb.google.com/maredeagilidade/SwellFortalezaPalestras http://picasaweb.google.com/maredeagilidade/SwellFortalezaConfraternizacoes http://www.manoelpimentel.com/fotos_eventos/72157622015680086/1 Twitter http://twitter.com/#search?q=maredeagilidade Posts http://agiletips.blogspot.com/2009/09/big-agile-wave-in-brazil.html http://pauloigor.blogspot.com/2009/08/mare-de-agilidade-em-fortaleza.html http://www.natanaelpantoja.com/tech/?p=299 http://felipebviana.wordpress.com/2009/08/10/mare-de-agilidade-fortaleza/ http://ialis.wordpress.com/2009/08/09/mais-agilidade-por-aqui/ http://www.handersonfrota.com.br/triadworks-no-mare-de-agilidade/ http://www.milfont.org/tech/2009/08/05/mare-de-agilidade/ http://henriquegogo.wordpress.com/2009/08/04/mare-de-agilidade-em-fortaleza/ http://www.cearaonrails.org/2009/07/29/esta-querendo-ir-ao-mare-de-agilidade-que-tal-concorrer-a-algumas-cortesias/ http://blog.seatecnologia.com.br/2009/07/20/mare-de-agilidade-e-oxente-rails http://iviablog.blogspot.com/2009/07/fortaleza-e-palco-para-o-evento-mare-de.html http://www.igocoelho.com.br/2009/07/14/promocao-para-o-mare-de-agilidade/ http://www.fa7.edu.br/ypiranga/noticia/noticia.php?id=848 http://www.fernandoquadro.com.br/html/2009/07/13/evento-mare-de-agilidade-2009/ http://www.eventosdeti.com.br/2009/07/mare-de-agilidade-fortaleza/ http://www.cejug.org/pages/viewpage.action?pageId=40632324 [...]]]></description>
			<content:encoded><![CDATA[<p>Ainda na ressaca do <a href="http://www.maredeagilidade.com.br/">Maré de Agilidade</a> &#8211; Fortaleza, vou indexar toda a cobertura nesse post, se você conhece mais conteúdo sobre o evento, por favor me avise.</p>
<h2>Fotos</h2>
<p><a href="http://picasaweb.google.com.br/lucianobeserra/CursoCaelum">http://picasaweb.google.com.br/lucianobeserra/CursoCaelum</a><br />
<a href="http://picasaweb.google.com.br/cmilfont/CursoCaelumRR11">http://picasaweb.google.com.br/cmilfont/CursoCaelumRR11</a><br />
<a href="http://picasaweb.google.com.br/handersonbf/MareDeAgilidade">http://picasaweb.google.com.br/handersonbf/MareDeAgilidade</a><br />
<a href="http://picasaweb.google.com/maredeagilidade/SwellFortalezaMinicursos">http://picasaweb.google.com/maredeagilidade/SwellFortalezaMinicursos</a><br />
<a href="http://picasaweb.google.com/maredeagilidade/SwellFortalezaPalestras">http://picasaweb.google.com/maredeagilidade/SwellFortalezaPalestras</a><br />
<a href="http://picasaweb.google.com/maredeagilidade/SwellFortalezaConfraternizacoes">http://picasaweb.google.com/maredeagilidade/SwellFortalezaConfraternizacoes</a><br />
<a href="http://www.manoelpimentel.com/fotos_eventos/72157622015680086/1">http://www.manoelpimentel.com/fotos_eventos/72157622015680086/1</a></p>
<h2>Twitter</h2>
<p><a href="http://twitter.com/#search?q=maredeagilidade">http://twitter.com/#search?q=maredeagilidade</a></p>
<h2>Posts</h2>
<p><a href="http://agiletips.blogspot.com/2009/09/big-agile-wave-in-brazil.html">http://agiletips.blogspot.com/2009/09/big-agile-wave-in-brazil.html</a><br />
<a href="http://pauloigor.blogspot.com/2009/08/mare-de-agilidade-em-fortaleza.html">http://pauloigor.blogspot.com/2009/08/mare-de-agilidade-em-fortaleza.html</a><br />
<a href="http://www.natanaelpantoja.com/tech/?p=299">http://www.natanaelpantoja.com/tech/?p=299</a><br />
<a href="http://felipebviana.wordpress.com/2009/08/10/mare-de-agilidade-fortaleza/">http://felipebviana.wordpress.com/2009/08/10/mare-de-agilidade-fortaleza/</a><br />
<a href="http://ialis.wordpress.com/2009/08/09/mais-agilidade-por-aqui/">http://ialis.wordpress.com/2009/08/09/mais-agilidade-por-aqui/</a><br />
<a href="http://www.handersonfrota.com.br/triadworks-no-mare-de-agilidade/">http://www.handersonfrota.com.br/triadworks-no-mare-de-agilidade/</a><br />
<a href="http://www.milfont.org/tech/2009/08/05/mare-de-agilidade/">http://www.milfont.org/tech/2009/08/05/mare-de-agilidade/</a><br />
<a href="http://henriquegogo.wordpress.com/2009/08/04/mare-de-agilidade-em-fortaleza/">http://henriquegogo.wordpress.com/2009/08/04/mare-de-agilidade-em-fortaleza/</a><br />
<a href="http://www.cearaonrails.org/2009/07/29/esta-querendo-ir-ao-mare-de-agilidade-que-tal-concorrer-a-algumas-cortesias/">http://www.cearaonrails.org/2009/07/29/esta-querendo-ir-ao-mare-de-agilidade-que-tal-concorrer-a-algumas-cortesias/</a><br />
<a href="http://blog.seatecnologia.com.br/2009/07/20/mare-de-agilidade-e-oxente-rails">http://blog.seatecnologia.com.br/2009/07/20/mare-de-agilidade-e-oxente-rails</a><br />
<a href="http://iviablog.blogspot.com/2009/07/fortaleza-e-palco-para-o-evento-mare-de.html">http://iviablog.blogspot.com/2009/07/fortaleza-e-palco-para-o-evento-mare-de.html</a><br />
<a href="http://www.igocoelho.com.br/2009/07/14/promocao-para-o-mare-de-agilidade/">http://www.igocoelho.com.br/2009/07/14/promocao-para-o-mare-de-agilidade/</a><br />
<a href="http://www.fa7.edu.br/ypiranga/noticia/noticia.php?id=848">http://www.fa7.edu.br/ypiranga/noticia/noticia.php?id=848</a><br />
<a href="http://www.fernandoquadro.com.br/html/2009/07/13/evento-mare-de-agilidade-2009/">http://www.fernandoquadro.com.br/html/2009/07/13/evento-mare-de-agilidade-2009/</a><br />
<a href="http://www.eventosdeti.com.br/2009/07/mare-de-agilidade-fortaleza/">http://www.eventosdeti.com.br/2009/07/mare-de-agilidade-fortaleza/</a><br />
<a href="http://www.cejug.org/pages/viewpage.action?pageId=40632324">http://www.cejug.org/pages/viewpage.action?pageId=40632324</a><br />
<a href="http://leonardoeloy.com/2009/05/13/mare-de-agilidade-fortaleza/">http://leonardoeloy.com/2009/05/13/mare-de-agilidade-fortaleza/</a></p>
<h2>Slides</h2>
<p><a href="http://www.slideshare.net/seatecnologia/manifesto-20">http://www.slideshare.net/seatecnologia/manifesto-20</a><br />
<a href="http://www.slideshare.net/seatecnologia/minicurso-ruby-e-rails">http://www.slideshare.net/seatecnologia/minicurso-ruby-e-rails</a><br />
<a href="http://www.slideshare.net/seatecnologia/minicurso-de-testesonrails">http://www.slideshare.net/seatecnologia/minicurso-de-testesonrails</a><br />
<a href="http://www.slideshare.net/fabiokung/onde-mora-a-produtividade-do-ruby-on-rails">http://www.slideshare.net/fabiokung/onde-mora-a-produtividade-do-ruby-on-rails</a><br />
<a href="http://www.slideshare.net/manoelp/gesto-lean-para-o-desenvolvimento-de-softwaremanoel-pimentel-verso-30">http://www.slideshare.net/manoelp/gesto-lean-para-o-desenvolvimento-de-softwaremanoel-pimentel-verso-30</a><br />
<a href="http://www.slideshare.net/cmilfont/mare-de-agilidade-bdd-e-tdd">http://www.slideshare.net/cmilfont/mare-de-agilidade-bdd-e-tdd</a><br />
<a href="http://www.slideshare.net/brunopedroso/curso-xp">http://www.slideshare.net/brunopedroso/curso-xp</a></p>
<h2>Videos</h2>
<p><a href="http://www.youtube.com/watch?v=IG7QzUjl5TM">http://www.youtube.com/watch?v=IG7QzUjl5TM</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.milfont.org/tech/2009/08/12/cobertura-do-mare-de-agilidade/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Slides do Maré de Agilidade Fortaleza &#8211; 2009</title>
		<link>http://www.milfont.org/tech/2009/08/09/slides-do-mare-de-agilidade-fortaleza-2009/</link>
		<comments>http://www.milfont.org/tech/2009/08/09/slides-do-mare-de-agilidade-fortaleza-2009/#comments</comments>
		<pubDate>Sun, 09 Aug 2009 11:57:15 +0000</pubDate>
		<dc:creator>cmilfont</dc:creator>
				<category><![CDATA[Behaviour Driven Development]]></category>
		<category><![CDATA[Design Patterns]]></category>
		<category><![CDATA[Engenharia de Software]]></category>
		<category><![CDATA[Melhores práticas]]></category>
		<category><![CDATA[Metodologia]]></category>
		<category><![CDATA[Métodos Ágeis]]></category>
		<category><![CDATA[palestras]]></category>
		<category><![CDATA[Rails]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[Test Driven]]></category>
		<category><![CDATA[XP]]></category>
		<category><![CDATA[xpce]]></category>
		<category><![CDATA[Add new tag]]></category>
		<category><![CDATA[bdd]]></category>
		<category><![CDATA[behaviour driven development]]></category>
		<category><![CDATA[Extreme Programming]]></category>
		<category><![CDATA[maredeagilidade]]></category>
		<category><![CDATA[Ruby on Rails]]></category>
		<category><![CDATA[ruby rails]]></category>
		<category><![CDATA[RubyOnRails]]></category>
		<category><![CDATA[TDD]]></category>
		<category><![CDATA[Test]]></category>
		<category><![CDATA[teste]]></category>

		<guid isPermaLink="false">http://www.milfont.org/tech/?p=735</guid>
		<description><![CDATA[Mare de Agilidade &#8211; BDD e TDD View more presentations from Christiano Milfont.]]></description>
			<content:encoded><![CDATA[<div style="width:425px;text-align:left" id="__ss_1832390"><a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" href="http://www.slideshare.net/cmilfont/mare-de-agilidade-bdd-e-tdd" title="Mare de Agilidade - BDD e TDD">Mare de Agilidade &#8211; BDD e TDD</a><object style="margin:0px" width="425" height="355"><param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=maredeagilidademilfont-090809062633-phpapp01&#038;stripped_title=mare-de-agilidade-bdd-e-tdd" /><param name="allowFullScreen" value="true"/><param name="allowScriptAccess" value="always"/><embed src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=maredeagilidademilfont-090809062633-phpapp01&#038;stripped_title=mare-de-agilidade-bdd-e-tdd" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"></embed></object>
<div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;">View more <a style="text-decoration:underline;" href="http://www.slideshare.net/">presentations</a> from <a style="text-decoration:underline;" href="http://www.slideshare.net/cmilfont">Christiano Milfont</a>.</div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.milfont.org/tech/2009/08/09/slides-do-mare-de-agilidade-fortaleza-2009/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Recomendação sobre TDD</title>
		<link>http://www.milfont.org/tech/2009/06/01/recomendacao-sobre-tdd/</link>
		<comments>http://www.milfont.org/tech/2009/06/01/recomendacao-sobre-tdd/#comments</comments>
		<pubDate>Mon, 01 Jun 2009 11:05:25 +0000</pubDate>
		<dc:creator>cmilfont</dc:creator>
				<category><![CDATA[Behaviour Driven Development]]></category>
		<category><![CDATA[Design Patterns]]></category>
		<category><![CDATA[Engenharia de Software]]></category>
		<category><![CDATA[Melhores práticas]]></category>
		<category><![CDATA[Metodologia]]></category>
		<category><![CDATA[Métodos Ágeis]]></category>
		<category><![CDATA[Test Driven]]></category>
		<category><![CDATA[teste]]></category>
		<category><![CDATA[XP]]></category>
		<category><![CDATA[xpce]]></category>
		<category><![CDATA[bdd]]></category>
		<category><![CDATA[behaviour driven development]]></category>
		<category><![CDATA[TDD]]></category>
		<category><![CDATA[Test]]></category>
		<category><![CDATA[Test Driven Development]]></category>

		<guid isPermaLink="false">http://www.milfont.org/tech/?p=644</guid>
		<description><![CDATA[O Bruno Pereira comentou em post passado sobre a dificuldade que ele teve em adotar TDD: &#8220;Já tentei algumas vezes escrever os testes unitários no começo, mas simplesmente prefiro a abordagem de escrever os testes posteriormente, preferencialmente acompanhando o desenvolvimento das funcionalidades de negócio.&#8221; Notei em diversas consultorias que isso é muito comum por diversos [...]]]></description>
			<content:encoded><![CDATA[<p>O <a href="http://brunopereira.org/">Bruno Pereira</a> <a href="http://www.milfont.org/tech/2009/02/03/pair-programming-vs-code-review/#comment-2176">comentou em post passado</a> sobre a dificuldade que ele teve em adotar TDD:</p>
<blockquote><p>&#8220;Já tentei algumas vezes escrever os testes unitários no começo, mas simplesmente prefiro a abordagem de escrever os testes posteriormente, preferencialmente acompanhando o desenvolvimento das funcionalidades de negócio.&#8221;</p></blockquote>
<p>Notei em diversas consultorias que isso é muito comum por diversos motivos, o principal a meu ver é justamente entender como começa o código do teste, em dois extremos: se depois que definiu o fluxo de processo de negócio de alguma forma [como UML, <a href="http://www.c2.com/doc/crc/draw.html">CRC</a> ou mesmo apenas com UC] ou se já começa algum esboço em código sem ter discutido bem como funciona totalmente o negócio.</p>
<p>A primeira abordagem, definir todo o processo primeiro, deixa a grande maioria dos desenvolvedores confortáveis já que é algo tradicional que vinhamos fazendo, mas o problema é que invariavelmente descamba para <a href="http://en.wikipedia.org/wiki/Big_Design_Up_Front">BDUF</a>.</p>
<p>A segunda abordagem, que está ligada ao desenvolvimento iterativo e incremental, já deixa um sentimento de que &#8220;algo está faltando&#8221; em grande parte dos times que tenho trabalhado. A resistência maior é deixar um sentimento de que não preparamos a arquitetura adequadamente e essa pode sofrer um revés num futuro próximo, claro que isso é uma bobagem para quem conhece como TDD funciona, mas é algo comum que tenho notado e precisa ser desmistificado.</p>
<p>Note que não estou falando aqui do sistema inteiro, apenas uma funcionalidade, mesmo assim a mudança cultural de quebrar uma funcionalidade em tarefas e ir desenvolvendo com &#8220;<a href="http://improveit.com.br/xp/principios/passos_bebe">passos de bebê</a>&#8221; é algo que dificulta a adoção.</p>
<h3>Como sanar essas deficiências?</h3>
<p>Precisamos de uma forma que conversassemos sobre a funcionalidade inteira mas que me permita ir avançando e atualizando conforme eu vá entendendo melhor como funciona.</p>
<p>Tenho trabalhado essas deficiências nos últimos times que peguei com <a href="http://dannorth.net/introducing-bdd">BDD</a> [Behaviour Driven Development] , iniciando a escrita das histórias [descrição daquela funcionalidade na visão de uma pessoa] seguindo o modelo de template que o <a href="http://dannorth.net/whats-in-a-story">Dan North sugeriu</a>. O resultado é que os times avançaram porque eles notaram como iniciar satisfatoriamente com testes sem comprometer a velocidade do desenvolvimento.</p>
<p>O BDD nos trouxe os testes para o inicio de qualquer código, praticamente sem distinguir que se está testando antes e associado com outras práticas como &#8220;<a href="http://improveit.com.br/xp/praticas/programacao_par">Programação em Par</a>&#8221; facilitou a <a href="http://c2.com/cgi/wiki?UbiquitousLanguage">linguagem ubíqua</a> do time.</p>
<p>Independente se é ágil ou tradicional eu tenho notado uma deficiência na coleta de informações, seja como User Stories ou Use Cases, onde os analistas de negócio, ou seja lá como são chamados nos times, não sabem pensar em negócio. Uma das coisas mais ridículas que vejo é o sujeito explicar para seu time uma funcionalidade com base em um DER ou outra estrutura técnica, dizendo coisas como: &#8220;a tabela tal, associada a entidade x&#8221;.</p>
<p>Tenho tentado corrigir isso nos times que enfrento como princípio básico, antes de qualquer coisa eu tento disciplinar a pensarem em negócio. Faço exercícios simples como questioná-los com &#8220;esqueçam de qualquer termo técnico&#8221; e &#8220;como essa funcionalidade é no papel?&#8221; ou &#8220;se não tivesse computador, como fariam isso?&#8221;, perguntas simples para instigar o raciocínio sobre a funcionalidade. Após esse exercício, escrevemos essa história em um arquivo e partimos para sua implementação.</p>
<p>Em março desse ano eu palestrei no primeiro encontro da <a href="http://groups.google.com.br/group/xpce/">XPCE</a> sobre BDD, <a href="http://www.milfont.org/tech/2009/03/29/palestra-behaviour-driven-development/">vejam os slides</a>. Em termos de ferramentas você pode conferir como temos trabalhado em um projeto recente seguindo os posts do Jefferson Girão:</p>
<p>Parte 1 <a href="http://jefferson.eti.br/?p=96" target="_blank">http://jefferson.eti.br/?p=96</a><br />
Parte 2 <a href="http://jefferson.eti.br/?p=105" target="_blank">http://jefferson.eti.br/?p=105</a><br />
Parte 3 <a href="http://jefferson.eti.br/?p=139" target="_blank">http://jefferson.eti.br/?p=139</a></p>
<p>Enfim, acredito que BDD seja um caminho natural para adoção de TDD por seu time já que eles terão código de teste, antes de qualquer coisa, na forma de negócio e o TDD já florescerá quando forem testar o modelo criado ou sugerido pelo código BDD. Ainda tem uma vantagem adicional, terão a documentação do sistema executável e comprovável.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.milfont.org/tech/2009/06/01/recomendacao-sobre-tdd/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
	</channel>
</rss>

