La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

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.

Presentaciones similares


Presentación del tema: "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."— Transcripción de la presentación:

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

2 Estructura

3 contextualización

4 Contextualización Calidad Productividad Agilidad
Desarrollo ágil de software ¿Por qué implementar el desarrollo ágil?

5 Contextualización Productividad
Relación entre los resultados y el tiempo utilizado para obtenerlos: cuanto menor sea el tiempo que lleve obtener el resultado deseado, más productivo es el sistema.

6 Contextualización Agilidad
Capacidad para adaptar el curso del desarrollo a la evolución de los requisitos y a las circunstancias del entorno. Innovación La permanencia de estas empresas depende de su capacidad de innovación continua. Flexibilidad En las circunstancias de velocidad del mercado actual, es importante la capacidad de adaptación y evolución a través de versiones, modificaciones, actualizaciones o ampliaciones.

7 Desarrollo ágil de software
El desarrollo ágil es simplemente la evolución natural del proceso de software para apoyar el acelerado y cambiante entorno empresarial. A través de un enfoque ligero y de baja ceremonia para el desarrollo de software, incorpora un conjunto de mejores prácticas de gestión y de ingeniería para acelerar y mejorar el proceso de entrega.

8 ¿Por qué es importante el desarrollo ágil?
Los proyectos de software fallan porque: Se pretenden predecir y planear todos los requerimientos de antemano en un entorno cambiante. Se solicitan demasiados cambios y los plazos de entrega son ampliados constantemente. Los procesos de desarrollo y gestión de cambios son poco flexibles.

9 ¿Por qué es importante el desarrollo ágil?
El equipo ve a los entregables y control de cambios como un fin y no como un medio para entregar software funcional. Los usuarios no se involucran. La calidad se sacrifica al tratar de imponer tiempos poco realistas. El producto no está debidamente probado.

10 ¿Por qué es importante el desarrollo ágil?
Las metodologías ágiles de desarrollo de software proponen simplicidad y velocidad para crear software maximizando su valor, con mayor calidad y en menor tiempo.

11 ¿Por qué es importante el desarrollo ágil?
Innovación continua: Para cumplir con las necesidades actuales del cliente. Adaptabilidad del producto: Para cumplir con las necesidades futuras del cliente. Mejora del tiempo de entrega al mercado: Para satisfacer las ventanas de mercado y mejorar el Retorno de la inversión (ROI). Adaptabilidad de personas y procesos: Para responder rápidamente a los cambios de producto y negocio. Resultados confiables: Para apoyar el crecimiento de negocio y la rentabilidad.

12 Metodologías ágiles Metodologías ágiles más usadas, según los resultados de la encuesta realizada por la compañía VersionOne.

13 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.

14 Metodología SWAPyME

15 Metodología SWAPyME Definición Enfoque Principios Roles Prácticas
Herramientas

16 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

17 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.

18 Es una metodología iterativa:
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.

19 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.

20 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.

21 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.

22 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

23 Roles Grupo de pruebas: Crear los escenarios de pruebas funcionales
Certificar cada release que vaya a ser entregado al cliente en cada iteración.

24 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.

25 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.

26 Prácticas

27 Prácticas para la gestión del proyecto
Planificación Para 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.

28 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.

29 Prácticas para la gestión del proyecto
Ambiente colaborativo Se 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.

30 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.

31 Prácticas para la gestión del proyecto
Seguimiento y control Para 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.

32 Prácticas para cada iteración
Definición de requerimientos En 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.

33 Prácticas para cada iteración
Diseño del sistema El 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.

34 Prácticas para cada iteración
Refactorización Se 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.

35 Prácticas para cada iteración
Integración continua Se 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.

36 Prácticas para cada iteración
Desarrollo basado en pruebas Por 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


Descargar ppt "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."

Presentaciones similares


Anuncios Google