SlideShare uma empresa Scribd logo
1 de 34
Levando um negócio
inovador, baseado em
outsourcing, ao continuous
delivery, com automação e
cloud services.
Welington Zanelato
System Manager
wzanelato@conectcar.com
ConectSys
O sistema nervoso
da ConectCar
ConectSys
ConectSys
•
•
•
•
•
ConectSys
• 42 Windows Services
• 11 web services
• 5 Web Sites
• Distribuídos em 9 servidores
Caixa preta
Posse dos ativos
Infraestrutura no Azure
 As máquinas do TFS serão hospedas no
Windows Azure
 As máquinas necessitam estar inseridas
no domínio da ConectCar
 A máquina do TFS Application Tier
precisa estar exposta na internet para
permitir acesso externo, para isto será
necessário um subdomínio do tipo:
tfs.conectcar.com
 Para acesso ao TFS os usuários
utilizarão contas do Active Directory,
terceiros necessitarão ter usuários
ativos no Active Directory para ter
acesso ao TFS
Build ServerData Tier
Team Foundation ClientApplication Tier
Active Directory
Infraestrutura no Azure
Processo de entrega e validação
Processo de entrega de software
Gestorde
configuração
ProjectOwnerAnalistaDesenvolvedor
Analistade
testes
Usuáriochave
Selecionar
Demanda
Abrir branchs
Analise da demanda
Artefatos
Desenvolver
demandas
Artefatos
Testes desistema
Passou nos
testes?
Testes funcionais
Evidência
s
Não
Implanta em
homologação
Passou nos
testes?
Merge dos fontes
para Main
Sim
Implanta em
integração
Roda testes
gravados
Passou nos
testes?
Corrige erros de
integração
Aplica Label
Implanta em
produção
Abrir GMUD
Não
Check-in
TFS-ConectCar
Processo de entrega e validação
Processo de entrega e validação
Complexidade operacional
• Operação, comercial e
financeiro
• Correções, melhorias e
projetos
• 36 Projetos em um ano
Complexidade operacional
Complexidade operacional
Complexidade operacional
Desenvolvimento paralelo
Banco de dados como código
Processo de entrega e validação
Processo de entrega de demandas (Melhorias e Projetos)
Gestorde
configuração
FábricaAutomaçãoUsuáriochave
Desenvolver
demandas /
Resolver bugs
Executa testes de
sistema
Passou nos
testes?
Homologa
demandas
Não
Entrega demanda
desenvolvida
Sim
Homologada?
Sim
Inicia iteração/
projeto
Compila e executa
análise estática de
código
Inicia processo de
homologação
Aprova instalação
em homologação
Instala versão no
ambiente de
homologação
Aprova demandas
desenvolvidas
Não
Demandas
aprovadas?
Sim
Liberação de
versão
Não
Processo de entrega e validação
Liberação de versão
IntegradorComitêAutomação
Gestorde
configuração
Infra
Analistasde
negócio
Fábricas
Demandas
aprovadas
Seleciona demandas
para a próxima
versão
Realiza o merge das
demandas na
Main / Correção
Solicita fechamento
da versão
Compila e executa
análise estática de
código
Instala versão no
ambiente de
integração
Executa testes de
regressão na versão
Sim Aprova a versão
Planeja a liberação
da versão e uso da
janela de mudança
Passou nos
testes?
Não Diagnostica erros
[Erro em código]
[Conflito em Requisitos]
Resolve conflito em
requisitos
Solicita instalação
da aplicação
Instala aplicação em
produção
Instala alterações
em banco dedados
Executa testes
fumaça
Confirma liberação
da versão
Notifica
interessados
Versão instalada
corretamente?
Sim
Não
Rollback
Versão em
produção
Realiza merge para
cada branch ativo
Branchs atualizados
Automação
Automação
Automação
Homologação sob demanda
Homologação sob demanda
Cadência de entrega
• Modularizado e com baixo acoplamento
• Suporte à falhas
Refatorar o sistema
Automação de testes
• Aumentar a cobertura dos teste unitários
• Automatizar testes funcionais
Análise automática de código
• Métricas de código
• Padrões de desenvolvimento
Monitoramento em tempo real
• Uso da aplicação
• Performance
• Problemas
Obrigado!

Mais conteúdo relacionado

Semelhante a Levando um negócio inovador baseado em outsourcing ao Continuous Delivery, com automação e Cloud Services.

System Center Configuration Manager 2012 Sp1
System Center Configuration Manager   2012 Sp1System Center Configuration Manager   2012 Sp1
System Center Configuration Manager 2012 Sp1Flavio Honda
 
DevOps na AWS: Construindo Sistemas para Entregas Rápidas - DEV301 - Sao Pau...
DevOps na AWS: Construindo Sistemas para Entregas Rápidas -  DEV301 - Sao Pau...DevOps na AWS: Construindo Sistemas para Entregas Rápidas -  DEV301 - Sao Pau...
DevOps na AWS: Construindo Sistemas para Entregas Rápidas - DEV301 - Sao Pau...Amazon Web Services
 
Paralelize seus testes web e mobile para ter feedbacks mais rápidos
Paralelize seus testes web e mobile para ter feedbacks mais rápidosParalelize seus testes web e mobile para ter feedbacks mais rápidos
Paralelize seus testes web e mobile para ter feedbacks mais rápidosElias Nogueira
 
Uma visão geral sobre a plataforma de aplicações
Uma visão geral sobre a plataforma de aplicaçõesUma visão geral sobre a plataforma de aplicações
Uma visão geral sobre a plataforma de aplicaçõesMarkus Christen
 
Desvendando a Plataforma de Serviços Windows Azure
Desvendando a Plataforma de Serviços Windows AzureDesvendando a Plataforma de Serviços Windows Azure
Desvendando a Plataforma de Serviços Windows AzureLucasRomao
 
Testando sua aplicação asp.net mvc de forma automatizada de ponta a ponta
Testando sua aplicação asp.net mvc de forma automatizada de ponta a pontaTestando sua aplicação asp.net mvc de forma automatizada de ponta a ponta
Testando sua aplicação asp.net mvc de forma automatizada de ponta a pontatdc-globalcode
 
[Portfólio Acadêmico] [FIT] Mapas de navegação, lista de tarefas e fluxograma...
[Portfólio Acadêmico] [FIT] Mapas de navegação, lista de tarefas e fluxograma...[Portfólio Acadêmico] [FIT] Mapas de navegação, lista de tarefas e fluxograma...
[Portfólio Acadêmico] [FIT] Mapas de navegação, lista de tarefas e fluxograma...Rafael Kanaoka
 
Application Insights
Application InsightsApplication Insights
Application InsightsCDS
 
[Portfólio Acadêmico] [FIT] Mapas de navegação, lista de tarefas e fluxograma...
[Portfólio Acadêmico] [FIT] Mapas de navegação, lista de tarefas e fluxograma...[Portfólio Acadêmico] [FIT] Mapas de navegação, lista de tarefas e fluxograma...
[Portfólio Acadêmico] [FIT] Mapas de navegação, lista de tarefas e fluxograma...Rafael Kanaoka
 
Windows Server 2008 R2 Hyper-V - Visão Geral Tecnica
Windows Server 2008 R2 Hyper-V - Visão Geral TecnicaWindows Server 2008 R2 Hyper-V - Visão Geral Tecnica
Windows Server 2008 R2 Hyper-V - Visão Geral TecnicaFabio Hara
 
Hyper-V - avançado
Hyper-V - avançadoHyper-V - avançado
Hyper-V - avançadoFabio Hara
 
DevOps aplicado à AWS - DEM07 - Sao Paulo Summit
DevOps aplicado à AWS -  DEM07 - Sao Paulo SummitDevOps aplicado à AWS -  DEM07 - Sao Paulo Summit
DevOps aplicado à AWS - DEM07 - Sao Paulo SummitAmazon Web Services
 
DevOps aplicado à AWS - DEM07 - Sao Paulo Summit
DevOps aplicado à AWS -  DEM07 - Sao Paulo SummitDevOps aplicado à AWS -  DEM07 - Sao Paulo Summit
DevOps aplicado à AWS - DEM07 - Sao Paulo SummitAmazon Web Services
 
Phprs meetup - deploys automatizados com gitlab
Phprs   meetup - deploys automatizados com gitlabPhprs   meetup - deploys automatizados com gitlab
Phprs meetup - deploys automatizados com gitlabJackson F. de A. Mafra
 
BluDotNet - Conhecendo o Team Foundation Server 2010
BluDotNet - Conhecendo o Team Foundation Server 2010BluDotNet - Conhecendo o Team Foundation Server 2010
BluDotNet - Conhecendo o Team Foundation Server 2010Rafael Leonhardt
 
DevOps na AWS: Construindo Sistemas para Entregas Rápidas
DevOps na AWS: Construindo Sistemas para Entregas RápidasDevOps na AWS: Construindo Sistemas para Entregas Rápidas
DevOps na AWS: Construindo Sistemas para Entregas RápidasAmazon Web Services LATAM
 
Microsoft ALM = Produtividade
Microsoft ALM = ProdutividadeMicrosoft ALM = Produtividade
Microsoft ALM = ProdutividadeAdriano Bertucci
 
Azure e suas vantagens (Palestra 1)
Azure e suas vantagens (Palestra 1) Azure e suas vantagens (Palestra 1)
Azure e suas vantagens (Palestra 1) Marcus Garcia
 
Keynote Visual Studio Summit 2016
Keynote Visual Studio Summit 2016Keynote Visual Studio Summit 2016
Keynote Visual Studio Summit 2016Ramon Durães
 

Semelhante a Levando um negócio inovador baseado em outsourcing ao Continuous Delivery, com automação e Cloud Services. (20)

System Center Configuration Manager 2012 Sp1
System Center Configuration Manager   2012 Sp1System Center Configuration Manager   2012 Sp1
System Center Configuration Manager 2012 Sp1
 
DevOps na AWS: Construindo Sistemas para Entregas Rápidas - DEV301 - Sao Pau...
DevOps na AWS: Construindo Sistemas para Entregas Rápidas -  DEV301 - Sao Pau...DevOps na AWS: Construindo Sistemas para Entregas Rápidas -  DEV301 - Sao Pau...
DevOps na AWS: Construindo Sistemas para Entregas Rápidas - DEV301 - Sao Pau...
 
Paralelize seus testes web e mobile para ter feedbacks mais rápidos
Paralelize seus testes web e mobile para ter feedbacks mais rápidosParalelize seus testes web e mobile para ter feedbacks mais rápidos
Paralelize seus testes web e mobile para ter feedbacks mais rápidos
 
Uma visão geral sobre a plataforma de aplicações
Uma visão geral sobre a plataforma de aplicaçõesUma visão geral sobre a plataforma de aplicações
Uma visão geral sobre a plataforma de aplicações
 
Desvendando a Plataforma de Serviços Windows Azure
Desvendando a Plataforma de Serviços Windows AzureDesvendando a Plataforma de Serviços Windows Azure
Desvendando a Plataforma de Serviços Windows Azure
 
Testando sua aplicação asp.net mvc de forma automatizada de ponta a ponta
Testando sua aplicação asp.net mvc de forma automatizada de ponta a pontaTestando sua aplicação asp.net mvc de forma automatizada de ponta a ponta
Testando sua aplicação asp.net mvc de forma automatizada de ponta a ponta
 
[Portfólio Acadêmico] [FIT] Mapas de navegação, lista de tarefas e fluxograma...
[Portfólio Acadêmico] [FIT] Mapas de navegação, lista de tarefas e fluxograma...[Portfólio Acadêmico] [FIT] Mapas de navegação, lista de tarefas e fluxograma...
[Portfólio Acadêmico] [FIT] Mapas de navegação, lista de tarefas e fluxograma...
 
Application Insights
Application InsightsApplication Insights
Application Insights
 
[Portfólio Acadêmico] [FIT] Mapas de navegação, lista de tarefas e fluxograma...
[Portfólio Acadêmico] [FIT] Mapas de navegação, lista de tarefas e fluxograma...[Portfólio Acadêmico] [FIT] Mapas de navegação, lista de tarefas e fluxograma...
[Portfólio Acadêmico] [FIT] Mapas de navegação, lista de tarefas e fluxograma...
 
Windows Server 2008 R2 Hyper-V - Visão Geral Tecnica
Windows Server 2008 R2 Hyper-V - Visão Geral TecnicaWindows Server 2008 R2 Hyper-V - Visão Geral Tecnica
Windows Server 2008 R2 Hyper-V - Visão Geral Tecnica
 
Hyper-V - avançado
Hyper-V - avançadoHyper-V - avançado
Hyper-V - avançado
 
DevOps@Scale [Portuguese]
DevOps@Scale [Portuguese]DevOps@Scale [Portuguese]
DevOps@Scale [Portuguese]
 
DevOps aplicado à AWS - DEM07 - Sao Paulo Summit
DevOps aplicado à AWS -  DEM07 - Sao Paulo SummitDevOps aplicado à AWS -  DEM07 - Sao Paulo Summit
DevOps aplicado à AWS - DEM07 - Sao Paulo Summit
 
DevOps aplicado à AWS - DEM07 - Sao Paulo Summit
DevOps aplicado à AWS -  DEM07 - Sao Paulo SummitDevOps aplicado à AWS -  DEM07 - Sao Paulo Summit
DevOps aplicado à AWS - DEM07 - Sao Paulo Summit
 
Phprs meetup - deploys automatizados com gitlab
Phprs   meetup - deploys automatizados com gitlabPhprs   meetup - deploys automatizados com gitlab
Phprs meetup - deploys automatizados com gitlab
 
BluDotNet - Conhecendo o Team Foundation Server 2010
BluDotNet - Conhecendo o Team Foundation Server 2010BluDotNet - Conhecendo o Team Foundation Server 2010
BluDotNet - Conhecendo o Team Foundation Server 2010
 
DevOps na AWS: Construindo Sistemas para Entregas Rápidas
DevOps na AWS: Construindo Sistemas para Entregas RápidasDevOps na AWS: Construindo Sistemas para Entregas Rápidas
DevOps na AWS: Construindo Sistemas para Entregas Rápidas
 
Microsoft ALM = Produtividade
Microsoft ALM = ProdutividadeMicrosoft ALM = Produtividade
Microsoft ALM = Produtividade
 
Azure e suas vantagens (Palestra 1)
Azure e suas vantagens (Palestra 1) Azure e suas vantagens (Palestra 1)
Azure e suas vantagens (Palestra 1)
 
Keynote Visual Studio Summit 2016
Keynote Visual Studio Summit 2016Keynote Visual Studio Summit 2016
Keynote Visual Studio Summit 2016
 

Mais de especificacoes.com

Implantação de um modelo maduro de operação na plataforma B2B.
Implantação de um modelo maduro de operação na plataforma B2B.Implantação de um modelo maduro de operação na plataforma B2B.
Implantação de um modelo maduro de operação na plataforma B2B.especificacoes.com
 
Transformando a experiência dos times de DEV, OPS & BIZ nos Sistemas Financei...
Transformando a experiência dos times de DEV, OPS & BIZ nos Sistemas Financei...Transformando a experiência dos times de DEV, OPS & BIZ nos Sistemas Financei...
Transformando a experiência dos times de DEV, OPS & BIZ nos Sistemas Financei...especificacoes.com
 
O Caminho ruma à TI de Alta Performance.
O Caminho ruma à TI de Alta Performance.O Caminho ruma à TI de Alta Performance.
O Caminho ruma à TI de Alta Performance.especificacoes.com
 
Superando os obstáculos na implantação de uma metodologia corporativa para ge...
Superando os obstáculos na implantação de uma metodologia corporativa para ge...Superando os obstáculos na implantação de uma metodologia corporativa para ge...
Superando os obstáculos na implantação de uma metodologia corporativa para ge...especificacoes.com
 
Keynote - DevOps and the bottom line.
Keynote - DevOps and the bottom line.Keynote - DevOps and the bottom line.
Keynote - DevOps and the bottom line.especificacoes.com
 
Do war room ao DevOps, uma jornada de APM.
Do war room ao DevOps, uma jornada de APM.Do war room ao DevOps, uma jornada de APM.
Do war room ao DevOps, uma jornada de APM.especificacoes.com
 
ALM Practices - O Diretor de Serviços da Allen apresenta um case sobre reduçã...
ALM Practices - O Diretor de Serviços da Allen apresenta um case sobre reduçã...ALM Practices - O Diretor de Serviços da Allen apresenta um case sobre reduçã...
ALM Practices - O Diretor de Serviços da Allen apresenta um case sobre reduçã...especificacoes.com
 
ALM Practices - Diferenciando por cultura sem perder o padrão corporativo
ALM Practices - Diferenciando por cultura sem perder o padrão corporativo ALM Practices - Diferenciando por cultura sem perder o padrão corporativo
ALM Practices - Diferenciando por cultura sem perder o padrão corporativo especificacoes.com
 
ALM Practices - O Modelo DevOps aplicado ao Valor Pro, uma plataforma crítica...
ALM Practices - O Modelo DevOps aplicado ao Valor Pro, uma plataforma crítica...ALM Practices - O Modelo DevOps aplicado ao Valor Pro, uma plataforma crítica...
ALM Practices - O Modelo DevOps aplicado ao Valor Pro, uma plataforma crítica...especificacoes.com
 
ALM Practices - Gestão de Releases e Configuração de aplicações corporativas ...
ALM Practices - Gestão de Releases e Configuração de aplicações corporativas ...ALM Practices - Gestão de Releases e Configuração de aplicações corporativas ...
ALM Practices - Gestão de Releases e Configuração de aplicações corporativas ...especificacoes.com
 
ALM Practices - Cultura da entrega diária com EVDnC
ALM Practices - Cultura da entrega diária com EVDnCALM Practices - Cultura da entrega diária com EVDnC
ALM Practices - Cultura da entrega diária com EVDnCespecificacoes.com
 
ALM Practices - Modern Applications Development and its impact on ALM
ALM Practices - Modern Applications Development and its impact on ALM ALM Practices - Modern Applications Development and its impact on ALM
ALM Practices - Modern Applications Development and its impact on ALM especificacoes.com
 
ALM Practices - Reestabelecendo o nível de serviço e construindo um Programa ...
ALM Practices - Reestabelecendo o nível de serviço e construindo um Programa ...ALM Practices - Reestabelecendo o nível de serviço e construindo um Programa ...
ALM Practices - Reestabelecendo o nível de serviço e construindo um Programa ...especificacoes.com
 
ALM Practices - Devops para grandes Organizações
ALM Practices - Devops para grandes OrganizaçõesALM Practices - Devops para grandes Organizações
ALM Practices - Devops para grandes Organizaçõesespecificacoes.com
 
ALM Practices - Construindo uma estratégia Corporativa de ALM
ALM Practices - Construindo uma estratégia Corporativa de ALMALM Practices - Construindo uma estratégia Corporativa de ALM
ALM Practices - Construindo uma estratégia Corporativa de ALMespecificacoes.com
 

Mais de especificacoes.com (15)

Implantação de um modelo maduro de operação na plataforma B2B.
Implantação de um modelo maduro de operação na plataforma B2B.Implantação de um modelo maduro de operação na plataforma B2B.
Implantação de um modelo maduro de operação na plataforma B2B.
 
Transformando a experiência dos times de DEV, OPS & BIZ nos Sistemas Financei...
Transformando a experiência dos times de DEV, OPS & BIZ nos Sistemas Financei...Transformando a experiência dos times de DEV, OPS & BIZ nos Sistemas Financei...
Transformando a experiência dos times de DEV, OPS & BIZ nos Sistemas Financei...
 
O Caminho ruma à TI de Alta Performance.
O Caminho ruma à TI de Alta Performance.O Caminho ruma à TI de Alta Performance.
O Caminho ruma à TI de Alta Performance.
 
Superando os obstáculos na implantação de uma metodologia corporativa para ge...
Superando os obstáculos na implantação de uma metodologia corporativa para ge...Superando os obstáculos na implantação de uma metodologia corporativa para ge...
Superando os obstáculos na implantação de uma metodologia corporativa para ge...
 
Keynote - DevOps and the bottom line.
Keynote - DevOps and the bottom line.Keynote - DevOps and the bottom line.
Keynote - DevOps and the bottom line.
 
Do war room ao DevOps, uma jornada de APM.
Do war room ao DevOps, uma jornada de APM.Do war room ao DevOps, uma jornada de APM.
Do war room ao DevOps, uma jornada de APM.
 
ALM Practices - O Diretor de Serviços da Allen apresenta um case sobre reduçã...
ALM Practices - O Diretor de Serviços da Allen apresenta um case sobre reduçã...ALM Practices - O Diretor de Serviços da Allen apresenta um case sobre reduçã...
ALM Practices - O Diretor de Serviços da Allen apresenta um case sobre reduçã...
 
ALM Practices - Diferenciando por cultura sem perder o padrão corporativo
ALM Practices - Diferenciando por cultura sem perder o padrão corporativo ALM Practices - Diferenciando por cultura sem perder o padrão corporativo
ALM Practices - Diferenciando por cultura sem perder o padrão corporativo
 
ALM Practices - O Modelo DevOps aplicado ao Valor Pro, uma plataforma crítica...
ALM Practices - O Modelo DevOps aplicado ao Valor Pro, uma plataforma crítica...ALM Practices - O Modelo DevOps aplicado ao Valor Pro, uma plataforma crítica...
ALM Practices - O Modelo DevOps aplicado ao Valor Pro, uma plataforma crítica...
 
ALM Practices - Gestão de Releases e Configuração de aplicações corporativas ...
ALM Practices - Gestão de Releases e Configuração de aplicações corporativas ...ALM Practices - Gestão de Releases e Configuração de aplicações corporativas ...
ALM Practices - Gestão de Releases e Configuração de aplicações corporativas ...
 
ALM Practices - Cultura da entrega diária com EVDnC
ALM Practices - Cultura da entrega diária com EVDnCALM Practices - Cultura da entrega diária com EVDnC
ALM Practices - Cultura da entrega diária com EVDnC
 
ALM Practices - Modern Applications Development and its impact on ALM
ALM Practices - Modern Applications Development and its impact on ALM ALM Practices - Modern Applications Development and its impact on ALM
ALM Practices - Modern Applications Development and its impact on ALM
 
ALM Practices - Reestabelecendo o nível de serviço e construindo um Programa ...
ALM Practices - Reestabelecendo o nível de serviço e construindo um Programa ...ALM Practices - Reestabelecendo o nível de serviço e construindo um Programa ...
ALM Practices - Reestabelecendo o nível de serviço e construindo um Programa ...
 
ALM Practices - Devops para grandes Organizações
ALM Practices - Devops para grandes OrganizaçõesALM Practices - Devops para grandes Organizações
ALM Practices - Devops para grandes Organizações
 
ALM Practices - Construindo uma estratégia Corporativa de ALM
ALM Practices - Construindo uma estratégia Corporativa de ALMALM Practices - Construindo uma estratégia Corporativa de ALM
ALM Practices - Construindo uma estratégia Corporativa de ALM
 

Levando um negócio inovador baseado em outsourcing ao Continuous Delivery, com automação e Cloud Services.

  • 1. Levando um negócio inovador, baseado em outsourcing, ao continuous delivery, com automação e cloud services. Welington Zanelato System Manager wzanelato@conectcar.com
  • 5. ConectSys • 42 Windows Services • 11 web services • 5 Web Sites • Distribuídos em 9 servidores
  • 6.
  • 9. Infraestrutura no Azure  As máquinas do TFS serão hospedas no Windows Azure  As máquinas necessitam estar inseridas no domínio da ConectCar  A máquina do TFS Application Tier precisa estar exposta na internet para permitir acesso externo, para isto será necessário um subdomínio do tipo: tfs.conectcar.com  Para acesso ao TFS os usuários utilizarão contas do Active Directory, terceiros necessitarão ter usuários ativos no Active Directory para ter acesso ao TFS Build ServerData Tier Team Foundation ClientApplication Tier Active Directory
  • 11. Processo de entrega e validação Processo de entrega de software Gestorde configuração ProjectOwnerAnalistaDesenvolvedor Analistade testes Usuáriochave Selecionar Demanda Abrir branchs Analise da demanda Artefatos Desenvolver demandas Artefatos Testes desistema Passou nos testes? Testes funcionais Evidência s Não Implanta em homologação Passou nos testes? Merge dos fontes para Main Sim Implanta em integração Roda testes gravados Passou nos testes? Corrige erros de integração Aplica Label Implanta em produção Abrir GMUD Não Check-in TFS-ConectCar
  • 12. Processo de entrega e validação
  • 13. Processo de entrega e validação
  • 14.
  • 15. Complexidade operacional • Operação, comercial e financeiro • Correções, melhorias e projetos • 36 Projetos em um ano
  • 20. Banco de dados como código
  • 21. Processo de entrega e validação Processo de entrega de demandas (Melhorias e Projetos) Gestorde configuração FábricaAutomaçãoUsuáriochave Desenvolver demandas / Resolver bugs Executa testes de sistema Passou nos testes? Homologa demandas Não Entrega demanda desenvolvida Sim Homologada? Sim Inicia iteração/ projeto Compila e executa análise estática de código Inicia processo de homologação Aprova instalação em homologação Instala versão no ambiente de homologação Aprova demandas desenvolvidas Não Demandas aprovadas? Sim Liberação de versão Não
  • 22. Processo de entrega e validação Liberação de versão IntegradorComitêAutomação Gestorde configuração Infra Analistasde negócio Fábricas Demandas aprovadas Seleciona demandas para a próxima versão Realiza o merge das demandas na Main / Correção Solicita fechamento da versão Compila e executa análise estática de código Instala versão no ambiente de integração Executa testes de regressão na versão Sim Aprova a versão Planeja a liberação da versão e uso da janela de mudança Passou nos testes? Não Diagnostica erros [Erro em código] [Conflito em Requisitos] Resolve conflito em requisitos Solicita instalação da aplicação Instala aplicação em produção Instala alterações em banco dedados Executa testes fumaça Confirma liberação da versão Notifica interessados Versão instalada corretamente? Sim Não Rollback Versão em produção Realiza merge para cada branch ativo Branchs atualizados
  • 29.
  • 30. • Modularizado e com baixo acoplamento • Suporte à falhas Refatorar o sistema
  • 31. Automação de testes • Aumentar a cobertura dos teste unitários • Automatizar testes funcionais
  • 32. Análise automática de código • Métricas de código • Padrões de desenvolvimento
  • 33. Monitoramento em tempo real • Uso da aplicação • Performance • Problemas

Notas do Editor

  1. O desenvolvimento das aplicações é todo terceirizado e hoje está concentrado em uma fábrica de software. A fábrica controla todos os ativos de software e detém todo o conhecimento técnico da aplicação. Isso representa um risco à ConectCar. Uma crise na fábrica ou na sua relação com a ConectCar representaria um grande custo de mudança.
  2. O desenvolvimento das aplicações é todo terceirizado e hoje está concentrado em uma fábrica de software. A fábrica controla todos os ativos de software e detém todo o conhecimento técnico da aplicação. Isso representa um risco à ConectCar. Uma crise na fábrica ou na sua relação com a ConectCar representaria um grande custo de mudança.
  3. Trazer os ativos e o conhecimento da aplicação para dentro de casa. Contratamos um gestor de configuração, um arquiteto e o especificacoes.com Precisávamos disso rápido e acessível externamente, por isso optamos por manter a infraestrutura do TFS no Azure, o que simplificou muito todo o processo. Servidores que não estão em uso podem ser desligados. Ex: Servidores de build e release.
  4. Definimos um processo de entrega e validação de software que contempla: A entrega dos fontes deve ser feita no TFS da ConectCar As versões do sistema serão geradas automaticamente no ambiente da ConectCar O processo de build automatizado garante que todo o código fonte e dependências do sistema estão em posse da ConectCar
  5. Nesse processo tivemos uma séria resistência da fábrica, e também notamos a dificuldade que ela própria tinha de gerir os ativos de software. Frases como: Precisamos de três dias para te entregar a última versão do software Minha máquina contém todas as dependências para compilar a aplicação, preciso de tempo para separá-las. A dependências eram desconhecidas e o processo dependia da máquina do desenvolvedor.
  6. Uma start-up, com um negócio em crescimento e evoluindo constantemente. 36 projetos no ano passado. Solicitações de áreas diferentes, com tempos diferentes, que concorrem pelos mesmos recursos Correções, melhorias, projetos Um ambiente propício à problemas de concorrência e integração A fábrica atual tem limite de capacidade de entrega, precisamos de mais parceiros
  7. Hoje temos um esforço grande de gestão dos ambientes de homologação e com o planejamento das releases. Com uma quantidade limitada de servidores e um processo de instalação trabalhoso, temos que planejar com cuidado a integração das demandas e sua validação. Ainda temos que lidar com velocidades diferentes entre as áreas no processo de homologação.
  8. Com um agravante no planejamento, que é: * Disponibilizar mais ambientes em um momento de alta demanda significa ter que arcar com os custos desse ambiente quando não houver demanda.
  9. Para endereçarmos esse desafio, começamos com a criação de uma estrutura de desenvolvimento paralelo que acomodasse todos tipos de demandas
  10. Iremos trabalhar com banco de dados da mesma forma com que trabalhamos com o restante do código da aplicação. Com a habilidade de fazer check-in e check-out, comparar e compilar. Para uma versão da aplicação teremos tudo o que é necessário para coloca-la no ar disponível no Source Control. Isso também simplifica a automação da instalação das mudanças de banco, que será feita no mesmo momento da instalação da aplicação.
  11. Definimos o processo de forma que a homologação das funcionalidades solicitadas por cada área possa correr em paralelo, de forma gerenciada. Cada demanda/projeto será homologado separadamente, respeitando o tempo do cliente, evitando dependência entre eles (comercial, operação e financeiro).
  12. Após as demandas terem sido aprovadas, um processo de fechamento de versão, altamente baseado em automação, será responsável por integrar as demandas, validar a versão e promove-la até produção.
  13. A automação será realizada utilizando o TFS Build para compilar e empacotar a versão, e o Release Management para instalar e gerir a promoção da mesma. Já temos as customizações desenvolvidas e testadas.
  14. Aqui temos um exemplo em que vários estágios de promoção estão definidos, cada um com seus aprovadores.
  15. E em cada estágio o processo de instalação é automatizado na ferramenta e controlado. Esse processo instala Windows Services, Web Services e Web Sites. Em breve também o banco de dados.
  16. Suportados pela posse dos ativos e pela automação do processo de build e deploy, exploraremos a nuvem para disponibilizar ambientes para homologação das demandas em paralelo. Diminuindo o time-to-Market para as áreas de negócio, sem implicar em custos, já que esses ambientes são desativados durante todo o período em que não estão em uso.
  17. Se não há demandas a serem homologadas, podemos, simplesmente, desligar os ambientes e reduzir a quase zero os custos.
  18. Outro aspecto importante do novo processo de trabalho objetiva uma mudança cultural, com a criação de uma cadência de entrega de melhorias. Queremos que os usuários comecem a se adaptar com o a entrega frequente, e isso irá gerar consequências como maior proximidade e entendimento mútuo, mais compromisso com prazos, maior visibilidade dos resultados. Tudo isso nos prepara para a etapa 3.
  19. Queremos garantir a resposta mais rápida possível ao negócio, aumentando nossa frequência de entrega até que ela seja contínua.
  20. Queremos garantir a resposta mais rápida possível ao negócio, aumentando nossa frequência de entrega até que ela seja contínua.
  21. Queremos garantir a resposta mais rápida possível ao negócio, aumentando nossa frequência de entrega até que ela seja contínua.
  22. Queremos garantir a resposta mais rápida possível ao negócio, aumentando nossa frequência de entrega até que ela seja contínua.