SEAD 2006


    Integração
     Contínua
  ...usando software livre


       CHRISTIANO MILFONT - http://www.milfont.org
 ...
ROTEIRO
1.   HISTÓRICO.
2.   GERÊNCIA DE CONFIGURAÇÃO.
3.   FERRAMENTAS.
4.   CONTROLE DE VERSÃO.
5.   CONTROLE DE MUDANÇA...
HISTÓRICO

       - ANOS 80


  Anos 80 - década Code-and-Fix.
•


  Ausência de metodologias de desenvolvimento.
•


  Pr...
HISTÓRICO                - ANOS 90
  Linguagem UML.
•


  Processos unificados (UP).
•


  Metodologias Orientadas a Objet...
HISTÓRICO
         - PROCESSOS UNIFICADOS
  Código complexo.
●


  Manutenção difícil.
●


  Baixa produtividade.
●


  Cr...
HISTÓRICO - MÉTODOS ÁGEIS
    Lendário Projeto C3 - Comprehensive Compensation
•


    project – Payroll system (Chrysler)...
EIS QUE SURGE...


  GERÊNCIA DE CONFIGURAÇÃO
“Gerência de Configuração (GC) é um
conjunto de atividades de apoio ao
desen...
CONTROLAR AMBIENTES COMPLEXOS
O QUE É:
    Gerencia as ferramentas que compõe o desenvolvimento
●


    de sistemas.
    Identifica as configurações de ...
FERRAMENTAS DE APOIO



  Armazenar.     Identificar.     Constuir.
●              ●                ●


  Versionar.     R...
FERRAMENTAS DE APOIO



  Subversion.     Elips.        Ant.
●               ●             ●


  CVS.            Bugzilla....
CONTROLE DE VERSÃO
    Compartilhamento do         Versões continuam
●                           ●


    código.          ...
CONTROLE DE MUDANÇAS
                   ISSUE TRACKING
                                       Prioriza as
                ...
CONTROLE DE MUDANÇAS
   ISSUE TRACKING
ATÉ QUE ENFIM...


     INTEGRAÇÃO CONTÍNUA

   “O processo de integração contínua
    significa que todos os integrantes
...
INTEGRAÇÃO CONTÍNUA
INTEGRAÇÃO CONTÍNUA




PROCESSO DE BUILD E DEPLOY
INTEGRAÇÃO CONTÍNUA - BUILDS
INTEGRAÇÃO CONTÍNUA – COMO INTEGRAR

                      Testar todos os componentes
                  ●


             ...
INTEGRAÇÃO CONTÍNUA ASSÍNCRONA




    Codigo coletivo
●


    Único repositório
●


    Processo
●


    descentralizado
INTEGRAÇÃO CONTÍNUA - ONE STEP BUILD
CONCLUSÃO
  Problemas:
●


     Custo em treinamentos específicos.
   ●


     Esforço na adequação aos processos.
   ●


...
REFERÊNCIAS
    Martin Fowler - http://www.martinfowler.com/articles/continuousIntegration.html
●


    Vinícius Manhães T...
Próximos SlideShares
Carregando em…5
×

Integração Contínua 3FCSL

2.057 visualizações

Publicada em

Publicada em: Tecnologia
0 comentários
1 gostou
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
2.057
No SlideShare
0
A partir de incorporações
0
Número de incorporações
39
Ações
Compartilhamentos
0
Downloads
67
Comentários
0
Gostaram
1
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Integração Contínua 3FCSL

  1. 1. SEAD 2006 Integração Contínua ...usando software livre CHRISTIANO MILFONT - http://www.milfont.org cmilfont@gmail.com 20/10/2006
  2. 2. ROTEIRO 1. HISTÓRICO. 2. GERÊNCIA DE CONFIGURAÇÃO. 3. FERRAMENTAS. 4. CONTROLE DE VERSÃO. 5. CONTROLE DE MUDANÇAS. 6. INTEGRAÇÃO CONTÍNUA. 7. PRÁTICAS 8. CONCLUSÃO. 9. REFERÊNCIAS
  3. 3. HISTÓRICO - ANOS 80 Anos 80 - década Code-and-Fix. • Ausência de metodologias de desenvolvimento. • Programação procedural e estruturada. • Evolução da programação linear. • Programas são: sequência, decisão e iteração. • Dificuldade de simular relações entre entidades • em processos de negócios.
  4. 4. HISTÓRICO - ANOS 90 Linguagem UML. • Processos unificados (UP). • Metodologias Orientadas a Objetos. • Fases bem definidas e controladas. • Analogia com a Engenharia Civil. • Concepção, Elaboração, Construção e Transição. •
  5. 5. HISTÓRICO - PROCESSOS UNIFICADOS Código complexo. ● Manutenção difícil. ● Baixa produtividade. ● Cronograma sempre atrasado. ● Insatisfação de todos. ● Design degradado. ● Documentação defasada, ● excessiva e ilegível. Fracasso nos projeto. ●
  6. 6. HISTÓRICO - MÉTODOS ÁGEIS Lendário Projeto C3 - Comprehensive Compensation • project – Payroll system (Chrysler). Melhores práticas (Design patterns). • Análise Orientada a Objetos. • Manifesto ágil. • Agile Alliance (http://www.agilealliance.org/). • Ward Cunningham Ron Jeffries Kent Beck
  7. 7. EIS QUE SURGE... GERÊNCIA DE CONFIGURAÇÃO “Gerência de Configuração (GC) é um conjunto de atividades de apoio ao desenvolvimento que permite que as mudanças inerentes ao desenvolvimento sejam absorvidas pelo projeto de maneira controlada, mantendo a estabilidade na evolução do software.”
  8. 8. CONTROLAR AMBIENTES COMPLEXOS
  9. 9. O QUE É: Gerencia as ferramentas que compõe o desenvolvimento ● de sistemas. Identifica as configurações de diferentes pontos no ● decorrer do tempo. Controla sistematicamente as mudanças realizadas. ● Fornece estatísticas da evolução dos sistemas. ● Faz parte do modelo de maturidade dos processos de ● desenvolvimento tais como CMMi, MPS-Br e o SPICE. O QUE NÃO É: Comunica-se com gestão de redes, dados e ● suporte mas não gerencia essas áreas. Não controla o versionamento dos sistemas. ● Não determina as atividades a serem executadas. ●
  10. 10. FERRAMENTAS DE APOIO Armazenar. Identificar. Constuir. ● ● ● Versionar. Rastrear. Testar ● ● ● Gerenciar. Analisar. Disponibilizar. ● ● ● Controlar. Publicar. Ramificar. ● ● ● Recuperar. Priorizar. Notificar. ● ● ●
  11. 11. FERRAMENTAS DE APOIO Subversion. Elips. Ant. ● ● ● CVS. Bugzilla. Ruby Rake ● ● ● Mantis. Maven. ● ● Trac. Gump. ● ● Jira. CruiseControl. ● ● AntHill. ●
  12. 12. CONTROLE DE VERSÃO Compartilhamento do Versões continuam ● ● código. em paralelo sem interromper a evolução do SCM versionam, ● sistema. arquivam e controlam o projeto.
  13. 13. CONTROLE DE MUDANÇAS ISSUE TRACKING Prioriza as ● Fornece estatisticas e ● funcionalidades a relatórios da serem desenvolvidas consistência do ou consertadas. projeto para facilitar a comunicação. Mantém histórico de ● Cataloga feedback ● falhas e consertos dos usuários. no projeto.
  14. 14. CONTROLE DE MUDANÇAS ISSUE TRACKING
  15. 15. ATÉ QUE ENFIM... INTEGRAÇÃO CONTÍNUA “O processo de integração contínua significa que todos os integrantes de um time atualizam suas modificações continuadamente com testes que garantem que não quebram as funcionalidades já integradas.”
  16. 16. INTEGRAÇÃO CONTÍNUA
  17. 17. INTEGRAÇÃO CONTÍNUA PROCESSO DE BUILD E DEPLOY
  18. 18. INTEGRAÇÃO CONTÍNUA - BUILDS
  19. 19. INTEGRAÇÃO CONTÍNUA – COMO INTEGRAR Testar todos os componentes ● e módulos do sistema automaticamente. Fornecer relatórios de todas ● as atividades executadas. Construir e versionar. ● Integrar módulos e sistemas. ● Disponibilizar e homologar. ● Publicar em produção. ● Notificar participantes do ● projeto após publicação. SÍNCRONA Vs ASSÍNCRONA
  20. 20. INTEGRAÇÃO CONTÍNUA ASSÍNCRONA Codigo coletivo ● Único repositório ● Processo ● descentralizado
  21. 21. INTEGRAÇÃO CONTÍNUA - ONE STEP BUILD
  22. 22. CONCLUSÃO Problemas: ● Custo em treinamentos específicos. ● Esforço na adequação aos processos. ● Sucesso do projeto fica atrelado a configuração ● correta das ferramentas. Soluções: ● Agilidade nas mudanças. ● Facilidade na comunicação do projeto. ● Produtividade no ciclo de vida do produto. ● Menor incidência de falhas com testes automáticos. ● Riscos menores de descumprimento dos prazos. ● Controle preciso no gerenciamento do projeto. ●
  23. 23. REFERÊNCIAS Martin Fowler - http://www.martinfowler.com/articles/continuousIntegration.html ● Vinícius Manhães Teles - http://www.improveit.com.br/xp/praticas/integracao ● James Shore - http://www.jamesshore.com/Blog/Continuous-Integration-on-a-Dollar-a- ● Day.html Wikipedia - http://pt.wikipedia.org/wiki/Sistema_de_controle_de_vers%C3%A3o ● Jay Flowers - http://jayflowers.com/joomla/index.php?option=com_content&task=view&id=26 ● IBM - http://www-128.ibm.com/developerworks/rational/library/sep05/lee/index.html ●

×