Levantamiento de Requerimientos de Software: Perspectiva de Sherlock Holmes

34
Levantamiento de Requerimientos de Software: Perspectiva de Sherlock Holmes @vanessa_amaya

Transcript of Levantamiento de Requerimientos de Software: Perspectiva de Sherlock Holmes

Levantamiento de Requerimientos de

Software: Perspectiva de Sherlock Holmes

@vanessa_amaya

Algo sobre mí

• Ing. en Sistemas Computacionales por la Universidad Autónoma de Guadalajara.

• Consultora Sr. en proyectos de desarrollo Software con 13 años de experiencia en las industrias: financiera, servicios, automotriz y farmacéutica. Se ha especializado en la implementación de procesos y buenas prácticas para el desarrollo de software en relación a la gestión de proyectos y requerimientos.

• Ha dado cursos a más de 2000 profesionistas del desarrollo de software en temas de Ingeniería de Software, gestión, liderazgo, levantamiento&dimensionamiento de requerimientos y comunicación efectiva. Cuenta con Certificación en Oratoria Avanzada avalado por Toastmaster International.

• Es miembro del Comité Académico del programa Técnico Superior Universitario en Software en la Universidad IBERO.

• Actualmente funge como Consultora e Instructora en la empresa “Consultoría Estratégica & Coaching” y como Coordinadora del Chapter DF de la Organización Epic Queen donde se promueve e involucra a las mujeres a asumir roles de liderazgo dentro de la tecnología.

¿Por qué Sherlock Holmes?

Va revelando sus hallazgos poco a poco.

Al igual que nosotros tenemos todo un ciclo de vida para ir descubriendo nuestros proyectos.

Es un personaje excéntrico.

Igual que nosotros (y a mucha honra).

En ocasiones resulta un tanto brusco.

Igual que nosotros (a veces)

No es muy ordenado en la rutina cotidiana, pero es muy habilidoso para disfrazarse.

Y aceptemos que solemos no ser luego muy ordenados pero eso sí, somos muy creativos para solucionar problemas ágilmente.

Utiliza métodos de lógica, deducción y observación para realizar su trabajo.

Igual que nosotros.

Intereses variados que le sirven para resolver casos.

El desarrollo de software es un conjunto de disciplinas muy variadas y de todo un poco tenemos que saber.

Había una vez, una Vane que fue

enviada a levantar

requerimientos…

Que Roger me acompañe

¿Dónde está la fase de “venta”?

¿Por qué tanta prisa en la fase de análisis?

Y comencé a preguntarme….

¿De dónde salieron tantos roles?

¿Por qué hay mas conflictos humanos

que técnicos?

Y comencé a preguntarme….

Y Roger me dijo….

Cómo gestionar requerimientos….. Pero no me dijo como obtenerlos

Y llega otro libro….

Pero no me dijo como obtenerlos

Y Roger recapacitó

Y en la séptima edición ya puso algo sobre cómo obtenerlos…

Mientras tanto, en un mundo paralelo……

Al parecer muchos autores consideran que:

Los clientes saben perfectamente qué es lo que nos van a pedir.

Los clientes saben perfectamente la diferencia entre lo que se quiere y lo que se necesita.

Los responsables de vender los proyectos cuentan con tablas de estimación muy precisas y siempre consultan con los Líderes y Desarrolladores antes de vender un proyecto.

• Todos los involucrados están de acuerdo en invertir el suficiente tiempo en levantar y dimensionar los requerimientos antes de comenzar a desarrollar.

• Los clientes y usuarios siempre te dicen claramente lo que se requiere y a la primera.

Vamos a lo elemental…

Recolectando las claves

• Toda información es valiosa porque puedes ser parte de:

– Una necesidad de negocio

– Un deseo de los usuarios

– Un factor de éxito

Elemental mi querido Watson…

El levantamiento de requerimientos no se realiza en una sola junta con una sola persona.

El misterio se devela poco a poco

Se pregunta al cliente y a usuarios los “¿Por qué? y los ¿Para qué?”.

Nadie te va a decir “que te importa”.

Se aprovecha el levantamiento de requerimientos para educar al cliente y usuarios.

Si no entendiste el o los problemas principales ¿qué software vas a desarrollar?

Elemental mi querido Watson…

Un Proyecto con buena comunicación tiende a generar una mayor satisfacción dentro del equipo y al cliente, aunque técnicamente tengamos inconvenientes.

El levantamiento de requerimientos es una oportunidad para generar empatía.

Objetivos de un levantamiento de requerimientos

• Vamos a descubrir las necesidades y motivaciones de una empresa para implementar una solución.

• Vamos a cimentar los vínculos de relación con el cliente y los involucrados relevantes.

• Vamos a encontrar las piezas claves para un correcto dimensionamiento.

• Vamos a descubrir cómo se nos va a calificar como proveedor.

@vanessa_amaya

• ¿Y aparte de todo lo que tengo que hacer tengo que preparar el

levantamiento de requerimientos?

Análisis Diseño Anteproyecto Construcción Pruebas Implantación

La prisa por iniciar

La prisa por const

Manejo de sorpresas,

Reducción en tiempo de

pbas

TERROR

Tiempo de incertidumbres Estimados sin certeza

Análisis Diseño Anteproyecto Construcción Pruebas Implantación

La prisa por iniciar

La prisa por const

Manejo de sorpresas,

Reducción en tiempo de

pbas

TERROR

Tiempo de incertidumbres Estimados sin certeza

Estimación de lo crítico

Detalle téc y func.

Ejecución de lo planeado. Admon de cambios.

Cierre con

éxito

Tiempos con certeza alta Actividades que aumentan la certidumbre

¿En qué ayuda el trabajo de Sherlock Holmes al Gobierno

Británico?

• Provee de evidencias y argumentos para poder hacer justicia en los crímenes que investiga.

¿En qué ayuda el trabajo del levantamiento de requerimientos?

• Provee bases para establecer y negociar tiempos y alcances de los proyectos de desarrollo de software para alcanzar sus objetivos.

Elemental mi querido Watson…

Las pistas…. • ¿Por qué la organización debe/quiere cambiar?

• Problemas a solucionar.

• Obstáculos de aceleración de cambio.

• Áreas de la empresa que serán afectadas.

• Número de usuarios finales que serán impactados.

• Complejidad de la operativa de la empresa e identificar si esta está documentada.

• Existe presupuesto asignado o un equipo dedicado a la iniciativa.

Empatía para obtener más pistas

• Escucha con la mente abierta y sin prejuicios.

• Prestar atención y mostrar interés.

• No interrumpir.

• Reconoce y adula pero sin perder la autenticidad.

• Muestra disposición.

• Habla en el mismo sentido.

• No abuses del lenguaje técnico.

El poder de la observación

Formas de expresión

Preocupaciones

Prioridades

Filosofías

Gustos

Primeras preguntas ¿Cuál es el origen de la necesidad?

¿Por qué la organización debe/quiere cambiar?

¿Quién usará la solución? ¿Número aproximado?

¿Cuál será el beneficio de la solución para considerarla exitosa?

¿Qué problemas quieren resolver?

¿Puede describir el ambiente en el que se usaría la solución?

¿Hay aspectos especiales del desempeño o reestricciones que afecten el modo en el que se enfoca la solución?

¿Los procesos de negocio que estarían implicados, hay complejidad o algunas barreras?

¿Algo que desee agregar?

¿Existe presupuesto asignado para esta iniciativa?

¿Considera si hay otra persona que me pueda dar información adicional?

Tipo Definición ¿Cuándo utilizarla?

Abierta La respuesta no puede venir de un número finito

de respuestas.

Cuando necesitamos detalle de un requerimiento.

Cerrada La respuesta viene de un número finito de

respuestas.

Cuando necesitamos concretar el detalle de un requerimiento.

Opción múltiple Cuando contamos con un catálogo de respuestas posibles con base en

proyectos anteriores o similares.

Cuando necesitemos verificar o priorizar entre varias opciones.

Cuando hay contradicciones entre requerimientos de los

involucrados.

Para preparar más preguntas

El poder de la observación

Procesos

Operación

Formas de interacción

Técnicas

Entrevistas

Cuestionarios en línea

Talleres de REQS

Focus groups

El poder de la deducción Requerimientos indirectos

• Seguridad – Impacto de accesos no

autorizados. • Conformidad - Normas, estándares,

convenciones, reglamentos, protocolos existen en la organización sobre el desarrollo e implantación del sistema.

• Eficiencia y tolerancia a fallas – Horarios críticos.

• Recuperabilidad – Tiempo para reestablecer o recuperar datos.

• Comportamiento - Velocidad de respuesta en las funciones que se consideran críticas.

Conclusiones

• No por tener prisa de desarrollar vamos a terminar antes.

• Aprovechar la etapa de levantamiento de requerimientos no es invertir meses o años. Es invertir el tiempo justo para las preguntas correctas con las personas adecuadas.

• La curiosidad y la creatividad va de la mano con el desarrollo de software: hay un Sherlock Holmes en cada uno de nosotros.

¡Nos vemos pronto!

• Taller: Ingeniería de Software con visión de Negocio

• 11 de marzo de 10am a 2:30pm

• Consultoría Estratégica y Coaching es una empresa joven, nacida en 2012. Desde su constitución, hemos aportado nuestros servicios tanto a empresas grandes como a pequeñas pues buscamos que nuestro nacimiento estuviera acompañado de expertos que pronto nos dieron un posicionamiento y prestigio importantes.

• Buscamos alinear estratégicamente los procesos, los proyectos y a las personas que son parte de nuestros clientes a través de Consultoría, Capacitación, Proyectos Cerrados, Asignación de personal y Acompañamiento tipo Coaching.

• Nuestra mayor fortaleza es la experiencia en la gestión de proyectos y equipos de trabajo exitosos ya que incorporamos a nuestros servicios técnicas innovadoras de Design Thinking, Gamification y Coaching y transferimos conocimiento a nuestro clientes de tal manera, que no generamos dependencia hacia nosotros.

Acerca de CE&Coaching

Personas Procesos

Proyectos

Definición

Documentación

Mejora

Automatización

Arquitectura empresarial

Gestión de requerimientos

Gestión de proyectos

Gestión de requerimientos

TI y Software

Formación

Coaching

Manejo de resistencia a cambio

Proyectos de impacto positivo

a cultuta organizacional

http://www.cecoaching.com.mx/ @cecoaching_mx

¿Preguntas?

[email protected]

@vanessa_amaya