<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-3129980668747806900</id><updated>2011-11-27T21:25:52.590-03:00</updated><category term='EPM'/><category term='LINQ'/><category term='Certificação'/><category term='Performance'/><category term='Rosario'/><category term='SQL'/><category term='Worflow'/><category term='Project Server 2007'/><category term='TFS'/><category term='VSTS Videos'/><category term='Project 2007'/><category term='Java'/><category term='Azure'/><category term='VSTS Tester Edition'/><category term='TechEd'/><category term='ASP.NET MVC'/><category term='ASP.NET'/><category term='Team System'/><category term='Data Access'/><category term='Arquitetura'/><category term='ADO.NET Entity Framework'/><category term='Design Pattern'/><category term='OOP'/><category term='Eventos'/><category term='Teste Unitário'/><category term='VSTS 2010'/><category term='Orientação a Objetos'/><title type='text'>André Dias</title><subtitle type='html'>Where the information lives! (Thanks EMC)</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://blog.andredias.net/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>48</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-3615038365540203888</id><published>2008-11-20T19:23:00.002-03:00</published><updated>2008-11-20T19:33:54.257-03:00</updated><title type='text'>Mudança de Blog</title><content type='html'>Pessoal,&lt;br /&gt;&lt;br /&gt;Estou migrando o meu blog para o MSDN. O novo endereço é &lt;a href="http://blogs.msdn.com/andredias"&gt;http://blogs.msdn.com/andredias&lt;/a&gt; e esse blog será mantido apenas para referências futuras.&lt;br /&gt;&lt;br /&gt;Para os que acompanham esse blog através de RSS, por favor, atualizem suas URLs.&lt;br /&gt;&lt;br /&gt;Abraços&lt;br /&gt;André Dias&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-3615038365540203888?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/3615038365540203888/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=3615038365540203888' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/3615038365540203888'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/3615038365540203888'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2008/11/mudana-de-blog.html' title='Mudança de Blog'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-9245503237283570</id><published>2008-11-05T16:25:00.006-03:00</published><updated>2008-11-06T14:18:52.279-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='VSTS Tester Edition'/><category scheme='http://www.blogger.com/atom/ns#' term='Team System'/><category scheme='http://www.blogger.com/atom/ns#' term='Teste Unitário'/><title type='text'>Pesquisa sobre Testes Unitários</title><content type='html'>O portal &lt;a href="http://www.theserverside.net/" target="_blank"&gt;The Server Side .NET&lt;/a&gt; fez uma &lt;a href="http://www.theserverside.net/news/thread.tss?thread_id=51614" target="_blank"&gt;pesquisa&lt;/a&gt; bastante interessante sobre a utilização dos testes unitários. A pesquisa foi realizada em dois momentos, o primeiro em Fevereiro de 2006 e um outro agora em Outubro de 2008 e levantou basicamente se testes unitários são executados e de que forma eles são executados. Confira o resultado: &lt;br /&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Respostas&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;2008&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;2006&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Testes unitários não são executados&lt;/td&gt;&lt;td&gt;17%&lt;/td&gt;&lt;td&gt;13%&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;O Teste unitário é informal&lt;/td&gt;&lt;td&gt;40%&lt;/td&gt;&lt;td&gt;46%&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;O casos de testes são documentados&lt;/td&gt;&lt;td&gt;9%&lt;/td&gt;&lt;td&gt;11%&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td&gt;O casos de testes e a execução são documentados&lt;/td&gt;&lt;td&gt;14%&lt;/td&gt;&lt;td&gt;16%&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Utilizamos a abordagem de TDD&lt;/td&gt;&lt;td&gt;20%&lt;/td&gt;&lt;td&gt;14%&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;A pesquisa chegou a conclusão de que as pessoas que já faziam testes unitários, evoluíram para uma abordagem de TDD (&lt;em&gt;Test Driven Development&lt;/em&gt;), porém as pessoas que não praticam o teste unitário possuem diversas razões, entre elas o simples fato de sentirem que o teste unitário não agrega nenhum valor ao negócio ou até mesmo por achar essa prática difícil.&lt;br /&gt;&lt;br /&gt;Se você faz parte desse grupo de pessoas que não praticam testes, seja ele unitários ou não, pelos motivos citados acima, convido-o a conhecer um pouco do &lt;strong&gt;&lt;a href="http://msdn.microsoft.com/pt-br/vsts2008/test/default(en-us).aspx" target="_blank"&gt;Visual Studio Team System 2008 Test Edition&lt;/a&gt;&lt;/strong&gt;.&lt;br /&gt;&lt;br /&gt;O VSTS Test Edition permite que você faça com, muita facilidade, testes unitários, testes web, testes de carga, verificação de cobertura de código, gerenciamento de test cases e muito mais. Com isso, a desculpa de que fazer teste é difícil não vale mais, mas se você ainda acha que isso não agrega valor ao seu negócio, comece a avaliar os relatórios que são gerados baseados nesses dados coletados e você conseguirá ver a qualidade do seu projeto sendo apresentada em gráficos em tempo real.&lt;br /&gt;&lt;br /&gt;Infelizmente, tenho apenas um &lt;a href="http://blog.andredias.net/2007/07/teste-unitrio-e-code-coverage-com.html"&gt;post &lt;/a&gt;publicado sobre o assunto, este falando sobre testes unitários com code coverage, mas em breve pretendo falar um pouco mais sobre essa fantástica ferramenta.&lt;br /&gt;&lt;br /&gt;Até a próxima e bons testes.&lt;br /&gt;André Dias&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-9245503237283570?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/9245503237283570/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=9245503237283570' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/9245503237283570'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/9245503237283570'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2008/11/pesquisa-sobre-testes-unitrios.html' title='Pesquisa sobre Testes Unitários'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-8644511866403702776</id><published>2008-11-04T23:31:00.003-03:00</published><updated>2008-11-04T23:40:07.119-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='TechEd'/><category scheme='http://www.blogger.com/atom/ns#' term='Eventos'/><title type='text'>Entrevistas sobre o VSTS no TechEd 2008</title><content type='html'>A &lt;strong&gt;TV WNews&lt;/strong&gt; fez uma cobertura do TechEd 2008 onde foram realizadas várias entrevistas sobre os mais diversos assuntos abordados no evento. Eu não tive a oportunidade de ver todas, mas gostaria de destacar, abaixo, duas delas que falam sobre o Visual Studio Team System.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://wnews.uol.com.br/site/teched/?V=081017-ted-entrevista-carlos-e-marcos" target="_blank"&gt;Funcionalidades do Visual Studio &lt;/a&gt;&lt;br /&gt;Carlos Zimmermann - Gerente de Produto do Visual Studio&lt;br /&gt;&lt;br /&gt;&lt;a href="http://wnews.uol.com.br/site/teched/?V=081017-ted-patricia-mantovani" target="_blank"&gt;Teste de aplicações web &lt;/a&gt;&lt;br /&gt;Patrícia Mantovani - Especialista em Tecnologia, Plataforma e Ferramentas&lt;br /&gt;&lt;br /&gt;Se você quiser conferir todas as entrevistas, acesse &lt;a href="http://wnews.uol.com.br/site/teched/"&gt;http://wnews.uol.com.br/site/teched/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Abraços&lt;br /&gt;André Dias&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-8644511866403702776?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/8644511866403702776/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=8644511866403702776' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/8644511866403702776'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/8644511866403702776'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2008/11/entrevistas-sobre-o-vsts-no-teched-2008.html' title='Entrevistas sobre o VSTS no TechEd 2008'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-3907085763052317624</id><published>2008-11-04T20:51:00.004-03:00</published><updated>2008-11-04T21:14:52.899-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ADO.NET Entity Framework'/><category scheme='http://www.blogger.com/atom/ns#' term='LINQ'/><title type='text'>Qual será o destino do LINQ to SQL?</title><content type='html'>Essa semana, o time do ADO.NET publicou um &lt;a href="http://blogs.msdn.com/adonet/archive/2008/10/29/update-on-linq-to-sql-and-linq-to-entities-roadmap.aspx" target="_blank"&gt;Roadmap&lt;/a&gt; para os frameworks de acesso a dados &lt;strong&gt;LINQ to SQL&lt;/strong&gt; e &lt;strong&gt;Entity Framework&lt;/strong&gt;.&lt;br /&gt;&lt;br /&gt;Dois trechos me chamaram muito a atenção. O primeiro deles foi pelo lado positivo, pois a MS está trabalhando muito na evolução do Entity Framework e já está recomendando para soluções de acesso a dados.&lt;br /&gt;&lt;p style="BACKGROUND-COLOR: #cccccc"&gt;&lt;br /&gt;&lt;i&gt;"We’re making significant investments in the Entity Framework such that as of .NET 4.0 the Entity Framework will be our recommended data access solution for LINQ to relational scenarios"&lt;/i&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Por outro lado, eu não esperaria muitas novidades no LINQ to SQL daqui pra frente. No máximo algumas ferramentas para tornar o desenvolvimento mais fácil e correções de bugs. &lt;/p&gt;&lt;p style="BACKGROUND-COLOR: #cccccc"&gt;&lt;br /&gt;&lt;em&gt;"We are listening to customers regarding LINQ to SQL and will continue to evolve the product based on feedback we receive from the community as well.&lt;/em&gt; "&lt;br /&gt;&lt;/p&gt;Bom, se o pai da criança está recomendando utilizar o EF, não serei eu que vou contrariá-lo, correto? :-)&lt;br /&gt;&lt;br /&gt;Abraços&lt;br /&gt;André Dias&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-3907085763052317624?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/3907085763052317624/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=3907085763052317624' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/3907085763052317624'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/3907085763052317624'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2008/11/qual-ser-o-destino-do-linq-to-sql.html' title='Qual será o destino do LINQ to SQL?'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-4493760712469518493</id><published>2008-10-27T22:56:00.006-03:00</published><updated>2008-10-27T23:32:14.864-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Azure'/><title type='text'>Azure Platform</title><content type='html'>Eu devo ter em torno de 150 feeds no meu leitor RSS e acredito que pelo menos 10% deles publicaram alguma coisa sobre essa nova plataforma da Microsoft, o &lt;strong&gt;Azure&lt;/strong&gt;. Eram posts publicados por pessoas do times de produtos, MVPs, pessoas que estavam acompanhando o PDC online, etc.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_JQu5KsEkhSg/SQZ3U-9T6wI/AAAAAAAAQKI/8V60_ybT0ls/s1600-h/servicesPlatform.jpg"&gt;&lt;img style="WIDTH: 400px; HEIGHT: 184px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5262024417010248450" border="0" alt="" src="http://3.bp.blogspot.com/_JQu5KsEkhSg/SQZ3U-9T6wI/AAAAAAAAQKI/8V60_ybT0ls/s400/servicesPlatform.jpg" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Mas afinal o que é o Azure? Eu confesso que ainda não digeri toda essa informação. É um novo sistema operacional? É um novo framework? É uma nova plataforma? É uma nova forma de construir software? Parece que é tudo isso. O engraçado é que me lembro de já ter passado por isso na época do lançamento do .net, onde tinhamos o Windows .Net Server (Windows 2003), o ASP+ (asp.net), ADO+ (ado.net), web services. E a pergunta que mais se ouvia era: &lt;strong&gt;O que é .NET ?? &lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Enfim, demorou mas entendi o que era .NET, naquela época aprendi a construir software de uma maneira diferente, o conceito de serviços estava mais forte do que nunca, o XML começava a ficar popular e hoje temos um novo ciclo começando, o ciclo da &lt;strong&gt;cloud computing &lt;/strong&gt;e o Azure é o cara que vai tornar tornar isso possível. (ok nem tanto, ele vai facilitar a nossa vida).&lt;br /&gt;&lt;br /&gt;Dei uma olhada muito rápida pelo Azure, mas gostei de saber que vamos ter uma infra de ESB, Access Control, Workflow prontinha para utilizarmos. Agora é só colocar um tempinho na agenda pra conseguir entender como isso funciona.&lt;br /&gt;&lt;br /&gt;Ah lógico, esse tempinho tem que ser compartilhado com WCF, WF, Entity Framework, ADO.NET Services, SQL 2008, SSDS, Sync Framework, Velocity, VSTS 2010 ... Vai ser moleza !!!&lt;br /&gt;&lt;br /&gt;Alias, queria entender porque a Microsoft Brasil organizou um TechEd sabendo que ia ter esse monte de novidade duas semanas depois do evento. Poderia ter um PDC Brasil daqui uns 2 ou 3 meses né ?? Facilitaria a nossa vida !&lt;br /&gt;&lt;br /&gt;Abraços&lt;br /&gt;André Dias&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-4493760712469518493?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/4493760712469518493/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=4493760712469518493' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/4493760712469518493'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/4493760712469518493'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2008/10/azure-platform.html' title='Azure Platform'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_JQu5KsEkhSg/SQZ3U-9T6wI/AAAAAAAAQKI/8V60_ybT0ls/s72-c/servicesPlatform.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-392653938756779008</id><published>2008-10-27T15:32:00.001-03:00</published><updated>2008-10-27T15:34:57.789-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Team System'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><category scheme='http://www.blogger.com/atom/ns#' term='Rosario'/><category scheme='http://www.blogger.com/atom/ns#' term='VSTS 2010'/><title type='text'>VSTS 2010 CTP Disponível</title><content type='html'>O Visual Studio Team System 2010 codename "Rosario" já está disponível. Baixe-o em &lt;a href="https://connect.microsoft.com/VisualStudio/content/content.aspx?ContentID=9790"&gt;https://connect.microsoft.com/VisualStudio/content/content.aspx?ContentID=9790&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Diversão garantida por algumas semanas :-)&lt;br /&gt;Abraços&lt;br /&gt;André Dias&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-392653938756779008?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/392653938756779008/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=392653938756779008' title='2 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/392653938756779008'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/392653938756779008'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2008/10/vsts-2010-ctp-disponvel.html' title='VSTS 2010 CTP Disponível'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-4527368508200727372</id><published>2008-10-23T21:52:00.003-03:00</published><updated>2008-10-23T21:57:11.475-03:00</updated><title type='text'>Lançamento do Portal InfoQ Brasil</title><content type='html'>&lt;div&gt;Vamos juntos fortalecer a Comunidade Brasileira de Desenvolvimento de Software.&lt;br /&gt;&lt;br /&gt;Evento de lançamento do &lt;strong&gt;InfoQ Brasil&lt;/strong&gt;. Participe! &lt;a target="_blank" href="http://www.fratech.net/model/event!show.act?event.id=26"&gt;Inscreva-se&lt;/a&gt;!&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;No dia 01 de Novembro de 2008 a InfoQ Brasil deverá ser disponibilizada ao público&lt;a href="http://3.bp.blogspot.com/_JQu5KsEkhSg/SQEdFLUTTpI/AAAAAAAAQJQ/BbmzQYsnD14/s1600-h/InfoQ_Brasil.png"&gt;&lt;img style="MARGIN: 0px 0px 10px 10px; WIDTH: 180px; FLOAT: right; HEIGHT: 73px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5260517814519942802" border="0" alt="" src="http://3.bp.blogspot.com/_JQu5KsEkhSg/SQEdFLUTTpI/AAAAAAAAQJQ/BbmzQYsnD14/s320/InfoQ_Brasil.png" /&gt;&lt;/a&gt;. O intuito é Fortalecer a Comunidade Brasileira de Desenvolvimento de Software e para celebrar este momento, nada melhor do que um encontro com os editores e alguns experts sobre os assuntos abordados no portal.&lt;br /&gt;&lt;br /&gt;Nesse evento teremos profissionais consagrados no mercado falando sobre os tópicos mais importantes abordados no portal. A grade irá abordar assuntos como &lt;strong&gt;Java, .NET, SOA, Ruby, Agile e Arquitetura&lt;/strong&gt;. Todas as palestras terão um formato de painel, expondo o que há de mais recente em cada Queue.&lt;br /&gt;&lt;br /&gt;Acesse e veja a grade de palestras... &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-4527368508200727372?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/4527368508200727372/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=4527368508200727372' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/4527368508200727372'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/4527368508200727372'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2008/10/lanamento-do-portal-infoq-brasil.html' title='Lançamento do Portal InfoQ Brasil'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_JQu5KsEkhSg/SQEdFLUTTpI/AAAAAAAAQJQ/BbmzQYsnD14/s72-c/InfoQ_Brasil.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-8537995111842833554</id><published>2008-10-21T20:12:00.004-03:00</published><updated>2008-10-21T20:44:48.473-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Team System'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><category scheme='http://www.blogger.com/atom/ns#' term='Rosario'/><title type='text'>Como manter Build Labels após excluir uma Build Definition</title><content type='html'>Toda vez que uma build é executada no &lt;strong&gt;Team Build&lt;/strong&gt;, uma &lt;strong&gt;label &lt;/strong&gt;é aplicada automaticamente ao código fonte para identificar o código que foi utilizado na geração da Build. Esse é um recurso extremamente útil, pois se você precisar "&lt;em&gt;voltar no tempo&lt;/em&gt;" e resgatar um código de uma build gerada há 2 meses, por exemplo, é possível.&lt;br /&gt;&lt;br /&gt;O problema era que quando você excluia a build definition, todas as labels aplicadas por essa build definition também eram excluídas e você perdia o recurso de obter um código fonte através de labels.&lt;br /&gt;&lt;br /&gt;Com o lançamento do &lt;strong&gt;TFS 2008 SP1&lt;/strong&gt;, o produto trouxe uma solução provisória para contornar esse problema. Basta você inserir o seguinte trecho de código no web.config do Application Tier.&lt;br /&gt;&lt;br /&gt;&amp;lt;appsettings&amp;gt;&lt;br /&gt;   &lt;strong&gt;&amp;lt;add key="PreserveLabelsOnBuildDeletion" value="true"&amp;gt; &lt;/strong&gt;&lt;br /&gt;&amp;lt;/appsettings&amp;gt;&lt;br /&gt;&lt;br /&gt;Essa solução permitirá que você escolha entre excluir ou não as labels durante a exclusão de uma build definition. Porém, é uma opção que será aplicada a todo o servidor e não por build definition.&lt;br /&gt;&lt;br /&gt;No VSTS 2010 essa opção estará disponível através de interface visual e para cada tipo de build.&lt;br /&gt;&lt;br /&gt;Até a próxima,&lt;br /&gt;André Dias&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-8537995111842833554?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/8537995111842833554/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=8537995111842833554' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/8537995111842833554'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/8537995111842833554'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2008/10/como-manter-build-labels-aps-excluir.html' title='Como manter Build Labels após excluir uma Build Definition'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-4165121954538533537</id><published>2008-10-19T23:34:00.004-03:00</published><updated>2008-10-20T00:08:25.198-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Team System'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><category scheme='http://www.blogger.com/atom/ns#' term='Rosario'/><title type='text'>Gated Checkin - Nova política de check-in do VSTS 2010</title><content type='html'>Quem esteve presente no &lt;strong&gt;TechEd 2008&lt;/strong&gt;, teve a grande oportunidade de ver a mais recente versão do &lt;strong&gt;Visual Studio Team System 2010&lt;/strong&gt; na palestra do &lt;a target="_blank" href="http://igoravl.spaces.live.com/blog/"&gt;Igor Abade&lt;/a&gt;. Eu confesso que fazia muito tempo que um produto não me impressionava tanto.&lt;br /&gt;&lt;br /&gt;Nesta palestra, tivemos a oportunidade de ver grandes novidades do produto, tais como: “&lt;strong&gt;Gated Checkin&lt;/strong&gt;” que é uma nova política de check-in que impede que um código que não compila vá para a build principal, novos diagramas da UML inclusive com validação da arquitetura contra código desenvolvido, mas o que mais me impressionou foi a nova ferramenta de testes. Finalmente teremos uma ferramenta da MS para testes em qualquer tipo de aplicação (Win Forms, Web, WPF, etc).&lt;br /&gt;&lt;br /&gt;Infelizmente, a versão do VSTS 2010 demonstrada ainda não está pública, mas segundo o Igor, o próximo CTP estará disponível após o &lt;a target="_blank" href="http://microsoftpdc.com/"&gt;PDC 2008&lt;/a&gt; que ocorrerá no final deste mês.&lt;br /&gt;&lt;br /&gt;Se você ficou interessado na nova feature do Gated Check-in, já existe um projeto no CodePlex chamado &lt;a target="_blank" href="http://www.codeplex.com/BuddyBuild"&gt;TFS Check-in Validation Tool &lt;/a&gt;que apresenta, como uma de suas features, um recurso similar ao Gated Check-in. Ainda não efetuei testes, mas li alguns posts muito bons sobre a ferramenta.&lt;br /&gt;&lt;br /&gt;Estarei gravando, nesta semana, dois vídeos sobre o Team Build, um comentando sobre a compilação de um projeto Java e outro avaliando o TFS Check-in Validation Tool. Aguardem.&lt;br /&gt;&lt;br /&gt;Abraços&lt;br /&gt;André Dias&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-4165121954538533537?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/4165121954538533537/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=4165121954538533537' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/4165121954538533537'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/4165121954538533537'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2008/10/poltica-de-check-in.html' title='Gated Checkin - Nova política de check-in do VSTS 2010'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-5735057800796249923</id><published>2008-10-11T20:13:00.015-03:00</published><updated>2008-10-12T21:28:38.627-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Team System'/><category scheme='http://www.blogger.com/atom/ns#' term='VSTS Videos'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><title type='text'>VSTS Videos: #1 - Monitorando Workspaces</title><content type='html'>Olá pessoal,&lt;br /&gt;&lt;br /&gt;Já faz algum tempo que eu quero iniciar a publicação de uma série de vídeos sobre o VSTS, mas só agora consegui juntar todos os requisitos que eu precisava: software de gravação adequado, câmera, um bom conjunto de material (diferente do tradicional, ex: criar work items) e principalmente, tempo.&lt;br /&gt;&lt;br /&gt;Com isso, inicio hoje a publicação do primeiro vídeo da série que está falando sobre como criar uma aplicação para monitorar downloads do Source Control através do acesso a tabela de Logs (&lt;em&gt;TfsActivityLogging&lt;/em&gt;) do VSTS.&lt;br /&gt;&lt;br /&gt;Os temas serão os mais variados possíveis e tratarão inicialmente de customizações e integrações com cenários reais que encontramos durante algumas implantações do VSTS nos nossos clientes. Em seguida falarei também sobre as novidades da próxima versão do produto, o VSTS 2010 (assim que a Microsoft liberar uma versão mais atual do produto para testes).&lt;br /&gt;&lt;br /&gt;Bom, espero que vocês gostem e principalmente que comentem o vídeo e se possível, gostaria também da sugestão de alguns temas para os próximos vídeos.&lt;br /&gt;&lt;br /&gt;&lt;iframe style="WIDTH: 420px; HEIGHT: 330px" src="http://silverlight.services.live.com/invoke/81097/Monitorando%20Workspaces/iframe.html" frameborder="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;br /&gt;Se você desejar assistir o vídeo no seu player favorito ou mesmo efetuar o download, acesse &lt;a href="http://silverlight.services.live.com/81097/Monitorando%20Workspaces/video.wmv"&gt;http://silverlight.services.live.com/81097/Monitorando%20Workspaces/video.wmv&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#ff0000;"&gt;update: após algumas experiências, acabei optando pela publicação no &lt;/span&gt;&lt;a href="http://silverlight.live.com/" target="_blank"&gt;&lt;span style="color:#ff0000;"&gt;Microsoft Silverlight Streaming&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#ff0000;"&gt;. Foi a melhor opção encontrada tanto em formato pequeno quanto em full screen. Valeu pela dica &lt;/span&gt;&lt;a href="http://blogs.msdn.com/alexschulz/" target="_blank"&gt;&lt;span style="color:#ff0000;"&gt;Alex&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#ff0000;"&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Abraços&lt;br /&gt;André Dias&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-5735057800796249923?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/5735057800796249923/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=5735057800796249923' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/5735057800796249923'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/5735057800796249923'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2008/10/vsts-videos-1-monitorando-workspaces.html' title='VSTS Videos: #1 - Monitorando Workspaces'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-2560664501115710961</id><published>2008-09-24T19:00:00.003-03:00</published><updated>2008-09-24T19:10:58.927-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Team System'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><category scheme='http://www.blogger.com/atom/ns#' term='Rosario'/><title type='text'>Você está pronto para receber o VSTS “Rosario” ?</title><content type='html'>Você que já leu as &lt;a href="http://blog.andredias.net/2008/07/novidades-do-team-system-rosario.html"&gt;novidades do Team System Rosario&lt;/a&gt;, ficou super empolgado com o produto e está super ansioso para testar os novos recursos como novos relatórios, rastreabilidade completa, diagramas UML e etc, cuidado!&lt;br /&gt;&lt;br /&gt;Ok, ok! Esse suspense foi só pra chamar a atenção. Na verdade, gostaria de chamar a atenção, pois alguns produtos que são utilizados com o TFS Server 2008, não serão suportados no VSTS Rosario. Confira abaixo uma lista de modificações no produto e já vá preparando o seu ambiente para receber a próxima versão do Team System.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Sistemas Operacionais&lt;/strong&gt;: Foi pensado em remover o suporte ao Windows Server 2003, mas a vantagem não seria significante perto dos problemas que seriam causados aos clientes. Então o VSTS Rosario irá suportar o Windows Server 2003, 2008 e futuras versões do Windows Server.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;64-bit&lt;/strong&gt;: Finalmente, suporte completo 64-bit nos servidores, no entanto, as versões seguintes aos VSTS Rosario não suportarão mais 32-bit, então fica a recomendação para você ir pensando numa futura migração nos próximos 2 anos.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Virtualização&lt;/strong&gt;: Testes estão sendo feitos para suportar ambientes virtualizados, mas continua a recomendação de manter o SQL Server em uma máquina física.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;SQL Server&lt;/strong&gt;: Talvez a mudança mais brusca no VSTS Rosario. O produto não suportará o SQL Server 2005. Essa decisão foi tomada devido a qualidade do Reporting Services 2008 ser muuuuito superior ao RS 2005. Segundo Bryan Harry, foi uma decisão muito difícil, mas já está decidido. Pelos menos, eles estão prometendo uma qualidade muito superior nos relatórios que temos hoje. É esperar para ver.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Sharepoint&lt;/strong&gt;: Outra mudança, mas essa é menos traumática. O Sharepoint 2.0 será descontinuado, o suporte ao Sharepoint 3.0 / 2007 será mantido e a sua instalação será opcional. Essa mudança foi realizada porque vários clientes deram feedbacks de que as funcionalidades de portal do VSTS não eram features de alta prioridade.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Project Server&lt;/strong&gt;: Como citado no post sobre as &lt;a href="http://blog.andredias.net/2008/07/novidades-do-team-system-rosario.html"&gt;novidades do TFS Rosario&lt;/a&gt;, o produto terá uma integração com o Project Server de forma nativa.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Build Server&lt;/strong&gt;: Será necessário atualizar todos os Build Servers para o VSTS Rosario, no entanto essa alteração não terá impacto devido a melhorias nas features de compilar aplicações para diversas versões do .net framework.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Sistemas Operacionais – Client&lt;/strong&gt;: Continua do mesmo jeito, suporte ao Windows XP, Vista, Windows 2003 e para as próximas versões do SO.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Clients&lt;/strong&gt;: Também nada com o que se preocupar, updates para o Team Explorer 2005, 2008 e para o provider MSSCI serão lançados.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Office&lt;/strong&gt;: O suporte ao Office 2003 será removido. Essa decisão foi tomada para permitir a inclusão de recursos de Undo no Microsoft Project e de “persistência de fórmulas” no Excel.&lt;br /&gt;&lt;br /&gt;Você pode ver mais detalhes sobre esse documentação de “recomendações para migração” no &lt;a href="http://blogs.msdn.com/bharry/archive/2008/09/23/charting-a-course-for-tfs-rosario.aspx" target="_blank"&gt;blog &lt;/a&gt;do Bryan Harry.&lt;br /&gt;&lt;br /&gt;Abraços&lt;br /&gt;André Dias&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-2560664501115710961?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/2560664501115710961/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=2560664501115710961' title='2 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/2560664501115710961'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/2560664501115710961'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2008/09/voc-est-pronto-para-receber-o-vsts.html' title='Você está pronto para receber o VSTS “Rosario” ?'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-3865556725948125359</id><published>2008-09-23T23:11:00.005-03:00</published><updated>2008-09-23T23:26:39.514-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Team System'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><title type='text'>Ajude o time do TFS a testar a próxima versão do produto</title><content type='html'>O time do &lt;strong&gt;Team Foundation Server Upgrade&lt;/strong&gt; está procurando por bancos de dados do TFS 2005 ou TFS 2008 de clientes para testar os recursos de upgrade da próxima versão do TFS.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Bryan Krieger&lt;/strong&gt;, Principal Program Manager do produto, comenta que o melhor cenário para testes é a utilização de bancos de dados reais que são utilizados no dia-a-dia. Ele também deixa bem claro que os bancos de dados serão utilizados apenas para testes de migração e que não serão compartilhados com times de fora do TFS Upgrade Team e que os bancos serão destruídos logo após a conclusão dos testes.&lt;br /&gt;&lt;br /&gt;Se você possui uma boa base de projetos e está interessado em colaborar com o time do VSTS, envie um e-mail para &lt;a href="mailto:bryan.krieger@microsoft.com"&gt;bryan.krieger@microsoft.com&lt;/a&gt; solicitando mais informações.&lt;br /&gt;&lt;br /&gt;Abraços&lt;br /&gt;André Dias&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-3865556725948125359?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/3865556725948125359/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=3865556725948125359' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/3865556725948125359'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/3865556725948125359'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2008/09/ajude-o-time-do-tfs-testar-prxima-verso.html' title='Ajude o time do TFS a testar a próxima versão do produto'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-941461823980432273</id><published>2008-09-23T22:53:00.005-03:00</published><updated>2008-09-23T23:09:02.792-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><category scheme='http://www.blogger.com/atom/ns#' term='Performance'/><title type='text'>Dicas de Performance - TFS: Fragmentação de Índice no SQL</title><content type='html'>Você instalou o Team Foundation Server, publicou todos os seus projetos nele, toda a fábrica de software faz uso intensivo do TFS, todo dia são centenas / milhares de arquivos adicionados nos mais diversos projetos e de repente o seu servidor começa a ficar "capenga".&lt;br /&gt;&lt;br /&gt;A primeira coisa que a gente normalmente pensa é a rede não está legal, a VM deve estar com algum problema, precisamos trocar a memória ou processador, mas o problema pode ser muito mais simples que isso.&lt;br /&gt;&lt;br /&gt;As vezes, acabamos esquecendo que toda essa quantidade de códigos, documentos, detalhes de build, work items ficam armazenados dentro de bancos do SQL Server e com o tempo, o índice pode ir ficando fragmentado o que deixará com certeza o TFS lento.&lt;br /&gt;&lt;br /&gt;Uma boa prática é sempre deixar o SQL Server do TFS "tunado". Segue &lt;a href="http://www.microsoft.com/technet/prodtechnol/sql/2000/maintain/ss2kidbp.mspx" target="_blank"&gt;aqui&lt;/a&gt; algumas boas práticas para Desfragmentação de Índice do SQL Server. O paper foi escrito para versão 2000, mas se aplica ao 2005 também.&lt;br /&gt;&lt;br /&gt;Abraços&lt;br /&gt;André Dias&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-941461823980432273?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/941461823980432273/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=941461823980432273' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/941461823980432273'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/941461823980432273'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2008/09/dicas-de-performance-tfs-fragmentao-de.html' title='Dicas de Performance - TFS: Fragmentação de Índice no SQL'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-3170689417485139967</id><published>2008-09-23T12:55:00.003-03:00</published><updated>2008-09-23T13:03:28.853-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Eventos'/><title type='text'>Evento Encontro Ágil 2008</title><content type='html'>&lt;p&gt;11 de Outubro de 2008&lt;br /&gt;IME-USP - Rua do Matão, 1010&lt;br /&gt;Cidade Universitária - São Paulo&lt;/p&gt;&lt;p&gt;O &lt;strong&gt;Encontro Ágil&lt;/strong&gt; é um evento &lt;strong&gt;gratuito&lt;/strong&gt; que reunirá, por um dia inteiro, alguns dos principais nomes brasileiros do desenvolvimento ágil de software.&lt;/p&gt;&lt;p&gt;Dia 11 de Outubro está reservado para discussões, trocas de experiências e palestras de especialistas em Programação eXtrema, Scrum e nas metodologias mais produtivas do mercado.&lt;/p&gt;&lt;p&gt;Conheça os profissionais que já usam métodos ágeis. Junte-se ao grupo que está revolucionando a maneira de produzir software. Participe das discussões mais atuais do mercado, tire suas dúvidas e descubra como as técnicas ágeis podem ajudá-lo a aumentar a produtividade da sua equipe e a qualidade do seu software.&lt;/p&gt;&lt;p&gt;Tudo isso, no &lt;strong&gt;&lt;a href="http://www.encontroagil.com.br/" target="_blank"&gt;Encontro Ágil 2008&lt;/a&gt;&lt;/strong&gt;. Não perca! &lt;/p&gt;&lt;p&gt;Abraços&lt;br /&gt;André Dias&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-3170689417485139967?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/3170689417485139967/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=3170689417485139967' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/3170689417485139967'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/3170689417485139967'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2008/09/evento-encontro-gil-2008.html' title='Evento Encontro Ágil 2008'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-3015558247031554685</id><published>2008-09-16T23:33:00.004-03:00</published><updated>2008-09-17T00:03:29.896-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Team System'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><title type='text'>Bugs corrigidos no Team Foundation Server 2008 SP1</title><content type='html'>Muita coisa foi falada sobre o lançamento do Team Foundation Server 2008 SP1. Não tanto quanto o Visual Studio 2008 SP1 que trouxe grandes novidades como o Entity Framework, ASP.NET Dynamic Data, mas o pessoal deu bastante destaque ao SP1 do TFS 2008, principalmente no suporte ao Windows Server 2008 e ao SQL Server 2008.&lt;br /&gt;&lt;br /&gt;Além de suportar os novos servidores da Microsoft, o SP1 trouxe algumas melhorias de performance, alguns recursos interessantes como o envio de work items e queries por email e outras pequenas coisas que nos ajudam no dia-a-dia.&lt;br /&gt;&lt;br /&gt;Mas e os bugs? O que foi corrigido com o SP1? Bom, o &lt;a href="http://blogs.msdn.com/bharry" target="_blank"&gt;Brian Harry&lt;/a&gt; publicou recentemente uma lista de tudo o que foi corrigido. No total, houve um número de 227 bugs corrigidos que foram encontrados da seguinte forma:&lt;br /&gt;&lt;br /&gt;&lt;table style="BORDER-RIGHT: black 1px solid; BORDER-TOP: black 1px solid; BORDER-LEFT: black 1px solid; WIDTH: 300px; BORDER-BOTTOM: black 1px solid"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;Total&lt;/td&gt;&lt;td&gt;Origem&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;227&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;Total Bug fixes &lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;87&lt;/td&gt;&lt;td&gt;Customers&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td&gt;62&lt;/td&gt;&lt;td&gt;Testing&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;38&lt;/td&gt;&lt;td&gt;Development process&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td&gt;30&lt;/td&gt;&lt;td&gt;Dogfooding &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;Other&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;p&gt;Para ver a lista completa dos bugs, acesse &lt;a href="http://blogs.msdn.com/bharry/archive/2008/09/16/team-foundation-server-2008-sp1-bug-fixes.aspx" target="_blank"&gt;http://blogs.msdn.com/bharry/archive/2008/09/16/team-foundation-server-2008-sp1-bug-fixes.aspx&lt;/a&gt;&lt;/p&gt;&lt;p&gt;Se você ficou interessado e deseja baixar o SP1, você pode fazer o download clicando &lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=9e40a5b6-da41-43a2-a06d-3cee196bfe3d&amp;amp;displaylang=en" target="_blank"&gt;aqui&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;Abraços&lt;br /&gt;André Dias&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-3015558247031554685?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/3015558247031554685/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=3015558247031554685' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/3015558247031554685'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/3015558247031554685'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2008/09/bugs-corrigidos-no-team-foundation.html' title='Bugs corrigidos no Team Foundation Server 2008 SP1'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-5855064436592220953</id><published>2008-09-03T12:25:00.005-03:00</published><updated>2008-09-03T12:43:28.913-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Team System'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><title type='text'>Relatórios do VSTS desatualizados</title><content type='html'>Recentemente, recebi um e-mail com uma dúvida sobre o Team System e acho interessante compartilhá-la aqui no blog, pois apesar da resolução ser relativamente simples, esse problema pode te fazer perder algum tempo se você não está acostumado a trabalhar com o Team System.&lt;br /&gt;&lt;br /&gt;O nosso amigo citava no e-mail que apesar deles trabalharem diariamente no Team System, atualizando código, work items, etc. Os relatórios estavam “parados no tempo” e ele me enviou uma imagem apresentando o relatório do qual estava falando. Veja que na imagem abaixo, não há informações sobre os últimos 3 dias.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_JQu5KsEkhSg/SL6tEujD-4I/AAAAAAAAQH0/fM1wZmYDFR0/s1600-h/team+system+report.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5241817313032010626" style="CURSOR: hand" alt="" src="http://2.bp.blogspot.com/_JQu5KsEkhSg/SL6tEujD-4I/AAAAAAAAQH0/fM1wZmYDFR0/s400/team+system+report.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Pois bem, um fato que é importante esclarecer é que o Team System não acessa os bancos relacionais onde as informações estão armazenadas para montar os relatórios. Ao invés disso, os dados dos relatórios são inseridos em um banco de dados do SQL Analysis Services (&lt;strong&gt;TfsWarehouse&lt;/strong&gt;) e então em um cubo OLAP.&lt;br /&gt;&lt;br /&gt;Como esse processo de cópia e transformação das informações para deixá-las mais simples de serem consultadas pode levar algum tempo, esse processo é agendado para ser executado a cada uma hora e existe um serviço do Windows que inicia, não só esse processo, mas como de outras tarefas agendadas do Team Foundation Server, o serviço é o &lt;em&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/ms252450(VS.80).aspx" target="_blank"&gt;Team Foundation Server Task Scheduler&lt;/a&gt; (TfsServerScheduler)&lt;/em&gt;.&lt;br /&gt;&lt;br /&gt;Os dados do relatório não estavam sendo atualizados, pois esse serviço estava parado por alguma razão e com isso, os dados não eram transferidos para o banco onde os relatórios buscavam as informações. Bastou iniciar o serviço para o problema ser resolvido.&lt;br /&gt;&lt;br /&gt;Há ainda uma forma de forçar o processamento do warehouse sem depender do serviço do Windows. Isso pode ser feito acessando o web service &lt;strong&gt;http://localhost:8080/Warehouse/v1.0/WarehouseController.asmx&lt;/strong&gt; no seu browser do Team Foundation Server, em seguida selecionando o método &lt;strong&gt;Run&lt;/strong&gt; e clicando em &lt;strong&gt;Invoke&lt;/strong&gt;.&lt;br /&gt;&lt;br /&gt;Depois disso, chame o método &lt;strong&gt;GetWarehouseStatus&lt;/strong&gt; no mesmo web service e você receberá uma resposta em &lt;strong&gt;XML&lt;/strong&gt; que poderá ser &lt;em&gt;Idle&lt;/em&gt; ou &lt;em&gt;ProcessingOlap&lt;/em&gt;. Fique chamando esse método até o resultado ser &lt;em&gt;Idle &lt;/em&gt;que significa que o processamento foi concluído e que todos os dados estarão atualizados em seus relatórios.&lt;br /&gt;&lt;br /&gt;Enjoy your Team System&lt;br /&gt;&lt;br /&gt;André Dias&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-5855064436592220953?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/5855064436592220953/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=5855064436592220953' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/5855064436592220953'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/5855064436592220953'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2008/09/relatrios-do-vsts-desatualizados.html' title='Relatórios do VSTS desatualizados'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_JQu5KsEkhSg/SL6tEujD-4I/AAAAAAAAQH0/fM1wZmYDFR0/s72-c/team+system+report.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-3336079765094782073</id><published>2008-08-07T23:24:00.004-03:00</published><updated>2008-08-08T00:07:43.456-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Team System'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><title type='text'>Como atualizar o Team System 2008</title><content type='html'>Uma pergunta bastante freqüente, principalmente para quem está começando com o Team System e avaliando o produto é "&lt;em&gt;Posso migrar o TFS 2008 Workgroup para o TFS 2008 Standard ?&lt;/em&gt;".&lt;br /&gt;&lt;br /&gt;Sim é possível, mas é importante esclarecer alguns pontos antes:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;A única diferença entre o TFS Workgroup e o TFS Standard é a limitação de usuários. O acesso ao TFS Workgroup está limitado em 5 usuários.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Você não precisa obrigatoriamente colocar o TFS no domínio para tê-lo em sua versão Standard.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Vamos aos procedimentos de migração então: &lt;/p&gt;&lt;p&gt;- Se você quer apenas migrar para a versão Standard sem precisar colocar a máquina no domínio, bastaria você digitar a product key do TFS no Add/Remove Programs, no entanto, há um bug que deixará os campos da product key desabilitados. Isso é facilmente contornado, rodando o setup.exe do CD. Ele cairá na mesma tela que o Add/Remove Programs, porém desta vez os campos estarão habilitados.&lt;/p&gt;&lt;p&gt;- Se você quer adicionar um TFS no domínio, basta seguir os passos descritos nesse blog &lt;a href="http://blogs.msdn.com/tolong/archive/2007/01/25/promote-team-foundation-server-from-workgroup-to-domain.aspx" target="_blank"&gt;http://blogs.msdn.com/tolong/archive/2007/01/25/promote-team-foundation-server-from-workgroup-to-domain.aspx&lt;/a&gt;. Eu não testei esse procedimento, no entanto, o autor descreve vários passos descritos no guia da Microsoft que ensina &lt;a href="http://msdn.microsoft.com/en-us/library/ms404869(VS.80).aspx" target="_blank"&gt;como migrar o TFS de um server para outro&lt;/a&gt;. Então, é bem provável que funcione.&lt;/p&gt;&lt;p&gt;No início do ano, escrevi um &lt;a href="http://andrediasbr.blogspot.com/2008/01/migrando-team-system-2005-para-team.html"&gt;post &lt;/a&gt;relatando como foi a nossa migração do TFS 2005 Single Server, para TFS 2008 Multi Server integrado com Sharepoint Server 2007. Pra quem está com esse cenário, vale a pena a leitura.&lt;/p&gt;&lt;p&gt;Para mais informações consulte &lt;a href="http://msdn.microsoft.com/en-us/library/ms404844.aspx" target="_blank"&gt;Team Foundation Server Upgrade Types&lt;/a&gt; e também &lt;a href="http://msdn.microsoft.com/en-us/library/ms404848.aspx" target="_blank"&gt;How to: Upgrade from Team Foundation Server Workgroup Edition&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;Abraços&lt;br /&gt;André Dias&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-3336079765094782073?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/3336079765094782073/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=3336079765094782073' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/3336079765094782073'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/3336079765094782073'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2008/08/como-atualizar-o-team-system-2008.html' title='Como atualizar o Team System 2008'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-7834842055886550782</id><published>2008-08-04T11:15:00.003-03:00</published><updated>2008-08-04T11:30:20.529-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Team System'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><title type='text'>Migrando para o Visual Studio Team System</title><content type='html'>&lt;p&gt;Vamos imaginar a seguinte situação, você é um dos responsáveis pela área de TI de sua empresa, você acabou de sair de uma palestra sobre Team System e ficou fascinado com a ferramenta. Você viu o novo Source Control e sentiu vontade de jogar o seu controlador de versão atual no lixo, adorou a integração com o Sharepoint através do Portal do Projeto, ficou muito interessado no gerenciamento de work items e quando viu as dezenas de relatórios apresentando diversas métricas do seu projeto, pensou: “&lt;em&gt;É tudo o que eu sempre quis!&lt;/em&gt;”. &lt;/p&gt;&lt;p&gt;Esse é o sentimento da maioria das pessoas quando conhecem o Team System pela primeira vez. O segundo sentimento e a pergunta que sempre o acompanha é “&lt;em&gt;Na minha empresa eu uso Java, Eclipse, CVS, VB6, Source Safe, ClearQuest, ferramentas proprietárias, etc. Como faço pra substituir tudo isso pelo Team System? É possível?&lt;/em&gt;”.&lt;/p&gt;&lt;p&gt;Bom, se não fosse possível ou se o produto não fosse tão bom, eu não estaria fazendo toda essa propaganda, não é mesmo? Vamos ver abaixo então alguns cenários e como resolvê-los. &lt;/p&gt;&lt;p&gt;&lt;strong&gt;Cenário 1: Migrando Work Items do ClearQuest para o Team System&lt;br /&gt;&lt;/strong&gt;Existe uma ferramenta que vem com o próprio Team System chamada &lt;strong&gt;CQConverter&lt;/strong&gt;. Essa ferramenta permite fazer a conversão do ClearQuest schema, defeitos e controle de mudança para o Team System. Há um documento bem detalhado chamado &lt;a href="http://msdn.microsoft.com/en-us/library/ms253186.aspx" target="_blank"&gt;Migrating Source Control and Defect or Change Tracking to Team Foundation&lt;/a&gt; que mostra o todo o processo de migração além de guias passo a passo mostrando como executá-lo.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Cenário 2: Migrando Work Items de uma ferramenta proprietária para o Team System&lt;br /&gt;&lt;/strong&gt;Para migrar os dados de uma ferramenta proprietária, você terá um pouco mais de trabalho, já que terá que “meter a mão na massa”, mas nada muito complexo. O Team Foundation Server oferece um &lt;a href="http://msdn.microsoft.com/en-us/library/bb130146(VS.80).aspx" target="_blank"&gt;SDK&lt;/a&gt; bastante completo que te permite fazer praticamente tudo através de código .Net. &lt;/p&gt;&lt;p&gt;Basicamente, você precisará escrever um programa que fará a leitura do Data Source de sua ferramenta proprietária e copiar esses dados para o Team System usando o SDK. Veja abaixo um exemplo de como criar Work Item através do C#.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;font-size:78%;"&gt;//Adicionar essas referencias&lt;br /&gt;Microsoft.TeamFoundation.Client;&lt;br /&gt;Microsoft.TeamFoundation.WorkItemTracking.Client&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;//TFS&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:78%;"&gt;NetworkCredential teamFoundationCredential = new NetworkCredential(”sUserName”, “sPassword”);&lt;br /&gt;TeamFoundationServer tfs = new TeamFoundationServer(”http://yourServer:8080″, teamFoundationCredential);&lt;br /&gt;tfs.EnsureAuthenticated();&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:78%;"&gt;&lt;br /&gt;WorkItemStore workItemStore = (WorkItemStore)tfs.GetService(typeof(WorkItemStore));&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:78%;"&gt;Project tfsProject = workItemStore.Projects[sProjectName];&lt;br /&gt;WorkItemType wiType = tfsProject.WorkItemTypes[”Requirement”];&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:78%;"&gt;WorkItem workItem = new WorkItem(wiType);&lt;br /&gt;workItem.Title = “Title”;&lt;br /&gt;workItem.Description = “Desc”;&lt;br /&gt;workItem.Fields[”Requirement Type”].Value = “functional”;&lt;br /&gt;workItem.State = “Proposed”;&lt;br /&gt;workItem.Reason = “New”;&lt;br /&gt;workItem.Fields[”Triage”].Value = “triaged”;&lt;br /&gt;workItem.Fields[”Assigned to”].Value = “production”;&lt;br /&gt;workItem.Links.Add(new Hyperlink(@”C:\bla.txt”));&lt;br /&gt;workItem.Save();&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Cenário 3: Migrando Código Fonte do Source Safe para o Team System&lt;br /&gt;&lt;/strong&gt;No cenário 1, vimos que o Team System já vem com uma ferramenta nativa para efetuar a migração de Work Items do ClearQuest. Ele traz também outro conversor chamado &lt;strong&gt;VSSConverter&lt;/strong&gt; que permite fazer a migração de arquivos do Source Safe para o Team System. Todo o procedimento pode ser visto neste artigo &lt;a href="http://msdn.microsoft.com/en-us/library/ms253186.aspx" target="_blank"&gt;http://msdn.microsoft.com/en-us/library/ms253186.aspx&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Cenário 4: Migrando Código Fonte do StarTeam / CVS para o Team System&lt;br /&gt;&lt;/strong&gt;Uma empresa parceira da Microsoft criou recentemente uma ferramenta de migração chamada &lt;a href="http://www.timelymigration.com/" target="_blank"&gt;Timely Migration&lt;/a&gt;. Essa ferramenta te ajudará a migrar projetos do CVS ou StarTeam para o Team System. &lt;/p&gt;&lt;p&gt;De acordo com o site do produto, ele é capaz de migrar &lt;strong&gt;Branches, Labels e todo o histórico&lt;/strong&gt; sem perda nenhuma de dados.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Cenário 5: Utilizando o Eclipse com o Team System&lt;/strong&gt;&lt;br /&gt;Já fiz um post sobre isso, mas acho interessante referenciá-lo aqui novamente apenas para termos a cobertura de vários cenários de migração e integração. Confiram em &lt;a href="http://andrediasbr.blogspot.com/2008/07/utilizando-team-system-com-eclipse.html" target="_blank"&gt;http://andrediasbr.blogspot.com/2008/07/utilizando-team-system-com-eclipse.html&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Cenário 6: Utilizando VB6, Visual C++ 6.0, Enterprise Architect 6.1 e outros com o Team System&lt;br /&gt;&lt;/strong&gt;Mais uma vez, um cenário que eu já tinha abordado aqui no blog. O único detalhe é que o &lt;a href="http://andrediasbr.blogspot.com/2007/12/version-control-e-sql-management-studio.html" target="_blank"&gt;post&lt;/a&gt; comenta sobre o plug-in para se conectar ao VSTS 2005. Para utilizar esses clients com o VSTS 2008 acesse &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=FAEB7636-644E-451A-90D4-7947217DA0E7&amp;amp;displaylang=en" target="_blank"&gt;Visual Studio Team System 2008 Team Foundation Server MSSCCI Provider&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;Bom, acredito que esses 6 cenários cobrem a maioria das necessidades das empresas, mas se você tiver algum outro, entre em contato que tentaremos achar outras soluções.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Abraços&lt;br /&gt;André Dias&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-7834842055886550782?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/7834842055886550782/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=7834842055886550782' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/7834842055886550782'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/7834842055886550782'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2008/08/migrando-para-o-visual-studio-team.html' title='Migrando para o Visual Studio Team System'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-8804044221764794714</id><published>2008-08-01T19:32:00.004-03:00</published><updated>2008-08-01T19:41:00.854-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Certificação'/><title type='text'>Promo Code: TS: Windows Essential Business Server 2008, Configuring</title><content type='html'>Mais um promo code disponível pra quem tiver interesse em tirar uma certificação Microsoft "na faixa". Dessa vez é para o &lt;strong&gt;Windows Essential Business Server 2008&lt;/strong&gt;. Confira os detalhes abaixo:&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Preparation Guide&lt;/strong&gt;: &lt;a href="http://www.microsoft.com/learning/en/us/exams/70-654.mspx" target="_blank"&gt;http://www.microsoft.com/learning/en/us/exams/70-654.mspx&lt;/a&gt;&lt;br /&gt;&lt;strong&gt;Exam Code&lt;/strong&gt;: 71-654&lt;br /&gt;&lt;strong&gt;Exam Name&lt;/strong&gt;: TS: Windows Essential Business Server 2008, Configuring&lt;br /&gt;&lt;strong&gt;Credit&lt;/strong&gt;: MCTS: Windows Essential Business Server 2008, Configuration&lt;br /&gt;&lt;strong&gt;Registration&lt;/strong&gt;: &lt;a href="http://www.prometric.com/" target="_blank"&gt;http://www.prometric.com&lt;/a&gt;&lt;br /&gt;&lt;strong&gt;Promo Code&lt;/strong&gt;: EBS08&lt;br /&gt;&lt;br /&gt;Abraços&lt;br /&gt;André Dias&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-8804044221764794714?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/8804044221764794714/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=8804044221764794714' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/8804044221764794714'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/8804044221764794714'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2008/08/promo-code-ts-windows-essential.html' title='Promo Code: TS: Windows Essential Business Server 2008, Configuring'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-2811234568673246507</id><published>2008-07-31T23:58:00.007-03:00</published><updated>2008-08-01T00:12:23.322-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Team System'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><title type='text'>O Custo de um Bug</title><content type='html'>Quem já não ouviu do gerente de projetos que tempo no cronograma para testes é bobagem? Teste unitário então? “&lt;em&gt;Ah, isso é coisa daquele povo da eXtreme Programming, não precisamos disso! Vai consumir mais tempo e encarecer nosso projeto.&lt;/em&gt;”.&lt;br /&gt;&lt;br /&gt;É! Eu já ouvi isso, e ouvi pessoas dizendo que ferramentas de ALM (&lt;em&gt;Application Lifecycle Management&lt;/em&gt;) são bobagens também. Que tal perguntarem o que a Dell acha disso? Isso mesmo, a Dell! Ela conseguiu &lt;strong&gt;um ROI de “apenas” 225% em “apenas” 6 meses de implantação do Team System &lt;/strong&gt;. Quem quiser consultar mais detalhes desse caso de sucesso acesse &lt;a href="http://download.microsoft.com/download/3/3/8/3382e892-c592-4185-b011-27dffc25862d/G98-MicrosoftVisualStudioTeamSystemROICaseStudy-Dell.pdf" target="_blank"&gt;ROI CASE STUDY MICROSOFT VISUAL STUDIO TEAM SYSTEM DELL&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Bom, já vimos que há pessoas que acham que testes são caros, ferramentas, como o Team System, são caras, vamos tentar entender quanto custa um simples &lt;strong&gt;bug&lt;/strong&gt; no seu sistema. Vamos lá.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Cenário 1 : Bug encontrado durante o desenvolvimento &lt;/strong&gt;&lt;br /&gt;Este cenário é o ideal. O desenvolvedor escreve o código, cria os testes unitários, verifica que alguns métodos estão com erros, os corrige e pronto. Desde que ele termine dentro do prazo, o meu custo adicional é zero.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Cenário 2 : Bug encontrado durante a fase de homologação&lt;br /&gt;&lt;/strong&gt;&lt;strong&gt;&lt;/strong&gt;Desta vez o desenvolvedor também foi cuidadoso, no entanto, ele não testou uma integração do código que ele acabou de desenvolver com outro código já existente. Isso vai gerar erro de integração. O testador vai identificar o erro, registrá-lo, colocar os passos para reprodução e outras informações necessárias, esse bug será triado por um team leader, que encaminhará para um programador que precisará entender o que é esse bug, tentará reproduzi-lo para depois corrigir e só então gerar uma nova build para ser publicada. Ah, o testador terá que verificar se o bug foi realmente corrigido.&lt;br /&gt;&lt;br /&gt;Bom, estimando isso em horas, podemos colocar 2 horas para o testador, mais 3 horas do desenvolvedor e do team leader. Se assumirmos uma valor médio de R$ 40,00 por hora, já temos um prejuízo de R$ 200,00 com apenas um bug.&lt;br /&gt;&lt;br /&gt;Você deve estar pensando naquela sua planilha lotada deles né? Acertei? Que coisa!&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Cenário 3 : Bug encontrado em produção &lt;/strong&gt;&lt;strong&gt;&lt;br /&gt;&lt;/strong&gt;Dessa vez vamos falar do pior cenário, o cliente achou o bug. Primeiro que você vai ouvir um monte de abobrinha do cliente, e com razão. Você vai ter que dar um suporte telefônico pra ele, tentar entender o que ele está dizendo, dificilmente você terá um cenário igual ao dele, você perderá tempo montando o cenário, depois que conseguir reproduzir o bug irá registrá-lo, o programador terá que entender, corrigir, gerar uma build, ir pra teste, publicar no cliente, testar novamente. Ufa!!! Nessa brincadeira, você perdeu tempo do gerente do projeto, analista de negócio, team leader, programador, testador e do implantador.&lt;br /&gt;&lt;br /&gt;Assumindo duas horas pra cada recurso, que ainda é pouco, e um valor médio, dessa vez ,de R$ 50,00 por hora, afinal gerente e analista ganham bem :-) A brincadeira ficou R$ 600,00. Bugzinho caro né?&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Vamos fazer uma continha simples agora. 15 bugs por mês no cenário 2, mais 2 bugs do cenário 3 e no final de um ano temos um gasto com bugs em apenas um projeto de R$ 50.400,00.&lt;br /&gt;&lt;br /&gt;Resumindo:&lt;br /&gt;&lt;strong&gt;Bugs em um ano de projeto&lt;/strong&gt;: R$ 50.400,00&lt;br /&gt;&lt;strong&gt;Licença do Team System&lt;/strong&gt;: Menos de US$ 15.000,00 (se for parceiro, pode ser até free)&lt;br /&gt;&lt;strong&gt;Ver seu cliente feliz com o sistema sem bugs e renovando contratos&lt;/strong&gt;: não tem preço&lt;br /&gt;&lt;br /&gt;Impressionante como a implantação do Team System e os testes unitários no cronograma ficaram baratos de repente.&lt;br /&gt;&lt;br /&gt;Um grande abraço&lt;br /&gt;André Dias&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-2811234568673246507?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/2811234568673246507/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=2811234568673246507' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/2811234568673246507'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/2811234568673246507'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2008/07/o-custo-de-um-bug.html' title='O Custo de um Bug'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-6633080856933453870</id><published>2008-07-30T20:36:00.004-03:00</published><updated>2008-07-30T21:07:51.803-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Team System'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><title type='text'>Como fazer Backup do Team System</title><content type='html'>Vamos imaginar o seguinte cenário: Você passa algumas horas lendo o &lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=ff12844f-398c-4fe9-8b0d-9e84181d9923&amp;amp;displaylang=en" target="_blank"&gt;Installation Guide do Team System&lt;/a&gt;, cria os usuários do Team System no AD, instala o Windows 2003, SQL Server 2005, aplica os patches direitinho, configura o Sharepoint finalmente instala o Team Foundation Server.&lt;br /&gt;&lt;br /&gt;Você fica todo feliz, começa a migrar todos os projetos da empresa pro Team System, configura build daqui, customiza um processo ali e depois de um mês, com toda a empresa dependendo do Team System, o servidor resolve "capotar".&lt;br /&gt;&lt;br /&gt;É um cenário meio catastrófico, mas confesso que já aconteceu comigo. Aí o gerente olha pra você e fala: "&lt;em&gt;me coloca esse servidor no ar o mais rápido possível, pois estou com o time todo parado, e se fosse o antigo Source Safe eu já tinha restaurado o .dat e estava tudo bem&lt;/em&gt;".&lt;br /&gt;&lt;br /&gt;Realmente, nesse ponto ele tinha razão, o processo de backup / restore do Team System é um pouquinho mais difícil que o do Source Safe, mas porque estou contando toda essa histórinha? Na verdade, é só pra te comover um pouco e pra você se lembrar que caso não tenha planejado o Backup do seu Team System, já passou da hora de fazer. Vamos ver como:&lt;br /&gt;&lt;br /&gt;Por trabalhar de forma integrada com Sharepoint e com Reporting Services o processo de Backup do Team System requer que todos os bancos de dados sejam "backupeados" ao mesmo tempo. Se o backup dos bancos forem executados de forma separada, poderá haver inconsistências nos seus dados, então sugiro que você leia a receitinha de bolo da Microsoft dizendo passo a passo o que você deve fazer para ter um backup íntegro do seu Team System.&lt;br /&gt;&lt;br /&gt;O procedimento de backup pode ser acessado nesta URL &lt;a href="http://msdn.microsoft.com/en-us/library/ms253070(vs.80).aspx" target="_blank"&gt;http://msdn.microsoft.com/en-us/library/ms253070(vs.80).aspx&lt;/a&gt; e recentemente foi publicado um vídeo muito bom executando o procedimento e mostrando como fazer isso na prática. Vale a pena a visita em &lt;a href="http://msdn.microsoft.com/en-us/vsts2008/cc770261.aspx" target="_blank"&gt;http://msdn.microsoft.com/en-us/vsts2008/cc770261.aspx&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Uma última dica pra finalizar que não está nos procedimentos da Microsoft: Considere o uso de máquinas virtuais para o seu Team System. Nós conseguimos reduzir o tempo de restore do Team System no caso de crash total da máquina de 6 horas para 30 minutos usando essa abordagem.&lt;br /&gt;&lt;br /&gt;Um abraço&lt;br /&gt;André Dias&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-6633080856933453870?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/6633080856933453870/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=6633080856933453870' title='3 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/6633080856933453870'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/6633080856933453870'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2008/07/como-fazer-backup-do-team-system.html' title='Como fazer Backup do Team System'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-860876871251806858</id><published>2008-07-29T22:58:00.005-03:00</published><updated>2008-07-29T23:17:14.088-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Team System'/><category scheme='http://www.blogger.com/atom/ns#' term='Rosario'/><title type='text'>Novidades do Team System Rosario</title><content type='html'>O VSTS 2008 (conhecido como Orcas), nem tinha sido lançado e a Microsoft já estava trabalhando na próxima versão do produto, o &lt;strong&gt;Visual Studio Team System “Rosario”&lt;/strong&gt;.&lt;br /&gt;&lt;br /&gt;Enquanto o VSTS 2008 não trouxe muitas novidades em relação ao seu antecessor, o &lt;strong&gt;Visual Studio Team System “Rosario”&lt;/strong&gt; está prometendo uma verdadeira revolução no produto. Muitas das features solicitadas pelo pessoal que trabalha com o Team System está presente na especificação do novo produto, entre elas: gerenciamento de portfólios de projetos e integração com o Project Server nativa, rastreabilidade e análise de impacto, diversas melhorias nas ferramentas de testes e muito mais.&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Confira as principais novidades do Team System “Rosario” abaixo:&lt;br /&gt;&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Priorização e gerenciamento de projetos de TI compartilhado com o Project Server através de integração direta. (Hoje, isso é feito através de um plug-in chamado &lt;a href="http://www.codeplex.com/pstfsconnector" target="_blank"&gt;PsTfsConnector&lt;/a&gt; )&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Gerenciamento de portfólios de projetos para permitir um gerenciamento de recursos balanceado de acordo com as necessidades de negócios.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Rastreabilidade completa (ex. work items hierárquicos) para permitir rastrear artefatos contra requisitos de negócio e possibilidade de realizar análises de impacto rapidamente de acordo com requisições de mudanças.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Métricas e Dashboards para visão compartilhada de status e progresso do projeto em relação aos artefatos previstos para as entregas.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Novos recursos poderosos para permitir que desenvolvedores e testadores possam rapidamente identificar, comunicar, priorizar, diagnosticar e resolver bugs.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Gerenciamento de test case integrado para criar, organizar e gerenciar test cases com os times de desenvolvimento e testes.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Automação de testes e guias para ajudar desenvolvedores e testadores a focarem em testes de negócio ao invés de tarefas repetitivas e manuais.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Métricas de qualidade para decisões de release no formato “vai/não vai” se uma aplicação está pronta para produção e se foi totalmente testada contra os requisitos de negócio.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Rápida integração de times remotos, distribuídos e desconectados no processo de desenvolvimento.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Fácil customização de processos e guias da Microsoft e de parceiros para ajustar a forma que o seu time trabalha.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Suporte integrado para construção de setups usando &lt;a href="http://msdn.microsoft.com/en-us/vstudio/bb879916.aspx" target="_blank"&gt;Windows Installer XML technology&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Melhorias na build, no controlador de versão (Source Control) e na administração multi-server.&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;Pra quem se interessou, há uma máquina virtual completinha disponível com o produto para download, é uma versão de abril/08 e possui pouco mais de 8 GB, então além de paciência recomendo um bom gerenciar do downloads. O endereço para baixá-la é &lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=65d0e3bd-9df3-421a-804f-8f01bd90f0b4&amp;amp;displaylang=en&amp;amp;tm" target="_blank"&gt;http://www.microsoft.com/downloads/details.aspx?familyid=65d0e3bd-9df3-421a-804f-8f01bd90f0b4&amp;amp;displaylang=en&amp;amp;tm&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Abraços&lt;br /&gt;André Dias&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-860876871251806858?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/860876871251806858/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=860876871251806858' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/860876871251806858'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/860876871251806858'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2008/07/novidades-do-team-system-rosario.html' title='Novidades do Team System Rosario'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-1761355696354256296</id><published>2008-07-28T15:58:00.006-03:00</published><updated>2009-06-20T00:32:34.013-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Team System'/><category scheme='http://www.blogger.com/atom/ns#' term='Project Server 2007'/><title type='text'>Team System : Um caminho mais curto para obter o CMMi</title><content type='html'>Que o Team System é um produto para ALM (&lt;em&gt;Application Lifecycle Management&lt;/em&gt; – Gerenciamento de Ciclo de Vida de Aplicações) todo mundo está cansado de saber. O que algumas pessoas talvez não saibam é que o Team System pode facilitar, e muito, a vida da sua empresa na obtenção do CMMi nível 3. Vamos entender por que.&lt;br /&gt;&lt;br /&gt;O CMMi pede que você tenha Gerenciamento de Configuração, Medição e Análise, Monitoramento e Controle de Projeto, Planejamento do Projeto, Garantia de Qualidade do Produto e do Processo, Gerenciamento de Requisitos e Gerenciamento de Fornecedores, isso só pra citar as Áreas de Processos do nível de maturidade 2.&lt;br /&gt;&lt;br /&gt;O Team System consegue endereçar todos esses requisitos oferecendo versionamento de artefatos, utilizando o &lt;strong&gt;Source Control&lt;/strong&gt; para controle de código fonte e o &lt;strong&gt;SharePoint&lt;/strong&gt; para gerenciamento dos demais artefatos. Oferece também um gerenciamento muito bom de work items que te permite não só gerenciar requisitos, mas também ter planejamento, controle e monitoramento de projetos.&lt;br /&gt;&lt;br /&gt;Se você achar que ainda falta alguma coisa, é só fazer a integração com o Project Server, que aí consultor nenhum de CMMi vai colocar defeito. De quebra ele traz também mais de 20 relatórios para você realizar medição e acompanhar a qualidade do seu produto e possui também diversas ferramentas de testes integradas para te auxiliar na qualidade. E por último e muito importante também, traz todo o processo descrito no portal do projeto.&lt;br /&gt;&lt;br /&gt;Legal! Existem algumas ferramentas no mercado que também fazem isso. Talvez não tão integradas como o Team System, mas fazem. E então qual é o grande diferencial do Team System?&lt;br /&gt;&lt;br /&gt;O Team System foi desenhado para se moldar a qualquer tipo de processo e a Microsoft fez um trabalho fantástico para desenhar um template de processo que fosse aderente ao CMMi, mas que não tivesse toda aquela burocracia que muitos acham necessário, ela criou o &lt;strong&gt;MSF for CMMI® Process Improvement&lt;/strong&gt;.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Enquanto um processo CMMi típico tem em torno de 400 artefatos para estar aderente ao nível 3, o MSF for CMMI® Process Improvement, possui apenas 59. Uma redução considerável de 85%&lt;/strong&gt;. Tudo isso é possível graças à integração da ferramenta com o template de processo e principalmente da aderência do template de processo ao manifesto ágil que é:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Colaboração com o Cliente sobre Negociação de Contratos&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Responder as mudanças sobre Seguir o Planejamento&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Pessoas e Iterações sobre Processos e Ferramentas&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Software Funcionamento sobre Documentação Abrangente &lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;Trazendo toda essa teoria pro lado prático e analisando um pouco da experiência que já tive. Dificilmente, você conseguirá seguir 100% o template de processo &lt;strong&gt;MSF for CMMI® Process Improvement&lt;/strong&gt;, no entanto, é muuuito mais simples customizar um template com 59 artefatos desenhados para trabalhar de forma integrada com uma ferramenta que vai te dar todo o apoio na implantação e manutenção do processo do que criar um processo do zero tendo como meta uns 400 artefatos e ter várias ferramentas que não se conversam.&lt;br /&gt;&lt;br /&gt;E tem gente que ainda pergunta por que eu gosto desse esse tal de Team System :-)&lt;br /&gt;&lt;br /&gt;Abraços&lt;br /&gt;André Dias&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-1761355696354256296?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/1761355696354256296/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=1761355696354256296' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/1761355696354256296'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/1761355696354256296'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2008/07/team-system-um-caminho-mais-curto-para.html' title='Team System : Um caminho mais curto para obter o CMMi'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-5184729875265577646</id><published>2008-07-26T11:54:00.007-03:00</published><updated>2008-12-08T19:00:32.034-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Team System'/><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><title type='text'>Utilizando Team System com Eclipse</title><content type='html'>Sempre quando tento vender a idéia do Visual Studio Team System para empresas que desenvolvem sistemas para várias plataformas, na maioria das vezes, a primeira pergunta que ouço é: "Na minha empresa, utilizamos Java, VB6, Delphi e .Net. O Team System consegue gerenciar tudo isso?" E eu com o peito estufado digo com todo o prazer "Simmm !!! "&lt;br /&gt;&lt;br /&gt;No entanto, eu nunca tinha "brincado" de integrar Team System com Eclipse, apenas com VB6 e SQL Management Studio (para saber como veja esse &lt;a href="http://andrediasbr.blogspot.com/2007/12/version-control-e-sql-management-studio.html" target="_blank"&gt;post&lt;/a&gt;), mas como nesse mundo da computação, nunca existe nunca. Surgiu a primeira necessidade de se fazer essa integração, que para a minha surpresa, foi muito simples e bastante agradável.&lt;br /&gt;&lt;br /&gt;O primeiro passo foi baixar o plugin para eclipse no site da &lt;a href="http://www.teamprise.com/" target="_blank"&gt;Teamprise&lt;/a&gt;. O processo de instalação é é muito simples. Basta decompactar os arquivos na pasta do eclipse e quando você abre a IDE é só escolher quais janelas do Team System você quer exibir.&lt;br /&gt;&lt;br /&gt;O pessoal da Teamprise fez um excelente trabalho e não deixaram a desejar nem na usabilidade. Os ícones, janelas, nomenclaturas são exatamente iguais ao Visual Studio. Confiram algumas telas:&lt;br /&gt;&lt;br /&gt;&lt;em&gt;Imagem 1: Team Explorer&lt;br /&gt;&lt;/em&gt;&lt;a href="http://1.bp.blogspot.com/_JQu5KsEkhSg/SIs-OC5n-WI/AAAAAAAAQFY/8OjLZo9TZSo/s1600-h/team+explorer.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5227340203511249250" style="CURSOR: hand" alt="" src="http://1.bp.blogspot.com/_JQu5KsEkhSg/SIs-OC5n-WI/AAAAAAAAQFY/8OjLZo9TZSo/s400/team+explorer.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;em&gt;Imagem 2: Pending Changes (Work Items)&lt;br /&gt;&lt;/em&gt;&lt;a href="http://4.bp.blogspot.com/_JQu5KsEkhSg/SIs-nUz9AFI/AAAAAAAAQFg/A7CvaEFaFlQ/s1600-h/workitems-eclipse.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5227340637816029266" style="CURSOR: hand" alt="" src="http://4.bp.blogspot.com/_JQu5KsEkhSg/SIs-nUz9AFI/AAAAAAAAQFg/A7CvaEFaFlQ/s400/workitems-eclipse.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;em&gt;Imagem 3: "Solution Explorer" com integração ao VSTS&lt;br /&gt;&lt;/em&gt;&lt;a href="http://1.bp.blogspot.com/_JQu5KsEkhSg/SIs_FpGNyFI/AAAAAAAAQFo/WXeGKrBDxw8/s1600-h/solution+explorer-eclipse.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5227341158657411154" style="CURSOR: hand" alt="" src="http://1.bp.blogspot.com/_JQu5KsEkhSg/SIs_FpGNyFI/AAAAAAAAQFo/WXeGKrBDxw8/s400/solution+explorer-eclipse.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Como nem tudo são flores esse plugin tem um custo de US$ 199.00. Nada muito significante comparado ao retorno que ele te dá. O investimento realmente vale a pena.&lt;br /&gt;&lt;br /&gt;Para os javeiros de plantão, antes de torcerem o nariz para essa ferramenta da Microsoft e dizer que o Subversion é muito melhor, dêem uma olhadinha no TS. Acho que vocês vão mudar de idéia rapidinho.&lt;br /&gt;&lt;br /&gt;Um abraço&lt;br /&gt;André Dias&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-5184729875265577646?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/5184729875265577646/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=5184729875265577646' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/5184729875265577646'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/5184729875265577646'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2008/07/utilizando-team-system-com-eclipse.html' title='Utilizando Team System com Eclipse'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_JQu5KsEkhSg/SIs-OC5n-WI/AAAAAAAAQFY/8OjLZo9TZSo/s72-c/team+explorer.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-8428952696485381370</id><published>2008-07-24T23:24:00.004-03:00</published><updated>2008-07-24T23:34:52.490-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Worflow'/><category scheme='http://www.blogger.com/atom/ns#' term='Arquitetura'/><title type='text'>Iniciando com o Windows Workflow Foundation</title><content type='html'>Pra quem está interessado em iniciar seus estudos no Windows Workflow Foundation (WF) ou simplesmente entender como "encaixar" esse recurso em sua aplicações, uma boa fonte é o site de arquitetura para Workflow &amp;amp; Business Processes em &lt;a href="http://msdn.microsoft.com/en-us/architecture/aa699452.aspx" target="_blank"&gt;http://msdn.microsoft.com/en-us/architecture/aa699452.aspx&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Lá você encontrará ferramentas, webcasts e artigos sobre engines de workflow, orquestração de serviços, monitoração e principalmente como desenvolver e integrar tudo isso. É um prato cheio de informação pra quem trabalha ou quer trabalhar com workflows.&lt;br /&gt;&lt;br /&gt;[]s&lt;br /&gt;André Dias&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-8428952696485381370?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/8428952696485381370/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=8428952696485381370' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/8428952696485381370'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/8428952696485381370'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2008/07/iniciando-com-o-windows-workflow.html' title='Iniciando com o Windows Workflow Foundation'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-661713520940915941</id><published>2008-05-24T15:41:00.002-03:00</published><updated>2008-05-24T15:46:13.904-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Arquitetura'/><title type='text'>O que significa ser arquiteto?</title><content type='html'>Uma discussão que freqüentemente vem à tona em fóruns, posts ou até mesmo num bate papo informal é: Qual o verdadeiro papel de um arquiteto?&lt;br /&gt;&lt;br /&gt;Já ouvi versões dizendo que um arquiteto é um programador experiente, outras dizendo que é uma pessoa que consegue projetar softwares que atenderão todos os requisitos do cliente, porém visando uma aplicação fácil de manter, com boa performance, etc.&lt;br /&gt;&lt;br /&gt;A minha opinião é de que um arquiteto tem que ter um conhecimento amplo de tecnologia e saber utilizá-las em cenários adequados visando resolver o problema proposto. Nem mais, nem menos. Apenas o problema proposto.&lt;br /&gt;&lt;br /&gt;O arquiteto tem que ter a sensibilidade de identificar a real necessidade de negócio do cliente e lhe propor a melhor solução e também soluções alternativas que poderão, de fato, viabilizar o negócio, já que nem sempre a melhor solução é a mais viável.&lt;br /&gt;&lt;br /&gt;Como esse assunto dá muito &lt;i&gt;pano pra manga&lt;/i&gt;, recomendo uma leitura na última edição do &lt;a href="http://msdn.microsoft.com/en-us/arcjournal/default.aspx" target="_blank"&gt;The Architecture Journal&lt;/a&gt;. Essa última edição aborda exatamente o papel do arquiteto e também oferece um espaço para você dar a sua opinião e conferir o que os outros arquitetos pensam sobre o assunto. Confiram o fórum de discussão em &lt;a href="http://msdn.microsoft.com/en-us/architecture/cc460196.aspx" target="_blank"&gt;http://msdn.microsoft.com/en-us/architecture/cc460196.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Abraços&lt;br /&gt;André Dias&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-661713520940915941?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/661713520940915941/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=661713520940915941' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/661713520940915941'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/661713520940915941'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2008/05/o-que-significa-ser-arquiteto.html' title='O que significa ser arquiteto?'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-3856641910185510143</id><published>2008-03-13T22:39:00.004-03:00</published><updated>2008-03-13T23:26:06.047-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Certificação'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='ADO.NET Entity Framework'/><title type='text'>Novos Exames de ADO.NET e ASP.NET liberados</title><content type='html'>Boa notícia para quem já vem acompanhando as novas tecnologias do .NET Framework 3.5. A Microsoft liberou recentemente mais dois exames betas para as tecnologias ADO.NET e ASP.NET.&lt;br /&gt;&lt;br /&gt;Eu, como adoro o assunto de acesso a dados, fui procurar o conteúdo da prova e para a minha surpresa, além do ADO.NET tradicional cairá também LINQ e o Entity Framework que está atualmente em versão CTP.&lt;br /&gt;&lt;br /&gt;Na prova de ASP.NET, não vi muitas novidades para as provas anteriores. Os pontos que me chamaram a atenção foram : Chamada de serviços WCF, AJAX e criação de páginas para dispositivos móveis.&lt;br /&gt;&lt;br /&gt;Uma outra boa notícia é que já há promo codes disponíveis para a realização &lt;strong&gt;FREE&lt;/strong&gt; do exame. Os promo codes das provas são:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;70-561&lt;/strong&gt;: TS: Microsoft .NET Framework 3.5, ADO.NET Application Development&lt;br /&gt;Promo Code: &lt;strong&gt;561B1&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;70-562&lt;/strong&gt;: TS: Microsoft .NET Framework 3.5, ASP.NET Application Development&lt;br /&gt;Promo Code: &lt;strong&gt;562B1&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Ainda não foi publicado o conteúdo oficial das provas, mas no &lt;a href="http://blogs.msdn.com/gerryo/default.aspx" target="_blank"&gt;Blog Microsoft Certifications&lt;/a&gt; você poderá encontrar um rascunho do que deverá cair.&lt;br /&gt;&lt;br /&gt;ADO.NET: &lt;a href="https://blogs.msdn.com/gerryo/archive/2008/03/13/get-ready-for-the-ado-net-3-5-mcts-exam.aspx" target="_blank"&gt;https://blogs.msdn.com/gerryo/archive/2008/03/13/get-ready-for-the-ado-net-3-5-mcts-exam.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;ASP.NET: &lt;a href="http://blogs.msdn.com/gerryo/archive/2008/03/13/get-ready-for-the-asp-net-3-5-mcts-exam.aspx" target="_blank"&gt;http://blogs.msdn.com/gerryo/archive/2008/03/13/get-ready-for-the-asp-net-3-5-mcts-exam.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Boa sorte!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-3856641910185510143?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/3856641910185510143/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=3856641910185510143' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/3856641910185510143'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/3856641910185510143'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2008/03/novos-exames-de-adonet-e-aspnet.html' title='Novos Exames de ADO.NET e ASP.NET liberados'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-2772833338361354242</id><published>2008-02-19T09:54:00.005-03:00</published><updated>2008-12-08T19:00:32.234-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Project 2007'/><category scheme='http://www.blogger.com/atom/ns#' term='EPM'/><category scheme='http://www.blogger.com/atom/ns#' term='Project Server 2007'/><title type='text'>Evento: Gerenciamento Eficiente de Projetos Corporativos</title><content type='html'>&lt;span style="color:#ff0000;"&gt;update:&lt;/span&gt; A data correta do evento é 22/02 e não 22/08 como escrito anteriormente.&lt;br /&gt;&lt;br /&gt;Na próxima sexta-feira, 22/02/2008, ocorrerá um evento dedicado ao Microsoft Office Project 2007 e a apresentação do Project Portfolio Server. O evento será também o lançamento oficial do livro Microsoft Office Project 2007.&lt;br /&gt;&lt;br /&gt;O evento é gratuíto e para efetuar a sua inscrição, ligue 0800.888.4081 e digite a opção 6.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_JQu5KsEkhSg/R7rShlk4o2I/AAAAAAAAN6w/xA4mdWMPFgU/s1600-h/convite_project_220108_sp.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5168674996825400162" style="CURSOR: hand" alt="" src="http://3.bp.blogspot.com/_JQu5KsEkhSg/R7rShlk4o2I/AAAAAAAAN6w/xA4mdWMPFgU/s400/convite_project_220108_sp.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Abraços&lt;br /&gt;André Dias&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-2772833338361354242?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/2772833338361354242/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=2772833338361354242' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/2772833338361354242'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/2772833338361354242'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2008/02/evento-gerenciamento-eficiente-de.html' title='Evento: Gerenciamento Eficiente de Projetos Corporativos'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_JQu5KsEkhSg/R7rShlk4o2I/AAAAAAAAN6w/xA4mdWMPFgU/s72-c/convite_project_220108_sp.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-1004571454323397155</id><published>2008-02-18T17:56:00.006-03:00</published><updated>2008-02-18T18:28:20.323-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Data Access'/><category scheme='http://www.blogger.com/atom/ns#' term='Arquitetura'/><category scheme='http://www.blogger.com/atom/ns#' term='Orientação a Objetos'/><category scheme='http://www.blogger.com/atom/ns#' term='OOP'/><title type='text'>Erros e dúvidas comuns entre desenvolvedores de aplicações orientadas a objetos</title><content type='html'>Há alguns anos atrás eu mantinha um site chamado EnterpriseGuys cujo objetivo era retratar a tecnologia no mundo corporativo, onde aplicações .net se integram com java, metodologias ágeis trabalham lado a lado com processos mais "formais", a qualidade de software ajuda a garantir o sucesso das aplicações. E todos os artigos tinham relacionamentos entre sí.&lt;br /&gt;&lt;br /&gt;Infelizmente, tive que abandonar o site, mas a boa e &lt;a href="http://web.archive.org/web/20060709081217/www.enterpriseguys.com/Entrevistas.aspx"&gt;velha internet &lt;/a&gt;fez o favor de guardar alguns conteúdos que ainda são totalmente atuais e eu gostaria de compartilhar com vocês uma entrevista que fiz no EnterpriseGuys (EG) com o Dr. Spock. Confiram:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;Erros e dúvidas comuns entre desenvolvedores de aplicações orientadas a objetos&lt;/span&gt; &lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Orientação a Objetos: Alguns dizem que é um conceito simples, que possuem um domínio sobre ela, enquanto outros tem pavor só de ouvir o termo. A verdade é que a OOP não é tão trivial quanto parece e para nos ajudar a entender esse conceito tão polêmico convidamos um especialista no assunto. Aproveitem essa grande aula do Dr. Spock.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;em&gt;Dr. Spock&lt;/em&gt;&lt;/strong&gt;&lt;br /&gt;&lt;em&gt;Consultor e arquiteto de software que desenvolve sistemas para a Web com tecnologias OO, banco de dados e Java desde 1996. Um teckno-freak, apaixonado e evangelista das novas tecnologias e arquiteturas para o desenvolvimento de sistemas complexos de software.&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;EG: Spock. Antes de tudo, gostaria de agradecer por ter aceitado o nosso convite e gostaria que você falasse um pouco da sua experiência no desenvolvimento de softwares, com o que está trabalhando atualmente e as suas áreas de interesse.&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Dr. Spock:&lt;/strong&gt; Sou um desenvolvedor que começou a trabalhar com as novas tecnologias e o desenvolvimento de aplicações para a Web por volta de 96. Comecei neste período num provedor de internet. Programei várias aplicações para a Web desde essa época. Mas, aos poucos fui migrando de tecnologia para o desenvolvimento de aplicações Web até ter contato com processos, metodologias e a orientação a objetos, culminando com uso do Java e da arquitetura J2EE.&lt;br /&gt;Atualmente estou investindo muito no aprendizado das técnicas de modelagem orientadas a objetos com o uso de frameworks que disponibilizam o uso racional de Design Patterns, componentização e serviços distribuídos e transacionais. Mas, desde 99 venho programando aplicações com Java, OO, Design Patterns e J2EE.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;EG: Com a sua experiência, você já deve ter passado por várias empresas e dado de frente com várias arquiteturas de sistemas. Gostaria de saber qual a sua impressão sobre essas arquiteturas. As empresas têm se preocupado mais com a produtividade utilizando ferramentas RAD ou optado por um modelo realmente orientado a objetos garantindo a alta coesão e baixo acoplamento?&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;Dr. Spock&lt;/strong&gt;: A verdade é que muitos ainda estão aprendendo a orientação a objetos e os gestores estão tentando resolver os problemas de gerenciamento. A grande preocupação das empresas, e com razão, está na profissionalização da gestão de projetos. Sem uma gestão de projetos adequada e sem saber lidar com pessoas, de nada vai adiantar dominar a tecnologia se for necessário apagar constantes incêndios por falta de um planejamento ou por prazos insanos. Com isso, os desenvolvedores estão sendo pressionados pelos prazos e urgências irreais. Assim, muitos acabam tentando resolver os problemas usando, sem maturidade, as ferramentas RAD para adquirir produtividade e tentar atender as pressões. E no fim acabam, por falta de experiência, conhecimento ou pressão dos prazos, negligenciando um bom modelo OO.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;EG: Muitos analistas acabam desenhando um modelo de objetos que é um espelho das tabelas do banco de dados. Essa abordagem é correta? Quais as vantagens e desvantagens desta abordagem?&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;Dr. Spock&lt;/strong&gt;: Novamente, a maioria dos desenvolvedores está aprendendo OO e a programar aplicações com este paradigma. Enquanto isso, ainda é necessário obter requisitos com o cliente e estabelecer o modelo para o quê e para o como o sistema será implementado. Normalmente quem realiza estas tarefas são os analistas de sistemas mais antigos e "experientes" que já não tem tanto "jeito" para programar com as novas tecnologias. Como muito destes analistas aprenderam a programar construindo um modelo de entidades e relacionamentos para os dados, acabam fazendo aquilo que sabem quando se defrontam com o desafio de modelar um sistema OO: desenhando um modelo de dados que é um espelho das tabelas! O problema dessa abordagem é que a distância entre o modelo relacional, que estabelece a idéia de normalização, e o modelo orientado a objetos têm um grande abismo conceitual que os separam. Na orientação a objetos existem vários conceitos que poderíamos aplicar, tais como a herança, polimorfismo, padrões de projetos, interfaces e outras técnicas OO, que ao fazer uma modelagem que privilegia o modelo de dados deixamos de aplicar. Essa abordagem acaba resultando no que alguns chamam de aplicações que nada mais são do que "janelas para tabelas". Essa limitação traz a tona todos os problemas e deficiências da abordagem estruturada, além de toda a complexidade da orientação a objetos sem usufruir os seus benefícios.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;EG: Há alguns mitos sobre a OOP dizendo que esse modelo degrada a performance da aplicação, aumenta o tempo de desenvolvimento e a complexidade do sistema. Até que ponto isso é verdade?&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;Dr. Spock&lt;/strong&gt;: Faço minhas as palavras da gangue dos quatro (GoF) citadas no livro clássico sobre padrões de projetos: "Projetar software orientado a objetos é difícil, e projetar software orientado a objetos re-usável é mais difícil ainda". Por conta dessa dificuldade é uma verdade afirmar que o tempo de desenvolvimento é maior quando comparado com as técnicas mais antigas e que a complexidade é maior. Contudo, este é o investimento necessário para obter o que a orientação a objetos tem para nos oferecer: reuso, facilidade de manutenção e evolução, agilidade para atender novos requisitos ou mudanças nos requisitos e custos menores de manutenção e evolução. Portanto, aplicar a OO e a OOP significa um investimento inicial, e não um preço a pagar, para obter um retorno (ROI) a médio e longo prazo num projeto. Porém, o que acontece na maioria dos projetos que vemos por aí é que este investimento se torna rapidamente um prejuízo porque não tem uma boa gestão.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;EG: Uma dúvida muito freqüente nas empresas em que passei é sobre como devemos empregar a OOP na geração de relatórios. Devemos utilizar apenas as entidades previamente definidas ou criar objetos DataHolders(Views) específicos para cada relatório?&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;Dr. Spock&lt;/strong&gt;: Este problema, como muitos outros, não é um problema simples ou fácil de resolver. Mas, vejo que a solução depende dos requisitos que nos são apresentados. Como tudo o que desenvolvemos! Se precisarmos de flexibilidade e agilidade para atender mudanças ou novos layouts dos relatórios, podemos desenvolver um modelo OO para representar as entidades envolvidas na definição do objeto chamado "relatório". Se os requisitos exigem performance, podemos fazer uso de recursos que são disponibilizados pelos gerenciadores de bancos de dados para delegar parte do processamento para estes gerenciadores. Portanto, não existe mágica. Contudo, para nossa sorte, já existem disponíveis na comunidade 'open source' boas soluções OO para este problema recorrente.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;EG: Atualmente, tanto a Sun quanto a Microsoft estão disponibilizando bibliotecas para efetuar o acesso a dados diretamente da camada de apresentação. Isso não fere os princípios da OOP? Qual a razão desta abordagem?&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Dr. Spock&lt;/strong&gt;: Este tipo de abordagem não chega a ser um crime. A exigência pela separação da camada de apresentação da camada de negócio é mais uma boa prática que existe há muito tempo por causa do padrão de projeto chamado MVC (Model-View-Controller), do que por causa OO em si. Mais uma vez, a solução será determinada pelos requisitos. Portanto, podemos nos deparar com a necessidade de acessar recursos da camada de persistência de dados diretamente da camada de apresentação porque sob certas condições e requisitos esta seria a melhor solução. Por outro lado, sob outras condições ou requisitos a melhor solução seria separar em camadas com responsabilidades bem definidas como sugere o MVC. Geralmente, adotamos esta última estratégia porque desejamos flexibilidade e generalidade no modelo em detrimento de um tempo muito menor de desenvolvimento. O que não podemos fazer é nos privar de adotar a melhor solução para o problema com que nos deparamos porque a "estratégia da moda" a considera uma heresia!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;EG: Lazy Loading: Herói ou vilão?&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;Dr. Spock&lt;/strong&gt;: Não existe certo ou errado absoluto neste mundo virtual. Usar ou não a abordagem de "Lazy Loading" numa aplicação que acessa grande volumes de dados vai depender do contexto do problema que estamos tentando resolver. Por exemplo, montar uma página Web com o resultado de uma consulta que devolve 50 mil registros é uma insanidade. Mas, num processamento na camada de negócio, que normalmente é executada num servidor e acessado remotamente, usar "Lazy Loading" para trazer os mesmos 50 mil registros que seriam usados num processamento ou cálculo para gerar poucos resultados intermediários também significa uma insanidade. Porque neste último caso nos depararíamos com o problema dos "n+1" acessos ao repositório de dados enquanto seria mais eficiente acessar as informações fazendo "fetch" para obter os pacote de dados como resultado de uma única consulta.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;EG: Muitos autores dizem que a melhor forma de modelar um sistema é primeiro definir o modelo de classes e a partir dele criar o MER, porém sabemos que atualmente é praticamente impossível começar um sistema totalmente do zero sem ter que integrar com alguma base de dados já existente. Qual a melhor maneira de contornar essa situação?&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Dr. Spock&lt;/strong&gt;: Desta questão podemos derivar duas situações. A primeira se refere à necessidade de uma aplicação para a manutenção dos dados que já existem nos banco de dados legados. Para este caso, porque não estabelecer um modelo de classes para manipular estes dados? Apesar de que o melhor seria usar algum framework de mapeamento objeto/relacional que seja orientado a SQL, tal como o iBatis. A segunda situação está relacionada à construção de uma solução para um problema onde poderíamos fazer uma modelagem de domínio com a definição de objetos e as suas respectivas classes que precisariam ter o seu estado persistido em tabelas previamente existentes ou simplesmente alguns dos dados que compõem o estado destes objetos seriam obtidos ou persistidos nas bases de dados. Para este caso, não precisaríamos nos dirimir de fazer um bom modelo OO para representar as entidades de domínio. Contudo, precisaríamos fazer uso de algum framework de mapeamento objeto/relacional orientado a objetos, ou seja, algum framework que implemente o idioma da OO e ao mesmo tempo transforme para o modelo relacional, tal como o Hibernate. Porém, ainda sim, poderíamos ter a primeira situação coexistindo com a segunda se encapsularmos a primeira situação numa camada interna da aplicação que seria acessada por uma camada mais externa que representaria o modelo de domínio da aplicação com a sua concepção baseada no melhor estilo da OO.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;EG: Há alguns anos, tínhamos a OOP como a "solução para todos os problemas". Hoje já temos a AOP (programação orientada a aspecto) como uma "estensão" que veio para suprir os problemas trazidos pela OOP. Você acredita que podemos ter uma substituição deste modelo a curto prazo?&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;Dr. Spock&lt;/strong&gt;: A verdade é que o aspecto complementa o conceito de objeto, e não uma solução para problemas oriundos da programação OO. Existem características que vários objetos compartilham mesmo sendo de natureza (classe) diferente. A deficiência da OO reside no fato de que os conceitos de herança e interfaces não são suficientes para flexibilizar e generalizar estas características (aspectos) que estes vários objetos possuem. Então, como uma forma de capturar estas características como um novo elemento de modelagem e implementação na OO, surge o conceito e o artefato chamados de "aspecto". Além disso, o "aspecto" vem sendo implementado nas linguagens como um recurso que é conectado dinamicamente aos objetos, tal que torna a herança de estruturas e comportamentos um recurso dinâmico que antes era estático e definido em tempo de projeto. Ou seja, uma vez o código compilado não muda mais!&lt;br /&gt;Por isso, não encaro a AOP como um substituto a OOP. A verdade é que muitas tecnologias e plataformas estão migrando para o paradigma OO. Podemos tomar como exemplos o Java, desde a sua concepção, e o .NET, dentre outras plataformas e linguagens. Portanto, não consigo vislumbrar, através da minha visão limitada e "além do alcance", uma mudança de paradigma que nos obrigue a uma mudança como foi da abordagem estruturada para o paradigma OO.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;EG: Pra encerrar, quais são as dicas que você deixa para elaborarmos um bom modelo orientado a objetos?&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;Dr. Spock&lt;/strong&gt;: Como disse Morpheus para o Neo em Matrix: "Free your mind". Este é o primeiro passo para aprender OO. Então, obviamente, o segundo passo é: efetivamente aprenda OO e use-a sem medo e com responsabilidade, ou seja, saiba o que está fazendo. Além disso, não tenha medo de se esborrachar lá embaixo! O resto é experiência que só se adquire com o tempo, paciência e aplicando as melhores soluções que muitos já experimentaram e estão documentadas e disponíveis no mundo virtual.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-1004571454323397155?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/1004571454323397155/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=1004571454323397155' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/1004571454323397155'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/1004571454323397155'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2008/02/erros-e-dvidas-comuns-entre.html' title='Erros e dúvidas comuns entre desenvolvedores de aplicações orientadas a objetos'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-9045898813966278998</id><published>2008-02-09T09:30:00.000-03:00</published><updated>2008-02-09T10:09:59.174-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Team System'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><title type='text'>Process Templates para Team Foundation Server</title><content type='html'>No Visual Studio Team Foundation Server 2008, podemos encontrar dois templates de processo que já vem com o produto: o MSF for Agile 4.2 e o MSF for CMMi 4.2.&lt;br /&gt;&lt;br /&gt;São processos bem abrangentes sendo que o primeiro é mais indicado para projetos com um nível de controle não tão alto, onde temos que ter respostas ágeis a frequentes mudanças de requisitos e uma quantidade de documentação reduzida e o segundo mais indicado para projetos onde o gerenciamento de escopo, recursos, configuração e qualidade são mais efetivos e é um template de processo que atende aos requisitos do CMMi nível 3.&lt;br /&gt;&lt;br /&gt;Para uma boa parte das empresas, esses dois templates fornecem templates e recursos mais que suficiente para o gerenciamento do projeto, porém há empresas que preferem customizar o próprio processo e definir seus próprios templates, workflows de aprovação de tarefas e bugs, relatórios, etc.&lt;br /&gt;&lt;br /&gt;E há ainda, com o crescimento da adoção de metodologias ágeis, empresas parceiras e a própria comunidade trabalhando na criação de templates de processos para essas metodologias, entre elas Scrum, XP e FDD.&lt;br /&gt;&lt;br /&gt;Consultando o site &lt;a href="http://widgets.accentient.com/default.aspx" target="_blank"&gt;http://widgets.accentient.com/default.aspx&lt;/a&gt; que é um excelente repositório de extenções para o Team System, pude ver que já temos 13 novos templates para utilizarmos no Team Foundation Server. São eles:&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://www.cognizant.com/html/content/microsoft/techfddvsts.asp" target="_blank"&gt;Cognizant FDD Process ($)&lt;/a&gt; - Cognizant (Commercial)&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.osellus.com/products/contentbridge/contentbridge_for_vsts.html" target="_blank"&gt;Content Bridge for VSTS ($)&lt;/a&gt; - Osellus (Commercial)&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.osellus.com/IRIS-PA" target="_blank"&gt;IRIS Process Author ($)&lt;/a&gt; - Osellus (Commercial)&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.osellus.com/IRIS-PL" target="_blank"&gt;IRIS Process Live ($)&lt;/a&gt; - Osellus (Commercial)&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=EA75784E-3A3F-48FB-824E-828BF593C34D&amp;amp;displaylang=en" target="_blank"&gt;MSF for Agile Software Development (ver 4.1)&lt;/a&gt; - Microsoft (Free)&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=12A8D806-BB98-4EB4-BF6B-FB5B266171EB&amp;amp;displaylang=en" target="_blank"&gt;MSF for CMMI® Process Improvement (ver 4.1)&lt;/a&gt; - Microsoft (Free)&lt;/li&gt;&lt;li&gt;&lt;a href="http://notgartner.wordpress.com/2006/03/26/process-template-released-personal-workspace-v10/" target="_blank"&gt;Personal Workspace v1.0&lt;/a&gt; - Mitch Denny/Readify (Commercial)&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.processmentor.com/teamguide/" target="_blank"&gt;Process MeNtOR TeamGuide ($)&lt;/a&gt; - Object Consulting (Commercial)&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/VSTSScrum" target="_blank"&gt;Scrum Template (CodePlex)&lt;/a&gt; - CodePlex (Community)&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.scrumforteamsystem.com/" target="_blank"&gt;Scrum Template (Conchango)&lt;/a&gt; - Conchango (Free)&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=55A4BDE6-10A7-4C41-9938-F388C1ED15E9&amp;amp;displaylang=en" target="_blank"&gt;Scrum Template (Microsoft eScrum)&lt;/a&gt; - Microsoft (Free)&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/scrumptious" target="_blank"&gt;Scrum Template (Scrumptious)&lt;/a&gt; - CodePlex (Community)&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/XPForTeamSystem" target="_blank"&gt;XP for Team System (Extreme Programming)&lt;/a&gt; - CodePlex (Community)&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;Abraços&lt;br /&gt;André Dias&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-9045898813966278998?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/9045898813966278998/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=9045898813966278998' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/9045898813966278998'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/9045898813966278998'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2008/02/process-templates-para-team-foundation.html' title='Process Templates para Team Foundation Server'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-1841770100217808010</id><published>2008-02-06T23:35:00.000-03:00</published><updated>2008-02-06T23:47:15.102-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Team System'/><title type='text'>Casos de Sucesso do Team System</title><content type='html'>Agora, até que diminuiu um pouco, mas até um tempo atrás eu recebia diversas perguntas questionando a verdadeira necessidade do Team System, se ele aumentava realmente a produtividade, se valia a pena o investimento no produto, etc.&lt;br /&gt;&lt;br /&gt;Bom, segue uma "pequena lista" de Casos de Sucesso do Team System. Temos inclusive a brasileira Telemar (#33) entre os casos de sucesso. Confiram:&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/casestudies/casestudy.aspx?casestudyid=4000000562"&gt;Achmea&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/casestudies/casestudy.aspx?casestudyid=49088"&gt;Airways New Zealand&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://download.microsoft.com/download/c/2/a/c2ac4fc6-d21b-47d7-afd0-ff306215d49b/g92%20-%20Microsoft%20Visual%20Studio%20Team%20System%20ROI%20case%20study%20-%20Global%20Manufacturer.pdf"&gt;Anonymous Global Manufacturer&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://download.microsoft.com/download/3/2/f/32f9a929-e207-4b9c-8c57-eccca684a206/g97%20-%20Microsoft%20Visual%20Studio%20Team%20System%20ROI%20case%20study%20-%20Social%20Networking%20Web%20Site.pdf"&gt;Anonymous Social Networking Web Site&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/casestudies/casestudy.aspx?casestudyid=1000004012"&gt;Bowne&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/casestudies/casestudy.aspx?casestudyid=4000001004"&gt;CC Intelligent Solutions&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/casestudies/casestudy.aspx?casestudyid=4000000953"&gt;CH2MHill&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/casestudies/casestudy.aspx?casestudyid=201308"&gt;Clear Channel&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/casestudies/casestudy.aspx?casestudyid=201031"&gt;Configuresoft&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/casestudies/casestudy.aspx?casestudyid=4000000935"&gt;De Post - La Poste&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/casestudies/casestudy.aspx?casestudyid=201353"&gt;Dell&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/casestudies/casestudy.aspx?casestudyid=4000000723"&gt;DriveTime&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/casestudies/casestudy.aspx?casestudyid=200032"&gt;EDS&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/casestudies/casestudy.aspx?casestudyid=201310"&gt;EDS&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/casestudies/casestudy.aspx?casestudyid=49193"&gt;Fujitsu&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/casestudies/casestudy.aspx?casestudyid=200529"&gt;Gulf Coast Seal&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://download.microsoft.com/download/6/4/f/64f2b823-3b85-4737-926a-92dba8504d85/Windows%20Live%20Hotmail%20Case%20Study%20-%20Final.doc"&gt;Hotmail.com&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/casestudies/casestudy.aspx?casestudyid=49250"&gt;Imagination&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/casestudies/casestudy.aspx?casestudyid=4000001001"&gt;Indianapolis Colts&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/casestudies/casestudy.aspx?casestudyid=49089"&gt;Info Support&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/casestudies/casestudy.aspx?casestudyid=200064"&gt;Infosys&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/casestudies/casestudy.aspx?casestudyid=4000001042"&gt;K2&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/casestudies/casestudy.aspx?casestudyid=201311"&gt;KBC Bank&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/casestudies/casestudy.aspx?casestudyid=4000001048"&gt;MethodFactory&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://download.microsoft.com/download/3/2/C/32C4DA6B-AC49-42F2-A922-A2A79BF543BA/VSTF_TCS.doc"&gt;Microsoft&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/technet/itsolutions/msit/net/vs05teamsystemnote.mspx"&gt;Microsoft Business Unit IT&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://technet.microsoft.com/en-us/library/bb735282.aspx"&gt;Microsoft e*BIS IT&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://technet.microsoft.com/en-us/library/bb735159.aspx"&gt;Microsoft Managed Solutions IT&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/technet/itsolutions/msit/deploy/vstfoemit.mspx"&gt;Microsoft OEM Division's IT Center of Excellence&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/casestudies/casestudy.aspx?casestudyid=4000000325"&gt;Service Corporation International (SCI)&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/casestudies/casestudy.aspx?casestudyid=4000000966"&gt;Sogeti Group&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/casestudies/casestudy.aspx?casestudyid=49109"&gt;State of Washington Digital Archives Development Team&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/casestudies/casestudy.aspx?casestudyid=1000003978"&gt;Telemar&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/casestudies/casestudy.aspx?casestudyid=49120"&gt;The Computer Solution Company (TCSC)&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/casestudies/casestudy.aspx?casestudyid=4000000476"&gt;Top Image Systems&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/casestudies/casestudy.aspx?casestudyid=201406"&gt;Washington State Department of Community, Trade, and Economic Development&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://download.microsoft.com/download/6/4/f/64f2b823-3b85-4737-926a-92dba8504d85/NCAA%20Case%20Study%20-%20Final.doc"&gt;Windows Live College Bracket Challenge&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/casestudies/casestudy.aspx?casestudyid=49148"&gt;Worldspan&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;Abraços&lt;br /&gt;André Dias&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-1841770100217808010?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/1841770100217808010/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=1841770100217808010' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/1841770100217808010'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/1841770100217808010'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2008/02/casos-de-sucesso-do-team-system.html' title='Casos de Sucesso do Team System'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-1742194049645793133</id><published>2008-01-17T23:02:00.000-03:00</published><updated>2008-12-08T19:00:32.406-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Team System'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><title type='text'>Consultando a versão do Team System e Estendendo o Trial</title><content type='html'>Consultando o &lt;a href="http://blogs.msdn.com/bharry/archive/2008/01/15/checking-your-tfs-version-and-extending-trials.aspx" target="_blank"&gt;Blog do Brian Harry&lt;/a&gt;, encontrei uma ferramenta muito interessante que nos permite verificar qual versão do Team System estamos utlizando. No caso de ser uma versão Trial, ele informa ainda o número de dias restantes e ainda nos permite estender por mais 30 dias uma versão trial.&lt;br /&gt;&lt;br /&gt;É uma ferramenta bem simples que pode ser rodada direto no servidor para evitar problemas de permissão e você tem que fornecer apenas o nome do servidor onde o TS está instalado.&lt;br /&gt;&lt;br /&gt;&lt;img id="BLOGGER_PHOTO_ID_5156631999556590706" style="CURSOR: hand" alt="" src="http://1.bp.blogspot.com/_JQu5KsEkhSg/R5AJe4r7nHI/AAAAAAAANcU/jw21p80Kuzw/s320/TFSVersionDetection.png" border="0" /&gt;&lt;br /&gt;&lt;br /&gt;A ferramenta está disponível para download no blog do Brian ou se preferir, &lt;a href="http://blogs.msdn.com/bharry/attachment/7119345.ashx"&gt;clique aqui&lt;/a&gt; para fazer o download.&lt;br /&gt;&lt;br /&gt;Divirta-se :-)&lt;br /&gt;&lt;br /&gt;Abraços&lt;br /&gt;André Dias&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-1742194049645793133?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/1742194049645793133/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=1742194049645793133' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/1742194049645793133'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/1742194049645793133'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2008/01/consultando-verso-do-team-system-e.html' title='Consultando a versão do Team System e Estendendo o Trial'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_JQu5KsEkhSg/R5AJe4r7nHI/AAAAAAAANcU/jw21p80Kuzw/s72-c/TFSVersionDetection.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-2810622972219760167</id><published>2008-01-17T22:44:00.000-03:00</published><updated>2008-01-17T22:58:47.468-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Project 2007'/><category scheme='http://www.blogger.com/atom/ns#' term='Team System'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><title type='text'>Como alterar o Team Foundation Server no Project - Parte 2</title><content type='html'>Mês passado, eu publiquei um post sobre como alterar o servidor do Team System no MS Project 2007 / Excel .&lt;br /&gt;&lt;br /&gt;Para quem não está acompanhando, o Team System oferece diversas opções de clients: o próprio Visual Studio com o Team Explorer, o Internet Explorer acessando o &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=C568FBA9-3A62-4781-83C6-FDFE79750207&amp;amp;displaylang=en" target="_blank"&gt;Team System Web Access &lt;/a&gt;e temos também o Excel e o Project.&lt;br /&gt;&lt;br /&gt;O problema é que uma vez que você seleciona o servidor e projeto com qual vai trabalhar, você nunca mais pode alterar. Imagine eu tentando explicar pro meu gerente que o crograma dele com centenas de atividades não poderia mais se conectar ao Team System e ele não poderia mais sincronizar o status das ativades, nem publicar mais nada. Acho que ele não gostou muito :-)&lt;br /&gt;&lt;br /&gt;Como citado anteriormente, publiquei um &lt;a href="http://andrediasbr.blogspot.com/2007/12/como-alterar-team-foundation-server-no.html" target="_blank"&gt;post&lt;/a&gt; que mostrava como contornar isso, mas há uma forma muito mais inteligente de fazer isso: Coloquei esse problema no fórum americano e uma pessoa do time me deixou um e-mail dizendo pra eu entrar em contato que ele tinha um software interno para corrigir isso.&lt;br /&gt;&lt;br /&gt;Mandei o e-mail para o cidadão que prontamente me respondeu com o software em anexo junto com um pequeno manual e não é que o software funcionou :-) Ele disse ainda que é muito provável que essa ferramenta seja anexada a próxima versão do &lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=7574836F-4A0B-454F-A340-85DA4698177C&amp;amp;displaylang=en" target="_blank"&gt;Power Tools&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Se você está precisando fazer isso agora e não pode esperar até a próxima versão, entre em contato comigo que encaminho a ferramenta.&lt;br /&gt;&lt;br /&gt;Um abraço&lt;br /&gt;André Dias&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-2810622972219760167?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/2810622972219760167/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=2810622972219760167' title='2 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/2810622972219760167'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/2810622972219760167'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2008/01/como-alterar-o-team-foundation-server.html' title='Como alterar o Team Foundation Server no Project - Parte 2'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-7167351413381106052</id><published>2008-01-17T00:57:00.000-03:00</published><updated>2008-01-17T22:43:37.284-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Team System'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><title type='text'>Migrando Team System 2005 para Team System 2008</title><content type='html'>Primeiro post do ano. Eu poderia começar falando sobre como foram as minhas férias, viagens, mas que férias? No máximo uma prainha no Guarujá/SP na virada do ano. Então vamos ao que eu fiz no lugar das férias, vamos falar sobre como migrar o Team System da versão 2005 para 2008.&lt;br /&gt;&lt;br /&gt;Antes de tudo vou explicar o cenário que tinhamos. Tinhamos uma instalação Single Server do TS2005. Ela começou com apenas um projeto para avaliarmos o produto e em pouco mais de um mês começamos a colher os resultados com diversos relatórios sobre o projeto, acompanhamento em tempo real das atividades, um ótimo controle do ciclo de vida do projeto. Pronto! Foi suficiente para convencer o gerente e migrarmos todos os projetos, até então no Source Safe, para o Team System.&lt;br /&gt;&lt;br /&gt;Como consequência, o servidor ficou mais lento, as builds começaram a demorar mais e resolvemos migrar para uma arquitetura multi-server. Aproveitamos também que o Team System 2008 já estava em RTM e fizemos a migração de versão também.&lt;br /&gt;&lt;br /&gt;Existem vários procedimentos para migração e apesar do guia não recomendar, saímos de uma arquitetura single server 2005 diretamente para uma multi-server 2008.&lt;br /&gt;&lt;br /&gt;Inicialmente fizemos a migração do Sharepoint Services 2.0 para o Sharepoint Services 3.0 utilizando esse o artigo &lt;a href="http://msdn2.microsoft.com/en-us/teamsystem/bb676233.aspx"&gt;&lt;em&gt;TN1501: Configuring Windows SharePoint Services 3.0 on the Visual Studio 2005 Team Foundation Server Application Tier&lt;/em&gt;&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Em seguida fizemos o Upgrade do Team System 2005 para o Team System 2008 apenas para atualizar as bases de dados do 2005 para o formato do 2008. Para realizar esse procedimento utilizamos o &lt;em&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=FF12844F-398C-4FE9-8B0D-9E84181D9923&amp;amp;displaylang=en"&gt;Team Foundation Installation Guide for Visual Studio Team System 2008&lt;/a&gt;&lt;/em&gt;.&lt;br /&gt;&lt;br /&gt;Depois disso fizemos uma instalação do zero utilizando quatro servidores novos:&lt;br /&gt;1) Team Foundation Application Server&lt;br /&gt;2) Team Foundation Database Server&lt;br /&gt;3) Team Foundation Build Server&lt;br /&gt;4) Sharepoint Server 2007&lt;br /&gt;&lt;br /&gt;Essa instalação multi-server também pode ser encontrada no Installation Guide do TS2008.&lt;br /&gt;&lt;br /&gt;Com um conjunto de máquinas zerinho e o servidor antigo migrado para a estrutura do Team System 2008. Foi só fazer o backup de todos os bancos de dados do Single Server e restauramos na arquitetura Multi-Server utilizando esse imenso guia &lt;a href="http://msdn2.microsoft.com/en-us/library/ms404869.aspx"&gt;How to: Move Your Team Foundation Server from One Hardware Configuration to Another&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Não foi uma instalação simples, também não achamos um guia que mostrasse o caminho completo para fazer essa migração do jeito que queriamos então utilizamos esse conjunto de guias que deu num resultado perfeito.&lt;br /&gt;&lt;br /&gt;Hoje, estamos com essa arquitetura multi-server funcionando perfeitamente e utilizando praticamente todos os recursos disponíveis no Team System 2008. Os novos templates de processos estão bem mais completos, o gerenciamento de builds ficou muito mais fácil, a customização do portal do projeto com o Sharepoint Server 2007  está muito mais tranquila. Então se você tem a oportunidade de fazer essa migração, recomendo que perca um tempinho planejando e vá em frente porque os resultados valem a pena.&lt;br /&gt;&lt;br /&gt;Um abraço&lt;br /&gt;André Dias&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-7167351413381106052?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/7167351413381106052/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=7167351413381106052' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/7167351413381106052'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/7167351413381106052'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2008/01/migrando-team-system-2005-para-team.html' title='Migrando Team System 2005 para Team System 2008'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-1770833513862747036</id><published>2007-12-19T22:33:00.000-03:00</published><updated>2007-12-19T22:42:55.126-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Team System'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><title type='text'>Números do Team System na Microsoft</title><content type='html'>Visitando o &lt;a href="http://alinefmrk.spaces.live.com/Blog/cns!DC8D46675C597D1B!1490.entry" target="_blank"&gt;Blog&lt;/a&gt; da Aline Frias, encontrei uma informação super interessante sobre a utlização do Visual Studio Team System e do Team Foundation Server na própria Microsoft. É isso aí! A MS utilizando seus próprios produtos e com números realmente impressionantes. Confiram:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Projetos no Team Foundation Server: 1.355 (taxa de crescimento de &gt;100 novos projetos/mês)&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Usuários Ativos: 8.452 (grupos que já usam TFS: MSIT, DevDiv, SQL, Office, Windows, MSCOM e Windows Live/MSN) &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Work Items: 1.254.266 &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Arquivos de Código-Fonte: 27.311.195 (&lt;strong&gt;isso mesmo, mais de 27 milhões de arquivos-fonte!&lt;/strong&gt;)&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Os números foram enviados pelo Joe Schwetz, Group Manager do time de TFS.&lt;/p&gt;&lt;p&gt;Abraços&lt;br /&gt;André Dias&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-1770833513862747036?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/1770833513862747036/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=1770833513862747036' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/1770833513862747036'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/1770833513862747036'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2007/12/nmeros-do-team-system-na-microsoft.html' title='Números do Team System na Microsoft'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-1320225141179752605</id><published>2007-12-19T21:58:00.000-03:00</published><updated>2007-12-19T22:24:30.005-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Data Access'/><category scheme='http://www.blogger.com/atom/ns#' term='ADO.NET Entity Framework'/><category scheme='http://www.blogger.com/atom/ns#' term='LINQ'/><title type='text'>Entity Framework para Oracle, DB2 e outros bancos</title><content type='html'>Há alguns meses, eu publiquei um &lt;a href="http://andrediasbr.blogspot.com/2007/07/dlinq-s-funciona-com-sql-server.html" target="_blank"&gt;post &lt;/a&gt;sobre o LINQ to SQL (até então conhecido como DLinq) trabalhar exclusivamente com SQL Server e falando que a tendência era de que a Microsoft iria disponibilizar um Object Model para parceiros estenderem.&lt;br /&gt;&lt;br /&gt;Pois bem, parece que a tendência se confirmou e hoje o David Sceppa, Program Manager do ADO.NET, divulgou uma lista de parceiros que estão trabalhando em providers do Entity Framework para Oracle, DB2, MySQL e muitos outros. Confira a lista completa dos parceiros e providers abaixo:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;&lt;a href="http://www.crlab.com/" target="_blank"&gt;Core Lab&lt;/a&gt;&lt;/strong&gt; - fornecendo drivers para Oracle, MySQL, PostgreSQL e SQLite&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;IBM&lt;/strong&gt; - fornecendo drivers para IBM DB2 data server e Informix Dynamic Server (IDS)&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;MySQL AB&lt;/strong&gt; - fornecendo drivers para MySQL&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Npgsql&lt;/strong&gt; - fornecendo drivers para PostgreSQL database versões 7.3+ e 8.x&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;OpenLink Software&lt;/strong&gt; - fornecendo drivers para Oracle, Informix, Ingres, Sybase, MySQL, PostgreSQL, DB2, Progress e Microsoft SQL Server, e qualquer data source acessível via OpenLink ODBC ou JDBC bridge drivers&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Phoenix Software International&lt;/strong&gt; - fornecendo drivers para SQLite databases&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Sybase&lt;/strong&gt; - fornecendo drivers para SQL Anywhere databases&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;VistaDB Software&lt;/strong&gt; - fornecendo drivers para to VistaDB databases&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Firebird&lt;/strong&gt; - fornecendo drivers para Firebird&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Pena que alguns deles são pagos, mas acredito que teremos em breve bons providers free.&lt;/p&gt;&lt;p&gt;Abraços&lt;br /&gt;André Dias&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-1320225141179752605?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/1320225141179752605/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=1320225141179752605' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/1320225141179752605'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/1320225141179752605'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2007/12/entity-framework-para-oracle-db2-e.html' title='Entity Framework para Oracle, DB2 e outros bancos'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-4567238177738286307</id><published>2007-12-16T20:14:00.000-03:00</published><updated>2007-12-16T21:23:44.251-03:00</updated><title type='text'>Está realmente mais fácil desenvolver software?</title><content type='html'>Apesar de não ser muito velho, eu tive a oportunidade de escrever alguns programinhas em linguagens procedurais como o Cobol e Clipper. Para fazer esses programinhas, que ainda vemos em padarias e farmácias, eu não usava mais que um Edit do MS-DOS, um compilador e um link editor.&lt;br /&gt;&lt;br /&gt;Eu escrevia as dezenas de .PRGs, não tinha que saber nada além da linguagem e quando queria "abusar" um pouquinho, usava no máximo uma biblioteca gráfica chamada CLBC.&lt;br /&gt;&lt;br /&gt;Bons tempos! Eu era feliz e não sabia!&lt;br /&gt;&lt;br /&gt;Há duas semanas, eu participei do TechEd 2007, um evento fantástico, muita coisa nova, mas uma afirmação que vi em várias palestras me fez para para pensar um instante. Está realmente mais fácil desenvolver softwares?&lt;br /&gt;&lt;br /&gt;Antes mesmo de escrever uma linha de código, eu tenho que ler caso de uso, entender o diagrama de classes, ver o comportamento dinâmico através do diagrama de sequência, analisar o MER, dar uma passada pelo documento de requisitos não funcionais e ver o que vai se aplicar ao caso de uso que irei desenvolver, planejar testes unitários, só para citar alguns.&lt;br /&gt;&lt;br /&gt;E na hora de codificar, o que irei usar? Silverlight, WPF, ASP.NET Ajax, ADO Entity Framework, LINQ, WCF, WF, ASP.NET MVC, .NET Framework 3.5, SQL 2008, DSL. Isso listando apenas tecnologias Microsoft. Se abrirmos o leque para outras empresas ou open source, a coisa fica ainda pior (ou melhor?).&lt;br /&gt;&lt;br /&gt;O que mais chama a atenção disso tudo, é que são produtos / tecnologias que não possuem mais que dois anos de vida, sem contar que algumas nem foram lançadas oficialmente. E o VB6, DAO, RDO, ADO, ActiveX, ASP 3, DTS, COM+, Remoting, ASP.NET WebServices que eu usava até algum tempo atrás?&lt;br /&gt;&lt;br /&gt;Tenho notado que a cada 2 anos em média, eu tenho que reaprender a fazer software para não ficar desatualizado. E nem sempre você tem a possibilidade de se tornar especialista num produto / tecnologia para utilizá-lo, ou seja, você acaba perdendo muito tempo em erros bobos que acabam consumindo todo o tempo que você "ganharia" utilizando a nova tecnologia.&lt;br /&gt;&lt;br /&gt;É, a cada dois anos eu aprendo um monte de tecnologias novas para resolver problemas que as tecnologias do passado diziam que resolveria :-)..&lt;br /&gt;&lt;br /&gt;Concluindo, se está mais fácil desenvolver eu não sei, quando eu usava Clipper eu não tinha toda a integração e necessidades que temos hoje, mas que está cada vez mais complicado acompanhar essa evolução tecnológica, está!!! Sabe o que é pior? EU ADORO ISSO!!!&lt;br /&gt;&lt;br /&gt;Viva a tecnologia :-p&lt;br /&gt;&lt;br /&gt;Abraços&lt;br /&gt;André Dias&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-4567238177738286307?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/4567238177738286307/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=4567238177738286307' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/4567238177738286307'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/4567238177738286307'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2007/12/est-realmente-mais-fcil-desenvolver.html' title='Está realmente mais fácil desenvolver software?'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-1474021900233237265</id><published>2007-12-16T10:14:00.000-03:00</published><updated>2007-12-16T10:37:37.079-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Design Pattern'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.NET MVC'/><category scheme='http://www.blogger.com/atom/ns#' term='Arquitetura'/><title type='text'>Liberação do primeiro CTP do ASP.NET MVC</title><content type='html'>Semana passada, Scott Guthrie anunciou em seu &lt;a href="http://weblogs.asp.net/scottgu/" target="_blank"&gt;blog &lt;/a&gt;a liberação do primeiro CTP do ASP.NET 3.5 Extensions. Esse novo pacote de extensão do ASP.NET contém os seguintes componentes:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;ASP.NET Ajax Improvements&lt;/li&gt;&lt;li&gt;ASP.NET MVC&lt;/li&gt;&lt;li&gt;ASP.NET Dynamic Data Support &lt;/li&gt;&lt;li&gt;ASP.NET Silverlight Support&lt;/li&gt;&lt;li&gt;ADO.NET Data Services&lt;/li&gt;&lt;/ul&gt;Como a minha praia é mais arquitetura de software e acesso a dados, de todo esse conjunto de componentes, os que mais me interessam são ASP.NET MVC e ADO.NET Data Services.&lt;br /&gt;&lt;br /&gt;Se você também está interessado em aprender um pouco sobre o design pattern Model-View-Controller (MVC), seguem abaixo alguns links que te darão uma boa base de como implementar essa arquitetura em sua aplicação:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://weblogs.asp.net/scottgu/archive/2007/10/14/asp-net-mvc-framework.aspx" target="_blank"&gt;ASP.NET MVC Framework (Part 0): What is it?&lt;/a&gt;&lt;br /&gt;&lt;a href="http://weblogs.asp.net/scottgu/archive/2007/11/13/asp-net-mvc-framework-part-1.aspx" target="_blank"&gt;ASP.NET MVC Framework (Part 1): Building an MVC Application&lt;/a&gt;&lt;br /&gt;&lt;a href="http://weblogs.asp.net/scottgu/archive/2007/12/03/asp-net-mvc-framework-part-2-url-routing.aspx" target="_blank"&gt;ASP.NET MVC Framework (Part 2): URL Routing&lt;/a&gt;&lt;br /&gt;&lt;a href="http://weblogs.asp.net/scottgu/archive/2007/12/06/asp-net-mvc-framework-part-3-passing-viewdata-from-controllers-to-views.aspx" target="_blank"&gt;ASP.NET MVC Framework (Part 3): Passing ViewData from Controllers to Views&lt;/a&gt;&lt;br /&gt;&lt;a href="http://weblogs.asp.net/scottgu/archive/2007/12/09/asp-net-mvc-framework-part-4-handling-form-edit-and-post-scenarios.aspx" target="_blank"&gt;ASP.NET MVC Framework (Part 4): Handling Form Edit and Post Scenarios&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.hanselman.com/blog/ASPNET35ExtensionsPlusMVCHowToScreencast.aspx" target="_blank"&gt;Scott Hanselman's ASP.NET MVC First Look Screencast&lt;/a&gt;&lt;br /&gt;&lt;a href="http://haacked.com/archive/2007/12/07/tdd-and-dependency-injection-with-asp.net-mvc.aspx" target="_blank"&gt;TDD and Dependency Injection with the ASP.NET MVC Framework&lt;/a&gt;&lt;br /&gt;&lt;a href="http://haacked.com/archive/2007/12/09/writing-unit-tests-for-controller-actions.aspx" target="_blank"&gt;Writing Unit Tests for Controller Actions&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;É, parece que alguns anos após abandonar o Java e o Struts, voltarei a programar com esse conceito na veia (nem vem com aquela história de que ASP.NET já implementa MVC com Page Controller desde a versão 1.0, que não cola) :-)&lt;br /&gt;&lt;br /&gt;Abraços&lt;br /&gt;André Dias&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-1474021900233237265?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/1474021900233237265/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=1474021900233237265' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/1474021900233237265'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/1474021900233237265'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2007/12/liberao-do-primeiro-ctp-do-aspnet-mvc.html' title='Liberação do primeiro CTP do ASP.NET MVC'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-7840016268894266930</id><published>2007-12-12T23:07:00.000-03:00</published><updated>2007-12-12T23:51:47.897-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Project 2007'/><category scheme='http://www.blogger.com/atom/ns#' term='Team System'/><title type='text'>Como alterar o Team Foundation Server no Project 2007</title><content type='html'>Há alguns meses, implantamos o &lt;strong&gt;Team System &lt;/strong&gt;na empresa para avaliarmos o produto. Foi uma instalação &lt;strong&gt;Single Server&lt;/strong&gt;, apenas um projeto de avaliação e muuuuita experiência. Os resultados foram tão bons que hoje temos todos os projetos da empresa hospedados nele e dezenas de desenvolvedores conectados no Team Foundation Server e integração com Excel, Project, desenvolvimento externo, continuous integration, etc.&lt;br /&gt;&lt;br /&gt;Acontece que o número de acessos aumentou, os recursos utilizados também e vimos a necessidade de &lt;strong&gt;migrar o Team System &lt;/strong&gt;para uma &lt;strong&gt;arquitetura distribuída&lt;/strong&gt;. Então, colocamos o Team System em algumas máquina, restauramos o Backup e fizemos a migração com sucesso.&lt;br /&gt;&lt;br /&gt;Colocamos o servidor novo no ar, notificamos os desenvolvedores e analistas para apontarem para o novo servidor e quando achávamos que estava tudo bem, me aparece um gerente dizendo que não conseguia mais atualizar o &lt;strong&gt;MS Project Professional 2007&lt;/strong&gt; que estava conectado ao Team System.&lt;br /&gt;&lt;br /&gt;Após muito pesquisar, qual é a solução que a Microsoft oferece? Criar um project do zero, importar os Work Items e fazer uma espécie de Merge na unha. Confesso que não acreditei quando vi que &lt;strong&gt;tanto o MS Project quanto o Excel não permitem alterar o endereço do Servidor do Team System&lt;/strong&gt;.&lt;br /&gt;&lt;br /&gt;Uma &lt;em&gt;gambiarra&lt;/em&gt; que fizemos para resolver o problema temporariamente, foi &lt;strong&gt;alterar o arquivo hosts do Windows&lt;/strong&gt; para apontar o nome do servidor antigo para o IP do novo servidor, mas não recomendo ninguém a fazer isso, pois é muuuuita gambiarra :-) Foi apenas uma solução temporária que encontramos.&lt;br /&gt;&lt;br /&gt;Enquanto não achamos uma solução melhor, vou seguir o que a Microsoft indicou no artigo &lt;a href="http://msdn2.microsoft.com/en-us/library/bb763114(VS.90).aspx" target="_blank"&gt;Reconnect a Microsoft Project File to Team Foundation Server&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Mas que foi um belo balde de água fria, num momento que estávamos super empolgados com os testes e planejamento de migração para o VSTS 2008, foi !! Espero que em breve saia algum patch pra isso.&lt;br /&gt;&lt;br /&gt;Abraços&lt;br /&gt;André Dias&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-7840016268894266930?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/7840016268894266930/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=7840016268894266930' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/7840016268894266930'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/7840016268894266930'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2007/12/como-alterar-team-foundation-server-no.html' title='Como alterar o Team Foundation Server no Project 2007'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-1556322744880888752</id><published>2007-12-10T20:03:00.000-03:00</published><updated>2007-12-10T20:54:05.079-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Team System'/><category scheme='http://www.blogger.com/atom/ns#' term='Rosario'/><title type='text'>Especificação do Team System code name Rosario disponível</title><content type='html'>&lt;p&gt;Eu já tinha me surpreendido com a participação dos Product Managers do Team System participando de fóruns para colher feedbacks e sugestões da comunidade, mas confesso que nunca imaginei ver a Microsoft abrindo a especificação do produto para podermos opinar de verdade.&lt;br /&gt;&lt;br /&gt;Navegando atrás de informações sobre o &lt;strong&gt;Visual Studio Team System code name Rosario&lt;/strong&gt; encontrei um blog falando que junto com o &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=65D0E3BD-9DF3-421A-804F-8F01BD90F0B4&amp;amp;displaylang=en" target="_blank"&gt;CTP de novembro&lt;/a&gt;, a MS liberou algumas especificações do que será implementado e um fórum específico para discutir as features que são importantes para o produto.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Atualmente, existem 3 especificações disponíveis: &lt;/strong&gt;&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Visa melhorar o processo de adição de arquivos no Version Control, justificando que na versão atual a experiência de adicionar arquivos é complexa e tem um workflow não-linear, especialmente para arquivos em localizações não mapeadas.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Foca em melhorar a experiência de achar o history para um item no Version Control. Algumas mudanças serão feitas na janela do ChangeSet para fornecer recursos para rastrear em branches e merges. Isso eu já tinha sentido falta, pois quando você faz um branch, você perde todo o histórico.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Trata da melhora do processo de &lt;em&gt;Labeling &lt;/em&gt;no Version Control. A especificação diz que é processo é muito complexo para uma tarefa que deveria ser simples e que muitas opções estão disponíveis para processos triviais. &lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;Todas essas especificações podem ser encontradas em &lt;a href="http://msdn2.microsoft.com/en-us/teamsystem/bb936702.aspx" target="_blank"&gt;http://msdn2.microsoft.com/en-us/teamsystem/bb936702.aspx&lt;/a&gt; e sugestões e comentários sobre as especificações podem ser postadas no &lt;a href="http://forums.microsoft.com/msdnworkshop/showforum.aspx?forumid=1981&amp;amp;siteid=64" target="_blank"&gt;fórum específico&lt;/a&gt;. &lt;/p&gt;&lt;p&gt;Só pra fechar, gostaria de dizer que achei essa iniciativa da Microsoft fantástica e adoraria que isso fosse estendido a outros produtos / tecnologias como .NET Framework e Entity Framework.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;André Dias&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-1556322744880888752?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/1556322744880888752/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=1556322744880888752' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/1556322744880888752'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/1556322744880888752'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2007/12/especificao-do-team-system-code-name.html' title='Especificação do Team System code name Rosario disponível'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-9020034362467757092</id><published>2007-12-08T17:15:00.000-03:00</published><updated>2007-12-09T12:28:37.630-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='TechEd'/><category scheme='http://www.blogger.com/atom/ns#' term='Eventos'/><title type='text'>Resumo TechEd 2007 - Dia 7</title><content type='html'>Esse é o último post da série com o Resumo do TechEd 2007 e caso você não tenha lido o resumo dos outros dois dias, recomendo a leitura dos dois posts abaixo:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://andrediasbr.blogspot.com/2007/12/resumo-teched-2007-dia-5.html"&gt;Resumo TechEd 2007 - Dia 5&lt;/a&gt;&lt;br /&gt;&lt;a href="http://andrediasbr.blogspot.com/2007/12/resumo-teched-2007-dia-6.html"&gt;Resumo TechEd 2007 - Dia 6&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Vamos as palestras:&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;strong&gt;Software + Services &lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Palestra realizada pelo &lt;a href="http://blogs.msdn.com/otavio/" target="_blank"&gt;Otavio Coelho&lt;/a&gt;, arquiteto da MS, onde foi comentado sobre os benefícios de aplicações que utilizam o conceito Software + Services. Um exemplo deste conceito é a plataforma Live da Microsoft onde você tem um client que te permite trabalhar desconectado e ao mesmo tempo utiliza serviçoes na Web. O Windows Live Mail é um exemplo perfeito disso.&lt;/p&gt;&lt;p&gt;Falou também sobre os desafios da SOA, principalmente sobre a dificuldade de como escolher o que deve ser SOA ou não dentro da sua aplicação e também sobre o SOAMM (SOA Maturity Model), um modelo de maturidade para SOA recentemente lançado pela Microsoft que classifica a maturidade em 4 níveis: básica, padrão, avançada e dinâmica.&lt;/p&gt;&lt;p&gt;Eu queria ter participado mais desta palestra, no entanto, cheguei atrasado e tive que sair mais cedo, mas de qualquer forma foi uma apresentação muito rica em conceitos de arquitetura.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;strong&gt;Composite Applications e Office Business Applications (OBA) &lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Mais uma palestra para abrir a mente, pelo menos a minha :-) Eu que até hoje trabalhei muito pouco com desenvolvimento na plataforma Office, pude ver como está fácil usar o Office como plataforma de desenvolvimento. Criar Ribbons, Forms Region e Task Panes está muito fácil e oferece uma experiência para o usuário incrível.&lt;/p&gt;&lt;p&gt;Muito conteúdo sobre o assunto, pode ser encontrado no blog do palestrante, &lt;a href="http://blogs.msdn.com/wcamb/" target="_blank"&gt;Waldemir Cambiucci&lt;/a&gt;.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Construindo Aplicações Windows Communication Foundation e Windows Workflow Foundation com Microsoft Visual Studio 2008&lt;/strong&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Mais uma palestra do Waldemir e mais um show de palestra. Inicialmente, essa palestra seria dada pelo Marcelo Uemura, desenvolvedor do Windows Workflow Foundation, mas por problemas de saúde ele não pôde comparecer.&lt;/p&gt;&lt;p&gt;A palestra começou com uma comparação bem engraçada, porém fundamental para o entendimento do WCF. O exemplo citado foi que no COM+ você tem um série de recursos que o servidor disponibiliza pra você e que você não precisa se preocupar com a configuração e no WCF você tem a liberdade de escolher cada um desses recursos, combinando vários deles, por exemplo: hosting, protocolos, encoders, comportamento de transações, concorrência e por aí vai, porém agora você vai precisar saber pra que serve cada um desses recursos para tirar o melhor proveito da plataforma.&lt;/p&gt;&lt;p&gt;Depois disso, foi passado uma visão geral da arquitetura do WCF, foi citado os principais componentes (contratos de dados e serviços, bindings, endpoints, behaviors) e como eles se relacionam e uma demo pra esclarecer melhor todo o conceito.&lt;/p&gt;&lt;p&gt;Em seguida, foi apresentado o Windows Workflow Foundation trabalhando como um consumidor do WCF e ficou bem claro a facilidade de desenhar processos de negócio com o WF. Um workflow de demonstração foi montado utilizando atividades palalelas, atividades condicionais e de código e algumas delas consumindo serviços WFC. &lt;/p&gt;&lt;p&gt;Uma palestra bem completa demonstrando a integração dos dois principais pilares do .NET Framework 3.0.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;strong&gt;Arquitetura de Infra-estrutura para a Web &lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Palestra dada por &lt;a href="http://blogs.msdn.com/gebara" target="_blank"&gt;Fernando Gebara&lt;/a&gt; que começou falando sobre a importância de tratar intranet, internet e extranet da mesma forma do ponto de vista de segurança, já que 80% dos ataques são de origens internas ou com a ajuda de alguém interno. &lt;/p&gt;&lt;p&gt;Comentou também sobre a diferença do conhecimento prévio dos usuários da inter, extra e intranet, já que conhecemos nossos usuários da intra e a extra, mas não da internet e com isso podemos aplicar role-based security para determinar o que estará disponível ou não para os usuários.&lt;/p&gt;&lt;p&gt;Foi comentado também da importância da padronização de hardware para a manutenção da rede e que a virtualização pode ser um grande aliado para a recuperação de máquinas rapidamente. E nessa discussão, citou um dado sobre um dos datacenter da Microsoft que deixou muita gente surpreso. Ele citou que existe um datacenter com mais de 60.000 computadores que são administrados apenas por 5 pessoas.&lt;/p&gt;&lt;p&gt;Foi uma palestra bastante teórica, mas que falou de pontos que parecem ser óbvios, mas que nem sempre damos a devida atenção.&lt;br /&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Desenvolvendo Soluções de BI: criação de dashboards e scorecards e o Microsoft Performance Point 2007&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;p&gt;Essa eu realmente caí de paraquedas. Eu estava agendado em um outra palestra, mas o tema sobre BI acabou me interessando e resolvi olhar um pouco pra esse mundo que não conheço praticamente nada. O que eu vi, foi um monte de siglas novas, produtos novos, conceitos que eu não sabia definir muito bem, mas que já estão na minha lista de estudos.&lt;/p&gt;&lt;p&gt;Inicialmente o Christiano Santos mostrou como está fácil criar indicadores no Excel 2007. Mostrou vários recursos da ferramenta para destacar células, apresentar setas de indicação, imagens customizadas de modo a deixar muito mais fácil a leitura dos dados.&lt;/p&gt;&lt;p&gt;Em seguida, fez a publicação desta planilha no Excel Services, um recurso que vêm com o Sharepoint Server 2007 e que permite a visualização da planilha na web. O interessante desse produto é que você pode escolher publicar a planilha inteira, escolher algumas worksheets ou até mesmo só alguns objetos da planilha que você deseja publicar. &lt;/p&gt;&lt;p&gt;Depois disso foi passado os serviços disponíveis no Sharepoint Server 2007 e alguns sites de demonstração apresentando dashboards, scorecards e um novo produto, o Microsoft PerformancePoint Server 2007 que pelo que deu pra entender é um sistema de gerenciamento empresarial que une monitoramento, análise e planejamento.&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;Bom galera, com isso finalizo o resumo do TechEd 2007 e agora os próximos posts deverão apronfundar nos temas que mais me chamaram a atenção durante o evento (Entity Framework, Visual Studio Tester Edition, Integração do Team System e Project Server) e algumas novidades que forem aparecendo pelo trabalho.&lt;/p&gt;&lt;p&gt;Um abraço&lt;/p&gt;&lt;p&gt;André Dias&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-9020034362467757092?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/9020034362467757092/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=9020034362467757092' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/9020034362467757092'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/9020034362467757092'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2007/12/resumo-teched-2007-dia-7.html' title='Resumo TechEd 2007 - Dia 7'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-8250435983250320334</id><published>2007-12-08T12:40:00.000-03:00</published><updated>2007-12-08T14:19:37.633-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='TechEd'/><category scheme='http://www.blogger.com/atom/ns#' term='Eventos'/><title type='text'>Resumo TechEd 2007 - Dia 6</title><content type='html'>Continuando a série Resumo TechEd 2007, vamos lá com a palestras do segundo dia:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Infra-estrutura para o Visual Studio Team System (VSTS) &lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Regis Gimenis deu um overview das principais features do Team System, citou os processos que o Team System traz por default (MSF for CMMi e MSF for Agile) e outros que podem ser adicionados, como o &lt;a href="http://www.scrumforteamsystem.com/" target="_blank"&gt;SCRUM&lt;/a&gt;. Explicou os principais tipos de works items (tasks, bugs) existentes e como eles estão relacionados a cada processo. Passou pelo portal do Projeto que é baseado no Sharepoint services e gerado automaticamente quando um projeto é criado no Team System. Junto com o portal do projeto são gerados dezenas de relatórios que permitem acompanhar work items, qualidade, testes. &lt;/p&gt;&lt;p&gt;Na parte de testes ele mostrou um pouco sobre como criar testes manuais e testes unitários, depois deu uma focada bem legal no Source Control e falou sobre checkout, checkin, branch e merge, além das políticas que podem ser associadas durante ao checkin e por fim alguns produtos que podem ser adicionados ao team system, como o &lt;a href="http://msdn2.microsoft.com/en-us/teamsystem/bb676728.aspx" target="_blank"&gt;Team System Web Access&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;A palestra teve muuuito conteúdo e pra quem não conhecia o produto foi um prato cheio. &lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Domain Specific Languages (DSL) com VSTS &lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Um assunto totalmente novo pra mim e que me agradou muito, não só pelo conteúdo técnico, mas pela forma divertida com que &lt;a href="http://www.afurtado.net/" target="_blank"&gt;André Furtado&lt;/a&gt; apresentou.&lt;/p&gt;&lt;p&gt;A palestra começou com o André explicando que todo mundo usa DSL no dia a dia e eu que achava que apenas coisas como o Class Diagram do Visual Studio era DSL, acabei descobrindo que até Cobol, LISP e o bom o e velho MS-DOS são exemplos de DSL, já que as DSLs podem ser visuais ou não.&lt;/p&gt;&lt;p&gt;Depois ele entrou em detalhes de quando devemos ou não utilizar a DSL e basicamente devemos utilizá-la quando iremos reutilizá-la em sistemas parecidos e por fim fez uma demo criando uma DSL para um jogo de quiz. &lt;/p&gt;&lt;p&gt;Pra fazer uma demo daquele tamanho, num TechEd com pouco mais de uma hora de duração, o cara tem que ser muito macho. &lt;/p&gt;&lt;p&gt;O ppt da palestra pode ser baixado &lt;a href="http://www.cin.ufpe.br/~awbf/download/dsl/DEV301_AFurtado.pdf" target="_blank"&gt;aqui&lt;/a&gt;. &lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;VSTS 2008 Test Edition e VSTS 2008 Test Load Agent &lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;A Patrícia Mantovani foi outra palestrante que me surpreendeu muito. Apresentou detalhes do Visual Studio Tester Edition que até então eu nem imaginava que existisse.&lt;/p&gt;&lt;p&gt;Além dos conhecidos testes unitários e testes manuais, a ferramenta oferece também testes web com gravação de "macros" para reprodução futura e na versão 2008 inclui o suporte a AJAX. Mostrou como fazer Databind com testes unitários. Ainda nos testes web, ela mostrou como fazer algumas customizações para deixar os testes mais inteligente e fechou com chave de ouro mostrado o teste de carga. &lt;/p&gt;&lt;p&gt;Durante essa demo ela simulou acessos simultaneos, utilizando varios tipos de distribuições de usuários, apresentou dezenas de gráficos fazendo com que o Visual Studio parecesse o Excel por um momento :-) e finalizou mostrando o Test Load Agent que é um utilitário que pode ser instalado em máquina da rede para literalmente BOMBARDEAR um servidor específico de teste. Muuuito legal!&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;ADO.NET Entity Framework VSTS 2008 &lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Vou tentar ser imparcial neste comentário porque o LINQ e o EF tem me decepcionado muito ultimamente :-)&lt;/p&gt;&lt;p&gt;O &lt;a href="http://blogs.msdn.com/luti/" target="_blank"&gt;Luciano Moreira&lt;/a&gt; fez uma excelente palestra mostrando a arquitetura do EF. Citou que o Beta 3 está previsto pra sair em breve, porém que não há uma data prevista de entrega do produto ainda. Falou também que Oracle e IBM estão trabalhando em conjunto com a Microsoft para liberar versões do LINQ para seus bancos de dados.&lt;/p&gt;&lt;p&gt;Além dessas informações que toda a comunidade que acompanha a evolução do LINQ busca, o Luciano mostrou exemplos de queries LINQ que deixou o pessoal que não conhecia de boca aberta e ao mesmo tempo desesperado quando mostrou os arquivos de mapeamento.&lt;/p&gt;&lt;p&gt;Após a palestra ele me disse uma coisa que me deixou intrigado. Que o Entity Framework não é um concorrente do NHibernate. Que há uma estratégia muito maior que isso que deverá integrar vários produtos e que o OR/M é só uma parte do Entity Framework. &lt;/p&gt;&lt;p&gt;Vou pesquisar melhor isso e postarei detalhes em breve.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Team Foundation Server e Project Server &lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;A última palestra do dia e a palestra que eu mais esperava do TechEd, não foi como eu imaginava. &lt;/p&gt;&lt;p&gt;O &lt;a href="http://marcusgarcia.spaces.live.com/" target="_blank"&gt;Marcus Garcia&lt;/a&gt; teve problemas com as máquinas virtuais que não subiram e a palestra virou praticamente uma mesa redonda. A palestra acabou valendo pelas discussões que surgiram e pela continuação dela na seção Ask The Experts onde pude tirar algumas dúvidas.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;ASK THE EXPERTS&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Foi o primeiro ano que participei que teve essa seção. Trata-se de dezenas de mesas onde funcionários da Microsoft, MVPs e especialistas de produtos / tecnologias se reunem para tirar dúvidas dos profissionais. &lt;/p&gt;&lt;p&gt;Eu acabei ficando na mesa do Team System onde tive oportunidade de conversar com algumas referencias Brasileira do produto: Fabio Camara, Igor Abade, Marcus Garcia e a Patrícia Mantovani.&lt;/p&gt;&lt;p&gt;Espero que tenha algo parecido em eventos futuros.&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;É isso galera, logo logo, vem o resumo do ultimo dia do Tech Ed.&lt;/p&gt;&lt;p&gt;Abraços&lt;/p&gt;&lt;p&gt;André Dias&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-8250435983250320334?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/8250435983250320334/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=8250435983250320334' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/8250435983250320334'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/8250435983250320334'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2007/12/resumo-teched-2007-dia-6.html' title='Resumo TechEd 2007 - Dia 6'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-4526626483606321714</id><published>2007-12-07T22:08:00.000-03:00</published><updated>2007-12-08T14:06:19.366-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='TechEd'/><category scheme='http://www.blogger.com/atom/ns#' term='Eventos'/><title type='text'>Resumo TechEd 2007 - Dia 5</title><content type='html'>Tudo o que é bom dura pouco e infelizmente com o TechEd não foi diferente. Foram 3 dias de muuuuita informação, muita palestra bacana, além de uma grande oportunidade pra fazer contatos e rever amigos.&lt;br /&gt;&lt;br /&gt;Eu gostei muito da variedade dos temas. Tivemos palestras de Arquitetura, Desenvolvimento, Banco de Dados, Windows, Office, BI. Tinha hora que tava até difícil de escolher em qual palestra ir devido aos temas serem super interessantes.&lt;br /&gt;&lt;br /&gt;Vou postar abaixo um resumo das palestras que vi no primeiro dia.&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Windows Server 2008 e SQL 2008 &lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Totalmente novo pra mim. Gostei muito das novas features do dois produtos, principalmente do HyperV, o novo produto de Virtualização da Microsoft. Foram citados ainda novidades na Instalação do Windows 2008, onde será possível instalar o Windows com apenas o Server Core, sem a necessidade de instalar a interface gráfica e gostei bastante também da nova feature do SQL 2008 que permite que eu defina políticas globais de configuração de banco de dados. Ficou muito fácil para o DBA identificar bancos fora dos padrões definidos pela empresa, até mesmo nomenclatura de tabelas e além de identificar a correção fica a apenas um click. Muito bom!&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Visual Studio 2008 &lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Novidades interessantes: Multi target. É possível compilar soluções em .NET 2.0, 3.0 e 3.5. Foram mostradas demos interessantes do LINQ e da integração com o Office 2007. Tá muito fácil criar addins para o Office agora. Só não gostei mais, porque já conhecia muitas das novidades do produto.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Unificando as Comunicações &lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Um show de apresentação. Foram apresentados cenários que é o sonho de qualquer pessoa. O gringo junto com o time do Brasil mostrou como a comunicação evoluiu, em seguida apresentou um vídeo mostrando a construção de uma casa num mundo totalmente conectado: Cliente, Arquiteto, Engenheiro e Forncedores trabalhando com Smartphones, Tablet PC, Surface, sistemas embarcados e garantindo que mudanças na planta fossem concluídas, enviadas para aprovação e material comprado em questão de horas.&lt;/p&gt;&lt;p&gt;Depois de ver o vídeo, fiquei pensando: "Será que falta muito para termos isso no Brasil?" Aí para a minha surpresa fizeram uma demo mostrando conferências com vídeos, integração do Communicator com telefones fixos e celulares. Tudo prontinho pra gente já começar a usar.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Por Dentro da Estratégia de Interoperabilidade da Microsoft &lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Mais um show de palestra. Não sou muito bom com nomes, mas se não me engano o palestrante foi o Roberto Prado, um cara que cuida da divisão Open Source da Microsoft. Um cara que usa Linux, Opera, frequenta eventos de Linux e por aí vai. Foi falando muito dos benefícios da adoção do OpenXML e da interoperabilidade dos produtos da Microsoft com produtos de outras empresas. Na minha opnião a melhor palestra do TechEd.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Aproveite melhor o seu Teched!&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Foi legal. Explicou como nasceu o TechEd, apresentaram os assuntos que seriam abordados, o que teria além das palestras, mas o que mais me chamou a atenção foi a forma que apresentaram. Ficou muito engraçado o bate bola que os dois palestrantes fizeram. Em alguns momentos eu até lembrava dos anúncios do Shoptime, onde o cara diz. "E não é só isso. Se você ligar nos próximos 10 minutos, ainda ganhará um super ..."&lt;/p&gt;&lt;p&gt;Bom .. é isso, em breve postarei o resumo dos outros dias.&lt;/p&gt;&lt;p&gt;Abraços&lt;/p&gt;&lt;p&gt;André Dias&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-4526626483606321714?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/4526626483606321714/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=4526626483606321714' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/4526626483606321714'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/4526626483606321714'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2007/12/resumo-teched-2007-dia-5.html' title='Resumo TechEd 2007 - Dia 5'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-6492223474687760568</id><published>2007-12-07T20:50:00.000-03:00</published><updated>2007-12-07T21:09:32.375-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Team System'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL'/><title type='text'>Version Control e SQL Management Studio</title><content type='html'>Uma dúvida muito comum nas palestras relacionadas ao Team System no TechEd 2007 foi sobre os clients do Version Control. Muitas pessoas queriam saber se é possível utilizar Version Control com Visual Basic 6, SQL Management Studio, Java, etc ..&lt;br /&gt;&lt;br /&gt;A resposta é SIM! A própria Microsoft liberou um produtinho chamado &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=87E1FFBD-A484-4C3A-8776-D560AB1E6198&amp;amp;displaylang=en" target="_blank"&gt;Visual Studio 2005 Team Foundation Server MSSCCI Provider&lt;/a&gt; que permite a utilização do Version Control através dos seguintes produtos:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Visual Studio .NET 2003 &lt;/li&gt;&lt;li&gt;Visual C++ 6 SP6 &lt;/li&gt;&lt;li&gt;Visual Visual Basic 6 SP6 &lt;/li&gt;&lt;li&gt;Visual FoxPro 9 SP1 &lt;/li&gt;&lt;li&gt;Microsoft Access 2003 SP2 &lt;/li&gt;&lt;li&gt;SQL Server Management Studio &lt;/li&gt;&lt;li&gt;Sparx Systems Enterprise Architect 6.1 &lt;/li&gt;&lt;li&gt;Sybase PowerBuilder 10.5 &lt;/li&gt;&lt;li&gt;Toad for SQL Server 2.0 &lt;/li&gt;&lt;/ul&gt;Pra quem usa o Java como plataforma, temos ainda o &lt;a href="http://www.teamprise.com/product/index.html" target="_blank"&gt;Teamprise&lt;/a&gt;. Esse produto é um plugin que permite conectar o Eclipse ao TFS. Não é free, mas já é uma solução.&lt;br /&gt;&lt;br /&gt;É isso aí, produto Microsoft gerenciando SDLC em muitas linguagens :-)&lt;br /&gt;&lt;br /&gt;[]s&lt;br /&gt;André Dias&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-6492223474687760568?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/6492223474687760568/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=6492223474687760568' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/6492223474687760568'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/6492223474687760568'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2007/12/version-control-e-sql-management-studio.html' title='Version Control e SQL Management Studio'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-2357389891190920035</id><published>2007-07-07T14:59:00.000-03:00</published><updated>2007-07-07T15:21:21.690-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Data Access'/><title type='text'>DLinq só funciona com SQL Server?</title><content type='html'>Tenho visto em alguns fóruns muitas pessoas afirmarem que o DLinq será utilizado especificamente para SQL Server. Embora essa afirmação seja verdadeira hoje, o DLinq dará suporte sim a outros bancos de dados.&lt;br /&gt;&lt;br /&gt;Segundo um &lt;a href="http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=324513&amp;amp;SiteID=1" target="_blank"&gt;post &lt;/a&gt;de Dinesh Kulkarni, Program Manager do Linq, a dificuldade de dar suporte ao Oracle e a outros bancos de dados é que não há nenhum DB realmente SQL-ANSI e mesmo que houvesse, vários bancos tem recursos específicos que devem ser tratados pelo próprio fabricante. Com isso, eles estão trabalhando em um provider model que permitirá ISVs e a própria comunidade escrever implementações para um banco de dados específico.&lt;br /&gt;&lt;br /&gt;Meu sentimento é que mesmo a Microsoft disponibilizando apenas um provider model, deveremos ter, junto com o lançamento do Linq, providers para os principais bancos de dados do mercado, como já ocorreu com outras versões do Visual Studio e o ADO.NET.&lt;br /&gt;&lt;br /&gt;[]s&lt;br /&gt;André Dias&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-2357389891190920035?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/2357389891190920035/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=2357389891190920035' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/2357389891190920035'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/2357389891190920035'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2007/07/dlinq-s-funciona-com-sql-server.html' title='DLinq só funciona com SQL Server?'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-1249034368342071327</id><published>2007-07-07T12:18:00.000-03:00</published><updated>2007-12-07T21:58:14.308-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Data Access'/><title type='text'>Um pouco mais sobre ADO Entity Framewrok</title><content type='html'>Como eu escrevi no post anterior, essa semana eu baixei o CTP de junho do Orcas para dar uma olhada no produto, na verdade, o meu real interesse é ver como está a evolução do LINQ e e em particular do ADO Entity Framework (EF).&lt;br /&gt;&lt;br /&gt;Pra quem não conhece, o EF será o novo framework de mapeamento ORM da Microsoft, uma espécie de concorrente do NHibernate.&lt;br /&gt;&lt;br /&gt;Bom, após analisar os exemplos do EF, confesso que fiquei muito confuso. Não entendi muito bem porque eu tinha que fazer o mapeamento tanto em arquivos XML e também decorar as minhas entidades (DTO, Model, etc) com vários atributos com as mesmas informações que já estavam no XML.&lt;br /&gt;&lt;br /&gt;Postei essa dúvida no fórum do MSDN (&lt;a href="http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1824146&amp;amp;SiteID=1" target="_blank"&gt;http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1824146&amp;amp;SiteID=1&lt;/a&gt; ) e algumas pessoas do time me responderam que é isso mesmo. A arquitetura do produto até agora te obriga a fazer uma herança na sua entidade, decorar suas propriedades com atributos e ainda por cima fazer o mapeamento com XML.&lt;br /&gt;&lt;br /&gt;Ok, ok.. O visual studio faz boa parte do trabalho pra você, mas e o tal dos conceitos de persistence ignorance, POCO? Poxa, eu não quero que o meu model fique fortemente acoplado com um framework. Alguns podem falar que é purismo, que é frescura, mas não é. Eu simplesmente quero deixar meu model, minhas entidades de negócio desacopladas pra poder usar um outro framework sem muitos problemas se eu quiser.&lt;br /&gt;&lt;br /&gt;No entanto, o pessoal do time de dev do produto disseram que a cada release eles estão trabalhando para chegar mais próximo do POCO (Plain Old CLR Objects), ou seja, uma classe .net que não herde de ninguém, não tenha nenhum atributo, umas classe pura e sem metadados. Isso é ótimo, mas me disseram também que isso não estará nem na primeira release que deve sair no meio de 2008.&lt;br /&gt;&lt;br /&gt;Legal, então vou ter que esperar até 2009 pra ter um framework da Microsoft pra ORM que aplique conceitos básicos de orientação a objetos e que faça o que muitos frameworks (como o NHibernate, por exemplo) já fazem há algum tempo?? É isso aí !!&lt;br /&gt;&lt;br /&gt;Estranho né?? Nem tanto, achei talvez uma explicação para isso. Parece que um dos Devs do produto não acha (ou pelo menos achava) isso importante e só começou a estudar isso agora, pois a comunidade está pedindo muuuito e ele achou que deveria ter uma razão pra isso :-)&lt;br /&gt;&lt;br /&gt;Vamos ao comentário dele: "&lt;em&gt;I have devoted real time to studying agile design principles and domain driven design........ Initially I thought that some of the requests for *complete* persistence ignorance were the products just of dogma rather than fully informed and reasoned arguments, but when so many people give such passionate feedback it was clear that I needed to investigate more before I could claim to have any sort of an informed opinion. The product of my research is that I am now truly convinced of the importance of complete persistence ignorance for some scenarios. As a result, the team is now working on a series of product changes aimed at ensuring that a later move to complete persistence ignorance will not be a fundamental breaking change.&lt;/em&gt;"&lt;br /&gt;&lt;br /&gt;O post completo pode ser lido em: &lt;a href="http://blogs.msdn.com/dsimmons/archive/2007/06/02/persistence-ignorance-ok-i-think-i-get-it-now.aspx" target="_blank"&gt;Persistence Ignorance: OK, I think I get it now.&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;Bom, pelo menos fico feliz que o time da Microsoft começou a olhar outras alternativas de arquitetura e estudar um pouco de Design Patterns. (Que coisa não??)&lt;br /&gt;&lt;br /&gt;Vou ficando por aqui esperando ansiosamente o próximo CTP pra ver o que teremos de melhoria no Entity Framework, mas enquanto não me convencerem que o EF é melhor, vou continuar com o bom e velho NHibernate, feito pela comunidade e com código aberto :-)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;André Dias&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-1249034368342071327?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/1249034368342071327/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=1249034368342071327' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/1249034368342071327'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/1249034368342071327'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2007/07/um-pouco-mais-sobre-ado-entity.html' title='Um pouco mais sobre ADO Entity Framewrok'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-5032107137936640497</id><published>2007-07-05T23:46:00.000-03:00</published><updated>2007-07-06T00:09:15.496-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Data Access'/><title type='text'>Entity Framework só depois do Orcas</title><content type='html'>Essa notícia é meio velhinha, mas acho que ainda é atual.&lt;br /&gt;&lt;br /&gt;Essa semana a MS liberou o CTP de Junho do Orcas e junto com ele novidades sobre o Entity Framework. Até aí legal, deu um trabalhinho pra instalar no Vista, mas depois de montar uma máquina virtual e instalar pela segunda vez, funcionou.&lt;br /&gt;&lt;br /&gt;Baixei os Samples do Entity Framework comecei a rodar e parece ser bem interessante. Fiquei com algumas dúvidas e numa das pesquisas nos fórums do MSDN descubro que o negócio só será lançado após o Orcas como um update lá pro meio de 2008.&lt;br /&gt;&lt;br /&gt;Será que é tão difícil assim construir um framework ORM? Se não estou enganado a MS começou a falar disso em 2001 num PDC onde o framework era chamado de "Orca", depois disso anunciaram o ObjectSpaces que viria no Visual Studio 2005. Chegaram até a adicionar no beta 1, mas removeram no Beta 2 e falaram que seria lançado com o WinFS.&lt;br /&gt;&lt;br /&gt;Aí mataram o projeto do ObjectSpaces, anunciaram que ele seria descontinuado e tempos depois anunciaram o LINQ e o tal do Entity Framework. Pensei eu: "Finalmente agora vou ter um framework da MS pra trabalhar com ORM".&lt;br /&gt;&lt;br /&gt;E não é que adiaram de novo... Olha a notícia aí:&lt;br /&gt;&lt;a href="http://blogs.msdn.com/adonet/archive/2007/04/28/ado-net-entity-framework-update.aspx" target="_blank"&gt;http://blogs.msdn.com/adonet/archive/2007/04/28/ado-net-entity-framework-update.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Tô vendo que vou continuar com o bom e velho Hibernate :-p&lt;br /&gt;&lt;br /&gt;Abraços&lt;br /&gt;André Dias&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-5032107137936640497?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/5032107137936640497/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=5032107137936640497' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/5032107137936640497'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/5032107137936640497'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2007/07/entity-framework-s-depois-do-orcas.html' title='Entity Framework só depois do Orcas'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3129980668747806900.post-2477580810788730786</id><published>2007-07-04T00:19:00.001-03:00</published><updated>2008-12-08T19:00:32.873-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Team System'/><category scheme='http://www.blogger.com/atom/ns#' term='Teste Unitário'/><title type='text'>Teste Unitário e Code Coverage com Visual Studio</title><content type='html'>&lt;p&gt;Ultimamente tenho visto muita gente falar sobre testes unitários, metodologias ágeis, garantia de qualidade, mas implementar o tal do teste unitário que é bom mesmo, são poucas empresas que conheço que fazem isso de verdade. &lt;/p&gt;&lt;p&gt;Quando digo que são poucas, não estou me refirindo a você abrir o Visual Studio, criar um projetinho de teste e criar um método simples para testar apenas o "caminho feliz" do seu método, estou falando de você planejar os seus testes unitários antes e criar vários métodos de testes para cobrir todas, ou pelo menos a maioria, das situações que o seu método possa executar. &lt;/p&gt;&lt;p&gt;Isso engloba em testar range de valores, parametros opcionais, se as exceções são levantadas corretamente e por aí vai. Se for preciso utlizar Mock Objects, ótimo, vamos fazer isso também, mas é extremamente importante que você faça métodos de testes que sejam eficientes e não apenas para dizer que está utilizando testes unitários na sua aplicação. &lt;/p&gt;&lt;p&gt;Um recurso muito útil presente no Visual Studio (edições pra Developer e Tester) é o Code Coverage. Esse recurso ligado junto com os testes unitários permite ao usuário acompanhar visualmente quais trechos do código foram testados ou não. &lt;/p&gt;&lt;p&gt;Vamos ver um exemplo de como ele funciona: &lt;/p&gt;&lt;p&gt;&lt;strong&gt;1. Vamos criar um projeto do tipo Class Library e adicionar uma classe Calculadora como o exemplo abaixo:&lt;/strong&gt;&lt;br /&gt;&lt;/p&gt;&lt;pre&gt;&lt;br /&gt;public class Calculadora&lt;br /&gt;{&lt;br /&gt;    public static float Dividir(float d1, float d2)&lt;br /&gt;    {&lt;br /&gt;        if (d2 == 0)&lt;br /&gt;        {&lt;br /&gt;            throw new DivideByZeroException();&lt;br /&gt;        }&lt;br /&gt;        else&lt;br /&gt;        {&lt;br /&gt;            return d1 / d2;&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public static int Soma(int a, int b)&lt;br /&gt;    {&lt;br /&gt;        return a + b;&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;strong&gt;2. Em seguida , vamos adicionar um projeto do tipo Test Project e adicionar uma classe chamada CalculadoraTest com o seguinte código:&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;[TestClass]&lt;br /&gt;public class CalculadoraTest&lt;br /&gt;{&lt;br /&gt;    [TestMethod]&lt;br /&gt;    public void DivisaoComumTeste()&lt;br /&gt;    {&lt;br /&gt;        float resultado = Calculadora.Dividir(6, 3);&lt;br /&gt;        float esperado = 2;&lt;br /&gt;&lt;br /&gt;        Assert.AreEqual(esperado, resultado);&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Veja que a classe de teste possui apenas um método e não está cobrindo a situação de divisão por zero, e nem o método Soma. Isso não quer dizer que o método não funcione, mas ele não foi testado.&lt;/p&gt;&lt;p&gt;Se rodarmos esse teste, teremos o seguinte resultado: &lt;/p&gt;&lt;p&gt;&lt;a href="http://1.bp.blogspot.com/_JQu5KsEkhSg/RosUvV-qS8I/AAAAAAAAJXk/UYD4HuOJRYI/s1600-h/test+window.JPG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5083179408004107202" style="CURSOR: hand" alt="" src="http://1.bp.blogspot.com/_JQu5KsEkhSg/RosUvV-qS8I/AAAAAAAAJXk/UYD4HuOJRYI/s320/test+window.JPG" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;Até aí nada de muito interessante, a janela mostra apenas que o teste foi executado com sucesso. O grande barato é quando ligamos o Code Coverage o colamos os testes unitários para rodar junto.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Para habilitar o Code Coverage, vá no arquivo localtestrun.testrunconfig da sua solução e você verá a seguinte tela: &lt;/p&gt;&lt;a href="http://2.bp.blogspot.com/_JQu5KsEkhSg/RosT5l-qS7I/AAAAAAAAJXc/9gR1TvGnvqg/s1600-h/setup+coverage.JPG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5083178484586138546" style="CURSOR: hand" alt="" src="http://2.bp.blogspot.com/_JQu5KsEkhSg/RosT5l-qS7I/AAAAAAAAJXc/9gR1TvGnvqg/s320/setup+coverage.JPG" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Marque o Assembly CodeCoverageSample.dll e mande rodar os testes novamente. Quando terminar os testes, acesse o menu Test/Windows/Code Coverage Results e veja que coisa linda :-) &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;a href="http://1.bp.blogspot.com/_JQu5KsEkhSg/RosT5V-qS6I/AAAAAAAAJXU/hHS_ifDHjEE/s1600-h/coverage.JPG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5083178480291171234" style="CURSOR: hand" alt="" src="http://1.bp.blogspot.com/_JQu5KsEkhSg/RosT5V-qS6I/AAAAAAAAJXU/hHS_ifDHjEE/s320/coverage.JPG" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;O Visual Studio te dá a porcentagem de código testado agrupados por métodos, classes, namespaces e assemblies e além disso marca no código por quais trechos ele passou ou não. &lt;/p&gt;&lt;p&gt;Dessa forma fica muito fácil visualizar que temos que escrever mais métodos de testes para testar a situação da divisão por zero e para garantir que o método de soma está funcionando corretamente.&lt;/p&gt;&lt;p&gt;Agora que já conhecemos o Code Coverage, é só definirmos uma meta para o nosso projeto (80, 90, 100% de cobertura) e brigar com o seu gerente pra ele alocar tempo para você criar métodos de testes que cubram todo o seu código :-) &lt;/p&gt;&lt;p&gt;Um grande abraço &lt;/p&gt;&lt;p&gt;André Dias&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;pre&gt;&lt;/pre&gt;&lt;pre&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3129980668747806900-2477580810788730786?l=blog.andredias.net' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.andredias.net/feeds/2477580810788730786/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3129980668747806900&amp;postID=2477580810788730786' title='2 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/2477580810788730786'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3129980668747806900/posts/default/2477580810788730786'/><link rel='alternate' type='text/html' href='http://blog.andredias.net/2007/07/teste-unitrio-e-code-coverage-com.html' title='Teste Unitário e Code Coverage com Visual Studio'/><author><name>Andre Dias</name><uri>http://www.blogger.com/profile/06374042418695944896</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_JQu5KsEkhSg/RosUvV-qS8I/AAAAAAAAJXk/UYD4HuOJRYI/s72-c/test+window.JPG' height='72' width='72'/><thr:total>2</thr:total></entry></feed>
