IT para Product Managers

145
Gestión IT Product Managers para http://byteflair.com Daniel Cerecedo @dcerecedo

Transcript of IT para Product Managers

Page 1: IT para Product Managers

Gestión ITProduct Managers

para

http://byteflair.com

Daniel Cerecedo@dcerecedo

Page 2: IT para Product Managers

Agenda

@dcerecedoByteflair

Crear un servicioEconomías del softwareModelos de gestiónGestionar requerimientosCasos de usoCalidad

ComponentesEstimaciónPriorizaciónRoadmapsContratosSeguimiento

Page 3: IT para Product Managers

Crear un servicio

@dcerecedoByteflair

Page 4: IT para Product Managers

@dcerecedoByteflair

Crear un servicio

Visión

Page 5: IT para Product Managers

@dcerecedoByteflair

Crear un servicio

Producto

Visión

Page 6: IT para Product Managers

@dcerecedoByteflair

Crear un servicio

Producto

Visión

Ejecución

Page 7: IT para Product Managers

@dcerecedoByteflair

Crear un servicio

Producto

¿Visión clara?

Ejecución

Page 8: IT para Product Managers

@dcerecedoByteflair

Crear un servicio

Producto

¿Visión clara?

Ejecución

Page 9: IT para Product Managers

@dcerecedoByteflair

Crear un servicio

Producto

Visión clara

Ejecución

Visión POCO clara

Concepción y análisis

Page 10: IT para Product Managers

Crear un servicioConcepción

@dcerecedoByteflair

Qué

Page 11: IT para Product Managers

Crear un servicioConcepción

@dcerecedoByteflair

Entender y comunicar qué se desea crear

Dejar los detalles para otro momento

Page 12: IT para Product Managers

Crear un servicioConcepción

@dcerecedoByteflair

Parálisis por análisis

Page 13: IT para Product Managers

Crear un servicioPlan ejecución

@dcerecedoByteflair

CómoCuándo

Page 14: IT para Product Managers

@dcerecedoByteflair

Crear un servicio

Planifica qué pasos hay que dar para conseguir cada objetivo

Plan ejecución

Page 15: IT para Product Managers

Economía del software

@dcerecedoByteflair

Page 16: IT para Product Managers

Economía del software

@dcerecedoByteflair

Alcance

€¡Sólo puedes elegir dos!

Page 17: IT para Product Managers

Economía del software

@dcerecedoByteflair

Alcance

€Caro

Page 18: IT para Product Managers

Economía del software

@dcerecedoByteflair

Alcance

€Caro

Inferior

Page 19: IT para Product Managers

Economía del software

@dcerecedoByteflair

Alcance

€Caro

Inferior

Tarde

Page 20: IT para Product Managers

Economía del software

@dcerecedoByteflair

+ € = Skills· Tools

ComplexityProcess

Inmaturity

Procesos y calidad

Page 21: IT para Product Managers

@dcerecedoByteflair

Procesos

Hacer

Economía del software

Page 22: IT para Product Managers

@dcerecedoByteflair

Procesos

HacerCalidad

Economía del software

Page 23: IT para Product Managers

@dcerecedoByteflair

Procesos

HacerCalidadEstandarizar

Economía del software

Page 24: IT para Product Managers

@dcerecedoByteflair

Procesos

HacerCalidadEstandarizar

Predecible

Economía del software

Page 25: IT para Product Managers

@dcerecedoByteflair

Procesos

HacerCalidadEstandarizar

Predecible

Automatizar

Economía del software

Page 26: IT para Product Managers

@dcerecedoByteflair

Procesos

HacerCalidadEstandarizar

Predecible

AutomatizarRápido

Economía del software

Page 27: IT para Product Managers

@dcerecedoByteflair

Procesos

HacerCalidadEstandarizar

Predecible

AutomatizarRápido

Menor Coste

Economía del software

Page 28: IT para Product Managers

Economía del softwareProcesos y calidad

@dcerecedoByteflair

Hacer lo correctoHacerlo correctamente

Evitar el desperdicio

Page 29: IT para Product Managers

@dcerecedoByteflair

Enséñamela pasta!

Page 30: IT para Product Managers

@dcerecedoByteflair

Activar el conocimiento

Calidad

Menor Coste15% - 30%

Cada vez que doblas la ejecución de un proceso

Economía del software

Page 31: IT para Product Managers

@dcerecedoByteflair

Gestionar el conocimientoAutomatizar

Economía del software

Page 32: IT para Product Managers

Proceso

@dcerecedoByteflair

Activar el conocimiento

CapturarNotas – EverNote

Wikis – ConfluenceDocumentos – Google Docs

Page 33: IT para Product Managers

Proceso

@dcerecedoByteflair

Activar el conocimiento

AutomatizarCada dominio de conocimiento sus herramientas

Pruebas – Frameworks de pruebas, DockerDespliegues – Jenkins, Hudson

Aprovisionamiento – Puppet, Chef, Vagrant

Page 34: IT para Product Managers

@dcerecedoByteflair

Modelo de gestión

Page 35: IT para Product Managers

Modelo de gestión

@dcerecedoByteflair

Diseño

Construcción

Pruebas

Despliegue

Análisis

Cascada

Page 36: IT para Product Managers

@dcerecedoByteflair

Modelo de gestiónLo ideal

Page 37: IT para Product Managers

@dcerecedoByteflair

Modelo de gestión

IncertidumbreLa realidad

Page 38: IT para Product Managers

@dcerecedoByteflair

Modelo de gestión

IncertidumbreLa realidad

Page 39: IT para Product Managers

@dcerecedoByteflair

Modelo de gestión

IncertidumbreLa realidad

{Fallos de comunicaciónExpectativas poco clarasCambio de prioridadesViabilidad técnicaPresupuesto...

Page 40: IT para Product Managers

Modelo de gestión

@dcerecedoByteflair

Cascada

Page 41: IT para Product Managers

La incertidumbre es inherenteEl cambio es inevitable

Modelo de gestión

@dcerecedoByteflair

Pon foco en lo que puedes controlar

Page 42: IT para Product Managers

Modelo de gestión

@dcerecedoByteflair

Ágil

Page 43: IT para Product Managers

Modelo de gestión

@dcerecedoByteflair

Ágil

Page 44: IT para Product Managers

Modelo de gestión

@dcerecedoByteflair

Q

€ Q

€Fijo

Cascada ÁgilEst.

Cascada vs Ágil

Page 45: IT para Product Managers

@dcerecedoByteflair

Modelo de gstiónLa realidad

Page 46: IT para Product Managers

@dcerecedoByteflair

Modelo de gestiónLa realidad

Page 47: IT para Product Managers

@dcerecedoByteflair

Modelo de gestiónLa realidad

Page 48: IT para Product Managers

@dcerecedoByteflair

Modelo de gestiónLa realidad

Page 49: IT para Product Managers

@dcerecedoByteflair

Gestionar Requerimiento

Page 50: IT para Product Managers

@dcerecedoByteflair

¿Por qué?Gestionar Requerimiento

EstimaciónPlanificación

DiseñoPruebas

Documentación

Page 51: IT para Product Managers

Categorías

@dcerecedoByteflair

NecesidadesFuncionalidades

La unidad de intercambio con el cliente

Gestionar Requerimiento

Page 52: IT para Product Managers

Categorías

@dcerecedoByteflair

FuncionalesNo funcionales

Gestionar Requerimiento

Requerimientos{

Page 53: IT para Product Managers

Requerimientos Funcionales

@dcerecedoByteflair

Casos de uso

Gestionar Requerimiento

Page 54: IT para Product Managers

Requerimientos No Funcionales

@dcerecedoByteflair

UsabilidadFiabilidad

RendimientoMantenibilidad

Seguridad

Gestionar Requerimiento

Page 55: IT para Product Managers

@dcerecedoByteflair

ContextualizarGestionar Requerimiento

Visión¿Entendemos bien el contexto?

Alinear al equipo de trabajo

Page 56: IT para Product Managers

@dcerecedoByteflair

ContextualizarGestionar Requerimiento

GlosarioEstablecer un vocabulario común

Page 57: IT para Product Managers

Caso de uso

@dcerecedoByteflair

Page 58: IT para Product Managers

Sistema

Caso de uso

@dcerecedoByteflair

Hacer login

Usuario

Representación visual estática

Page 59: IT para Product Managers

Caso de uso

@dcerecedoByteflair

Representación visual dinámica

SistemaUsuario

Visitar https://myservice.com

Introducir usuario y clave

Page 60: IT para Product Managers

Caso de uso

@dcerecedoByteflair

Representación textual

LoginContemplar los casos de error de usuario o

contraseña erróneos

Page 61: IT para Product Managers

Caso de uso

@dcerecedoByteflair

Representación textual

1. El usuario visita la página de inicio2. El sistema devuelve la página de inicio3. El usuario introduce sus credenciales en el formulario de login y pulsa enviar4. El sistema recibe la solicitud de login. ….

Page 62: IT para Product Managers

Caso de uso

@dcerecedoByteflair

Representación textual

1. El usuario visita la página de inicio2. El sistema devuelve la página de inicio3. El usuario introduce sus credenciales en el formulario de login y pulsa enviar4. El sistema recibe la solicitud de login. 4.1. El sistema comprueba que el usuario existe 4.1.a. El usuario no existe 4.1.a.1. El sistema devuelve un mensaje de error informando que las credenciales introducidas no son válidas 4.1.b. El usuario si existe 4.1.b.1. El sistema comprueba que la clave de acceso presentada se corresponde con la almacenada 4.1.b.1.a. La clave de acceso no se corresponde 4.1.b.1.a.1. El sistema devuelve un mensaje de error informando que las credenciales introducidas no son válidas. 4.1.b.1.b. La clave de acceso se corresponde 4.1.b.1.b.1. El sistema autentica al usuario y devuelve la página de bienvenida

Page 63: IT para Product Managers

Caso de uso

@dcerecedoByteflair

Representación textual

ConsistenciaUn bloque principal por interacción

Los números para accionesLas letras para opciones

Page 64: IT para Product Managers

Caso de uso

@dcerecedoByteflair

Wireframing

Page 65: IT para Product Managers

Caso de uso

@dcerecedoByteflair

Herramientas

Balsamiq MockupsVisual Paradigm

Page 66: IT para Product Managers

Calidad

@dcerecedoByteflair

Page 67: IT para Product Managers

Calidad¿Qué es?

@dcerecedoByteflair

Hacer lo correctoHacerlo correctamente

Evitar el desperdicio

Page 68: IT para Product Managers

CalidadRequerimientos

@dcerecedoByteflair

REQ17: El sistema no aceptará claves de acceso de más de 15 caracteres

Page 69: IT para Product Managers

CalidadRequerimientos

@dcerecedoByteflair

REQ17: El sistema no aceptará claves de acceso de más de 15 caracteres

Page 70: IT para Product Managers

CalidadRequerimientos

@dcerecedoByteflair

REQ17: El sistema no aceptará claves de acceso de más de 15 caracteres

¿Rechazará con error?

¿Truncará?

¿El usuario solo podrá introducir hasta 15 caracteres?

Page 71: IT para Product Managers

CalidadRequerimientos

@dcerecedoByteflair

No AmbiguosUna única interpretación

Page 72: IT para Product Managers

CalidadRequerimientos

@dcerecedoByteflair

REQ31: El sistema soportará múltiples usuarios de forma concurrente

REQ32: Se introducirá la dirección de destino

REQ33: El usuario podrá buscar destinos por nombre, dirección, etc...

Page 73: IT para Product Managers

CalidadRequerimientos

@dcerecedoByteflair

REQ31: El sistema soportará múltiples usuarios de forma concurrente

REQ32: Se introducirá la dirección de destino

REQ33: El usuario podrá buscar destinos por nombre, dirección, etc...

¿Cuantos?

¿Quién?

¿Cuales son los criterios aceptados?

Page 74: IT para Product Managers

CalidadRequerimientos

@dcerecedoByteflair

VerificablesDebe ser posible probar que el requerimiento

ha sido implementado correctamente

Page 75: IT para Product Managers

CalidadRequerimientos

@dcerecedoByteflair

REQ18: Cuando el usuario realiza una búsqueda, los términos de búsqueda pueden ser una dirección o contra un punto de interés. El sistema será capaz de discernir de que se trata y devolver resultados relevantes.

Page 76: IT para Product Managers

CalidadRequerimientos

@dcerecedoByteflair

REQ18: Cuando el usuario realiza una búsqueda, los términos de búsqueda pueden ser una dirección o contra un punto de interés. El sistema será capaz de discernir de que se trata y devolver resultados relevantes.

REQ18: El usuario puede buscar direcciones o puntos de interés sin necesidad de identificar si se trata de uno u otro.

REQ19: El sistema devolverá los resultados más relevantes en base a l sistema de scoring definido por la rega BR3.

REQ20: : El sistema será capaz de discernir entre direcciones y puntos de interés.

Page 77: IT para Product Managers

CalidadRequerimientos

@dcerecedoByteflair

ClarosConcisos, simples y precisos

Page 78: IT para Product Managers

CalidadRequerimientos

@dcerecedoByteflair

REQ46: Cuando el usuario de fulfillment emita una factura para un cliente, en la factura se desglosarán los costes y se aplicará el IVA del 18%

Page 79: IT para Product Managers

CalidadRequerimientos

@dcerecedoByteflair

REQ46: Cuando el usuario de fulfillment emita una factura para un cliente, en la factura se desglosarán los costes y se aplicará el IVA del 18%

Está mal, es el 21%...

¿Y si internacionalizamos?

Cada país aplica IVA's distintos

Page 80: IT para Product Managers

CalidadRequerimientos

@dcerecedoByteflair

CorrectosSi se hace referencia a hechos, estos hechos deben ser ciertos

Page 81: IT para Product Managers

CalidadRequerimientos

@dcerecedoByteflair

ComprensiblesDeben ser gramaticalmente correctos y

escritos de forma consistente

Page 82: IT para Product Managers

CalidadRequerimientos

@dcerecedoByteflair

REQ60: El usuario podrá realizar preguntas de viva voz y en lenguaje natural que el sistema será capaz de interpretar para ejecutar los comandos necesarios y responder al usuario

Solo tenemos 3 meses!

Page 83: IT para Product Managers

CalidadRequerimientos

@dcerecedoByteflair

ViablesLos requerimientos deben ser realizables

dentro de las restricciones impuestasde tiempo y recursos.

Page 84: IT para Product Managers

CalidadRequerimientos

@dcerecedoByteflair

REQ61: Al registrarse, el usuario deberá introducir como dirección de facturación una vía, un número de portal, un código postal y una localidad.

REQ62: Ésta podrá sobreescribirse con la dirección postal introducida anteriormente

Page 85: IT para Product Managers

CalidadRequerimientos

@dcerecedoByteflair

IndependientesPara entender un requerimiento no debe ser

necesario entender otros

Page 86: IT para Product Managers

CalidadRequerimientos

@dcerecedoByteflair

REQ65: El usuario podrá hacer login con sus credenciales (nombre de usuario y clave) o podrá autenticarse en nuestro sistema a través de Google

Page 87: IT para Product Managers

CalidadRequerimientos

@dcerecedoByteflair

REQ65: El usuario podrá hacer login con sus credenciales (nombre de usuario y clave).

REQ66: El usuario podrá hacer login autenticándose a través de Google.

Page 88: IT para Product Managers

CalidadRequerimientos

@dcerecedoByteflair

IndivisiblesSólo debe contener un elemento trazable

Page 89: IT para Product Managers

CalidadRequerimientos

@dcerecedoByteflair

NecesariosEliminar aquellos que no afectan al sistema o que no

han sido solicitados

Page 90: IT para Product Managers

CalidadRequerimientos

@dcerecedoByteflair

AbstractosIndependientes de la implementación

El qué, no el cómo

Page 91: IT para Product Managers

CalidadRequerimientos

@dcerecedoByteflair

ConsistentesNo debe haber conflictos entre requerimientos

Page 92: IT para Product Managers

CalidadRequerimientos

@dcerecedoByteflair

No RedundantesDeben ser expresados una única vez y no deben

solaparse

Page 93: IT para Product Managers

CalidadRequerimientos

@dcerecedoByteflair

REQ72: Un taxi puede estar libre, ocupado o fuera de servicio.

REQ73: Los taxis libres deberán mostrarse en la pantalla de control en color verde

REQ74: Los taxis ocupados deberán mostrarse en la pantalla de control en color rojo

Y los que están fuera de servicio

Page 94: IT para Product Managers

CalidadRequerimientos

@dcerecedoByteflair

CompletosDebe existir un requerimiento para condición posible

en el sistema

Page 95: IT para Product Managers

@dcerecedoByteflair

Componentes de referencia

Page 96: IT para Product Managers

@dcerecedoByteflair

Build

CoreServices

Componentes de referencia

Page 97: IT para Product Managers

@dcerecedoByteflair

Build

Frontoffice

CoreServices

Componentes de referencia

Page 98: IT para Product Managers

@dcerecedoByteflair

Build

Frontoffice

CoreServices

API

Componentes de referencia

Page 99: IT para Product Managers

@dcerecedoByteflair

Build

Backoffice

Frontoffice

CoreServices

API

Componentes de referencia

Page 100: IT para Product Managers

@dcerecedoByteflair

Build

Backoffice

Frontoffice

CoreServices

API

Componentes de referencia

Parameterize

HooksSecurity

Auditor Scheduler

Page 101: IT para Product Managers

@dcerecedoByteflair

Build

Backoffice

Frontoffice

CoreServices

API

Componentes de referencia

Parameterize

HooksSecurity

Auditor Scheduler

Integrate

MarketingComms.

ContentManager

InvocingPayments

Page 102: IT para Product Managers

@dcerecedoByteflair

Build

Backoffice

Frontoffice

CoreServices

API

Componentes de referencia

Parameterize

HooksSecurity

Auditor Scheduler

Integrate

MarketingComms.

ContentManager

InvocingPaymentsAPIs

Page 103: IT para Product Managers

@dcerecedoByteflair

Build

Backoffice

Frontoffice

CoreServices

API

Componentes de referencia

Parameterize

HooksSecurity

Auditor Scheduler

Integrate

MarketingComms.

ContentManager

InvocingPayments

Message Bus

Page 104: IT para Product Managers

Estimación

@dcerecedoByteflair

Page 105: IT para Product Managers

Estimación

@dcerecedoByteflair

PesarNo usar valores uniformemente espaciados

Buscar consenso: justificar peso más alto y más bajo y volver votar

Page 106: IT para Product Managers

Estimación

@dcerecedoByteflair

Ordenar por complejidad

Page 107: IT para Product Managers

Estimación

@dcerecedoByteflair

Revisar¿Estamos de acuerdo con los pesos relativos?

Page 108: IT para Product Managers

Estimación

@dcerecedoByteflair

Asignar esfuerzo a cada pesoExperiencia

Partir de casos concretos y extrapolar

Page 109: IT para Product Managers

Estimación

@dcerecedoByteflair

Revisar proporciones¿Estamos contentos con la relación de pesos y

esfuerzos?

Page 110: IT para Product Managers

Estimación

@dcerecedoByteflair

RepetirHasta que todo nos cuadre

Page 111: IT para Product Managers

Estimación

@dcerecedoByteflair

Horas de esfuerzo

Page 112: IT para Product Managers

Estimación

@dcerecedoByteflair

DescomponerNunca más de 15 días

Divide y vencerás

Page 113: IT para Product Managers

Priorizar

@dcerecedoByteflair

Page 114: IT para Product Managers

Priorizar

@dcerecedoByteflair

Criterios

Riesgo

Page 115: IT para Product Managers

Priorizar

@dcerecedoByteflair

Criterios

RiesgoResolver los riesgos cuanto antes

Page 116: IT para Product Managers

Priorizar

@dcerecedoByteflair

Criterios

ROIIdentificar los elementos que aportan más valor con

la menor inversión

Page 117: IT para Product Managers

Priorizar

@dcerecedoByteflair

Criterios

Orden lógico

Page 118: IT para Product Managers

Estimación

@dcerecedoByteflair

OrdenHoras de esfuerzoPlan de desarrollo

Page 119: IT para Product Managers

Roadmaps

@dcerecedoByteflair

Page 120: IT para Product Managers

Roadmaps

@dcerecedoByteflair

Herramienta de comunicaciónNivel estratégico

Page 121: IT para Product Managers

Roadmaps

@dcerecedoByteflair

Page 122: IT para Product Managers

Roadmaps

@dcerecedoByteflair

Page 123: IT para Product Managers

Roadmaps

@dcerecedoByteflair

Page 124: IT para Product Managers

Roadmaps

@dcerecedoByteflair

Page 125: IT para Product Managers

Roadmaps

@dcerecedoByteflair

Page 126: IT para Product Managers

Contrato

@dcerecedoByteflair

Page 127: IT para Product Managers

Contrato

@dcerecedoByteflair

Time & Materials

Alquilo talentoEs una estimación de esfuerzo

Facturación mensual según consumoEl cliente es propietario del riesgo

No hay garantía

Page 128: IT para Product Managers

Contrato

@dcerecedoByteflair

Precio Fijo

Compro un productoEl proveedor es propietario del riesgo

Tres meses de garantía frente a defectosFacturación por hitos

Page 129: IT para Product Managers

Contrato

@dcerecedoByteflair

Precio Fijo

Compro un productoRequiere adelantar pagos

Requiere cerrar alcanceAcordar un plan de ejecución

Definir hitos y pagosAcordar un modelo de colaboración

Page 130: IT para Product Managers

Contrato

@dcerecedoByteflair

Los contratos a precio fijo friccionan con el agilismo

Page 131: IT para Product Managers

Seguimiento

@dcerecedoByteflair

Page 132: IT para Product Managers

Seguimiento

@dcerecedoByteflair

Preguntas clave

¿Llegaremos a tiempo?¿Hace falta reducir el alcance?

¿Cuando acabaremos?¿Podemos permitirnos añadir más funciones?

Page 133: IT para Product Managers

Seguimiento

@dcerecedoByteflair

BurndownEs

fuer

zo

Tiempo

Page 134: IT para Product Managers

Seguimiento

@dcerecedoByteflair

BurndownEs

fuer

zo

Tiempo

Esfuerzo total

pendiente de ejecutar

Velocidad de ejecución necesariapara llegar a tiempo

Page 135: IT para Product Managers

Seguimiento

@dcerecedoByteflair

BurndownEs

fuer

zo

Tiempo

Esfuerzo ejecutado

Velocidad de real ejecución

Page 136: IT para Product Managers

Seguimiento

@dcerecedoByteflair

BurndownEs

fuer

zo

Tiempo

Nos estamos retrasando

Page 137: IT para Product Managers

Seguimiento

@dcerecedoByteflair

BurndownEs

fuer

zo

Tiempo

La cosa empeora

Page 138: IT para Product Managers

Seguimiento

@dcerecedoByteflair

BurndownEs

fuer

zo

Tiempo

Casi volvemos al plan

Page 139: IT para Product Managers

Seguimiento

@dcerecedoByteflair

Burndown

Revisar relación pesos y esfuerzo

Page 140: IT para Product Managers

Seguimiento

@dcerecedoByteflair

BurndownEs

fuer

zo

Tiempo

Reduciremos el alcance

para llegar a tiempo

Page 141: IT para Product Managers

Seguimiento

@dcerecedoByteflair

BurndownEs

fuer

zo

Tiempo

Lo habitual es el aumento del alcance

Page 142: IT para Product Managers

@dcerecedoByteflair

Si no llevas un registro de lo que haces nunca conocerás la

causa de tus fallos

Page 143: IT para Product Managers

@dcerecedoByteflair

Si no puedes medirlono puedes mejorarlo

Page 144: IT para Product Managers

@dcerecedoByteflair

Hacer lo correctoHacerlo correctamente

Evitar el desperdicio

Page 145: IT para Product Managers

?Daniel Cerecedo

@dcerecedo http://byteflair.com