SlideShare una empresa de Scribd logo
1 de 21
Descargar para leer sin conexión
Inspección continua
 ... o sobre cómo hacer mejor software
Yo
        Antonio Muñiz


@amunizmartin
http://amunizmartin.wordpress.com
Trabajando en @klicap
Antecedentes
Integración continua
• 10 años
• Aún en expansión
• La integración continua pretende mejorar la
  calidad del software, y reducir el tiempo
  necesario para desarrollarlo, reemplazando la
  práctica tradicional de aplicar el control de
  calidad tras completar todo el desarrollo
Integración continua


                    ?
Complejidad?

                            Duplicación?

   Cobertura?

                        Formato?
       Documentación?
Revisión de código
Revisión de código
Revisión de código
Automatización
Inspección continua
Inspección continua
Objetivo: control deuda técnica
Inspección continua
Objetivo: control deuda técnica




                  Deuda =
        coste resolver duplicación +
      coste resolver documentación +
         coste resolver cobertura +
       coste resolver complejidad +
          coste resolver mal diseño
Inspección continua
Objetivo: radiador de información
Nada es gratis

• Modelado estándar del proyecto
• Automatizar el proceso de construcción,
  ejecución de tests, empaquetado, etc
• Encontrar un robot
• Configuración
Concretando

• Maven
• Maven plugins
• Sonar
• Jenkins
            Manos a la obra...
El código fuente
http://git.drupal.org/project/google_analytics.git


• Módulo de Drupal
• Código fuente en Git
• No modelado con ninguna herramienta de
   construcción
El código fuente
   • P.O.M
<groupId>org.openspacesev</groupId>
<artifactId>drupal-google-analytics</artifactId>
<name>Drupal Google Analytics Module</name>
<version>1.0-SNAPSHOT</version>
<build>
    <sourceDirectory></sourceDirectory>
</build>
<properties>
    <sonar.language>php</sonar.language>
    <sonar.phpUnit.shouldRun>false</sonar.phpUnit.shouldRun>
    <sonar.phpUnit.coverage.shouldRun>false</sonar.phpUnit.coverage.shouldRun>
</properties>
Herramientas


• Sonar server
• Sonar Maven Plugin
• Sonar PHP Plugin (PHPDepend, PHP Code
  Sniffer, PHPMD, PHPUnit, PHPCPD)
Herramientas


• Jenkins server
• Jenkins Sonar Plugin
• Jenkins Git Plugin
¡En directo!
¡Gracias!




            Antonio Muñiz

Más contenido relacionado

La actualidad más candente

Keynote continuous delivery
Keynote continuous deliveryKeynote continuous delivery
Keynote continuous delivery
Vemn1
 
Argentesting 2019 - Cómo convertirse en un tester ágil
Argentesting 2019 - Cómo convertirse en un tester ágilArgentesting 2019 - Cómo convertirse en un tester ágil
Argentesting 2019 - Cómo convertirse en un tester ágil
Argentesting
 
Argentesting 2019 - Cambiando el paradigma de la automatización
Argentesting 2019 - Cambiando el paradigma de la automatizaciónArgentesting 2019 - Cambiando el paradigma de la automatización
Argentesting 2019 - Cambiando el paradigma de la automatización
Argentesting
 

La actualidad más candente (16)

Programación Extrema (XP)
Programación Extrema (XP)Programación Extrema (XP)
Programación Extrema (XP)
 
Capitulo 2
Capitulo 2Capitulo 2
Capitulo 2
 
Lean startup: convierta su idea en un negocio
Lean startup: convierta su idea en un negocioLean startup: convierta su idea en un negocio
Lean startup: convierta su idea en un negocio
 
Xp
XpXp
Xp
 
Ejecutando pruebas automatizadas desde la nube
Ejecutando pruebas automatizadas desde la nubeEjecutando pruebas automatizadas desde la nube
Ejecutando pruebas automatizadas desde la nube
 
Qué es screencast
Qué es screencastQué es screencast
Qué es screencast
 
Keynote continuous delivery
Keynote continuous deliveryKeynote continuous delivery
Keynote continuous delivery
 
Continuos Delivery Commit stage
Continuos Delivery Commit stageContinuos Delivery Commit stage
Continuos Delivery Commit stage
 
Java mission control para monitoreo, administración y profilig de aplicacione...
Java mission control para monitoreo, administración y profilig de aplicacione...Java mission control para monitoreo, administración y profilig de aplicacione...
Java mission control para monitoreo, administración y profilig de aplicacione...
 
Extreme programming
Extreme programmingExtreme programming
Extreme programming
 
Los Pecados Capitales en la Automatización de Pruebas de Software.
Los Pecados Capitales en la Automatización de Pruebas de Software.Los Pecados Capitales en la Automatización de Pruebas de Software.
Los Pecados Capitales en la Automatización de Pruebas de Software.
 
Sleep well driven development
Sleep well driven developmentSleep well driven development
Sleep well driven development
 
Argentesting 2019 - Cómo convertirse en un tester ágil
Argentesting 2019 - Cómo convertirse en un tester ágilArgentesting 2019 - Cómo convertirse en un tester ágil
Argentesting 2019 - Cómo convertirse en un tester ágil
 
Pruebasde aceptación automatizadas
Pruebasde aceptación automatizadasPruebasde aceptación automatizadas
Pruebasde aceptación automatizadas
 
Argentesting 2019 - Cambiando el paradigma de la automatización
Argentesting 2019 - Cambiando el paradigma de la automatizaciónArgentesting 2019 - Cambiando el paradigma de la automatización
Argentesting 2019 - Cambiando el paradigma de la automatización
 
Presentación Agile Testing
Presentación Agile TestingPresentación Agile Testing
Presentación Agile Testing
 

Similar a Openspacesevilla2012

Proceso del Software Una visión General
Proceso del Software Una visión GeneralProceso del Software Una visión General
Proceso del Software Una visión General
Ruth Hidalgo Tene
 
Proceso de Software Una Visión General
Proceso de Software Una Visión GeneralProceso de Software Una Visión General
Proceso de Software Una Visión General
Ruth Hidalgo Tene
 
Proceso del software
Proceso del softwareProceso del software
Proceso del software
guest7886b8
 

Similar a Openspacesevilla2012 (20)

Shift Left: En busca del éxito del software
Shift Left: En busca del éxito del softwareShift Left: En busca del éxito del software
Shift Left: En busca del éxito del software
 
Mcvds
McvdsMcvds
Mcvds
 
Proceso del Software Una visión General
Proceso del Software Una visión GeneralProceso del Software Una visión General
Proceso del Software Una visión General
 
proceso del software_2
proceso del software_2proceso del software_2
proceso del software_2
 
Proceso de Software Una Visión General
Proceso de Software Una Visión GeneralProceso de Software Una Visión General
Proceso de Software Una Visión General
 
Proceso del software una visión general
Proceso del software una visión generalProceso del software una visión general
Proceso del software una visión general
 
Proceso del software
Proceso del softwareProceso del software
Proceso del software
 
Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurance
 
Desarrollo de Software Guiado por Pruebas
Desarrollo de Software Guiado por PruebasDesarrollo de Software Guiado por Pruebas
Desarrollo de Software Guiado por Pruebas
 
titulo de pdf
titulo de pdftitulo de pdf
titulo de pdf
 
Sesión 2: Visión General. El proceso del software
Sesión 2: Visión General. El proceso del softwareSesión 2: Visión General. El proceso del software
Sesión 2: Visión General. El proceso del software
 
2. El proceso del software
2. El proceso del software2. El proceso del software
2. El proceso del software
 
PROCESO DE DESARROLLO DE SOFTWARE.pptx
PROCESO DE DESARROLLO DE SOFTWARE.pptxPROCESO DE DESARROLLO DE SOFTWARE.pptx
PROCESO DE DESARROLLO DE SOFTWARE.pptx
 
Sesión 2: El proceso del software
Sesión 2: El proceso del softwareSesión 2: El proceso del software
Sesión 2: El proceso del software
 
Cuadro comparativo
Cuadro comparativoCuadro comparativo
Cuadro comparativo
 
Herramientas y entornos de implementacion de software
Herramientas y entornos de implementacion de softwareHerramientas y entornos de implementacion de software
Herramientas y entornos de implementacion de software
 
ROLES.pdf
ROLES.pdfROLES.pdf
ROLES.pdf
 
Continuous Delivery
Continuous DeliveryContinuous Delivery
Continuous Delivery
 
Meetup Oracle Technology MAD_BCN: 6.2 DevOps y DataOps
Meetup Oracle Technology MAD_BCN: 6.2 DevOps y DataOpsMeetup Oracle Technology MAD_BCN: 6.2 DevOps y DataOps
Meetup Oracle Technology MAD_BCN: 6.2 DevOps y DataOps
 
MEJORANDO LA CALIDAD DEL SOFTWARE
MEJORANDO LA CALIDAD DEL SOFTWAREMEJORANDO LA CALIDAD DEL SOFTWARE
MEJORANDO LA CALIDAD DEL SOFTWARE
 

Último

redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
nicho110
 

Último (12)

Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXI
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptx
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 

Openspacesevilla2012