SlideShare una empresa de Scribd logo
1 de 52
Descargar para leer sin conexión
Infraestructura de
Desarrollo Ágil
Como apoyarnos en herramientas libres
para construir software aplicando Scrum +
XP.



Ing. Adrian Moya
Mérida, Octubre de 2011




                                            1 de 52
Agenda



1. Introducción.
2. Infraestructura.
3. Construcción.
4. Utilización.
5. Conclusiones.


                      2 de 52
Infraestructura de Desarrollo Ágil




       En casa de herrero, cuchillo de palo

                                              3 de 52
Infraestructura Ágil

       ¿Qué necesitamos?




                           4 de 52
Prácticas y requerimientos
SCRUM: Planificar y Gestionar el proyecto

 Llevar control de las historias de usuario.
 Planificar las entregas en iteraciones.

 Medir el avance del equipo.



XP: Prácticas de Desarrollo

 Buena comunicación del equipo.
 Control de versiones de código.

 Integrar código continuamente.

 Pruebas unitarias de código.


                                                5 de 52
Infraestructura Ágil



     Servidor de          Servidor de   Servidor Controlador           Servidor de
       Scrum              Información       de Versiones           Integración Continua




                                                               Servidor de
  Estaciones de trabajo                                         Desarrollo   Servidor de
                                                                               Calidad




                                                                                6 de 52
Servidor de Scrum




                    7 de 52
Servidor de Scrum


   Herramienta que lleva el control del proceso
    Scrum.
   Fácil instalación y configuración.
   Backlog de producto automatizado.
   Planificación de Entregas e Iteraciones.
   Tablero de actividad del proyecto.
   Gráficas de Burndown, Velocidad entre otras.
                                                   8 de 52
Servidor de Información




             DokuWiki


                          9 de 52
Servidor de Información

                        DokuWiki

   Wiki sencillo de usar.
   Basado en archivos de texto (no requiere DB).
   Sintaxis simple pero poderosa.
   Rápido.
   Tematizable
   Extensible vía plugins.

                                               10 de 52
Servidor Controlador de Versiones




                                11 de 52
Servidor Controlador de Versiones



   Sistema de control de versiones centralizado.
   Fácil uso y excelente documentación.
   Soporte de ramas y etiquetas.
   Soporte de archivos binarios.
   Cliente Tortoise (integración en Windows) y
    RabitVCS (Linux).
   Puede ser servido a través de apache.
                                                  12 de 52
Servidor de integración continua




                                   13 de 52
Servidor de integración continua


   Herramienta que monitorea la ejecución de
    trabajos repetitivos.
   Construcción y prueba de proyectos de manera
    continua.
   Fácil instalación y configuración.
   Soporta múltiples control de versiones.
   Notificaciones por RSS/Correo.
   Extensible vía plugins.
                                                14 de 52
Servidores de Desarrollo y Calidad




                                15 de 52
Infraestructura Ágil
                              DokuWiki




     Servidor de          Servidor de    Servidor Controlador           Servidor de
       Scrum              Información        de Versiones           Integración Continua




                                                                Servidor de
  Estaciones de trabajo                                          Desarrollo   Servidor de
                                                                                Calidad




                                                                                16 de 52
Implementando la Infraestructura

    ¿Cómo instalo todo esto?




                                   17 de 52
Implementando la Infraestructura


   Librería de aplicaciones que incluye lo mejor
    del software libre en un formato empaquetado y
    listo para usar.
   Servidores basados en Ubuntu 10.04 LTS.
   Optimizados para facilidad de uso y despliegue
    rápido (sólo minutos).
   Instalables en servidores físicos, máquinas
    virtuales o en la nube.
                                                  18 de 52
Implementando la Infraestructura
Servidor de Scrum               Imagen Comunitaria.
                                Desarrollada por
Icescrum:                       Adrian Moya.


Servidor de Información         Imagen Oficial
                                Dokuwiki
Dokuwiki:

                                Imagen Oficial
Servidor de Control Versiones   Source Control
Subversion:                     Svn/Git/Bzr/Hg



Servidor de Int. Continua       Imagen Comunitaria.
                                Desarrollada por
Jenkins:                        Adrian Moya.



                                                 19 de 52
Implementando la Infraestructura
Servidor de Desarrollo / Calidad:




      LAMP/LAPP   Tomcat            PostgreSQL   MySQL




                                                         20 de 52
Implementando la Infraestructura
Consolidar servidores virtualizando:




 Intel Core2Quad 4GB RAM 320GB Disco
 SO: Proxmox-VE
 15 Servidores OVZ (TODA LA INFRAESTRUCTURA+)de 52
                                           21
Utilizando la Infraestructura




                                22 de 52
Utilizando - Icescrum
 1. Crear el proyecto y asignar/crear el equipo.




                                              23 de 52
Utilizando - Icescrum
2. Construir las historias y características en el
área de ensayo.




                                                24 de 52
Utilizando - Icescrum
3. Pasar las historias listas (aceptarlas) a la Pila del
producto y priorizarlas con el Product Owner.




                                                   25 de 52
Utilizando - Icescrum

4. Estimar las historias con el equipo (Pocker
planning).




                                                 26 de 52
Utilizando - Icescrum

5. Planificar historias en el sprint.




                                        27 de 52
Utilizando - Icescrum

6. Dividir historias en tareas y estimar en horas.




                                                 28 de 52
Utilizando - Icescrum
7. Iniciar la iteración. El equipo toma las tareas y las pone en progreso. A medida que trabaja
actualiza las horas restantes.




                                                                                      29 de 52
Utilizando - Icescrum
8. Monitoriar el progreso de la iteración.




                                             30 de 52
Utilizando - Icescrum
9. Fin de la iteración - Retrospectiva




                                         31 de 52
Utilizando - Dokuwiki
Información general:
1. Información de contacto de los miembros del
equipo.
2. Estándares de trabajo.




                                             32 de 52
Utilizando - Dokuwiki
Información por proyecto:


1. Configuraciones del repositorio de código.
2. Documentos/Información que respalden las
historias.
3. Recursos: Enlaces a Servidor IC, Ambientes de
Desarrollo y Calidad.




                                                33 de 52
Utilizando - Dokuwiki




                        34 de 52
Utilizando - SVN
Mantener el código organizado de acuerdo al
estándar:
Trunk / Tags / Branches




                                         35 de 52
Utilizando - Jenkins

Comenzamos instalando plugins:
Control de versiones: Subversion, Git
Herramienta de construcción: Symfony (php),
Grails (Groovy), Rails (Ruby), Django (Python),
Java
Análisis: Análisis de Código Estático, DRY,
Buenas prácticas, etc.
Post-construcción: Construir reportes, realizar
despliegues.
Notificaciones: Email, etc.
                                              36 de 52
Utilizando - Jenkins

1. Crear el proyecto (Generalmente estilo libre)




                                               37 de 52
Utilizando - Jenkins
2. Configurar el repositorio de codigo (trunk).




                                                  38 de 52
Utilizando - Jenkins
3. Configurar el disparador de ejecución.




                                            39 de 52
Utilizando - Jenkins
4. Configurar pasos de ejecución.
4.1. Pruebas unitarias/funcionales.




                                      40 de 52
Utilizando - Jenkins
4.2. Análisis de código estático y reportes.




                                               41 de 52
Utilizando - Jenkins
4.3. Construcción de la aplicación




                                     42 de 52
Utilizando - Jenkins
5. Desplegar en ambiente de desarrollo.




                                          43 de 52
Utilizando - Jenkins
6. Notificaciones:




                       44 de 52
Utilizando - Jenkins
Monitorear las construcciones:




                                 45 de 52
Utilizando - Jenkins
Algunas recomendaciones de trabajo:

●   Configurar límites de “violaciones” a las reglas
    aceptables.
●   Si el build se rompe, hay que repararlo de
    inmediato.




                                                  46 de 52
Utilizando – DEV y QA

   El servidor a utilizar dependerá del tipo de
    aplicación que estemos construyendo.
   En el servidor de desarrollo siempre estará
    disponible la última versión de la aplicación
    (desplegada por el Servidor de IC desde trunk).
   En el servidor de calidad estarán las versiones
    al final de una iteración (sprint).
   El servidor de calidad debe ser una COPIA
    FIEL del ambiente de producción.
                                                   47 de 52
Conclusiones
●   Debemos apoyarnos en un ecosistema de
    herramientas que faciliten nuestro trabajo y nos
    permitan atender rápidamente cualquier
    eventualidad que pueda presentarse.
●   El tiempo invertido en montar la infraestructura
    se ve compensando enormemente con las
    ventajas obtenidas de automatizar nuestro
    proceso de desarrollo ágil.
●   Debemos aprender a utilizar las herramientas,
    pues de lo contrario el resultado será el mismo
    que como si no estuviéramos utilizándolas.
                                                 48 de 52
Recomendaciones

●   Implementar una herramienta y/o práctica a la
    vez.
●   Para el manejo de incidencias, se usa el Area
    de Ensayo de Icescrum, pero podría
    incorporarse una herramienta de manejo de
    incidencias si fuera necesario (ChiliProject).
●   Para el manejo centralizado de usuarios y
    claves, se ha pensado agregar un servidor de
    autenticación (OpenLDAP).

                                                49 de 52
Recursos

Icescrum – http://www.icescrum.org/

Dokuwiki – http://www.dokuwiki.org/

Subversion – http://subversion.apache.org/

Jenkins – http://www.jenkins-ci.org/

Turnkeylinux – http://www.turnkeylinux.org/

                                         50 de 52
Preguntas




            51 de 52
Gracias por su atención


 Para comentarios/preguntas, pueden
 hacerlo a
 adrianmoya@gmail.com
 Twitter - @adrianmoya
 Blog – http://www.adrianmoya.com



                                      52 de 52

Más contenido relacionado

Destacado

Revolucion en la Constitucion. Procesos de reforma constitucional en América ...
Revolucion en la Constitucion. Procesos de reforma constitucional en América ...Revolucion en la Constitucion. Procesos de reforma constitucional en América ...
Revolucion en la Constitucion. Procesos de reforma constitucional en América ...Augusto Reina
 
La Larga Marcha de los Presidenciables
La Larga Marcha de los PresidenciablesLa Larga Marcha de los Presidenciables
La Larga Marcha de los PresidenciablesAugusto Reina
 
Presentacion Web 2.0
Presentacion Web 2.0Presentacion Web 2.0
Presentacion Web 2.0Diego Coronel
 
La SocializacióN Como Construcción De Conocimiento
La SocializacióN Como Construcción De ConocimientoLa SocializacióN Como Construcción De Conocimiento
La SocializacióN Como Construcción De Conocimientoguest7b317a
 
Especificación Mediante Ejemplos
Especificación Mediante EjemplosEspecificación Mediante Ejemplos
Especificación Mediante EjemplosAdrian Moya
 
Orgullos La O PiñOn 2
Orgullos La O PiñOn 2Orgullos La O PiñOn 2
Orgullos La O PiñOn 2guest005244
 
Paro laboral en España
Paro laboral en EspañaParo laboral en España
Paro laboral en Españavalle
 
Mina En Cajamarca
Mina En CajamarcaMina En Cajamarca
Mina En Cajamarcaencoma
 
5ta. Encuesta Nacional Sobre Imagen De GestióN Noviembre 2009
5ta. Encuesta Nacional Sobre Imagen De GestióN Noviembre 20095ta. Encuesta Nacional Sobre Imagen De GestióN Noviembre 2009
5ta. Encuesta Nacional Sobre Imagen De GestióN Noviembre 2009Enrique Lanzillotto
 

Destacado (20)

Revolucion en la Constitucion. Procesos de reforma constitucional en América ...
Revolucion en la Constitucion. Procesos de reforma constitucional en América ...Revolucion en la Constitucion. Procesos de reforma constitucional en América ...
Revolucion en la Constitucion. Procesos de reforma constitucional en América ...
 
La Larga Marcha de los Presidenciables
La Larga Marcha de los PresidenciablesLa Larga Marcha de los Presidenciables
La Larga Marcha de los Presidenciables
 
Leo
LeoLeo
Leo
 
El celular y su uso-
 El celular y su uso- El celular y su uso-
El celular y su uso-
 
Presentacion Web 2.0
Presentacion Web 2.0Presentacion Web 2.0
Presentacion Web 2.0
 
La SocializacióN Como Construcción De Conocimiento
La SocializacióN Como Construcción De ConocimientoLa SocializacióN Como Construcción De Conocimiento
La SocializacióN Como Construcción De Conocimiento
 
Encanto
EncantoEncanto
Encanto
 
Argentina
ArgentinaArgentina
Argentina
 
Grandes pintores
Grandes pintoresGrandes pintores
Grandes pintores
 
Ivadis[1]
Ivadis[1]Ivadis[1]
Ivadis[1]
 
Amor de paladar
Amor de paladarAmor de paladar
Amor de paladar
 
Especificación Mediante Ejemplos
Especificación Mediante EjemplosEspecificación Mediante Ejemplos
Especificación Mediante Ejemplos
 
Colírio 3
Colírio 3Colírio 3
Colírio 3
 
Orgullos La O PiñOn 2
Orgullos La O PiñOn 2Orgullos La O PiñOn 2
Orgullos La O PiñOn 2
 
Paro laboral en España
Paro laboral en EspañaParo laboral en España
Paro laboral en España
 
El Agua
El AguaEl Agua
El Agua
 
3 Deseos
3 Deseos3 Deseos
3 Deseos
 
Mina En Cajamarca
Mina En CajamarcaMina En Cajamarca
Mina En Cajamarca
 
Manolomurillo
ManolomurilloManolomurillo
Manolomurillo
 
5ta. Encuesta Nacional Sobre Imagen De GestióN Noviembre 2009
5ta. Encuesta Nacional Sobre Imagen De GestióN Noviembre 20095ta. Encuesta Nacional Sobre Imagen De GestióN Noviembre 2009
5ta. Encuesta Nacional Sobre Imagen De GestióN Noviembre 2009
 

Similar a Infraestructura agil

De desarrollo a producción usando docker
De desarrollo a producción usando dockerDe desarrollo a producción usando docker
De desarrollo a producción usando dockerChristian Rodriguez
 
Administracion de datos
Administracion de datosAdministracion de datos
Administracion de datosUsein Gonzalez
 
Pruebas de integración con Docker en Azure DevOps
Pruebas de integración con Docker en Azure DevOpsPruebas de integración con Docker en Azure DevOps
Pruebas de integración con Docker en Azure DevOpsSoftware Guru
 
Despliegue de Imágenes en aulas de informática
Despliegue de Imágenes en aulas de informáticaDespliegue de Imágenes en aulas de informática
Despliegue de Imágenes en aulas de informáticassuserbd237f
 
Seminario Spring Roo. Monitorización con Spring Insight
Seminario Spring Roo. Monitorización con Spring InsightSeminario Spring Roo. Monitorización con Spring Insight
Seminario Spring Roo. Monitorización con Spring InsightParadigma Digital
 
Corriendo SQL Server en Docker
Corriendo SQL Server en DockerCorriendo SQL Server en Docker
Corriendo SQL Server en DockerJavier Villegas
 
Presentacion de integracion continua (lima agile)
Presentacion de integracion continua (lima agile)Presentacion de integracion continua (lima agile)
Presentacion de integracion continua (lima agile)Gustavo Veliz
 
Meetup Integración Continua y Jenkins
Meetup Integración Continua y Jenkins Meetup Integración Continua y Jenkins
Meetup Integración Continua y Jenkins armolinamilla
 
Sistema operativos para red
Sistema operativos para redSistema operativos para red
Sistema operativos para redNin Bordon
 
Mecanismos y patrones para acelerar adopción en arquitecturas de microservicios
Mecanismos y patrones para acelerar adopción en arquitecturas de microserviciosMecanismos y patrones para acelerar adopción en arquitecturas de microservicios
Mecanismos y patrones para acelerar adopción en arquitecturas de microserviciosSoftware Guru
 
Infrastructure as Code
Infrastructure as CodeInfrastructure as Code
Infrastructure as CodeAngel Nuñez
 
Paso4 colborativo3 grupo11
Paso4 colborativo3 grupo11Paso4 colborativo3 grupo11
Paso4 colborativo3 grupo11YOLAGAR
 

Similar a Infraestructura agil (20)

Introduccion Java.ppt
Introduccion Java.pptIntroduccion Java.ppt
Introduccion Java.ppt
 
Metacoretex
MetacoretexMetacoretex
Metacoretex
 
De desarrollo a producción usando docker
De desarrollo a producción usando dockerDe desarrollo a producción usando docker
De desarrollo a producción usando docker
 
Administracion de datos
Administracion de datosAdministracion de datos
Administracion de datos
 
Pruebas de integración con Docker en Azure DevOps
Pruebas de integración con Docker en Azure DevOpsPruebas de integración con Docker en Azure DevOps
Pruebas de integración con Docker en Azure DevOps
 
Despliegue de Imágenes en aulas de informática
Despliegue de Imágenes en aulas de informáticaDespliegue de Imágenes en aulas de informática
Despliegue de Imágenes en aulas de informática
 
Despliegue de la solución de software
Despliegue de la solución de softwareDespliegue de la solución de software
Despliegue de la solución de software
 
Seminario Spring Roo. Monitorización con Spring Insight
Seminario Spring Roo. Monitorización con Spring InsightSeminario Spring Roo. Monitorización con Spring Insight
Seminario Spring Roo. Monitorización con Spring Insight
 
Kubernetes para developers
Kubernetes para developersKubernetes para developers
Kubernetes para developers
 
Corriendo SQL Server en Docker
Corriendo SQL Server en DockerCorriendo SQL Server en Docker
Corriendo SQL Server en Docker
 
Presentacion de integracion continua (lima agile)
Presentacion de integracion continua (lima agile)Presentacion de integracion continua (lima agile)
Presentacion de integracion continua (lima agile)
 
Meetup Integración Continua y Jenkins
Meetup Integración Continua y Jenkins Meetup Integración Continua y Jenkins
Meetup Integración Continua y Jenkins
 
Sistema operativos para red
Sistema operativos para redSistema operativos para red
Sistema operativos para red
 
Introduccion al desarrollo
Introduccion al desarrolloIntroduccion al desarrollo
Introduccion al desarrollo
 
Mecanismos y patrones para acelerar adopción en arquitecturas de microservicios
Mecanismos y patrones para acelerar adopción en arquitecturas de microserviciosMecanismos y patrones para acelerar adopción en arquitecturas de microservicios
Mecanismos y patrones para acelerar adopción en arquitecturas de microservicios
 
Carlos arteche gonzalez
Carlos arteche gonzalezCarlos arteche gonzalez
Carlos arteche gonzalez
 
Lab3 cristian gastelbondo
Lab3 cristian gastelbondoLab3 cristian gastelbondo
Lab3 cristian gastelbondo
 
Infrastructure as Code
Infrastructure as CodeInfrastructure as Code
Infrastructure as Code
 
Paso4 colborativo3 grupo11
Paso4 colborativo3 grupo11Paso4 colborativo3 grupo11
Paso4 colborativo3 grupo11
 
ATICA DevOps
ATICA DevOpsATICA DevOps
ATICA DevOps
 

Último

664867799-50-capsulas-de-amor-563064-downloadable-3662340.pdf
664867799-50-capsulas-de-amor-563064-downloadable-3662340.pdf664867799-50-capsulas-de-amor-563064-downloadable-3662340.pdf
664867799-50-capsulas-de-amor-563064-downloadable-3662340.pdfLoreto Bravo
 
LAS CIRCULARES Y MIS COMUNICADOS de los Maestres COMENTADOS.docx
LAS CIRCULARES Y MIS COMUNICADOS de los Maestres COMENTADOS.docxLAS CIRCULARES Y MIS COMUNICADOS de los Maestres COMENTADOS.docx
LAS CIRCULARES Y MIS COMUNICADOS de los Maestres COMENTADOS.docxRafael Reverte Pérez
 
El Secreto de las Runas. Manual introductorio.
El Secreto de las Runas. Manual introductorio.El Secreto de las Runas. Manual introductorio.
El Secreto de las Runas. Manual introductorio.ssuser68a47e
 
CINE Y METODOS DE SOLUCION DE CONFLICTOS
CINE Y METODOS DE SOLUCION DE CONFLICTOSCINE Y METODOS DE SOLUCION DE CONFLICTOS
CINE Y METODOS DE SOLUCION DE CONFLICTOSGenHv
 
Libro de Culpa Mia de Mercedes Ron.pdf..
Libro de Culpa Mia de Mercedes Ron.pdf..Libro de Culpa Mia de Mercedes Ron.pdf..
Libro de Culpa Mia de Mercedes Ron.pdf..FridaCuesta
 
La Magia de Pensar en Grande -- David J_ Schwartz.pdf
La Magia de Pensar en Grande -- David J_ Schwartz.pdfLa Magia de Pensar en Grande -- David J_ Schwartz.pdf
La Magia de Pensar en Grande -- David J_ Schwartz.pdfvan graznarth
 
la obra literaria EL AVARO DE moliere 2024
la obra literaria EL AVARO DE moliere 2024la obra literaria EL AVARO DE moliere 2024
la obra literaria EL AVARO DE moliere 2024Jose Aguilar
 
SIMON EL MAGO por Pr. Luis Polo de "Verdades de la Biblia"
SIMON EL MAGO por Pr. Luis Polo de "Verdades de la Biblia"SIMON EL MAGO por Pr. Luis Polo de "Verdades de la Biblia"
SIMON EL MAGO por Pr. Luis Polo de "Verdades de la Biblia"RestauracionPentecos
 
TALLER -SISTEMA CODIGOS DE LUZ - ACCTIVACION DE CODIGOS LEMURIANOS Y ATLANTES
TALLER -SISTEMA CODIGOS DE LUZ - ACCTIVACION DE CODIGOS LEMURIANOS Y ATLANTESTALLER -SISTEMA CODIGOS DE LUZ - ACCTIVACION DE CODIGOS LEMURIANOS Y ATLANTES
TALLER -SISTEMA CODIGOS DE LUZ - ACCTIVACION DE CODIGOS LEMURIANOS Y ATLANTESVernicaLocatelli1
 
ADORACIÓN EUCARÍSTICA. invitación a ser un Adorador
ADORACIÓN EUCARÍSTICA. invitación a ser un AdoradorADORACIÓN EUCARÍSTICA. invitación a ser un Adorador
ADORACIÓN EUCARÍSTICA. invitación a ser un Adoradorparroquiadostilos
 
Cuadernillo para niños inicial 2 años con 15 páginas
Cuadernillo para niños inicial 2 años con 15 páginasCuadernillo para niños inicial 2 años con 15 páginas
Cuadernillo para niños inicial 2 años con 15 páginasNinettAB
 
Libro de culpa mía por mercedes ron 2016 en pdf
Libro de culpa mía por mercedes ron 2016 en pdfLibro de culpa mía por mercedes ron 2016 en pdf
Libro de culpa mía por mercedes ron 2016 en pdfFridaCuesta
 
GUIA DE NUTRICION Y ENTRENAMIENTO para principiantes
GUIA DE NUTRICION Y ENTRENAMIENTO para principiantesGUIA DE NUTRICION Y ENTRENAMIENTO para principiantes
GUIA DE NUTRICION Y ENTRENAMIENTO para principiantesDiegoGandara5
 

Último (15)

664867799-50-capsulas-de-amor-563064-downloadable-3662340.pdf
664867799-50-capsulas-de-amor-563064-downloadable-3662340.pdf664867799-50-capsulas-de-amor-563064-downloadable-3662340.pdf
664867799-50-capsulas-de-amor-563064-downloadable-3662340.pdf
 
PARA LEONARDO CIEZA - TEXTO RESUMEN.docx
PARA LEONARDO CIEZA - TEXTO RESUMEN.docxPARA LEONARDO CIEZA - TEXTO RESUMEN.docx
PARA LEONARDO CIEZA - TEXTO RESUMEN.docx
 
LAS CIRCULARES Y MIS COMUNICADOS de los Maestres COMENTADOS.docx
LAS CIRCULARES Y MIS COMUNICADOS de los Maestres COMENTADOS.docxLAS CIRCULARES Y MIS COMUNICADOS de los Maestres COMENTADOS.docx
LAS CIRCULARES Y MIS COMUNICADOS de los Maestres COMENTADOS.docx
 
El Secreto de las Runas. Manual introductorio.
El Secreto de las Runas. Manual introductorio.El Secreto de las Runas. Manual introductorio.
El Secreto de las Runas. Manual introductorio.
 
40 Articulos sobre el liderazgo.........
40 Articulos sobre el liderazgo.........40 Articulos sobre el liderazgo.........
40 Articulos sobre el liderazgo.........
 
CINE Y METODOS DE SOLUCION DE CONFLICTOS
CINE Y METODOS DE SOLUCION DE CONFLICTOSCINE Y METODOS DE SOLUCION DE CONFLICTOS
CINE Y METODOS DE SOLUCION DE CONFLICTOS
 
Libro de Culpa Mia de Mercedes Ron.pdf..
Libro de Culpa Mia de Mercedes Ron.pdf..Libro de Culpa Mia de Mercedes Ron.pdf..
Libro de Culpa Mia de Mercedes Ron.pdf..
 
La Magia de Pensar en Grande -- David J_ Schwartz.pdf
La Magia de Pensar en Grande -- David J_ Schwartz.pdfLa Magia de Pensar en Grande -- David J_ Schwartz.pdf
La Magia de Pensar en Grande -- David J_ Schwartz.pdf
 
la obra literaria EL AVARO DE moliere 2024
la obra literaria EL AVARO DE moliere 2024la obra literaria EL AVARO DE moliere 2024
la obra literaria EL AVARO DE moliere 2024
 
SIMON EL MAGO por Pr. Luis Polo de "Verdades de la Biblia"
SIMON EL MAGO por Pr. Luis Polo de "Verdades de la Biblia"SIMON EL MAGO por Pr. Luis Polo de "Verdades de la Biblia"
SIMON EL MAGO por Pr. Luis Polo de "Verdades de la Biblia"
 
TALLER -SISTEMA CODIGOS DE LUZ - ACCTIVACION DE CODIGOS LEMURIANOS Y ATLANTES
TALLER -SISTEMA CODIGOS DE LUZ - ACCTIVACION DE CODIGOS LEMURIANOS Y ATLANTESTALLER -SISTEMA CODIGOS DE LUZ - ACCTIVACION DE CODIGOS LEMURIANOS Y ATLANTES
TALLER -SISTEMA CODIGOS DE LUZ - ACCTIVACION DE CODIGOS LEMURIANOS Y ATLANTES
 
ADORACIÓN EUCARÍSTICA. invitación a ser un Adorador
ADORACIÓN EUCARÍSTICA. invitación a ser un AdoradorADORACIÓN EUCARÍSTICA. invitación a ser un Adorador
ADORACIÓN EUCARÍSTICA. invitación a ser un Adorador
 
Cuadernillo para niños inicial 2 años con 15 páginas
Cuadernillo para niños inicial 2 años con 15 páginasCuadernillo para niños inicial 2 años con 15 páginas
Cuadernillo para niños inicial 2 años con 15 páginas
 
Libro de culpa mía por mercedes ron 2016 en pdf
Libro de culpa mía por mercedes ron 2016 en pdfLibro de culpa mía por mercedes ron 2016 en pdf
Libro de culpa mía por mercedes ron 2016 en pdf
 
GUIA DE NUTRICION Y ENTRENAMIENTO para principiantes
GUIA DE NUTRICION Y ENTRENAMIENTO para principiantesGUIA DE NUTRICION Y ENTRENAMIENTO para principiantes
GUIA DE NUTRICION Y ENTRENAMIENTO para principiantes
 

Infraestructura agil

  • 1. Infraestructura de Desarrollo Ágil Como apoyarnos en herramientas libres para construir software aplicando Scrum + XP. Ing. Adrian Moya Mérida, Octubre de 2011 1 de 52
  • 2. Agenda 1. Introducción. 2. Infraestructura. 3. Construcción. 4. Utilización. 5. Conclusiones. 2 de 52
  • 3. Infraestructura de Desarrollo Ágil En casa de herrero, cuchillo de palo 3 de 52
  • 4. Infraestructura Ágil ¿Qué necesitamos? 4 de 52
  • 5. Prácticas y requerimientos SCRUM: Planificar y Gestionar el proyecto  Llevar control de las historias de usuario.  Planificar las entregas en iteraciones.  Medir el avance del equipo. XP: Prácticas de Desarrollo  Buena comunicación del equipo.  Control de versiones de código.  Integrar código continuamente.  Pruebas unitarias de código. 5 de 52
  • 6. Infraestructura Ágil Servidor de Servidor de Servidor Controlador Servidor de Scrum Información de Versiones Integración Continua Servidor de Estaciones de trabajo Desarrollo Servidor de Calidad 6 de 52
  • 8. Servidor de Scrum  Herramienta que lleva el control del proceso Scrum.  Fácil instalación y configuración.  Backlog de producto automatizado.  Planificación de Entregas e Iteraciones.  Tablero de actividad del proyecto.  Gráficas de Burndown, Velocidad entre otras. 8 de 52
  • 9. Servidor de Información DokuWiki 9 de 52
  • 10. Servidor de Información DokuWiki  Wiki sencillo de usar.  Basado en archivos de texto (no requiere DB).  Sintaxis simple pero poderosa.  Rápido.  Tematizable  Extensible vía plugins. 10 de 52
  • 11. Servidor Controlador de Versiones 11 de 52
  • 12. Servidor Controlador de Versiones  Sistema de control de versiones centralizado.  Fácil uso y excelente documentación.  Soporte de ramas y etiquetas.  Soporte de archivos binarios.  Cliente Tortoise (integración en Windows) y RabitVCS (Linux).  Puede ser servido a través de apache. 12 de 52
  • 13. Servidor de integración continua 13 de 52
  • 14. Servidor de integración continua  Herramienta que monitorea la ejecución de trabajos repetitivos.  Construcción y prueba de proyectos de manera continua.  Fácil instalación y configuración.  Soporta múltiples control de versiones.  Notificaciones por RSS/Correo.  Extensible vía plugins. 14 de 52
  • 15. Servidores de Desarrollo y Calidad 15 de 52
  • 16. Infraestructura Ágil DokuWiki Servidor de Servidor de Servidor Controlador Servidor de Scrum Información de Versiones Integración Continua Servidor de Estaciones de trabajo Desarrollo Servidor de Calidad 16 de 52
  • 17. Implementando la Infraestructura ¿Cómo instalo todo esto? 17 de 52
  • 18. Implementando la Infraestructura  Librería de aplicaciones que incluye lo mejor del software libre en un formato empaquetado y listo para usar.  Servidores basados en Ubuntu 10.04 LTS.  Optimizados para facilidad de uso y despliegue rápido (sólo minutos).  Instalables en servidores físicos, máquinas virtuales o en la nube. 18 de 52
  • 19. Implementando la Infraestructura Servidor de Scrum Imagen Comunitaria. Desarrollada por Icescrum: Adrian Moya. Servidor de Información Imagen Oficial Dokuwiki Dokuwiki: Imagen Oficial Servidor de Control Versiones Source Control Subversion: Svn/Git/Bzr/Hg Servidor de Int. Continua Imagen Comunitaria. Desarrollada por Jenkins: Adrian Moya. 19 de 52
  • 20. Implementando la Infraestructura Servidor de Desarrollo / Calidad: LAMP/LAPP Tomcat PostgreSQL MySQL 20 de 52
  • 21. Implementando la Infraestructura Consolidar servidores virtualizando: Intel Core2Quad 4GB RAM 320GB Disco SO: Proxmox-VE 15 Servidores OVZ (TODA LA INFRAESTRUCTURA+)de 52 21
  • 23. Utilizando - Icescrum 1. Crear el proyecto y asignar/crear el equipo. 23 de 52
  • 24. Utilizando - Icescrum 2. Construir las historias y características en el área de ensayo. 24 de 52
  • 25. Utilizando - Icescrum 3. Pasar las historias listas (aceptarlas) a la Pila del producto y priorizarlas con el Product Owner. 25 de 52
  • 26. Utilizando - Icescrum 4. Estimar las historias con el equipo (Pocker planning). 26 de 52
  • 27. Utilizando - Icescrum 5. Planificar historias en el sprint. 27 de 52
  • 28. Utilizando - Icescrum 6. Dividir historias en tareas y estimar en horas. 28 de 52
  • 29. Utilizando - Icescrum 7. Iniciar la iteración. El equipo toma las tareas y las pone en progreso. A medida que trabaja actualiza las horas restantes. 29 de 52
  • 30. Utilizando - Icescrum 8. Monitoriar el progreso de la iteración. 30 de 52
  • 31. Utilizando - Icescrum 9. Fin de la iteración - Retrospectiva 31 de 52
  • 32. Utilizando - Dokuwiki Información general: 1. Información de contacto de los miembros del equipo. 2. Estándares de trabajo. 32 de 52
  • 33. Utilizando - Dokuwiki Información por proyecto: 1. Configuraciones del repositorio de código. 2. Documentos/Información que respalden las historias. 3. Recursos: Enlaces a Servidor IC, Ambientes de Desarrollo y Calidad. 33 de 52
  • 35. Utilizando - SVN Mantener el código organizado de acuerdo al estándar: Trunk / Tags / Branches 35 de 52
  • 36. Utilizando - Jenkins Comenzamos instalando plugins: Control de versiones: Subversion, Git Herramienta de construcción: Symfony (php), Grails (Groovy), Rails (Ruby), Django (Python), Java Análisis: Análisis de Código Estático, DRY, Buenas prácticas, etc. Post-construcción: Construir reportes, realizar despliegues. Notificaciones: Email, etc. 36 de 52
  • 37. Utilizando - Jenkins 1. Crear el proyecto (Generalmente estilo libre) 37 de 52
  • 38. Utilizando - Jenkins 2. Configurar el repositorio de codigo (trunk). 38 de 52
  • 39. Utilizando - Jenkins 3. Configurar el disparador de ejecución. 39 de 52
  • 40. Utilizando - Jenkins 4. Configurar pasos de ejecución. 4.1. Pruebas unitarias/funcionales. 40 de 52
  • 41. Utilizando - Jenkins 4.2. Análisis de código estático y reportes. 41 de 52
  • 42. Utilizando - Jenkins 4.3. Construcción de la aplicación 42 de 52
  • 43. Utilizando - Jenkins 5. Desplegar en ambiente de desarrollo. 43 de 52
  • 44. Utilizando - Jenkins 6. Notificaciones: 44 de 52
  • 45. Utilizando - Jenkins Monitorear las construcciones: 45 de 52
  • 46. Utilizando - Jenkins Algunas recomendaciones de trabajo: ● Configurar límites de “violaciones” a las reglas aceptables. ● Si el build se rompe, hay que repararlo de inmediato. 46 de 52
  • 47. Utilizando – DEV y QA  El servidor a utilizar dependerá del tipo de aplicación que estemos construyendo.  En el servidor de desarrollo siempre estará disponible la última versión de la aplicación (desplegada por el Servidor de IC desde trunk).  En el servidor de calidad estarán las versiones al final de una iteración (sprint).  El servidor de calidad debe ser una COPIA FIEL del ambiente de producción. 47 de 52
  • 48. Conclusiones ● Debemos apoyarnos en un ecosistema de herramientas que faciliten nuestro trabajo y nos permitan atender rápidamente cualquier eventualidad que pueda presentarse. ● El tiempo invertido en montar la infraestructura se ve compensando enormemente con las ventajas obtenidas de automatizar nuestro proceso de desarrollo ágil. ● Debemos aprender a utilizar las herramientas, pues de lo contrario el resultado será el mismo que como si no estuviéramos utilizándolas. 48 de 52
  • 49. Recomendaciones ● Implementar una herramienta y/o práctica a la vez. ● Para el manejo de incidencias, se usa el Area de Ensayo de Icescrum, pero podría incorporarse una herramienta de manejo de incidencias si fuera necesario (ChiliProject). ● Para el manejo centralizado de usuarios y claves, se ha pensado agregar un servidor de autenticación (OpenLDAP). 49 de 52
  • 50. Recursos Icescrum – http://www.icescrum.org/ Dokuwiki – http://www.dokuwiki.org/ Subversion – http://subversion.apache.org/ Jenkins – http://www.jenkins-ci.org/ Turnkeylinux – http://www.turnkeylinux.org/ 50 de 52
  • 51. Preguntas 51 de 52
  • 52. Gracias por su atención Para comentarios/preguntas, pueden hacerlo a adrianmoya@gmail.com Twitter - @adrianmoya Blog – http://www.adrianmoya.com 52 de 52