VS Application Lifecycle Management (vNext)

Visual Studio Application Lifecycle Management (vNext)A Microsoft tem tido uma preocupação muito grande com os desenvolvedores de software nos últimos 10 anos sempre procurando oferecer um Road Map adiantado de evolução da plataforma de desenvolvimento de forma a oferecer a comunidade de desenvolvedores uma visão antecipada de todas as tendências e investimentos. O ciclo de tecnologia hoje está cada vez mais curto e exigindo lançamentos muito rápidos e não é uma ação da Microsoft isolada e sim de toda a velocidade do mercado conectado e global.

 

Com a divulgação dos planos da próxima versão do Visual Studio nós temos a possibilidade de nos programarmos para testarmos com antecedência todas as novidades e decidirmos com segurança o momento certo de adotar ou não determinada tecnologia. Outro ponto muito importante é como você saber bem antes o que terá de novidade sempre permitindo projetar suas soluções conforme o caminho de evolução da plataforma de desenvolvimento. Isso é uma garantia importante também que o ecossistema está funcionando e evoluindo para cada vez oferecer novas soluções de tecnologia que visam aperfeiçoar o seu negócio.

Nesse momento o que está mais em alta é a plataforma de Application Lifecycle Management (ALM) formada principalmente pelas ferramentas: Visual Studio, Team Foundation Server, Test Professional, Team Build que juntas a um conjunto de boas práticas integram o dia a dia de um projeto de desenvolvimento compartilhando informações, gerenciando os projetos e  integrando a gestão da qualidade de software tornando o processo cada vez mais ágil, seguro e gerenciável aderente aos principais padrões do mercado.

 

O primeiro grande passo programado sem dúvida é a disponibilização do Team Foundation Server rodando dentro da plataforma de Cloud Computing do Windows Azure que passa transportar todos os benefícios da computação nas nuvens para o seu projeto que não precisará ter um servidor local e nem se preocupar com infraestrutura, instalações físicas, backup e configurações. Além disso, quando pensamentos na integração do projeto você terá servidores de alta disponibilidade para disponibilizar a geração de Builds ultrarrápidas favorecendo cada vez mais a implementação de integração continua em uma velocidade surpreendente.

 

Às vezes eu paro para imaginar o recurso “Gated Check-In” no Cloud cuja proposta é executar todas as validações da geração de versão que podemos fazer no servidor de Build antes de salvar o código na linha de produção. Na prática ao fazer um Check-in o seu código fonte é movido para um local intermediário para ser compilado e submetido às politicas de Check-In como (Code Analysis, Unit Test, Code Coverage e Validação de arquitetura) e caso seja aprovado é publicado na  linha principal ou se falhar é devolvido ao desenvolvedor.

 

Já faz anos alguns que a Microsoft anunciou em um dos eventos internos o seu interesse em investir no abrangente mercado de agilidade focando em SCRUM como principal metodologia. Alguns anos depois isso se tornou evidente desde o MSF 5.0 até o próprio Visual Studio SCRUM que foi um template de processo criado explicitamente para ser 100% compatível com todos os termos e padrões adotados no SCRUM.

 

Hoje com o crescimento da adoção de práticas ágeis usando SCRUM como principal framework em empresas pequenas, médias e grandes só mostra que a Microsoft fez o investimento certo. Tenho tido a oportunidade de compartilhar essa experiência por todo o Brasil conversamos com clientes dos mais variados tamanhos e compartilhando experiências fenomenais com a adoção do SCRUM em conjunto com o Team Foundation Server em uma visão que chamamos de “AGILE ALM” unificando a gestão ágil com todas as práticas de engenharia e colaboração oferecidas pelo uso em conjunto com o Team Foundation Server tornando o processo ágil e integrado.

 

Gerenciando o Backlog

imageA primeira das melhorias que já podemos acompanhar nesse momento é a nova interface web de acesso ao Team Foundation Server que nessa tela de exmplo apresenta uma visão base de qualquer projeto baseado no SCRUM que é o nosso Backlog onde o Product Owner (PO) vai administra o valor de negócio do projeto adicionando, editando itens e priorizando conforme a evolução da sua visão.

 

Preparando o Sprint Backlog

image

Durante a reunião  ‘Sprint Planning” o time vai capturar os itens do Backlog para que possam implementar no Sprint. Esse conjunto de itens nós chamamos de Sprint Backlog e no Visual Studio seria como mover os Work Itens para uma outra área vinculando eles a uma interação. Com a nova visualização e itens estimados podemos comparar com a capacidade do time para o mesmo escolha a quantidade de itens conforme conseguem se comprometer.

 

 

 

Scrum Task Board
image

Mas dentre as todas essas novidades a que mais me chama a atenção é justamente essa nova visualização eletrônica dos PostIt. Na prática para que já conhece o Team Foundation Server eles são registros de Work Itens. Quando você arrasta ele mudar o status pode exemplo para iniciado ou pronto e já coloca vinculado ao seu usuário. Com isso o seu Burndown já é atualizado automaticamente além de diversos outros relatórios. Mas a parte mais importante é que ninguém dá empresa precisa e na sua sala para saber como está evoluindo um Sprint e indo mais longe podemos no momento do Check-In vincular um PostIt desse ao código fonte entregue documento o mesmo para qualquer consulta futura.

 

 

 

StoryBoard Assistant
image

O StoryBoard Assistant é um novo plugin que está sendo criado para rodar dentro do PowerPoint oferecendo um caminho simples e integrado para a construção de requerimentos e prototipação. Com ele será muito mais fácil estabelecer a comunicação com o cliente principalmente para remover uma barreira muito comum de entendimento sobre o que está sendo pedido e o que realmente vai ser entregue. Com essa ferramenta baseada em uma interface rica você terá os recursos suficiente para construir a visão da aplicação usando o conceito de ‘mockup’.

 

 

Feedback
image

Obter Feedback de uma atividade é a base de qualquer projeto principalmente se ele for um projeto ágil e achei muito legal essa nova ferramenta para que os usuários possam avaliar uma aplicação e então usando recursos da mesma registrarem como está sendo a sua experiência. É a melhor forma de acabar com o famoso telefone sem fio onde cada um fala uma coisa. Acho que vocês sabem muito bem o que estou falando.

 

 

 

 

 

Agile Quality Assurance
image

Desde o Visual Studio Team System 2005 quando a Microsoft passou a ter uma ferramenta de Unit Test dentro do Visual Studio que venho conversando com a comunidade de desenvolvedores em todo o Brasil e empresas alertando sobre a importância de orientarmos o nosso desenvolvimento de software focando em testes. Com um Visual Studio 2008 a Microsoft passou a oferecer o recurso de teste unitário diretamente na versão Professional. Esse ano de 2011 já foi um marco muito importante para min em ver vários clientes nossos iniciando novos projetos diretamente nos testes unitários utilizando Test Driven Development (TDD) como padrão para todos novos projetos e mais impressionar é ver que os mesmos já perceberam o quanto sai econômico investir em qualidade desde o início.

 

Hoje no Vsiual Studio 2010 já temos um amplo suporte (Unit Test,Code Coverage, Code Metrics, Code Analysis, Profiling, Intellitrace, Manual Test, Load Test,Coded UI Test) com tecnologia de ponta para aplicar na informatização da qualidade de software do projeto.

A grande novidade será em aprimorar o suporte ao unit testing first, refactor  exploratory testing tornando o desenvolvimento ágil cada vez mais integrado apoiado pelo servidor de Build. Outro recurso fundamental introduzido no Visual Studio 2010 é o Test Impact Analysis que apresenta para os desenvolvedores quais testes unitários foram impactados com aquela modificação.

Outras novidades que se integram perfeitamente ao nosso ciclo de desenvolvimento é a nova ferramenta de Code Review para permitir que o time comente as linhas de código e o Code Clone Analysis que vai varrer seu código em busca de códigos duplicados. Que novidade interessante você deve está imaginado nesse momento. Será mais uma grande ferramenta de impacto para acabar com aqueles códigos de telas replicados e forçamos o maior uso da reutilização.

 

Para mais informações:
Visual Studio vNext- Application Lifecycle Management whitepaper
Agile Project Management in Visual Studio ALM V.Next

[],
Ramon Durães
Especialista em desenvolvimento de software
MVP, Visual Studio ALM
PSD, Professional Scrum Master
PSD, Professional Scrum Developer
CSM, Certified ScrumMaster