Mapa de metodologías: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
__NOTOC__ | __NOTOC__ | ||
Desde los 80 se han desarrollado tantos modelos de procesos, marcos y prácticas de trabajo para mejorar la calidad y | Desde los 80 se han desarrollado tantos modelos de procesos, marcos y prácticas de trabajo para mejorar la calidad y eficiencia en los proyectos de software, que resulta útil trascender las etiquetas y llegar a la base de los principios que subyacen, y las estrategias con las que los desarrollan; de forma que usando como coordenadas tres conceptos: “desarrollo, trabajo y conocimiento”, y dos modelos de gestión: “predictiva y evolutiva” se despeja y simplifica el aparente laberinto de modelos de procesos, marcos o prácticas de trabajo a los que nos referimos: [[CMM-SW]], [[CMMI]], [[PMBOK]], [[DSDM]], [[Crystal]], [[ISO 15504]], RUP, [[Extreme programming|XP]], Scrum, [[ITIL]], ASD, [[PRINCE2]], [[LEAN]], KANBAN, [[TDD]], etc.. | ||
{{Párrafo_enmarcado|texto=Las diferentes prácticas y metodologías responden a combinaciones de tres conceptos y dos patrones de gestión de proyectos.)}} | {{Párrafo_enmarcado|texto=Las diferentes prácticas y metodologías responden a combinaciones de tres conceptos y dos patrones de gestión de proyectos.)}} | ||
Line 10: | Line 10: | ||
====1.- Desarrollo==== | ====1.- Desarrollo==== | ||
'''Completo''': La descripción de lo que se desea obtener está disponible al inicio del proyecto, es completa y detallada, sirve de base para estimar el plan del proyecto: tareas, recursos y agenda de trabajo. Durante la ejecución se gestiona su cumplimiento. | '''Completo''': La descripción de lo que se desea obtener está disponible al inicio del proyecto, es completa y detallada, sirve de base para estimar el plan del proyecto: tareas, recursos y agenda de trabajo. Durante la ejecución se gestiona su cumplimiento. | ||
'''Incremental''': La descripción de lo que se desea obtener no está disponible de forma completa y detallada al inicio: se complementa y evoluciona en paralelo al desarrollo, que genera el resultado de forma incremental y que se puede gestionar con dos tácticas diferentes: | '''Incremental''': La descripción de lo que se desea obtener no está disponible de forma completa y detallada al inicio: se complementa y evoluciona en paralelo al desarrollo, que genera el resultado de forma incremental y que se puede gestionar con dos tácticas diferentes: | ||
'''Desarrollo incremental continuo''': Empleando técnicas para lograr | '''Desarrollo incremental continuo''': Empleando técnicas para lograr un flujo continuo de desarrollo de las funcionalidades o partes del producto, que se entregan de forma continua al cliente. | ||
'''Desarrollo iterativo''': | '''Desarrollo iterativo''': Empleando técnicas de tiempo prefijado o timeboxing para mantener la producción de incrementos del producto de forma cíclica y continua. Este es el marco de producción empleado al aplicar el marco estándar de scrum, que define como sprint a cada iteración de desarrollo, al final de la cual se produce un incremento del producto. | ||
====2.- Trabajo==== | ====2.- Trabajo==== | ||
'''Secuencial (cascada)''': | '''Secuencial (cascada)''': Divide el trabajo en fases, y cada fase comienza al terminar la anterior. El ejemplo más habitual es el ciclo de cascada definido en Ingeniería del software con las fases de requisitos, análisis, diseño, codificación, pruebas e implementación. | ||
'''Concurrente''': Solapa en el tiempo | '''Concurrente''': Solapa en el tiempo las diferentes fases. Siguiendo con el ejemplo de ingeniería de software, la definición de requisitos, el análisis, la codificación y el despliegue del resultado se realiza y revisa de forma simultánea y continua. | ||
====3.- Conocimiento==== | ====3.- Conocimiento==== | ||
¿Dónde se encuentra el principal conocimiento empleado, el responsable de la calidad del resultado. | |||
El conocimiento o know-how | |||
El conocimiento o know-how | |||
'''Producción basada en procesos''': El conocimiento o know-how, responsable de la calidad del resultado se encuentra en mayor medida en los procesos y la tecnología empleada: “La calidad del resultado depende de la calidad de los procesos empleados“. | |||
'''Producción basada en personas''': El conocimiento o know-how responsable de la calidad del resultado se encuentra en mayor medida en el “saber hacer” tácito de las personas que lo construyen. | |||
Line 37: | Line 42: | ||
====Gestión predictiva==== | ====Gestión predictiva==== | ||
Modelo de gestión | Modelo de gestión cuyo objetivo es ofrecer resultados predecibles: desarrollo del producto previsto, en el tiempo previsto, e invirtiendo los recursos previstos. Emplea una estrategia de desarrollo completo con prácticas de planificación tradicional. Los principales referentes en el desarrollo de conocimiento para este tipo de gestión son [[PMI]] e [[IPMA]] y los modelos desarrollados (CMMI, ISO 15504, SPICE entre otros) emplean ingeniería secuencial y producción basada en procesos. | ||
====Gestión evolutiva==== | ====Gestión evolutiva==== | ||
Modelo de gestión | Modelo de gestión cuyo objetivo es entregar lo antes posible un producto mínimo viable, e incrementar su valor de forma continua. Emplea una estrategia de fases de trabajo solapadas, y desarrollo incremental, que se puede obtener con tácticas iterativas o de mantenimiento de flujo continuo. Puede emplearse con producción basada en procesos (ingeniería concurrente) o con producción basada en personas (agilidad). | ||
Es importante esta distinción porque sin ella se generan situaciones confusas que llegan a considerar agilidad a la simple aplicación de | |||
Es importante esta distinción porque sin ella se generan situaciones confusas que llegan a considerar agilidad a la simple aplicación de las reglas estándar de scrum (ciclo de incremento iterativo con roles y artefactos definidos), o al simple uso de técnicas de gestión visual kanban para mantener un flujo continuo de tareas. | |||
{{Párrafo_enmarcado|texto=Agilidad y gestión evolutiva no son lo mismo. Se puede hacer gestión evolutiva empleando agilidad o empleando ingeniería concurrente.}} | |||
Información relacionada: [[Ingeniería concurrente]] - [[Agilidad]] | Información relacionada: [[Ingeniería concurrente]] - [[Agilidad]] |