<?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 da Hostweb &#187; XP</title>
	<atom:link href="http://blog.hostweb.com.br/tag/xp/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.hostweb.com.br</link>
	<description>Just another WordPress weblog</description>
	<lastBuildDate>Fri, 29 Oct 2010 10:37:39 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.5</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Falando sobre XP</title>
		<link>http://blog.hostweb.com.br/falando-sobre-xp/hostweb</link>
		<comments>http://blog.hostweb.com.br/falando-sobre-xp/hostweb#comments</comments>
		<pubDate>Wed, 23 Dec 2009 14:22:52 +0000</pubDate>
		<dc:creator>Sergio B Uchoa</dc:creator>
				<category><![CDATA[Desenvolvimento]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[XP]]></category>

		<guid isPermaLink="false">http://blog.hostweb.com.br/?p=235</guid>
		<description><![CDATA[XP é uma metodologia para desenvolvimento de software que foi desenvolvida ao longe das décadas de 80 e 90, mas que somente a partir de 2001 ganhou impulso e passou a ser mais usado em todo o mundo.
Pertencente ao que se convencionou chamar de metodologias ágeis, XP baseia-se em quatro valores:
- Feedback
- Comunicação
- Simplicidade
- Coragem
Viníucius [...]]]></description>
			<content:encoded><![CDATA[<p>XP é uma metodologia para desenvolvimento de software que foi desenvolvida ao longe das décadas de 80 e 90, mas que somente a partir de 2001 ganhou impulso e passou a ser mais usado em todo o mundo.</p>
<p>Pertencente ao que se convencionou chamar de metodologias ágeis, XP baseia-se em quatro valores:</p>
<p>- <em>Feedback</em></p>
<p>- Comunicação</p>
<p>- Simplicidade</p>
<p>- Coragem</p>
<p>Viníucius Teles, um dos grandes evangelizadores de XP no Brasil, afirma que “quando o cliente aprende com o sistema que utiliza e re-avalia as suas necessidades, ele gera feedback para a equipe de desenvolvimento”. Essa característica do <em>feedback</em> está fortemente relacionada à prática do XP  ter sempre junto à  equipe de desenvolvimento pelo menos uma pessoa que será usuária do sistema, bem como ao uso de ciclos de iterações bastante curtos.</p>
<p>A comunicação é entendida, segundo Teles, como o processo que permite que as informações sejam transmitidas dentro da equipe e entre a equipe e o cliente. Este processo tem que ser claro, rápido; não é focado na formalidade e sim na informação de qualidade. Para o XP a melhor forma de repassar uma informação é de forma oral e em reuniões de corpo presente.</p>
<p>No XP a equipe de desenvolvimento de software irá programar sempre o necessário para atender ao requisito do cliente, mas nada mais que isso. Ao propor essa abordagem, o XP se contrapõe a  outras formas de projetar sistemas que procuram antecipar problemas e de formas a obter ganhos.</p>
<p>A coragem como valor no XP pode ser observada em características como:</p>
<p><span id="more-235"></span></p>
<p>- Coragem para desenvolver o software de forma incremental</p>
<p>Adotando este paradigma mais uma vez reforça-se a idéia que o desenvolvimento deve ser feito para resolver os problemas existentes e que podem ser identificados. Deve-se abolir a idéia de programar funcionalidades no projeto que sejam baseadas em especulações.</p>
<p>- Manter o sistema simples</p>
<p>Significa preocupar-se em manter todo o projeto de forma geral, simples. Não tentar antecipar problemas e nem desenvolver funcionalidades que o cliente não deseja.</p>
<p>- Permitir que o cliente priorize as funcionalidades</p>
<p>Entregar ao cliente o comando do desenvolvimento pois o mesmo passa a ficar mais comprometido com o resultado.  Outra conseqüência direta desta prática é o aumento da confiança entre equipe de projeto e cliente.</p>
<p>- Programação em pares (<em>pair programming</em>)</p>
<p>A programação em pares é um dos pilares do XP. Significa colocar sempre dois profissionais para executar uma tarefa. A idéia é que ao fazerem a mesma juntos, alternando-se entre quem codifica, estes possam ficar verificando o que está sendo feito. Essa forma de trabalho redunda em uma das grandes vantagens do XP que é o baixo valor de correção de erro. Esse valor cai significativamente, pois os erros são detectados logo no processo de codificação.</p>
<p><em>- Refactoring</em></p>
<p><em>Refactoring</em> pode ser traduzido como uma aplicação do conceito de melhoria contínua na programação de software. A idéia é que ao refazer constantemente sempre parte do software, este ficará cada vez mais organizado, menos sujeito a erros e ainda  mais no domínio da equipe. Segundo Teles (TELES, 2005) “existe um ditado que diz que um dia sem <em>refactoring</em> é como um dia sem sol”.</p>
<p>- Investir tempo em testes automatizados</p>
<p>O desenvolvimento ágil tem como característica marcante a agilidade, a facilidade de receber mudanças. Para suportar essas mudanças é necessário um comprometimento de toda a equipe do projeto com testes. Estes testes são necessários, ocorrem de forma automatizada e o mais cedo possível, exatamente para corrigir eventuais erros e evitar correções de custo elevado mais tarde. E ainda são os testes um importante espaço de participação do cliente, pois nestes o usuário tem papel de destaque. Caso o usuário não possa executar os testes de validação sozinho, uma pessoa da equipe do projeto deve auxiliá-lo. Contudo, a presença do cliente nesta etapa é essencial.</p>
<p>- Estimar as histórias na presença do cliente</p>
<p>O XP utiliza como instrumento principal de documentação os cartões com histórias do cliente. São esses cartões que irão ser a base de todo o projeto. Quando a equipe se reúne para definir os tempos de cada cartão o cliente é a parte imprescindível. Seu papel nessa etapa é validar o conteúdo do cartão e o entendimento da equipe e, principalmente, definir a prioridade da execução. Ao definir que histórias serão executadas o cliente estabelece uma iteração</p>
<p>- Expor o código a todos os membros da equipe</p>
<p>O código de todo projeto executado usando XP é coletivo. Isso significa que qualquer membro da equipe pode ver o código que o outro escreveu e, mais que isso, deve oferecer comentários, observações e fazer <em>refactoring</em> desse código. O XP necessita do trabalho coletivo não sendo compatível com sua metodologia a idéia de profissionais que não compartilhem.</p>
<p>- Integrar o sistema diversas vezes ao dia</p>
<p>Seguindo o conceito de desenvolver e testar de forma muito próxima, no XP o projeto é integrado continuamente. Podem-se corrigir problemas de integração que somente seriam corrigidos em etapas posteriores do projeto.</p>
<p>- Adotar um ritmo sustentável</p>
<p>Trabalhar com metas realistas é outra característica importante do XP. Ao discutir a precedência das ações com o cliente de forma transparente, a equipe também apresenta a este qual seu ritmo de execução.</p>
<p>- Abrir mão de documentação que vale como defesa</p>
<p>O envolvimento e a confiança que o cliente adquira na equipe que utilize XP tornam possível que a equipe utilize a mínima documentação apenas necessária. Não existe no XP a documentação que é feita apenas para o cliente saber o que está sendo feito, como uma prestação de contas. A participação e a transparência com o cliente, o cumprimento dos prazos e a entrega do software funcionando, isso satisfaz o cliente, não papéis com diagramas e modelos.</p>
<p>- Propor contratos de escopo variável</p>
<p>No XP entende-se ser mais vantajoso utilizar o tripé: qualidade, tempo e custo. O escopo é determinado, mas de forma a apenas ser uma orientação inicial. Este formato é colocado como mais adequado para o desenvolvimento de software, pois fundamentalmente o cliente não sabe dizer tudo o que o software terá que ter tudo o que irá compor seu escopo. Este irá sendo determinado ao longo do desenvolvimento. A idéia em XP então é utilizar-se um modelo de contrato no qual o cliente contrata horas e estas são utilizadas de acordo com a implementação das histórias de usuário. Desta forma promove-se o alinhamento de interesses do cliente com o fornecedor conforme verificado no quadro abaixo.</p>
<p><img class="aligncenter size-full wp-image-237" title="Image1" src="http://blog.hostweb.com.br/wp-content/uploads/2009/12/Image1.jpg" alt="Quadro sobre XP" /></p>
<p>- Propor a adoção de um processo novo</p>
<p>Adotar um modelo novo, diferente do qual as pessoas estão habituadas a trabalhar requer coragem. Romper com as resistências é uma das tarefas mais importantes ao se implantar um projeto que vai utilizar XP.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.hostweb.com.br/falando-sobre-xp/hostweb/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

