A Microsoft anunciou, no início de junho, o lançamento do Visual Studio 2013 e Team Foundation Server 2013 para ainda este ano. O anúncio foi realizado pelo Brian Harry durante a sua palestra no TechEd (EUA).
Acredito que você está recebendo essa notícia com um grande susto e se perguntando “já?”. Não sei se você está acompanhando, mas o Visual Studio 2012 introduziu um novo modelo de liberação de versões com atualizações frequentes a cada 3 meses, sem a necessidade de esperar o produto final para ter acesso a todas as funcionalidades.
Com essa nova estratégia de entregas rápidas, recebemos esse grande anúncio. Uma versão de testes será liberada até o final desse mês durante o evento Build, assim como outros anúncios complementares dessa grande onda de atualização na plataforma de desenvolvimento.
Quem acompanha meus textos já deve ter percebido a minha empolgação toda vez que falo do Team Foundation Service (TF Service), justamente pelo fato de você ter já acesso prioritário às atualizações. Muitas das novidades que vão aparecendo no Visual Studio já são implementadas antecipadamente no TF Services.
Nos últimos anos tivemos uma grande virada na indústria de software, buscando respostas mais ágeis nos projetos o que resultou em um crescimento grande por gestão ágil de projeto, e nós tivemos uma ótima resposta da Microsoft com o TFS 2012 e seu suporte a projetos ágeis, portanto gostaria de anunciar agora, publicamente para vocês, que essa grande onda está apenas no inicio e já está aparecendo para quem está utilizando o TFS Service, o novo conceito de “‘Agile Portfolio Management” destinada a complementar a visão corporativa para os projetos ágeis.
Agile Portfolio Management
A proposta com essa nova visão mais enterprise é justamente oferecer um suporte complementar para gestão de projetos ágeis em projetos maiores organizações. Hoje já conseguimos implementar os requisitos no formato de User Story/Backlog Item e organizar o backlog por times. No entanto, nas próximas atualizações, conseguiremos ir além, gerenciando mais alto nível no escopo de Epic, Feature de formar que outras pessoas possam observar evolução em visões mais simplificadas sem a necessidade de olhar para todo o backlog.
Como toda a informação no TFS é baseada em Work Items e relacionadas entre si, então será muito fácil criar relatórios complementares e dashboard de apoio à gestão baseados no backlog e seus variados níveis sem a necessidade de ferramentas como adicionais como o Project Server.
Lightweight code commenting
Outro item legal que já podemos observar é o novo formato de comentário no código que, inclusive, já funciona no TF Service. Esse recurso é bem parecido com o “Code View” e é bem possível que no futuro possa resultar em algum tipo de integração. Na prática você pode abrir uma linha e registrar a sua opinião, sem que isso interfira no código, sendo apenas um comentário em paralelo.
Test case management
Para os profissionais de teste a Microsoft oferece a ferramenta Test Manager, destinada a ser o “Visual Studio” da área de qualidade de software. Com o Team Foundation Service já temos acesso a uma prévia da nova versão dessa ferramenta completamente web, permitindo criar planos de testes, cenários e casos de testes e depois controlar o andamento do mesmo. É importante lembrar que os dados são salvos no Team Foundation Server como Work Item do tipo caso de teste e caso apareça um bug durante a excursão ele será registrado como work item do tipo bug.
Heads up display
Uma das funcionalidades que mais me chamou a atenção foi justamente esse novo “popup” denominado de Heads up display, permitindo obter informações estratégicas sobre um determinado método bastando encostar o cursor. Ele vai além de tudo o que você conhece. Imagina um cenário onde você tem testes unitários implementados validando esse método e ao encostar o cursor você terá as informações desses testes unitários relacionados, permitindo ter “Business Intelligence (BI)” desse código fonte navegando nos detalhes. Prepare-se para uma nova era em desenvolvimento de software.
Team Room
O Team Room como o próprio nome já diz é uma nova sala de conferência online como ferramenta adicional de colaboração para o time de desenvolvimento. Diferente de um chat tradicional, no Team Room todas as conversas são gravadas e a proposta principal é funcionar como um registro para todos os participantes dos projetos, estando presentes fisicamente ou externamente, possam ter uma visão dos assuntos tratados nas reuniões de projeto. Você pode relacionar inclusive Work Itens durante a conversa tornando a reunião mais interativa. Esse é mais um ponto importante que pode evoluir bastante usando as principais tecnologias da atualidade.
Release Management
A Microsoft anunciou a compra de um projeto chamado InRelease que será incorporado ao ciclo de ferramentas do Visual Studio chegando em um bom momento, permitindo controlar a publicação de versões passo a passo que fazíamos anteriormente, implementando diversas customizações de Build. O Team Build se encarrega de compilar, rodar os testes, gerar a versão e o Release Management de complementar à libração publicando vários ambientes como desenvolvimento, homologação e testes, buscando aprovações para que todo o processo de liberação siga um fluxo de trabalho.
Cloud load testing
Desde o lançamento do Visual Studio 2005 já temos presente o recurso teste carga que hoje faz parte do Visual Studio Ultimate. A ideia é justamente gravar um cenário de navegação em uma aplicação e depois disparar requisições para monitorar a resposta em momentos de grande demanda, ou seja, garantir que o seu serviço realmente suporte um grande número de usuários.
Você certamente conhece algum caso de serviço que caiu justamente no momento que você estava utilizando. Nós podemos usar os agentes locais para disparar as requisições, principalmente agora usando o Team Foundation Service e a plataforma do Windows Azure você vai publicar no Cloud o seu teste e ele vai executar usando a infraestrutura da nuvem, permitindo um grande número de usuários virtuais, simulando um verdadeiro teste de carga.
Essa é mais uma grande evolução e serve para mostrar o verdadeiro valor de uma plataforma de nuvem, que é justamente dispensar o gerenciamento de infraestrutura e ambientes virtuais, oferecendo de forma simples e prática no modelo serviço.