Mapa de metodologías: Difference between revisions

From Scrum Manager BoK
No edit summary
No edit summary
 
(11 intermediate revisions by 2 users not shown)
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 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 con 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, XP, Scrum, ITIL, ASD, PRINCE 2, LEAN, KANBAN, TDD, etc..
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.
 
A través de 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.)}}


[[File:Mapa.png|650px|center]]
[[File:Mapa.png|650px|center]]


===Conceptos===


====1.- Desarrollo====
==Conceptos==
===1.- Desarrollo===
 
 
[[File:Desarrollo.png|250px]]
 
 
*'''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:
*'''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''': 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===
 
 
[[File:Trabajo.png|250px]]


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


*'''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 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.


'''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:
===3.- Conocimiento===


'''Desarrollo incremental continuo''': Empleando técnicas para lograr y mantener un flujo continuo de desarrollo de funcionalidades o partes del producto que entrega de forma continua al cliente.


'''Desarrollo iterativo''': El marco de producción emplea 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 en scrum estándar, que define como sprint a cada iteración de desarrollo al final de la cual se produce un incremento del producto.  
[[File:Valor.png|250px]]




====2.- Trabajo====
Dónde se encuentra el principal conocimiento empleado, el responsable de la calidad del resultado.
'''Secuencial (cascada)''': Secuencia las tareas en fases, cada una de las cuales comienza al terminar la anterior y con el resultado que se ha obtenido en ella. 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.  
*'''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.


'''Concurrente''': Solapa en el tiempo los diferentes tipos de tareas. Siguiendo con el ejemplo de ingenerí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.
==Patrones de gestión del proyecto==
===Gestión predictiva===




====3.- Conocimiento====
[[File:Gestion predictiva.png|250px]]


Principal conocimiento empleado, protagonista de la calidad del resultado.
El conocimiento o know-how protagonista 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“.
El conocimiento o know-how protagonista de la calidad del resultado se encuentra en mayor medida en el conocimiento tácito de las personas que lo consltruyen.


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===


===Patrones de gestión del proyecto===


[[File:Gestion evolutiva.png|250px]]


====Gestión predictiva====
Modelo de gestión de proyectos 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.


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


====Gestión evolutiva====
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.
Modelo de gestión de proyectos cuyo objetivo es la entrega en el menor tiempo posible un producto mínimo viable, e incrementar su valor de forma iterativa y continua. Emplea una estrategia de desarrollo incremental, que puede obtener con tácticas iterativas o de mantenimiento de flujo continuo, y un modelo de trabajo de fases solapadas. 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 un marco de desarrollo 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.}}




[[Category:Scrum II]]
==Véase también==
*[[Gestión predictiva]].
*[[Gestión evolutiva]].
*[[Ingeniería concurrente]].
*[[Ingeniería secuencial]].
*[[Agilidad]].
*[[CMM-SW]].
*[[CMMI]]
*[[PMBOK]].
*[[DSDM]].
*[[Crystal]].
*[[ISO 15504]].
*[[Extreme programming|XP]].
*[[ITIL]].
*[[PRINCE2]].
*[[Lean]].
*[[TDD]].
[[Category:Glosario de términos]]

Latest revision as of 13:13, 12 January 2024

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.

A través de 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, XP, Scrum, ITIL, ASD, PRINCE2, Lean, KANBAN, TDD, etc.


Las diferentes prácticas y metodologías responden a combinaciones de tres conceptos y dos patrones de gestión de proyectos.)



Conceptos

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.
  • 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 un flujo continuo de desarrollo de las funcionalidades o partes del producto, que se entregan de forma continua al cliente.
  • 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


  • 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 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


Dónde se encuentra el principal conocimiento empleado, el responsable de la calidad del resultado.

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

Patrones de gestión del proyecto

Gestión predictiva


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


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


Agilidad y gestión evolutiva no son lo mismo. Se puede hacer gestión evolutiva empleando agilidad o empleando ingeniería concurrente.


Véase también