continuous delivery com tfs e inrelease [mvp showcast 2013 - dev - gerenciamento de projetos &...

36
SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT © 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft. MVP ShowCast 2013 Continuous Delivery com TFS e InRelease André Dias Visual Studio ALM CQO - Chief Quality Officer – BR Soluções Integradas @AndreDiasBR

Upload: mvp-showcast

Post on 15-Jun-2015

3.056 views

Category:

Technology


3 download

DESCRIPTION

Palestra: Continuous Delivery com TFS e InRelease Palestrante: André Dias Realização: 02/12/2013 20h Trilha: Gerenciamento de projetos & Application Lifecycle Management Sessão: Desenvolvimento Evento: MVP ShowCast 2013 Site: http://mvpshowcast.azurewebsites.net

TRANSCRIPT

Page 1: Continuous Delivery com TFS e InRelease [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

MVP ShowCast 2013

Continuous Delivery com TFS e InRelease

André Dias

Visual Studio ALM

CQO - Chief Quality Officer – BR Soluções Integradas

@AndreDiasBR

Page 2: Continuous Delivery com TFS e InRelease [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

MVP ShowCast 2013

Continuous Delivery com TFS e InReleaseRelease Management for Visual Studio 2013

André Dias

Visual Studio ALM

CQO - Chief Quality Officer – BR Soluções Integradas

@AndreDiasBR

Page 3: Continuous Delivery com TFS e InRelease [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

André Dias

♦1º ALM Ranger da América Latina

♦CQO – BR Soluções Integradas

♦Foi consultor de ALM da Microsoft Brasil (MCS)

♦Atuou em projetos em Dublin para o Governo da Irlanda

♦16 anos de experiência com Desenvolvimento de SW

Page 4: Continuous Delivery com TFS e InRelease [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

Onde aprender ALM?

♦ Academia Virtual (MVA) Certificação TFS♦ http://www.microsoftvirtualacademy.com/training-courses/guia-de-estudo-certifica-o-tfs-

2012-70-496-

♦ Academia Virtual (MVA) Testes♦ http://www.microsoftvirtualacademy.com/training-courses/visual-studio-para-teste-de-

software

♦ Comunidade ALM Online♦ https://www.facebook.com/groups/almonline/

♦ Comunidade ALM Brasil♦ http://www.almbrasil.com.br/

♦ Onde aprender ALM na Faixa?♦ http://blog.andredias.net/onde-aprender-alm-na-faixa/

♦ Blog André Dias♦ http://blog.andredias.net

Page 5: Continuous Delivery com TFS e InRelease [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

Agenda

Page 6: Continuous Delivery com TFS e InRelease [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

Agenda

Page 7: Continuous Delivery com TFS e InRelease [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

Entendendo a diferença

Page 8: Continuous Delivery com TFS e InRelease [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

Entendendo a diferença

♦Compilação do Código

♦Transformação do código fonte em binário

♦F5 do Visual Studio

♦Exemplos: MSBuild, NAnt, Ant

Page 9: Continuous Delivery com TFS e InRelease [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

Entendendo a diferença

♦Servidor Dedicado para Build

♦Compilação do Código do Time

♦Obtém o fonte de um controlador de versão

♦Independência de Pessoas e Estações de Trabalho

♦Melhora o Gerenc. de Dependências

♦Permite Agendamento de Builds

♦Sistema de Relatórios

♦Mecanismo de Eventos

Page 10: Continuous Delivery com TFS e InRelease [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

Entendendo a diferença

♦Precisa de um Build Server

♦Disparo Automático de Build a cada alteração de código

♦Foco em encontrar erros de integração o mais cedo possível

♦Build Rápida e Auto Testável

♦Incentiva Commits Frequentes

♦Facilidade em obter os binários

Page 11: Continuous Delivery com TFS e InRelease [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

uma

PAUSApara reflexão

Page 12: Continuous Delivery com TFS e InRelease [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

Meu software está

Integrado, Compilado, Testado e Sem Bugs Conhecidosmas até entrar em produção

seu Business Value = 0

Page 13: Continuous Delivery com TFS e InRelease [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

Entendendo a diferença

♦Um passo além da CI

♦Evitar estoque de código

♦Foco em reduzir o “Cycle Time”

♦Cada commit implanta uma nova build em produção

♦Pipeline 100% Automatizado

♦Requer diversos tipos de testes e alto percentual de cobertura

Page 14: Continuous Delivery com TFS e InRelease [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

outra

PAUSA

para reflexão

Page 15: Continuous Delivery com TFS e InRelease [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

Será que é isso mesmo que eu quero?

Page 16: Continuous Delivery com TFS e InRelease [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

Quantas versões do meu produto eu terei

que suportar?

Page 17: Continuous Delivery com TFS e InRelease [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

Como que fica o plano de Marketing e Treinamento alinhado com Entregas

Frequentes?

Page 18: Continuous Delivery com TFS e InRelease [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

Por outro lado, eu vou atender os Early Adopters, Melhorar o Feedback e a Implantação é

100% automatizada

Page 19: Continuous Delivery com TFS e InRelease [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

Não dá pra colocar um controle nesse tal de ContinuousDeployment e eu decido quando vai ou não para

produção?

Page 20: Continuous Delivery com TFS e InRelease [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

Continuous Delivery

O estado da arte

Page 21: Continuous Delivery com TFS e InRelease [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

Entendendo a diferença

♦É o Continuous Deployment alinhado com a Estratégia da Empresa

♦Ambiente de produção a um clique de distância

♦Confia na automação e na colaboração de todos os envolvidos (Dev, Tester, DBA, SysAdmins, Usuários, Stakeholders)

Page 22: Continuous Delivery com TFS e InRelease [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

É isso!

Quero Continuous Delivery implantado na empresa até

semana que vem!

Page 23: Continuous Delivery com TFS e InRelease [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

Lembre-se

Continuous Delivery é a etapa final de uma “Cadeia Ágil”

Se a base da cadeia não estiver bem estabelecida, CD vai mais atrapalhar

do que ajudar.

Page 24: Continuous Delivery com TFS e InRelease [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

Agenda

Page 25: Continuous Delivery com TFS e InRelease [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

Como fazemos Deployment hoje?

♦Toneladas de Scripts♦ MSBuild

♦ MSDeploy

♦ Powershell

♦ .BAT

♦ MSBuild Extensions

♦ Team Build Extensions

♦ ALM Rangers Build Customization Guidance

♦ Customização de Build Process Template

Page 26: Continuous Delivery com TFS e InRelease [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

E com o Release Management for VS2013?

♦Você aproveita tudo o que você já sabe. Porém, fica muito mais simples!

♦Eles apenas encapsula e integra tudo o que temos disponível hoje.

♦Adiciona um workflow para controlar a promoção das builds entre os ambientes.

♦E o melhor, sem precisar escrever uma linha de código!

Page 27: Continuous Delivery com TFS e InRelease [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

E com o Release Management for VS2013?

Release Management forVisual Studio 2013

Page 28: Continuous Delivery com TFS e InRelease [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

Agenda

Page 29: Continuous Delivery com TFS e InRelease [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

Release Management for VS 2013

♦Ferramenta para Gestão de Servidores, Ambientes, Componentes, Fluxos de Implantação, Fluxos de Aprovação e Deployments.

♦Antigo InRelease

♦Produto comprado recentemente pela Microsoft

♦Ainda não está bem integrado ao TFS♦ Instalação a parte, contas e permissões espalhadas, configurações

duplicadas, UX não padronizada

♦Mas ainda assim é melhor do que tudo que temos atualmente.

Page 30: Continuous Delivery com TFS e InRelease [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

Topologia Release Management

♦Release Management Client for Visual Studio 2013♦ Cliente WPF para operar o Release Management. É a interface comum

utilizada por todos os usuários envolvidos no deployment pipeline.

♦Release Management Server for Team Foundation Server 2013♦ É o coração do Release Management. É uma combinação de Web +

Windows Services que expoe os serviços utilizados por outros componentes.

♦Microsoft Deployment Agent 2013♦ Serviço instalado nos servidores onde a solução será implantada.

♦Deployment Agent Tools♦ Ferramentas auxiliares para encapsular Scripts de Criação de Sites, Cópia de

Arquivos, Iniciar VMs no Azure, entre outros.

Page 31: Continuous Delivery com TFS e InRelease [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

Topologia Release Management

Page 32: Continuous Delivery com TFS e InRelease [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

Topologia Release Management

Page 33: Continuous Delivery com TFS e InRelease [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

Agenda

Page 34: Continuous Delivery com TFS e InRelease [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

Roteiro

♦Apresentar o Release Management for Visual Studio 2013

♦Criar uma Definição de Build

♦Definir um Pipeline de Implantação

♦Configurar os Componentes do Pipeline (Site, Banco, etc)

♦Criar um Site no IIS

♦Mudar o Web.Config para Cada Ambiente

♦Promover a Build entre Ambientes sem uma linha de código

Page 35: Continuous Delivery com TFS e InRelease [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

Demos

Page 36: Continuous Delivery com TFS e InRelease [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

Perguntas & Respostas