Clase 5 - Desarrollo de Productos Flashcards

1
Q

BDD: Qué es?

A
  • Una aproximación ágil a la construcción de software
  • Es un proceso o práctica longitudinal (como CD)
  • Comportamientos definidos colaborativamente entre desarrollo y negocio.
  • Especificaciones documentadas en un lenguaje compartido
  • Se pueden usar para construir tests y automatizarlos
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

BDD: Definición

A

Behaviour Driven Development
- Desarrollo guiado por comportamiento

Guiar el desarrollo incremental mediante la promoción de conversaciones sobre el comportamiento esperado del sistema y la producción de especificaciones ejecutables

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

BDD: gráfico y pasos

A
  1. Elegir la historia
    Priorizar la funcionalidad.
  2. Taller de requerimientos
    Descubrir detalles mediante ejemplos.
  3. Formular
    Convertir ejemplos en escenarios.
  4. Revisar
    Obtener feedback del negocio.
  5. Automatizar
    Codear pruebas automáticas.
  6. Implementar
    Codear con TDD.
  7. Crear tests complementarios
    Carga, integración, seguridad, etc.
  8. Release
    Producir el producto potencialmente entregable.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Discovery: qué es?

A
  • Exploración del comportamiento usando ejemplos
  • Conversación estructurada, se promueve la colaboración usuario/dev
  • Foco progresivo: Se registra aprendizaje de la historia a construir y se registran preguntas que surjan para poder avanzar
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Discovery en SCRUM: Cómo se hace?

A
  • espacio y tiempo: reunión de refinamiento
  • duración: 30 minutos/story, pero solo 1 story/reunión
  • se hace antes de meter los items al backlog del sprint
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Example mapping: qué es?

A
  • Permite especificar mediante ejemplos
  • Es parte del ciclo grande de BDD
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Example mapping: estructura de árbol

A

Historia de usuario
* Regla 1
* * Ejemplo 1.1
* * Ejemplo 1.2
* Regla 2
* * Ejemplo 2.1

Preguntas de la story van aparte

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Priorizar: razones

A
  • Tiempo y presupuesto son limitados
  • Expectativas de retorno de la inversión hecha
  • No todos los ítems aportan el mismo valor o tienen el mismo costo
  • Maximizar el valor obtenido/entregado
  • Decidir en base a la relación costo/beneficio
  • Validar hipótesis técnicas y de negocio
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Priorizar: tácticas

A
  • Mitigar riesgos técnicos
  • Maximizar el valor de negocio entregado
  • Crear experimentos que comparen información
  • Enfocarse en un único hito comercial por vez
  • Alinearse con los hitos comerciales
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Slicing: qué es?

A

Cortar las historias en porciones de software usable, más finas

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Slicing: cómo hacerlo?

A

Cobertura horizontal antes que vertical, tener un poquito de todo

How well did you know this?
1
Not at all
2
3
4
5
Perfectly