Skip to main content

Integració continua CI

  • Deixar per al final la integració afecta la finalització i entrega del proyecte.
  • Si integrem molt sovint simplifiquem el problema
    • Redueix el codia integrar
    • Detectem els problemes abans
  • La integració contínua proposa íntegra codi en finalitzar cada funcionalitat
  • Passem d'integrar un sol cop a fer-ho cada dia o diversos cops

Requisits mínims CI

  • Sistema de control de versions
    • Un repo de codi remot per la integració
    • Serà l'única font de veritat respecte al codi
  • Sistema d'integració continua
    • Git lab CI/CD Jenkins
  • Automatització dels tests
    • Regles de negci
    • Criteris de qualitat
  • Altres requisits
    • Entorn de proves
    • Retroalimentació ràpida
    • Pràctiques de desenvolupament col·laboratiu

Pipeline

  • Cicle de desenvolupament de codi
    • Plan: Planificació de tasques i features a desenvolupar
  • En el moment de programar e integrar una nova feature
    • Code: Programació del codi
    • Build: Compilació si cal i verificació que el codi és vàlid a nivell de sintaxis
    • Test: Validem que compleixi les regles de negoci i l'estàndard de qualitat definit a nivell organitzatiu

imagen.png

imagen.png

CI - Avantatges

  • Reduir el risc
    • Al incrementar la freqüencia de les integracions s'acota amb antelació el problema.
  • Reduir tasques manuals repetitives
    • S'automtatitza els procés d'integració, reduint potencials errors humans.
  • Incrementa la confiança gràcies als tests.
  • Millora la visibilitat del projecte
  • Elimina el típic " a la meva màquina funciona"

CI - Inconvenients

  • Habituar-se a les eines
  • Desenvolupar els test i el codi de forma simultània (TDD)
  • Suposa una corba d'aprenentatge gran al principi