
Nesta terceira parte daremos continuidade em nossa configuração básica para gerenciamento do nosso restaurante PacktDiner.
Criando o Product Backlog Items (PBIs)
A gerente Meeta quer que nos foquemos em dois PBIs, nomeados [Place Order] e [Calculate Bill]. Isto vai permitir ao garçom efetuar o pedido, usando o histórico de pedidos do usuário e calcular a conta mais tarde, usando o histórico do cálculo de conta do usuário.
Novamente no portal Web Access do TFS (acessado através do Team Explorer do Visual Studio), na área Home do portal, clique no botão [Product Backlog Item]
Preencha a tela conforme exemplificado abaixo
Crie outro PBI, chamado Calculate Bill
Associando PBI x Sprint
Deveremos agora associar um item de trabalho (o primeiro PBI para desenvolvimento) no primeiro Sprint. Para isto, no portal, clique no link [Work]
Expanda a opção [Shared Queries] e clique em [Product Backlog].
Neste ponto você pode visualizar os dois PBIs na lista da direita. Clique com o botão direito no PBI [Place Order] e mova a iteração para o Sprint Corrente (1-1)
Salve as alterações
Se você se deparar com o erro da tela abaixo (TF51011) você terá que manualmente alterar todas as referências ao Sprint com o nome errado, alterando corretamente, salvando e rodando a query para resolver este "bug" do produto, conforme exemplifica a tela abaixo. Não se esqueça de alterar em todos os itens (dentro de Shared Queries -> Current Sprint)
Criando Sub-Tarefas
Cada PBI deve ser desmembrado em tarefas, pois os desenvolvedores irão trabalhar com tarefas. Para isto, acesse a opção [New -> Task] da área [Work] do portal
E cadastre uma nova tarefa para a [Sprint 1-1] da forma mostrada abaixo
Salve e crie mais duas, com os mesmos dados, mas com os nomes [Implement Business Logic] e [Implement Storage Service]
Após estes passos crie outra tarefa chamada [Add test cases] com o campo Activity como [Requirements].
Configurando a estrutura Source Control
Isto se faz no Visual Studio. Voltando ao Team Explorer, selecione a opção Home, depois o link [Source Control Explorer] abaixo do nó [Pending Changes].
Precisamos associar nossa estrutura de fontes a um diretório físico em nossa máquina. Clique no link [Not mapped] para isto, e associe a um diretório de sua escolha (por exemplo d:\projetos\PacktDiner)
Clicando no botão [Map] você receberá a pergunta abaixo. Responda [Não] a esta pergunta
Agora sim clique no botão [New Folder]. Crie a estrutura exatamente como ilustrado abaixo
Depois clique em Pending Changes, no Team Explorer
Agora realize o Check In, adicionando um comentário, por exemplo, "pastas adicionadas" e clique no botão [Check In]
Criando a aplicação WaiterApp no Visual Studio
Até o momento criamos a estrutura da aplicação no TFS e o mapeamento em um diretório físico na nossa máquina (no meu caso D:\Projetos\PacktDiner\WaiterApp\main). Porém este diretório está vazio certo. Não existe uma aplicação lá dentro. Vamos rapidamente criar, usando o Template do Visual Studio para aplicações ASP.NET MVC, por exemplo.
No Visual Studio escolha a opção de Menu File -> New -> Project. Note na imagem abaixo que devemos criar o projeto dentro da pasta [src].
Pronto. Não vamos, é claro, criar telas e regras de negócio para atender a aplicação do restautante, pois o objetivo deste artigo é controlar a aplicação no TFS.
Agora precisamos adicionar todos os arquivos criados na pasta [src] ao TFS, pelo Visual Studio. Na janela [Source Control Explorer] pressione [Add Files to Source Control]
Na janela Team Explorer, sob a aba Home, Pressione o link Pending Changes e adicione um comentário apropriado (Waiter App adicionada, por exemplo) e clique no botão Check In.
E como passo final, feche a solução, dê duplo clique no nome da solução [WaiterApp.sln] no Source Control Explorer e crie o link da sua solução no Source Control.
Clique Sim
Selecione uma linha por vez e clique no botão [bind] para criar a conexão
Clique em Check Out para começar a trabalhar nos arquivos
Instalando e configurando o sistema de BUILD
Falta agora apontar nossa aplicação a um processo automático de Build. Normalmente se aponta o projeto para um servidor separado de Build. Mas para nosso tutorial criaremos este processo no mesmo servidor do TFS.
Para isto, inicie novamente o [Setup] de instalação do TFS (VS2012.3 TFS Express enu.iso).
Escolha a opção [Configure Team Foundation Build Service]
Botão Next
Botão Next
Integração contínua de BUILD
Vamos trabalhar agora com este processo de Build no Visual Studio. Entre no [Team Explorer - Build]
Clique em [New Build Definition] e preencha de acordo com as telas de exemplo
Para a configuração de [Source Settings] altere esta aba exatamente conforme mostrado abaixo
No próximo passo (Build Defaults) crie na sua máquina um diretório chamado [Drops]
Torne este diretório [compartilhado]
Atente para o fato de que a conta a qual o serviço de build está rodando possua permissão na pasta Drops (conta [Network Service]). Adicione o caminho do diretório compartilhado no campo [Stating Location]
E por último, o Process Build
Salve a definição de Build
Botão direito no Build criado e escolha [Queue a new build]
Pronto. Agora faça uma alteração em algum arquivo, depois efetue o Check-In, o qual será levado para a aba de Pending Changes. Adicione um comentário e conclua o Check-In. Vá para a aba Builds e note que um novo Build foi inicialdo automaticamente. Após um pequeno processo de espera, o processo termina (muda para verde) indicando um Build bem sucedido.
E eis que surge no diretório Drops sua aplicação automaticamente compilada e pronta para ser implantada em produção!
Dando continuidade ao artigo anterior sobre TFS, vamos agora criar nosso primeiro projeto. O projeto tem como objetivo disponibilizar uma aplicação para os garçons de um restaurante (Packt Diner) de forma a automatizar o processo de ordens de pedido e pagamentos. Chamaremos a aplicação de WaiterApp. Para o projeto teremos dois desenvolvedores no time, Jakob e Terje, e um gerente de projeto, Meeta.
Encontrando e conectando nosso TFS Server 2012
Após a instalação do TFS Server, nos é fornecida uma URL para acesso e conexão. Se não lembramos esta URL, podemos abrir o Console do TFS para recuperar esta informação, indo em [Todos os Programas -> Microsoft Visual Studio Team Foundation Server 2012].
Abaixo de [Application Tier] selecione [Team Project Collections] e note a URL para DefaultCollection.
Abra agora o Visual Studio 2012 e habilite-o para usar o TFS (Tools -> Options -> Source Control -> Current Source Control Plugin).
Depois acesse o Menu [Team] e selecione [Connect To Team Foundation Server].
Na área [Team Explorer] clique no link [Connect]. Na tela de conexão, selecione o nome no servidor TFS. Vai notar que este assistente já vai trazer o nome do computador local. É o que precisamos no momento. Selecione esta opção e clique no botão [Connect].
Criando o Team Project
No Team Explorer, clique no nome [Home] para abrir um Menu de opções. Clique na opção [Projects And My Teams -> New Team Project]
Agora preencha as próximas telas conforme exemplos abaixo:
Criando o Team
Como próximo nível, precisamos criar a Equipe que vai trabalhar neste projeto (Jakob, Terje e Meeta). Faremos isto através do link [Web Access] presente no Team Explorer do Visual Studio.
Com o portal do TFS aberto, clique em [Manage All Members] e adicione os três membros que citei acima.
Só tem um pequeno problema, sua máquina não possui os usuários (Jakob, Terje e Meeta). Portanto, crie-os no seu Windows, através do Control Panel -> User Accounts -> Manage Users Accounts, e adicione-os.
Obs: Lembrando que na tela do portal do TFS você deve digitar o nome do usuário que criou no seu Windows, mesmo se não for encontrado pelo [picklist] ao qual está digitando, pois você pode adicionar usuários que não pertencem ao [domínio] em que se encontra atualmente.
Estrutuando as Áreas para Categorização e Plano de Release
Chegou o momento de definição das áreas - que é a categorização de nosso trabalho - associando uma área para o nível mais superior (para a aplicação em si que estamos fazendo) e duas sub-áreas, na qual a gerente Meeta quer que desenvolvamos, chamada [Ordering - Pedido] e [Payment]. Ela também quer dois releases do produto, o que faremos no recurso chamado [iteration].
Desta forma, novamente na tela Web Access do TFS, criaremos primeiro nossas Áreas, clicando no link [Configure work areas...]
Adicione uma área filha chamada WaiterApp, a qual será o nome de nossa aplicação. Abaixo disto, adicione mais duas áreas filhas chamadas Ordering e Payment.
Desmarque o checkbox padrão, não se preocupando com a mensagem de "erro" que aparecerá. Na sequência, marque o checkbox para WaiterApp. Agora esta aplicação se torna a área padrão.
Agora devemos configurar o plano de Release da aplicação. Feche a tela de Áreas e clque na opção [Configure Schedule and Iterations] da página principal do portal
Vamos agora preparar o plano para múltiplas aplicações, adicionando um novo filho abaixo do nó raiz, nomeando como WaiterApp.
Referente a nossa estratégia de release, temos duas opções
1 - Fazer como que todos os desenvolvimentos sigam a mesma agenda, usando neste caso o padrão Microsoft.
2 - Deixar que cada desenvolvimento tenha sua própria agenda. Neste caso, siga nosso exemplo e adicione os nomes das aplicações abaixo da pasta raiz.
Clique e arraste os itens [Release 1] e [Release 2] para dentro do item [WaiterApp]
Exclua as outras Releases (botão direito no item para excluir) e Sprints desnecessárias, e deixe nossa tela de Iterations exatamente como abaixo:
Referente as datas dos Sprints, você pode colocar a sua, com um intervalo de 2 semanas, como sugestão.
Também mude a opção de Backlog para o item [WaiterApp]
Na terceira parte deste artigo daremos continuidade nas configurações básicas do nosso projeto.
[]s

Em substituição ao "velho" Visual Source Source, podemos dizer que o TFS é mais uma Plataforma de Gerenciamento de Projetos do que apenas uma ferramenta de versionamento de códigos.
Ela pode ser configurada, adaptada e extendida para se adequar as suas necessidades em um grau elevado.
Inciaremos neste artigo com a instalação da versão Express 2012 do produto, que nos permite utilizar muitos recursos interessantes, de forma que aprenderemos:
- Version Control
Que se refere aos fundamentos deste controle, o uso de ChangeSets, CheckIns e History
Como recuperar Versions, Annotations, Labels
Como criar um Branch e Merge do nosso código
- Work Items
Os fundamentos deste Item de Trabalho e como usá-los
Como criar Work Items
Querying Work Items
Transferir Work Items para outras ferramentas, como Excel
- Build
Indispensável! Veremos como usar
Também como Monitorar
Sendo o TFS a mais nova versão da Microsoft em sistemas de ALM (Application Lifecycle Management) ela tem portanto o objetivo de governar todo este aspecto de desenvolvimento de software, incluindo o gerenciamento de requerimentos, de projetos, desenvolvimento, testes e implantação com qualidade.
Um outro aspecto importante é que esta plataforma pode ser acessada de diversas formas, por exemplo, pelo Agile Web Access, Visual Studio, Office, etc.
A imagem abaixo mostra isto de forma clara:
Pensar no fato de que podemos integrar, através desta ferramenta, todos os envolvidos no projeto, deste o solicitante de uma tarefa (usando por exemplo a ferramenta Agile Web Access), que passa pelo arquiteto e gerente do projeto (podendo usar o Excel)que por sua vez repassa a tarefa para um desenvolvedor (recebendo a tarefa diretamente no Visual Studio) e que, ao compilar e efetuar um CheckIn o Sistema de Build do TFS pode detectar isto e inicial o processo automático de Build da aplicação para testes finais, parece um cenário excelente!...
Mas falando em instalação, apesar das diversar formas existentes, usaremos neste artigo a Básica, até porque estamos usando a versão Express do produto. Na versão paga existe ainda a forma de instalação [Standard/Advanced] que utiliza os recursos adicionais como SQL Reporting Services para relatórios, SQL analylis Services para uso de DataWareHouse e Sharepoint Foundation para uso de Portal. Existe ainda uma outra forma de instalação, que na verdade já está instalada, que é a versão TFS Azure, servida pela Microsoft.
Instalação Básica
É a instalação em um computador local, podendo ser instalada em um Windows 7 ou 8; também em um Windows Server 2008 ou superior.
Para tanto, comece efetuando o download do instalador. Neste link podemos executar e ou baixar uma ISO de instalação. Com a iso preparada, rode o arquivo tfs_express.exe.
Após reiniciar a máquina, a tela de Configuration Center aparece para auxiliar-nos na instalação final do produto, juntamente com:
- a instalação do SQL Express 2012 - se não existir;
- existindo uma versão anterior o wizard efetuará um Upgrade
- ou usando uma instalação paga existente (2008 R2 ou 2012)
Se você se deparar com o erro abaixo, na qual falhou o upgrade do SQL Express para 2012, terá que efetuar o Upgrade [Manual] do SQL Express e voltar a instalar o TFS.
Para efetuar o Upgrade para o SQL Express 2012
- Primeiro instale o SQL Server 2008 Service Pack 3
- E siga os passos deste blog
Voltando a nossa instalação do TFS
No console do TFS podemos revisar a instalação e efetuar diversas alterações:
No próximo artigo criaremos nosso primeiro projeto pelo TFS - Parte 2/3
Ref: Team Foundation Server 2012 Starter, by Jakob Ehn / Terje Sandrstron - Packt Publishing
[]s