Este documento discute las diferencias entre la integración continua y la integración controlada. La integración continua implica integrar el código de forma frecuente, mientras que la integración controlada implica integrar el código en momentos específicos. El documento también explora varias alternativas de integración, como permitir que los desarrolladores realicen la integración y las pruebas en lugar de un solo integrador. Finalmente, el documento concluye que el sistema de control de versiones no debe limitar las opciones de integración de un
Scrum ¿Qué es y porqué debería interesarme? - UNMSMHiroshi Hiromoto
Scrum@unmsm describe Scrum, un marco ágil para el desarrollo de software. Explica que Scrum permite emplear varios procesos y técnicas para gestionar un proyecto de software de manera flexible. Detalla los roles clave de Scrum: el Equipo, el Dueño del Producto y el Maestro de Scrum. También resume el proceso Scrum que incluye Sprints, reuniones y herramientas. Alienta a los estudiantes a aprender Scrum para ganar ventaja competitiva y mejorar continuamente mediante la práct
Porqué Cervantes programaba mejor que túAgile Spain
Este documento discute la importancia de escribir código legible y de calidad. Señala que Cervantes probablemente programaba mejor que muchos programadores modernos debido a su enfoque en la claridad y simplicidad. También cubre principios de diseño de software como acoplamiento, duplicación, encapsulación y pruebas unitarias. En general, enfatiza que un código bien escrito debe ser fácil de leer y entender.
The document contains a list of URLs linking to various topics related to agile software development methodologies including: Scrum, XP, Kanban, Lean, SOLID principles, retrospectives, user stories, testing, and project management tools like Gantt charts. The URLs cover conferences, manifestos, photos, documents, collaboration tools, software development guides, and examples of completed projects.
El Proyecto Matriz #62. MICROCHIPS EN HUMANOS. AVANZA EL PROCESO GLOBALProyecto Matriz
Podemos encontrar un conjunto articulado e interrelacionado de procesos con base legal, económica y logística que confluyen en el establecimiento de una situación socio-económica y macropolítica ideal para poner en marcha un plan (diseñado de acuerdo con una agenda de poder) de registro electrónico no solo de las acciones de las personas, sino de las personas mismas, quienes por ley y seguridad vienen a convertirse en engranajes irreversibles de un sistema global que no permite personas no alineadas o disidentes.
http://elproyectomatriz.wordpress.com/2008/12/16/microchips-en-humanos-avanza-el-proceso-global/
El documento presenta los conceptos y dinámicas de una metodología ágil llamada Scrum. Describe los roles como Dueño del Producto, Scrum Master y Equipo, así como las reuniones como Sprint Planning, Review y Daily Scrum. También explica artefactos como Product Backlog, Sprint Backlog y Burndown Charts. El objetivo es aplicar Scrum para lograr colaboración, innovación, feedback y aprendizaje colectivo entre el equipo y el cliente.
Este documento presenta las mejores prácticas para el desarrollo de aplicaciones en la nube utilizando metodologías ágiles como Scrum y XP. 1) Explica cómo adaptar Scrum al desarrollo en la nube, teniendo en cuenta limitaciones como peticiones de 30 segundos. 2) Detalla cómo implementar TDD, pruebas y CI/CD considerando las capas PaaS e IaaS. 3) Discute cómo los modelos de datos no-SQL afectan al diseño y cómo manejar la sesión en estos entornos.
Este documento presenta varias herramientas visuales para mejorar la gestión de proyectos ágiles mediante Scrum. Se describen tableros Scrum que utilizan tarjetas de tareas para mostrar el estado de los elementos en diferentes columnas. También se muestra un tablero "Scrum of Scrums" para coordinar múltiples equipos de trabajo. El objetivo es proporcionar información visual clara a todos los roles para mejorar la comunicación, planificación y seguimiento de los proyectos.
Quiero hacer ágil, ¿y ahora qué: Java, Ruby o Scala?Agile Spain
Este documento compara diferentes lenguajes de programación como Java, Ruby y Scala para determinar cuál es más adecuado para desarrollos ágiles. Discute aspectos como la popularidad de cada lenguaje, su capacidad para pruebas automatizadas y entrega continua de valor, así como si son dinámicos o estáticos y cuán verbosos o concisos son. También menciona brevemente temas como diseño simple, arquitectura y uso de nuevos lenguajes en proyectos existentes.
Scrum ¿Qué es y porqué debería interesarme? - UNMSMHiroshi Hiromoto
Scrum@unmsm describe Scrum, un marco ágil para el desarrollo de software. Explica que Scrum permite emplear varios procesos y técnicas para gestionar un proyecto de software de manera flexible. Detalla los roles clave de Scrum: el Equipo, el Dueño del Producto y el Maestro de Scrum. También resume el proceso Scrum que incluye Sprints, reuniones y herramientas. Alienta a los estudiantes a aprender Scrum para ganar ventaja competitiva y mejorar continuamente mediante la práct
Porqué Cervantes programaba mejor que túAgile Spain
Este documento discute la importancia de escribir código legible y de calidad. Señala que Cervantes probablemente programaba mejor que muchos programadores modernos debido a su enfoque en la claridad y simplicidad. También cubre principios de diseño de software como acoplamiento, duplicación, encapsulación y pruebas unitarias. En general, enfatiza que un código bien escrito debe ser fácil de leer y entender.
The document contains a list of URLs linking to various topics related to agile software development methodologies including: Scrum, XP, Kanban, Lean, SOLID principles, retrospectives, user stories, testing, and project management tools like Gantt charts. The URLs cover conferences, manifestos, photos, documents, collaboration tools, software development guides, and examples of completed projects.
El Proyecto Matriz #62. MICROCHIPS EN HUMANOS. AVANZA EL PROCESO GLOBALProyecto Matriz
Podemos encontrar un conjunto articulado e interrelacionado de procesos con base legal, económica y logística que confluyen en el establecimiento de una situación socio-económica y macropolítica ideal para poner en marcha un plan (diseñado de acuerdo con una agenda de poder) de registro electrónico no solo de las acciones de las personas, sino de las personas mismas, quienes por ley y seguridad vienen a convertirse en engranajes irreversibles de un sistema global que no permite personas no alineadas o disidentes.
http://elproyectomatriz.wordpress.com/2008/12/16/microchips-en-humanos-avanza-el-proceso-global/
El documento presenta los conceptos y dinámicas de una metodología ágil llamada Scrum. Describe los roles como Dueño del Producto, Scrum Master y Equipo, así como las reuniones como Sprint Planning, Review y Daily Scrum. También explica artefactos como Product Backlog, Sprint Backlog y Burndown Charts. El objetivo es aplicar Scrum para lograr colaboración, innovación, feedback y aprendizaje colectivo entre el equipo y el cliente.
Este documento presenta las mejores prácticas para el desarrollo de aplicaciones en la nube utilizando metodologías ágiles como Scrum y XP. 1) Explica cómo adaptar Scrum al desarrollo en la nube, teniendo en cuenta limitaciones como peticiones de 30 segundos. 2) Detalla cómo implementar TDD, pruebas y CI/CD considerando las capas PaaS e IaaS. 3) Discute cómo los modelos de datos no-SQL afectan al diseño y cómo manejar la sesión en estos entornos.
Este documento presenta varias herramientas visuales para mejorar la gestión de proyectos ágiles mediante Scrum. Se describen tableros Scrum que utilizan tarjetas de tareas para mostrar el estado de los elementos en diferentes columnas. También se muestra un tablero "Scrum of Scrums" para coordinar múltiples equipos de trabajo. El objetivo es proporcionar información visual clara a todos los roles para mejorar la comunicación, planificación y seguimiento de los proyectos.
Quiero hacer ágil, ¿y ahora qué: Java, Ruby o Scala?Agile Spain
Este documento compara diferentes lenguajes de programación como Java, Ruby y Scala para determinar cuál es más adecuado para desarrollos ágiles. Discute aspectos como la popularidad de cada lenguaje, su capacidad para pruebas automatizadas y entrega continua de valor, así como si son dinámicos o estáticos y cuán verbosos o concisos son. También menciona brevemente temas como diseño simple, arquitectura y uso de nuevos lenguajes en proyectos existentes.
Lessons learned from contrasting Design Thinking and Agile Project Management...Agile Spain
This document discusses contrasting Design Thinking and Agile Project Management methodologies. It provides background on how Design Thinking uses collaborative, interdisciplinary teams without hierarchy to solve problems creatively. However, questions remain about how unstructured teams fit within broader project management models. The document also discusses how Agile methodologies aim to increase flexibility and shorten timelines for software development. It proposes combining Design Thinking and Agile methods like Scrum to structure creative teams within a project management framework and make leadership roles more explicit.
Visual Scrum - What you see is What you getAgile Spain
Este documento describe cómo la gestión visual puede aplicarse más allá del equipo de desarrollo en Scrum para proporcionar información relevante a otros roles como la dirección, propietarios de productos y equipos. Se presentan ejemplos de cómo tableros visuales podrían adaptarse a diferentes tipos de proyectos y roles para mejorar la comunicación y toma de decisiones.
Un Primer Paso a la Agilidad: Retrospectivas para el Aprendizaje de la Ingeni...Agile Spain
Este documento describe un proyecto para adoptar metodologías ágiles como Scrum en el aprendizaje de ingeniería de software en la universidad. El proyecto "Agile Learning" implementa Scrum en asignaturas mediante el trabajo en equipo, entregas iterativas frecuentes y reuniones retrospectivas. El objetivo es que los estudiantes desarrollen competencias blandas y aprendan a aplicar metodologías ágiles durante toda su formación, mejorando su preparación para el mundo laboral.
Análisis de la implementación de prácticas ágiles en ArgentinaAgile Spain
Este documento analiza la implementación de prácticas ágiles en Argentina a través de encuestas a empresas. Se encontró que el 85% usa Scrum de forma parcial y la participación del cliente es difícil de lograr. También se identificaron problemas como la dificultad de estimar proyectos y falta de cambio cultural. Se concluye que las prácticas ágiles se usan parcialmente y su implementación completa enfrenta desafíos.
1. El documento describe diferentes tipos de contratos ágiles como cocinar recetas, con variables como alcance, coste y plazos. Señala cuándo cada tipo es más adecuado y cómo gestionar variables fijadas.
2. Explica que los contratos deben establecer un acuerdo mutuamente beneficioso y reglas que faciliten la colaboración.
3. Resalta la importancia de crear equipos de alto rendimiento que incluyan al cliente a largo plazo para lograr mejores resultados proyecto a pro
El documento habla sobre la gestión de configuración y el control de versiones en el desarrollo ágil de software. Explica que la gestión de configuración implica procedimientos para identificar, controlar y auditar cambios en un proyecto de software, no solo en el código fuente sino también en otros artefactos. Luego describe conceptos clave del control de versiones como repositorios, líneas base, confirmaciones y ramas. Finalmente, propone una estrategia de control de versiones ágil basada en un modelo de aislamiento de ramas, políticas para la promoci
El documento presenta una introducción a la implementación de metodologías ágiles. Explica conceptos clave como equipos, roles, procesos y artefactos ágiles. También identifica buenas prácticas como la formación continua, alineación con el negocio y medición de resultados, así como antipatrones a evitar como ignorar al cliente o no realizar retrospectivas. El objetivo es ayudar a las organizaciones a adoptar un enfoque ágil de manera gradual.
El documento presenta los principios de la gestión ágil de equipos. Explica que un equipo efectivo requiere diversidad, flexibilidad y autogestión más que reglas estrictas. También destaca la importancia del liderazgo que guía en lugar de controlar, y evita antipatrones como la microgestión y la presión excesiva. El documento concluye animando a la acción continua y al desarrollo de más líderes dentro de los equipos.
El documento habla sobre los esfuerzos de Telefónica I+D para integrar prácticas ágiles y de experiencia de usuario para lograr mayor agilidad e innovación. Desde 2008, Telefónica I+D ha adoptado un enfoque ágil para sus proyectos y recientemente también se ha inspirado en el paradigma de "innovación impulsada por el cliente", colocando a los usuarios finales en el centro del proceso de innovación. El objetivo es utilizar ambas aproximaciones de manera enriquecedora para desarrollar productos innovadores
The document discusses the use of an agile toolchain at mimacom to improve traceability and transparency from product vision to working software. Some key challenges included a lack of integrated versioning, change history, and metrics collection across multiple disconnected tools. mimacom implemented Scrum processes along with an integrated toolchain including a product backlog, taskboard, burndown charts, and code review tools to improve visibility, coordination for distributed teams, and collect metrics to measure progress.
Este documento resume los principios y prácticas ágiles como guía para el desarrollo de software. Aborda temas como la importancia de la confianza, la composición efectiva de equipos, la entrega continua de valor al cliente a través de iteraciones cortas, la colaboración estrecha con el cliente, y el uso de retrospectivas para promover el aprendizaje y la mejora continua. El objetivo general es explicar por qué los enfoques ágiles pueden ser superiores a los modelos de desarrollo de software más tradicionales.
This document discusses different perspectives on tracking defects in Agile development and proposes an alternative approach. It argues that defects should be treated like user stories with estimates and tests rather than using separate tracking tools. Within a sprint, any issues found should be visible on the task board as tests to be fixed. This maintains visibility while avoiding separate backlogs. The document shares a case study where this approach worked well but faced challenges with remote visibility and lack of automation. It concludes defects are best addressed by tracking tests, not bugs, and prioritizing visibility and automation.
The document discusses the role of testers in traditional vs agile projects. In traditional projects, testers join late and write test cases to run on completed code. In agile projects, developers automate acceptance tests using ATDD and defects are failing tests. Some managers think testers are not needed since developers test. However, testers add value by asking questions others don't to get a unique perspective, being an "information radiator", and exploring the system in different ways to find holes in code and understanding. To succeed in agile, testers need different skills than traditional testing.
This document discusses agile software development practices used in Formula 1 racing. It introduces Luca Minudel from a leading digital gaming supplier and poses questions about implementing Scrum and Lean practices for a large codebase project. The questions cover why Scrum was chosen, how the project was managed and progressed, how teams were organized, and what impediments arose. Copyright information is provided for photos used and the presentation is made available under a Creative Commons license.
The document discusses pair programming strategies and how to deal with disturbing forces that can divert teams from the ideal of everyone pairing daily and rotating partners frequently. It presents an agenda for an open space workshop on this topic, where participants will suggest discussion topics, vote on them, have group discussions, and share results. The workshop aims to determine if diverting from the ideal is acceptable and explore how to better mitigate disturbing forces like short term goals, hostile environments, personal preferences, project boundaries, static roles, knowledge silos and leaving people to work alone.
Este documento introduce el Behavior Driven Development (BDD) como una evolución del Test Driven Development (TDD) que se enfoca en el comportamiento del sistema en lugar de los métodos. BDD utiliza un lenguaje específico del dominio (DSL) como Gherkin para describir los requisitos funcionales como historias de usuario en un formato Given/When/Then. Esto hace que los requisitos sean más claros para todos los involucrados y permite automatizar las pruebas de aceptación.
Pex and Moles are unit testing tools for .NET that allow automatically generating test cases (Pex) and replacing .NET methods with mocks (Moles). Pex uses a constraint solver to systematically generate inputs that achieve high code coverage with minimal tests. Moles provides two types of mocking: stub types for virtual methods, and mole types that rewrite code at runtime but have performance overhead. The document discusses these tools and how they can help with isolating dependencies in unit tests.
Ser ágil en España, un caso real con equipos de trabajo en remotoAgile Spain
Este documento describe los primeros intentos de implementar métodos ágiles en un equipo distribuido entre Madrid y Cádiz. Inicialmente utilizaron Scrum con una hoja de cálculo para el seguimiento, pero no era eficiente. Luego adoptaron las herramientas XPlanner y Trac + Agilo para mejorar la visibilidad y gestión. Sin embargo, continuaron enfrentando problemas como la dificultad de estimar el trabajo remoto, incumplimiento de los sprints debido a imprevistos urgentes, y falta de integración continua. Por lo tanto,
This document appears to be telling the story of a company called UNA from 2007-2011. It discusses the development of their app download and data interchange technologies over this time period. Key aspects mentioned include using the server side for app downloads, client side for presentation flows, and structured data interchange. It also lists various UI components and services they provide like labels, buttons, panels and more.
Stop the line & Stop Feature Development practicesAgile Spain
The document describes lean practices used in an agile software development project at F-Secure, including Stop the Line and Stop Feature Development. Stop the Line is used to immediately stop all work when a problem is detected, so the problem can be fixed before further issues arise. Stop Feature Development sets bug count limits that stop new development work until bugs are addressed, to avoid accumulating unresolved issues. The practices helped improve quality, identify recurring problems, and prevent bugs from multiplying.
Lessons learned from contrasting Design Thinking and Agile Project Management...Agile Spain
This document discusses contrasting Design Thinking and Agile Project Management methodologies. It provides background on how Design Thinking uses collaborative, interdisciplinary teams without hierarchy to solve problems creatively. However, questions remain about how unstructured teams fit within broader project management models. The document also discusses how Agile methodologies aim to increase flexibility and shorten timelines for software development. It proposes combining Design Thinking and Agile methods like Scrum to structure creative teams within a project management framework and make leadership roles more explicit.
Visual Scrum - What you see is What you getAgile Spain
Este documento describe cómo la gestión visual puede aplicarse más allá del equipo de desarrollo en Scrum para proporcionar información relevante a otros roles como la dirección, propietarios de productos y equipos. Se presentan ejemplos de cómo tableros visuales podrían adaptarse a diferentes tipos de proyectos y roles para mejorar la comunicación y toma de decisiones.
Un Primer Paso a la Agilidad: Retrospectivas para el Aprendizaje de la Ingeni...Agile Spain
Este documento describe un proyecto para adoptar metodologías ágiles como Scrum en el aprendizaje de ingeniería de software en la universidad. El proyecto "Agile Learning" implementa Scrum en asignaturas mediante el trabajo en equipo, entregas iterativas frecuentes y reuniones retrospectivas. El objetivo es que los estudiantes desarrollen competencias blandas y aprendan a aplicar metodologías ágiles durante toda su formación, mejorando su preparación para el mundo laboral.
Análisis de la implementación de prácticas ágiles en ArgentinaAgile Spain
Este documento analiza la implementación de prácticas ágiles en Argentina a través de encuestas a empresas. Se encontró que el 85% usa Scrum de forma parcial y la participación del cliente es difícil de lograr. También se identificaron problemas como la dificultad de estimar proyectos y falta de cambio cultural. Se concluye que las prácticas ágiles se usan parcialmente y su implementación completa enfrenta desafíos.
1. El documento describe diferentes tipos de contratos ágiles como cocinar recetas, con variables como alcance, coste y plazos. Señala cuándo cada tipo es más adecuado y cómo gestionar variables fijadas.
2. Explica que los contratos deben establecer un acuerdo mutuamente beneficioso y reglas que faciliten la colaboración.
3. Resalta la importancia de crear equipos de alto rendimiento que incluyan al cliente a largo plazo para lograr mejores resultados proyecto a pro
El documento habla sobre la gestión de configuración y el control de versiones en el desarrollo ágil de software. Explica que la gestión de configuración implica procedimientos para identificar, controlar y auditar cambios en un proyecto de software, no solo en el código fuente sino también en otros artefactos. Luego describe conceptos clave del control de versiones como repositorios, líneas base, confirmaciones y ramas. Finalmente, propone una estrategia de control de versiones ágil basada en un modelo de aislamiento de ramas, políticas para la promoci
El documento presenta una introducción a la implementación de metodologías ágiles. Explica conceptos clave como equipos, roles, procesos y artefactos ágiles. También identifica buenas prácticas como la formación continua, alineación con el negocio y medición de resultados, así como antipatrones a evitar como ignorar al cliente o no realizar retrospectivas. El objetivo es ayudar a las organizaciones a adoptar un enfoque ágil de manera gradual.
El documento presenta los principios de la gestión ágil de equipos. Explica que un equipo efectivo requiere diversidad, flexibilidad y autogestión más que reglas estrictas. También destaca la importancia del liderazgo que guía en lugar de controlar, y evita antipatrones como la microgestión y la presión excesiva. El documento concluye animando a la acción continua y al desarrollo de más líderes dentro de los equipos.
El documento habla sobre los esfuerzos de Telefónica I+D para integrar prácticas ágiles y de experiencia de usuario para lograr mayor agilidad e innovación. Desde 2008, Telefónica I+D ha adoptado un enfoque ágil para sus proyectos y recientemente también se ha inspirado en el paradigma de "innovación impulsada por el cliente", colocando a los usuarios finales en el centro del proceso de innovación. El objetivo es utilizar ambas aproximaciones de manera enriquecedora para desarrollar productos innovadores
The document discusses the use of an agile toolchain at mimacom to improve traceability and transparency from product vision to working software. Some key challenges included a lack of integrated versioning, change history, and metrics collection across multiple disconnected tools. mimacom implemented Scrum processes along with an integrated toolchain including a product backlog, taskboard, burndown charts, and code review tools to improve visibility, coordination for distributed teams, and collect metrics to measure progress.
Este documento resume los principios y prácticas ágiles como guía para el desarrollo de software. Aborda temas como la importancia de la confianza, la composición efectiva de equipos, la entrega continua de valor al cliente a través de iteraciones cortas, la colaboración estrecha con el cliente, y el uso de retrospectivas para promover el aprendizaje y la mejora continua. El objetivo general es explicar por qué los enfoques ágiles pueden ser superiores a los modelos de desarrollo de software más tradicionales.
This document discusses different perspectives on tracking defects in Agile development and proposes an alternative approach. It argues that defects should be treated like user stories with estimates and tests rather than using separate tracking tools. Within a sprint, any issues found should be visible on the task board as tests to be fixed. This maintains visibility while avoiding separate backlogs. The document shares a case study where this approach worked well but faced challenges with remote visibility and lack of automation. It concludes defects are best addressed by tracking tests, not bugs, and prioritizing visibility and automation.
The document discusses the role of testers in traditional vs agile projects. In traditional projects, testers join late and write test cases to run on completed code. In agile projects, developers automate acceptance tests using ATDD and defects are failing tests. Some managers think testers are not needed since developers test. However, testers add value by asking questions others don't to get a unique perspective, being an "information radiator", and exploring the system in different ways to find holes in code and understanding. To succeed in agile, testers need different skills than traditional testing.
This document discusses agile software development practices used in Formula 1 racing. It introduces Luca Minudel from a leading digital gaming supplier and poses questions about implementing Scrum and Lean practices for a large codebase project. The questions cover why Scrum was chosen, how the project was managed and progressed, how teams were organized, and what impediments arose. Copyright information is provided for photos used and the presentation is made available under a Creative Commons license.
The document discusses pair programming strategies and how to deal with disturbing forces that can divert teams from the ideal of everyone pairing daily and rotating partners frequently. It presents an agenda for an open space workshop on this topic, where participants will suggest discussion topics, vote on them, have group discussions, and share results. The workshop aims to determine if diverting from the ideal is acceptable and explore how to better mitigate disturbing forces like short term goals, hostile environments, personal preferences, project boundaries, static roles, knowledge silos and leaving people to work alone.
Este documento introduce el Behavior Driven Development (BDD) como una evolución del Test Driven Development (TDD) que se enfoca en el comportamiento del sistema en lugar de los métodos. BDD utiliza un lenguaje específico del dominio (DSL) como Gherkin para describir los requisitos funcionales como historias de usuario en un formato Given/When/Then. Esto hace que los requisitos sean más claros para todos los involucrados y permite automatizar las pruebas de aceptación.
Pex and Moles are unit testing tools for .NET that allow automatically generating test cases (Pex) and replacing .NET methods with mocks (Moles). Pex uses a constraint solver to systematically generate inputs that achieve high code coverage with minimal tests. Moles provides two types of mocking: stub types for virtual methods, and mole types that rewrite code at runtime but have performance overhead. The document discusses these tools and how they can help with isolating dependencies in unit tests.
Ser ágil en España, un caso real con equipos de trabajo en remotoAgile Spain
Este documento describe los primeros intentos de implementar métodos ágiles en un equipo distribuido entre Madrid y Cádiz. Inicialmente utilizaron Scrum con una hoja de cálculo para el seguimiento, pero no era eficiente. Luego adoptaron las herramientas XPlanner y Trac + Agilo para mejorar la visibilidad y gestión. Sin embargo, continuaron enfrentando problemas como la dificultad de estimar el trabajo remoto, incumplimiento de los sprints debido a imprevistos urgentes, y falta de integración continua. Por lo tanto,
This document appears to be telling the story of a company called UNA from 2007-2011. It discusses the development of their app download and data interchange technologies over this time period. Key aspects mentioned include using the server side for app downloads, client side for presentation flows, and structured data interchange. It also lists various UI components and services they provide like labels, buttons, panels and more.
Stop the line & Stop Feature Development practicesAgile Spain
The document describes lean practices used in an agile software development project at F-Secure, including Stop the Line and Stop Feature Development. Stop the Line is used to immediately stop all work when a problem is detected, so the problem can be fixed before further issues arise. Stop Feature Development sets bug count limits that stop new development work until bugs are addressed, to avoid accumulating unresolved issues. The practices helped improve quality, identify recurring problems, and prevent bugs from multiplying.
11. Las opciones son
• Integración continua (piedra angular
de agile)
• Integración controlada
12. Las opciones son
• Integración continua != integración
constante (!)
• Integración controlada
13. Pero antes un paso atrás…
SCM es importante en «agile»
porque:
• Collective code ownership
• Continuous Integration
• Mapeo entre tareas y código
• Coordinación del equipo
46. El futuro de CI
• How can builds get
faster?
• How can broken builds
be prevented?
http://codicesoftware.blogspot.com/2008/03/continuous-integration-future.html
52. ¿Qué es una tarea?
• ¿Usáis un issue tracker?
• Cada entrada en el issue tracker
Nota: las tareas son cortas…
http://www.plasticscm.com/infocenter/quick-start/intro-task-driven-development.aspx
54. Alternativas de integración
• El integrador hace merge
• El integrador ejecuta tests
• El integrador empaqueta y etiqueta
Integration Server For each task
to check whether it is
valid or not
baseline main line baseline
task 1120
task 1140
Release
Engineer
rebased
Release
Developer Engineer
task 1121
task 1129
Developer
55. Alternativas
• Los desarrolladores hacen merge y ejecutan tests
• El integrador empaqueta y etiqueta…
• Evita mini-big-bangs
• Recorta tiempos de compilación
Integration Server
baseline main line baseline
task 1120
Integration is just
task 1140 labelling and packing
Release and running specific
Engineer integration tests
rebased
Developer
task 1121
task 1129
Developer
56. Alternativas de integración
• Desarrolladores hacen merge y ejecutan tests
• La línea principal se mantiene limpia
baseline main line baseline
task 1120
Integration is just
task 1140
promoting, labelling
and packing and
Release running specific
Engineer
line
rebased integration tests
Developer
e main
te to th
Promo
task 1121
task 1129
Developer
integration line
Integration Server
57. En el mundo distribuido – integration
manager workflow
1. The project maintainer pushes to
their public repository.
2. A contributor clones that
repository and makes changes.
3. The contributor pushes to their
own public copy.
4. The contributor sends the
maintainer an e-mail asking them
to pull changes.
5. The maintainer adds the
contributor’s repo as a remote and
merges locally.
6. The maintainer pushes merged
changes to the main repository.
58. Dictator…
1. Regular developers work on their topic
branch and rebase their work on top of
master. The master branch is that of the
dictator.
2. Lieutenants merge the developers’ topic
branches into their master branch.
3. The dictator merges the lieutenants’
master branches into the dictator’s master
branch.
4. The dictator pushes their master to the
reference repository so the other
developers can rebase on it.