guía metodológica para la gestión de proyectos de software en pymes que no son fábricas de...

36
Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles

Upload: benito-monico

Post on 12-Jan-2015

11 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles

Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software

por medio de Metodologías ágiles

Page 2: Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles

Estructura

Page 3: Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles

CONTEXTUALIZACIÓN

Page 4: Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles

Contextualización

• Calidad• Productividad• Agilidad• Desarrollo ágil de software• ¿Por qué implementar el desarrollo ágil?

Page 5: Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles

Metodologías ágiles

• SCRUM• eXtreme Programming (XP)• Dynamic System Development Method (DSDM)• Feature Driven Development (FDD)• Lean Software Development (LSD)• Adaptive Software Development (ASD)• Agile Unified Process (AUP) • Crystal.

Page 6: Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles

METODOLOGÍA SWAPYME

Page 7: Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles

Metodología SWAPyME

• Definición• Enfoque • Principios• Ciclo• Roles• Prácticas • Herramientas

Page 8: Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles

Metodología SWAPyME

Page 9: Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles

Metodología SWAPyME

• Framework de gestión de proyectos liviano que tiene como principal objetivo la distribución de software de alta calidad con rapidez y continuidad, en torno a las necesidades del valor de negocio, la participación activa de los usuarios y la adaptación continua, contribuyendo con el aumento de la productividad en la gestión

Page 10: Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles

Definición

• Framework de gestión de proyectos liviano que tiene como principal objetivo la distribución de software de alta calidad con rapidez y continuidad, en torno a las necesidades del valor de negocio, la participación activa de los usuarios y la adaptación continua, contribuyendo con el aumento de la productividad.

Page 11: Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles

Enfoque

• Es una metodología iterativa:– Flexibilidad que permite ante los cambios –Genera más valor para el usuario–Contribuye con la corrección temprana de

errores– Es posible tener más control sobre ciertas

características del proyecto disminuyendo riesgos.

Page 12: Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles

Principios

• La participación activa del usuario.• Las entregas iterativas e incrementales.• Los requerimientos son tomados como línea base.• Centrarse en actividades de alto valor.• Comunicación y retroalimentación constante.• Gestión del cambio.• Mantener independencia de herramientas y

lenguajes de programación.• Adopción de agilidad en el equipo de trabajo.

Page 13: Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles

Ciclo

Page 14: Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles

Ciclo

• Iteración preliminar Tiempo: Dos días a una semana (Si es la primera iteración en el proyecto puede tardar hasta dos semanas).

Esta es la primera iteración del proyecto, donde se determinan las bases que guiarán su progreso.

Page 15: Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles

Ciclo

• ConstrucciónTiempo: Una a dos semanas.

En la iteración de construcción se desarrolla software de alta calidad que cumpla con las necesidades planteadas por el usuario. Se pueden llevar a cabo una o más iteraciones de construcción antes de realizar la entrega al cliente, basados en las historias de usuario asignadas para la iteración.

Page 16: Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles

Ciclo

• Entrega al clienteTiempo: Según la disponibilidad del cliente. No debe ser más de una semana.

En esta iteración se realiza una entrega formal al cliente de las historias de usuario que hayan sido construidas y que cuenten con la verificación pertinente.

Page 17: Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles

Ciclo

• ProducciónTiempo: Según la disponibilidad y necesidades del cliente.

En esta iteración se debe controlar que el sistema es útil, cumple con las expectativas del cliente y es productivo al ser desplegado en el ambiente que usa el cliente.

Page 18: Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles

Ciclo

• Cierre Tiempo: Tres a cuatro horas.

Consiste en analizar acerca de todas las actividades que se lograron realizar después de la última iteración de producción, donde se miran las debilidades del equipo y las habilidades por mejorar, además de las lecciones aprendidas para los próximos proyectos.

Page 19: Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles

Roles

• Colección de funciones que cumple uno o varios grupos de personas, con el fin de cumplir con actividades que se definen para éste y entregar los artefactos que deben ser elaborados.

Page 20: Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles

Roles

• Gerente de proyecto: – Planificación del proyecto en la totalidad de su

duración– Asignación de los recursos – Delegación de responsabilidades– Organizar las reuniones– Mantener un control sobre el progreso del proyecto – Definir estrategias para mitigar los riesgos que se

puedan presentar.

Page 21: Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles

Roles

• Líder de proyecto– Supervisión de la implementación proceso y todas

las actividades que permitan el mejoramiento del mismo.

– Arquitecto del sistema– Mantiene el control y cambios requeridos de la

arquitectura en cada una de las iteraciones.

Page 22: Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles

Roles

• Grupo de desarrollo: – Codificación de los componentes del desarrollo de

cada iteración– Ejecución de pruebas unitarias– Documentación – Mantener la actualización del código

Page 23: Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles

Roles

• Grupo de pruebas: – Crear los escenarios de pruebas funcionales– Certificar cada release que vaya a ser entregado al

cliente en cada iteración.

Page 24: Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles

Roles

• Usuario (stakeholder): – Poseen conocimiento del dominio del sistema en

desarrollo– Aceptarán o rechazarán el sistema de acuerdo a

los requerimientos establecidos en la iteración – Interactúan con los miembros del equipo de

desarrollo para algún propósito del proyecto.

Page 25: Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles

Prácticas

Page 26: Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles

Prácticas para la gestión del proyecto

• PlanificaciónPara el inicio del proyecto, en la primera iteración que se vaya a realizar, se debe haber elaborado antes un análisis de factibilidad del proyecto donde se determine el alcance y validación tecnológica, operativa y económica del proyecto.

Page 27: Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles

Prácticas para la gestión del proyecto

Después de la primera iteración, las planificaciones dan inicio al ciclo de cada iteración, llevando a cabo las siguientes tareas:

– Determinar las historias de usuario que van a ser

construidas en la iteración.– Estimar el tiempo que se tomará para la construcción

de las historias de usuario elegidas.– Los integrantes del grupo de desarrollo eligen qué

historias de usuario construirán.

Page 28: Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles

Prácticas para la gestión del proyecto

• Ambiente colaborativoSe entiende como un espacio virtual donde todas las partes interesadas en el proyecto, incluso si están en diferente tiempo o lugar, pueden negociar, hacer una lluvia de ideas, debatir, compartir conocimientos y en general trabajar en conjunto para llevar a cabo algunas tareas, que permitan realizar seguimiento y mantener el control de los principales componentes del proyecto.

Page 29: Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles

Prácticas para la gestión del proyecto

• Entregas iterativas e incrementales Consiste en la entrega de funcionalidades principales del sistema máximo cada dos semanas al cliente, lo cual permitirá la retroalimentación inmediata por su parte y aumentará la productividad del proyecto.

Page 30: Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles

Prácticas para la gestión del proyecto

• Seguimiento y controlPara entregar un proyecto consistente se debe llevar una trazabilidad de los principales aspectos, desde el inicio del proyecto hasta el fin. Dado que el aspecto principal de esta metodología son los requerimientos y el enfoque iterativo, se llevará a cabo la trazabilidad de las historias de usuario por cada iteración y su relación con otras historias de usuario.

Page 31: Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles

Prácticas para cada iteración

• Definición de requerimientosEn esta actividad de definición de las necesidades del sistema que guiará el desarrollo, se utilizan las historias de usuario para detallar, en un lenguaje cercano al cliente, la funcionalidad que debe satisfacer cada iteración, de forma tal que se logre trazabilidad con el alcance general del proyecto.

Page 32: Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles

Prácticas para cada iteración

• Diseño del sistemaEl diseño del sistema no será definido inicialmente, por el contrario, para cada iteración se tendrá en cuenta la arquitectura del proyecto y se diseña según el alcance definido en la iteración, en contraste con nuevos requerimientos definidos por el cliente.

Page 33: Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles

Prácticas para cada iteración

• RefactorizaciónSe refiere a la actividad constante en los desarrollos ágiles, donde, el objetivo es mejorar el diseño y la productividad del proyecto en desarrollo, sin influir en su funcionalidad.

Page 34: Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles

Prácticas para cada iteración

• Integración continuaSe debe integrar cada cambio introducido al proyecto. Se parte de la base que cuanto más tiempo se espere para integrar más costosa e impredecible será la actividad de integración. Se debe disponer de herramientas que permitan su automatización.

Page 35: Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles

Prácticas para cada iteración

• Desarrollo basado en pruebasPor medio de esta práctica se implementan las pruebas incluso antes de comenzar a escribir el código de un módulo. De esta forma, ante cada modificación en las iteraciones del proyecto el plan de pruebas es ejecutado completamente.– Pruebas de aceptación del cliente– Pruebas unitarias– Pruebas funcionales

Page 36: Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles

Herramientas

• Estudio de factibilidad técnica• Historias de usuario• Diseño del sistema• Notas de entrega• Grafo de trazabilidad• Lecciones aprendidas• Checklist calidad de software• Pasos para infundir agilidad en el equipo de trabajo• Uso de herramientas de software