Your SlideShare is downloading. ×
0
Integração Contínua
Integração Contínua
Integração Contínua
Integração Contínua
Integração Contínua
Integração Contínua
Integração Contínua
Integração Contínua
Integração Contínua
Integração Contínua
Integração Contínua
Integração Contínua
Integração Contínua
Integração Contínua
Integração Contínua
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Integração Contínua

2,093

Published on

Material apresentado a equipe de desenvolvedores da SEFIN

Material apresentado a equipe de desenvolvedores da SEFIN

0 Comments
4 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,093
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
84
Comments
0
Likes
4
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • Transcript

    • 1. Integração contínua Maior controle do projeto e maior produtividade
    • 2. Integração Contínua “ Uma prática de desenvolvimento de software onde os membros de uma equipe integram seu trabalho frequentemente, normalmente ao menos uma vez ao dia para cada pessoa - levando a múltiplas integrações diárias...” Martin Fowler
    • 3. O que é Integração Contínua (IC)? <ul><li>Definição: </li></ul><ul><ul><li>Um repositório central para todos os membros da equipe, contendo: </li></ul></ul><ul><ul><ul><li>o último código; </li></ul></ul></ul><ul><ul><ul><li>o último executável. </li></ul></ul></ul><ul><ul><li>Um processo automatizado para &quot;building&quot; e testar todos os processos ativos, que: </li></ul></ul><ul><ul><ul><li>possa ser rodado várias vezes ao dia; </li></ul></ul></ul><ul><ul><ul><li>seja auto-suficiente. </li></ul></ul></ul><ul><li>Kevin A. Lee , Technical Consultant, IBM </li></ul>
    • 4. O que é Integração Contínua (IC)?
    • 5. Estilo de integração contínua <ul><ul><li>Síncrona: feita por um programador depois de algumas horas de desenvolvimento. </li></ul></ul><ul><ul><li>Assíncrona: é utilizado uma ferramenta específica que verifica as últimas atualizações e faz um build completo do sistema. </li></ul></ul>
    • 6. Vantagens <ul><ul><li>O esforço para integrarmos o código é menor; </li></ul></ul><ul><ul><li>O potencial de erros diminui e eventuais erros podem ser tratados mais facilmente; </li></ul></ul><ul><ul><li>Economia de tempo em relação aos esforços na procura de defeitos; </li></ul></ul><ul><ul><li>Gerar software funcionando a qualquer momento; </li></ul></ul><ul><ul><li>Melhora o trabalho em equipe. </li></ul></ul>
    • 7. Porém... Integração Contínua não elimina os bugs, mas torna as tarefas de localizá-los mais fácil e mais rápido.
    • 8. Ferramentas para IC
    • 9. Ferramentas para IC: AnthillPro <ul><ul><li>Suporte a múltiplos projetos; </li></ul></ul><ul><ul><li>Agendamento de projetos; </li></ul></ul><ul><ul><li>Permite iniciar execução de um projeto manualmente; </li></ul></ul><ul><ul><li>Configuração do sistema via interface Web; </li></ul></ul><ul><ul><li>Completa informação sobre os projetos: javadoc, resultados de testes, métricas etc; </li></ul></ul><ul><ul><li>Suporte a CVS, Performace, PVCS, VSS, StartTeam, MKS; </li></ul></ul><ul><ul><li>Envio de resultados via e-mail; </li></ul></ul>
    • 10. Ferramentas para IC: Apache Continuum <ul><ul><li>Fácil instalação; </li></ul></ul><ul><ul><li>Suporta cinco sistemas de controle de versão: Subversion, CVS, StarTeam, Bazaar  e Perforce; </li></ul></ul><ul><ul><li>Fácil configuração através de uma interface web; </li></ul></ul><ul><ul><li>Desenvolvido em java; </li></ul></ul><ul><ul><li>Suporte nativo a ANT, Maven 1 e 2 e Shell Script para outras linguagens; </li></ul></ul><ul><ul><li>Notificação de build: Mail, Jabber e Google Talk, MSN, IRC, relatório de desenvolvimento com wagon; </li></ul></ul>
    • 11. Ferramentas para IC: CruiseControl <ul><ul><li>Gerenciador de builds de código aberto e gratuito; </li></ul></ul><ul><ul><li>Integra-se a vários sistemas de gerenciamento de configuração (CVS, PVCS, Subversion, ClearCase, ...); </li></ul></ul><ul><ul><li>Funciona  com qualquer ferramenta de build que produza um resultado tratável (Ant Maven); </li></ul></ul><ul><ul><li>Independência de plataforma; </li></ul></ul><ul><ul><li>Bem documentado; </li></ul></ul>
    • 12. Ferramentas para IC: CruiseControl <ul><ul><li>Como funciona? </li></ul></ul><ul><ul><ul><li>Desenvolvedor publica seu trabalho no controle de código-fonte (CVS, SVN) </li></ul></ul></ul><ul><ul><ul><li>CruiseControl verifica periodicamente o controle de código-fonte; </li></ul></ul></ul><ul><ul><ul><li>Se o CruiseControl detecta alguma mudança: </li></ul></ul></ul><ul><ul><ul><ul><li>Dispara um build; </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Captura logs e artefatos do build; </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Publica os resultados. </li></ul></ul></ul></ul>
    • 13. Ferramentas para IC: CruiseControl <ul><ul><li>É composto por dois módulos: </li></ul></ul><ul><ul><ul><li>Execução do build; </li></ul></ul></ul><ul><ul><ul><li>Repositório dos resultados; </li></ul></ul></ul><ul><ul><li>Do que precisamos? </li></ul></ul><ul><ul><ul><li>Servidor de builds; </li></ul></ul></ul><ul><ul><ul><li>Servidor de controle de código; </li></ul></ul></ul><ul><ul><ul><li>Processo bem definido; </li></ul></ul></ul><ul><ul><ul><li>Ferramentas (CruiseControl, Ant etc); </li></ul></ul></ul><ul><ul><ul><li>Responsabilidades do servidor: </li></ul></ul></ul><ul><ul><ul><ul><li>Atualizar o repositório frequentemente; </li></ul></ul></ul></ul><ul><ul><ul><ul><li>O código deve ser compilável; </li></ul></ul></ul></ul><ul><ul><ul><ul><li>O código deve ter testes unitários; </li></ul></ul></ul></ul><ul><li>... </li></ul>
    • 14. Referências <ul><ul><li>http://www.ibm.com/developerworks/rational/library/sep05/lee/ </li></ul></ul><ul><ul><li>http://www.martinfowler.com/articles/continuousIntegration.html </li></ul></ul><ul><ul><li>http://unibrain.com.br/recursos/artigos/integracao-continua/ </li></ul></ul><ul><ul><li>http://www.slideshare.net/luthiano/integrao-contnua-com-cruisecontrol </li></ul></ul><ul><ul><li>http://www.visaoagil.com/ </li></ul></ul><ul><ul><li>http://www.improveit.com.br/xp/praticas/integracao </li></ul></ul>
    • 15. Obrigada! Elizandra Amarante http://zylle.blogspot.com [email_address] Lucimara Benigno http://lucimarabenigno.wordpress.com/ [email_address]

    ×