quinta-feira, janeiro 17, 2008

Consultando a versão do Team System e Estendendo o Trial

Consultando o Blog do Brian Harry, 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.

É 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.



A ferramenta está disponível para download no blog do Brian ou se preferir, clique aqui para fazer o download.

Divirta-se :-)

Abraços
André Dias

Como alterar o Team Foundation Server no Project - Parte 2

Mês passado, eu publiquei um post sobre como alterar o servidor do Team System no MS Project 2007 / Excel .

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 Team System Web Access e temos também o Excel e o Project.

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 :-)

Como citado anteriormente, publiquei um post 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.

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 Power Tools.

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.

Um abraço
André Dias

Migrando Team System 2005 para Team System 2008

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.

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.

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.

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.

Inicialmente fizemos a migração do Sharepoint Services 2.0 para o Sharepoint Services 3.0 utilizando esse o artigo TN1501: Configuring Windows SharePoint Services 3.0 on the Visual Studio 2005 Team Foundation Server Application Tier.

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 Team Foundation Installation Guide for Visual Studio Team System 2008.

Depois disso fizemos uma instalação do zero utilizando quatro servidores novos:
1) Team Foundation Application Server
2) Team Foundation Database Server
3) Team Foundation Build Server
4) Sharepoint Server 2007

Essa instalação multi-server também pode ser encontrada no Installation Guide do TS2008.

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 How to: Move Your Team Foundation Server from One Hardware Configuration to Another.

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.

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.

Um abraço
André Dias

quarta-feira, dezembro 19, 2007

Números do Team System na Microsoft

Visitando o Blog 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:

  • Projetos no Team Foundation Server: 1.355 (taxa de crescimento de >100 novos projetos/mês)

  • Usuários Ativos: 8.452 (grupos que já usam TFS: MSIT, DevDiv, SQL, Office, Windows, MSCOM e Windows Live/MSN)

  • Work Items: 1.254.266

  • Arquivos de Código-Fonte: 27.311.195 (isso mesmo, mais de 27 milhões de arquivos-fonte!)

Os números foram enviados pelo Joe Schwetz, Group Manager do time de TFS.

Abraços
André Dias

Entity Framework para Oracle, DB2 e outros bancos

Há alguns meses, eu publiquei um post 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.

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:


  • Core Lab - fornecendo drivers para Oracle, MySQL, PostgreSQL e SQLite

  • IBM - fornecendo drivers para IBM DB2 data server e Informix Dynamic Server (IDS)

  • MySQL AB - fornecendo drivers para MySQL

  • Npgsql - fornecendo drivers para PostgreSQL database versões 7.3+ e 8.x

  • OpenLink Software - 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

  • Phoenix Software International - fornecendo drivers para SQLite databases

  • Sybase - fornecendo drivers para SQL Anywhere databases

  • VistaDB Software - fornecendo drivers para to VistaDB databases

  • Firebird - fornecendo drivers para Firebird

Pena que alguns deles são pagos, mas acredito que teremos em breve bons providers free.

Abraços
André Dias

domingo, dezembro 16, 2007

Está realmente mais fácil desenvolver software?

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.

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.

Bons tempos! Eu era feliz e não sabia!

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?

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.

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?).

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?

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.

É, a cada dois anos eu aprendo um monte de tecnologias novas para resolver problemas que as tecnologias do passado diziam que resolveria :-)..

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!!!

Viva a tecnologia :-p

Abraços
André Dias