Presentación de la capacitación cátedra SCRUM en la UMNG (@lamilitar). Con recomendaciones a herramientas tecnológicas de metodologías ágiles y startups.
Avances tecnológicos del siglo XXI y ejemplos de estos
Scrum UMNG - Herramientas de Emprendimiento
1. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
SCRUM y otras
herramientas de innovación
y emprendimiento
Julián R Figueroa
@unmultimedio
Con el apoyo de
5. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
¿Qué es Scrum?
“Es un marco de trabajo en el que las personas pueden
hacer frente a problemas complejos adaptables,
mientras que de manera productiva y creativa entregan
productos del mayor valor posible. Scrum es:
• Ligero
• Fácil de entender
• Difícil de dominar”
Ken Schwaber & Jeff Sutherland
6. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Tipos de Proyectos
• Simple
• Complicado
• Complejo
• Anárquico
David J. Snowden & Mary E. Boone - Harvard Business Review 2007
7. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Tipos de Proyectos
Simple Complicado Complejo Caótico Desorden
Detectar,
categorizar,
responder
Detectar, analizar,
responder
Probar, detectar,
responder
Actuar, detectar,
responder
Encontrar
dominio
correcto
Basado en
prácticas
establecidas
Afrontar situación,
investigar
opciones
Explorar y
aprender del
problema
Actuar en
búsqueda de
estabilización
No actuar
dada la
preferencia
personal o
método
conocido.
Hay que
encontrar el
dominio.
Dominio de las
mejores
prácticas
Expertos para
ganar “insight”
Ambientes de
fallo seguro para
experimentar
Buscar lo que
funcione, en vez
de LA respuesta
Causa-efecto
claro y
evidente
Múltiples
opciones
correctas
Explorar,
inspeccionar,
adaptarse
Muchas
decisiones, poco
tiempo
8. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Tipos de Proyectos
Simple Complicado Complejo Caótico
Detectar,
categorizar,
responder
Detectar, analizar,
responder
Probar, detectar,
responder
Actuar, detectar,
responder
Call-center,
construcción,
comercio
franquicias
Mantenimiento de
software, minería ó
petróleos
Modelos de
negocio digitales,
productos nuevos
e innovadores
Bolsa de valores,
emergencias
9. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Dominio Complejo:
Agile Manifesto
Estamos descubriendo formas mejores de desarrollar
software, tanto por nuestra propia experiencia como
ayudando a terceros.
A través de este trabajo hemos aprendido a valorar:
Personas e interacciones
sobre
procesos y herramientas
Software funcionando documentación comprensible
Colaboración con clientes negociación de contratos
Responder a los cambios seguir un plan
www.agilemanifesto.org
10. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Ágil Vs Cascada
(Proyectos de Software)
Reporte Chaos, Standish Group
Cascada
29%
57%
14%
Exitosos
No cumplieron costo, calendario y/ó funcionalidad
Fracasaron
Ágil
9%
49%
42%
11. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Dominio Complejo:
Métodos Ágiles
VersionOne - State of agile survey 2011
1%1%1%2%2%2%2%
3%
3%
8%
9%
14%
52%
Scrum
Scrum/XP Hybrid
Custom Hybrid
Don’t Know
Kanban
Scrumban
Feature-Driven Development
Extreme Programming XP
Lean
Other
Agile Unified Process (AgileUP)
Agile Modeling
Dynamic Systems Development Method
13. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
¿Qué es Scrum?
“Es un marco de trabajo en el que las personas pueden
hacer frente a problemas complejos adaptables,
mientras que de manera productiva y creativa entregan
productos del mayor valor posible. Scrum es:
• Ligero
• Fácil de entender
• Difícil de dominar”
Ken Schwaber & Jeff Sutherland
14. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
¿Qué es Scrum?
“Es un marco de trabajo basado en un conjunto de
valores, principios y prácticas que suministran los
fundamentos para que cada organización le agregue
su implementación única.”
Kenneth Rubin, Essential Scrum
15. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
¿Qué es Scrum?
• Método ágil más popular
• No solamente software
• Equipos enfocados a
resultados
• Equipos auto-
organizados
• Adaptación contínua
• Centrado en personas
• Valores y prácticas
administrativas (SM)
• Técnicas de desarrollo
(SD)
• Puede complementarse
para convivir con otras
metodologías
16. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Bases de Scrum
Proceso Empírico
Transparencia InspecciónAdaptación
17. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Historia de SCRUM
• 1896: “The New Product Development Game” - Harvard Business Review (Takeuchi &
Nonaka)
• 1993: Primer equipo: Jeff Sutherland en Easel Corp.
• 1995: Formalizado por Ken Schwaber.
• 1995: Paper presentado oficialmente en Austin, TX. (OOPSLA). Se usa la palabra Scrum
• 2001: The Agile Manifesto
• 2001: Publicación en “Agile Software Development with Scrum” (Schwaber & Beedle)
• 2004: “Agile Project Management with Scrum” (Schwaber)
• 2009: Scrum Alliance & Certified Scrum Master Program
• 2011: The Scrum Guide (Schwaber & Sutherland)
18. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
¿Por qué Scrum?
• Proyectos de software
• ¿ “El cliente siempre tiene la razón” ?
• El cliente en verdad muchas veces no sabe lo que quiere
• Calidad de software
• Rápido testeo
• Rápidos resultados
• Costos reducidos a largo plazo
22. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
SCRUM: Roles
Nombre del Rol Abreviación Cantidad Recomendaciones
Product Owner PO 1
Conocedor de negocio, parte
del cliente, en contacto
constante con usuarios e
interesados
Scrum Master SM 1 x ST
Capacitado en la
metodología, conocimiento
sólido en negocio y tecnología
Scrum Developer
(Development
Team)
SD (DT) 4-9
Equipo auto-organizado y
multidisciplinario
23. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Product Owner
• Centro de empoderamiento de las
características del producto
• Principal responsable por el avance y la
entrega definitiva
• Autoridad primaria en el orden y la importancia
de las características del producto
• El PO colabora constantemente con dudas de
negocio del DT y el SM
24. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Scrum Master
• Lider servil
• Colabora con el entendimiento y la aplicación de los
valores, prácticas y principios de Scrum (agile
approach)
• Remueve obstáculos del equipo de desarrollo y los
protege de interferencias externas
• NO ES UN PROJECT MANAGER, no tiene autoridad
sobre prioridades o métodos de implementación
25. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Scrum Developer
• No hay roles específicos, sino uno transversal
• Equipo multifuncional
• Auto-organizado para asumir y auto-asignar tareas
definidas en cada Sprint
26. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Scrum Developer
• Actitud mosquetero
• Todo el equipo es
responsable de la
construcción del
producto
• Habilidades “T”
27. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
SCRUM: Artefactos
Nombre del Artefacto Abreviación
Product Backlog PB
Sprint Backlog SB
Potentially Shippable Product
Increment
PSPI - PI
28. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Product Backlog
• Lista priorizada y secuencial
de características o “historias
de usuario”
• Basada en la visión de
producto del PO
• Responsabilidad del PO
• Siempre el trabajo más valioso
va primero, y va más detallado
29. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Sprint Backlog
• Lista prevista de desarrollo o ejecución para un (1)
Sprint
• Items primeros en el PB, con estimación acorde al
Sprint
• Desagregado de los items del PB en tareas
específicas y asignadas en el DT
• Items susceptibles de ser afrontados con KANBAN
30. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
PSPI: Incremento de Producto
Potencialmente Entregable
• Una parte o sección de
producto construida o
“hecha”
• Parte o sección
dispuesta a ser liberada
• La liberación es una
decisión de negocio, no
es imperativo
32. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Sprint
• Corazón de Scrum
• Cajas de tiempo que tienen un inicio y finales FIJOS
• Generalmente recomendados de una misma duración
• La finalización de un Sprint es seguida del inicio del siguiente
33. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Sprint Planning
• Reunión de revisión de PB
para llegar a acuerdos
• PO, SM, DT
• Selección de común acuerdo
de X cantidad de items del PB
al SB
• Estimación de items
(generalmente horas)
• Item > Tareas > Llenar la
capacidad
34. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Daily Scrum
• Revisión de inspección y
adaptación.
• SM, DT, PO (pasivo)
• “Daily stand-up”
• Generalmente:
• ¿Qué logré desde el último Daily?
• ¿Cuál es mi plan para el siguiente
Daily?
• ¿Qué obstáculos enfrento?
• Gallinas y cerdos
35. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Sprint Execution
• Ejecución de las tareas dada
su estimación, asignación y
adaptación en los daily.
• El equipo debe estar protegido
de interferencias externas
• El PB y SB deben estar
siempre a la vista, y
actualizado
• El control se hace
generalmente con KANBAN
• Gráfica Burndown
36. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Sprint Review
• Revisión de características internas
(“hecho”)
• Revisión del PSPI
• PO, SM, DT, Clientes, Usuarios,
Interesados
• Centrada en las características terminadas
• Información bidireccional de avance y ajuste
de la dirección e importancia del PB restante
• Todos obtienen visibilidad de lo que está
ocurriendo y del estado del proyecto
37. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Sprint Retrospective
• Inspeccionar y adaptar el
proceso
• Reunión interna del ST para
revisar cuán colaborativo y
productivo es el equipo
• Identificar obstáculos y
comprometerse con acciones
concretas de mejora
38. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Product Backlog Grooming
• El grooming consiste en el
refinamiento, estimación y
priorización de los items del PB.
• Participación significativa de
interesados, SM y DT en cabeza
del PO
• Generalmente 10% del tiempo del
DT debe estar dispuesto a ayuda
del PBGrooming basados en:
• Dependencia técnica
• Restricciones de recursos
39. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
SCRUM: Reglas
1. Variabilidad e incertidumbre
• Acoge la variabilidad útil, desarrollo
iterativo e incremental, reduce
incertidumbre simultáneamente (end,
means, customer)
2. Predicción y adaptación
• Mantén opciones abiertas, no puedes
lograrlo todo desde el inicio, favorece
la exploración y adaptación, sé
sensible económicamente
3. Aprendizaje validado (LEAN)
• Valida en vez de asumir, aprovecha la
retroalimentación
4. Trabajo en progreso
• Usa tamaños de carga
económicamente sensibles, enfócate
en trabajo en espera, y no en
trabajadores en espera
5. Progreso
• Entregado y validado, enfócate en la
entrega centrada en valor, el progreso
ayuda a adaptar y re-planear
6. Rendimiento
• Vé rápido pero no te apures, construye
con calidad, emplea mínima/suficiente
ceremonia/protocolo
41. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Adopción de SCRUM
• La adopción de Scrum en empresas de software
existentes depende de su ubicación en la curva de
innovación
43. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Datos Adopción Scrum
Pregunta Razón
Primer
Resultado
Causa de fracaso en ágil
Filosofía de la compañía o desacuerdo
fundamental cultural
13%
Obstáculos al adoptar ágil Habilidad para cambiar cultura organizacional 53%
Preocupaciones sobre
adoptar ágil
Falta de planeación anticipada 30%
Resultados (tiempos) en
proyectos ágiles
Más rápida 73%
Beneficios obtenidos Habilidad para cambiar prioridades 92%
Ayudas para
implementación
Apoyo de la gerencia 22%
45. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Pros/Cons SCRUM
• El cliente obtiene resultados importantes/utilizables desde etapas
tempranas
• Se comienza el proyecto con requerimientos de alto nivel
• Los cambios se administran de manera natural
• Se mitigan los riesgos del proyecto desde el inicio
• Se gestiona la complejidad al apuntar a la construcción de aquello
que brinda más valor
• Optimiza recursos disponibles
• Minimiza el número de errores y se aumenta la calidad
46. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Pros/Cons SCRUM
• La disponibilidad del cliente debe ser alta durante el proyecto
• El PO debe tener disponibilidad de manera continua (igual
que los SD)
• La relación con el cliente es más colaborativa que contractual
• Cada iteración/Sprint es un compromiso/acuerdo de requisitos
implementados o “hechos”, minimizando tareas pendientes
• Es una metodología recomendada para proyectos de dominio
complejo.
48. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
–Leah Culver
“Learn not to add too many features right away
and get the core idea built and tested”
50. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
¿Innovación?
• Nueva implementación o cambios en los procesos
existentes, que permiten una mejora en el
resultado al:
• reducir costos
• reducir tiempos
• incrementar calidad
• incrementar rentabilidad
52. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Emprendimiento Digital ó
“Startup”
• Son empresas que con una pequeña inversión de
capital logran abarcar un gran mercado
apalancándose en tecnologías de difusión y uso
de sus herramientas.
• Principalmente ofrecen una Propuesta de Valor
(VP) tipo Software como Servicio (SAAS)
• Muchas han usado conceptos de economía
colaborativa para construir imperios en sus
sectores
53. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Startups
• Facebook es la empresa que ofrece publicidad más grande del mundo. No le
paga a nadie para escribir una línea de contenido.
• Airbnb es la empresa que ofrece hospedaje más grande del mundo. No tiene finca
raíz dispuesta a hotelería.
• Uber es la empresa que ofrece transporte dentro de ciudades más grande del
mundo. No posee ningún automóvil dispuesto al servicio.
• Ebay es la empresa que ofrece productos de comercio más grande del mundo.
No posee ningún ítem en su inventario de ventas.
55. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
¿LEAN?
• Lean traduce “apoyo” o “apoyado en”, y se basa en el
apoyo del que se aprovecha el proceso de desarrollo al
validar clientes, modelos de negocio, funcionalidades,
diseño, y demás características antes de construirlas a
detalle.
• Se centra más en el hacer, observar, aprender/validar,
construir, repetir/iterar.
• Vale más la validación de mercado que el plan a seguir.
• En dominios complejos (mercados de servicios digitales),
es bienvenido el fracaso temprano.
56. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Lean Startup
• Primero el Modelo de Negocio, antes que el Plan de
Negocio
• Construir una empresa no es lo mismo que administrar
una empresa
• Búsqueda de la receta del producto, no en la
producción o manufactura del mismo, cada nuevo
intento se llama “Pivote”
• El aprendizaje validado se mide en “insights” que los
CO-FUNDADORES obtienen del mercado
61. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Co-fundación Startup
• Modelo de Negocio - Experiencia del dolor, conexiones,
entendimiento del proceso, contacto con clientes, visión
del valor esperado
• Construcción del Producto - Experiencia tecnológica,
conocimientos técnicos, discernimiento entre tecnologías,
entendimiento del valor necesario y su mapeo a
funcionalidades
• Diseño del Producto - Entendimiento del segmento de
clientes, formación de imagen y estética, comunicación
clara de mensajes, sólido manejo de herramientas de
diseño y comunicación
63. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Comunidades
• Conjunto de personas que (con)viven juntas bajo
ciertas reglas o que tienen los mismos intereses.
• Frecuencia
• Dominio
• Lugar perfecto para encontrar co-fundadores al
difundir y compartir ideas de emprendimiento
• Comunidades de emprendimiento, desarrolladores,
diseñadores…
65. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Visibilidad
Una vez haya uno o
varios segmentos de
mercado validados, y un
producto con algunas
iteraciones, es
imperativo tener:
• Home Page (Domain,
emails)
• Youtube/Vimeo
Channel
• Landing(s) page(s)
• Facebook Page
• Twitter Account
• Business Cards
66. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
“Ecosistema” de
emprendimiento
El ecosistema en el país tiene 3 hélices principales*:
• Academia
• Investigación, espacios, incubadoras, apoyo de
comunidades
• Gobierno
• Legislación, subvenciones, convocatorias,
regulación propiedad intelectual
• Empresa Privada
• Inversionistas privados, actividades i+D, innovación
abierta, contratación de pequeños proveedores
*Emprende Latinoamérica, Ibagué 2014.
70. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Almacenamiento Nube
• Compartir documentos
• Colaboración en creación/edición de documentos
• Copia de seguridad en varios equipos y nube
• Sincronización
71. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Trello
• Manejo y seguimiento
de proyectos
• Ajustable a Scrum,
KANBAN, lista por
responsable…
• Asignación y
seguimiento de tareas
72. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Calendario Compartido
• Eventos por equipos de trabajo
• Comunicación de lanzamientos, fechas límite
• Fases de desarrollo
• Presentaciones (Pitch)
• Integraciones con otras herramientas
73. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Slack
• Sistema unificado de
comunicación laboral
• Disminuye al mínimo chats en
otras plataformas
• Disminuye envío de correos
• Elimina ruido en las
conversaciones que no son de
interés
• Se integra con otras herramientas
que ya usa el equipo
74. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Toggl
• Herramienta de trackeo de tiempo
• Ajustable a metodologías como Pomodoro
• Equipos de trabajo con asignaciones de proyecto
• Medición de tiempos por características/clientes
• Perfecto para freelancers, medición de tiempo por
clientes
75. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Unbounce
• Creación y administración de campañas de
márketing
• Creación de landing-pages
• Administración de A/B testings
76. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Mailchimp
• Envío masivos de boletines de correo electrónico
• Validación y estadísticas de interés en el producto/
servicio ofertado
• Fácil administración de listas de suscripción y lista-
de-no-molestar
• Administración de varias campañas de acuerdo a
campañas de marketing virtuales
77. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Editores de código Vs IDE
• Múltiples cursores
• Velocidad de escritura/lectura de archivos grandes
• Flexibilidad de búsqueda/reemplazo
• Plugins
• Comunidad de soporte y uso
78. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Repositorios Git
• Sistema de versionamiento de documentos
• Sistema centralizado Vs distribuido
• Vital en proyectos de software para versiones de código
• Supremamente útil en colaboración de equipo de desarrollo
• Repositorios públicos Vs privados
79. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
Platform as a service PAAS
• Configuración de servidor de auto-escala
• Compatibilidad con múltiples tecnologías
• Fácil despliegue e integraciones con repositorios
• Cobro por uso
80. #ScrumUMNG | @unmultimedio | @lamilitar | @sikuaninet | @bogodev
–Marshall McLuhan
“We become what we behold. We shape our
tools and then our tools shape us.”