¿Scrum es realmente adecuado para todo tipo de proyectos?

El proyecto en el que estoy trabajando es puramente no funcional y de naturaleza profundamente técnica, centrado en mejorar el rendimiento del producto en su conjunto. Tengo problemas para ver cómo Scrum es una metodología apropiada para este tipo de proyecto:

  • La persona de negocios, también conocida como PO, no tiene idea de lo que estamos hablando durante nuestras planificaciones, ya que todo el trabajo es profundamente técnico y no tiene consecuencias para el usuario.
  • Como consecuencia de lo anterior, no puede gestionar el backlog y tenemos que crear todas las historias de usuario y gestionarlas.
  • El concepto de una historia de usuario tampoco parece tener ningún sentido. En nuestro proyecto no hay ningún usuario. Todas las interacciones ocurren entre diferentes componentes del sistema.
  • Las estimaciones son bastante difíciles de hacer ya que casi todo el trabajo implica hacer cosas que antes no hacíamos, por lo que asignar puntos a las historias parece un ejercicio casi inútil.
  • Los plazos de entrega del software en funcionamiento suelen ser de meses, no de semanas, para la mayoría de las cosas que tenemos que hacer, ya que implican mucha investigación antes incluso de empezar a hacer algo. Por lo general, los sprints no significan mucho para nosotros.
  • No hay un cliente con quien verificar el progreso, dar retroalimentación sobre nuestro trabajo y ajustarlo en consecuencia, ya que está puramente relacionado con el rendimiento y para eso hacemos nuestras pruebas de rendimiento para ver el progreso.

Habiendo dicho todos estos puntos, ¿me falta alguna parte de Scrum o es cierto que no es adecuado para este tipo de proyecto? Y en general, si es cierto, ¿qué tipo de proyectos no son adecuados para Scrum?

Hola dragosb, genial que estés empezando a contribuir aquí. Ofc Scrum no es adecuado para todos los propósitos. En términos generales, cuando la incertidumbre es baja, no queremos usar Scrum (no digo que ese sea tu caso).
¿Puede profundizar más en lo que quiere decir con "puramente no funcional"? Muchos de los requisitos no funcionales típicos pueden transformarse en requisitos b funcionales. Por ejemplo, "alto rendimiento" se puede transformar en "el tiempo de respuesta promedio para una solicitud con 1 millón de usuarios actualmente activos es x milisegundos". Esto llega al punto en que he visto a algunas personas argumentar que los requisitos funcionales de los contenedores no existen.
"el PO no tiene idea de lo que estamos hablando durante nuestras planificaciones, ya que todo el trabajo es profundamente técnico y no tiene consecuencias para el usuario". Entonces está hablando de algo incorrecto en su reunión de planificación. Se supone que no debes resolver la tarea en la reunión. Se supone que debe indicar lo que se debe hacer y por qué es bueno para el negocio que se haga. Si no puedes hacer eso, entonces no deberías estar haciendo la tarea. (Reducir la deuda técnica cuenta como algo bueno para el negocio).
@LightnessRaceswithMonica "Entonces estás hablando de algo incorrecto en tu reunión de planificación. Se supone que no debes resolver la tarea en la reunión". No estamos resolviendo nada en la reunión. Estamos indicando lo que se debe hacer, pero lo que se debe hacer es profundamente técnico, como se mencionó. Además, ¿por qué es bueno para el negocio? Porque lo que hay que hacer apoya el objetivo final del proyecto, pero eso es evidente.
Ese es mi punto: si "lo que debe hacerse" es "profundamente técnico", entonces no lo está abstrayendo lo suficiente para fines de planificación y está entrando en detalles de implementación en una reunión de planificación. Además, "porque lo que debe hacerse apoya el objetivo final del proyecto" no es realmente un caso de negocios; eso es sólo "porque lo es". Deberías tener una razón más fuerte que esa. Y estoy seguro de que lo haces: solo necesitas encontrar una manera de vocalizarlo.
@LightnessRaceswithMonica todo el proyecto se inició desde el punto de vista comercial para mejorar el rendimiento general de la plataforma y luego se nos permitió liderar el proyecto básicamente, pero aún así una persona de negocios es el PO porque así es como funcionan las cosas en Scrum según la empresa. . Es difícil entrar en detalles, pero lo que dices no tiene mucho sentido para nuestro caso. Además, ¿cuál es el beneficio de dedicar tanto tiempo a tratar de lograr estas abstracciones para que el PO pueda entender lo que estamos haciendo, en lugar de hacer realmente nuestro trabajo?
@dragosb Lo siento, nada de lo que acaba de decir cambia la forma en que funciona Scrum o corrige el hecho de que está entrando en tantos detalles técnicos de bajo nivel en sus sesiones de planificación que el propietario del producto literalmente no entiende de lo que está hablando . No importa cuál sea su caso, o quién armó el proceso: no está funcionando. Y es por eso que viniste aquí: para averiguar, de nosotros, por qué es eso.
En cuanto a lograr abstracciones, ehm, no entiendo, eso literalmente no lleva nada de tiempo. Es una forma de hablar. En todo caso, debería hacer que su conversación en la planificación sea mucho más corta. En lugar de "necesitamos cambiar la barra y hacer que xarg sea un char*" , dices "necesitamos refactorizar esto porque está demasiado duplicado y está perdiendo tiempo de desarrollo manteniéndolo" . Bonificación: ese también es el caso comercial.
@LightnessRaceswithMonica Agradezco sus ideas, pero al ver sus respuestas, supongo que tiene una mentalidad específica determinada probablemente por los proyectos en los que ha trabajado y lo que dice probablemente tiene mucho sentido para ellos. Además, no vine aquí para averiguar por qué no funciona, revise mi pregunta.
No es una mentalidad específica, es literalmente cómo funciona scrum, y no solo eso, sino también la gestión de proyectos y personas en general, pero está bien, adelante y buena suerte :) (Revisé su pregunta y "[me estoy] perdiendo alguna parte de Scrum " parece encajar bien aquí.)
"una persona de negocios es el PO porque así es como funcionan las cosas en Scrum según la empresa". ¿Quién es "la empresa" en este caso? ¿Liderazgo? ¿Su jefe? ¿El resto de tu equipo?
>>>Todo el proyecto se inició desde el punto de vista empresarial para mejorar el rendimiento general de la plataforma<<< El rendimiento en sí mismo no es un valor empresarial. Comienza a convertirse en un valor comercial tan pronto como sabe lo que está haciendo con el mejor rendimiento. Los ejemplos son una experiencia de usuario mejorada por tiempos de respuesta más cortos, arquitectura simplificada porque un mejor rendimiento elimina la necesidad de equilibrios de carga, ahorro de costos porque los 5 servidores hacen el trabajo que antes hacían 10 servidores, etc. Eso es lo que debe decidir el propietario del producto no técnico.

Respuestas (5)

A su pregunta general, si bien Scrum se puede aplicar en la mayoría de los proyectos, no es necesariamente el mejor enfoque para algunos proyectos. Dicho esto, se adapta bien a problemas complejos que requieren el descubrimiento de la solución y la adaptación a nueva información. Su proyecto suena exactamente como el tipo de proyecto para el cual Scrum fue diseñado. Sin embargo, planteas algunos puntos importantes y trataré de abordarlos:

1) El propietario de un producto debe comprender el dominio en el que está trabajando a un nivel en el que pueda identificar y discutir de manera inteligente los problemas clave que deben resolverse para crear valor. Por ejemplo, el PO para el gran colisionador de hadrones conoce mejor su física cuántica. Es completamente posible que tenga la orden de compra incorrecta para su trabajo. Sin embargo, vale la pena señalar que no es necesario que entiendan cómo resolver el problema para ser efectivos; ese es el trabajo del equipo. De hecho, a veces es mejor que no lo hagan para que no estorben al equipo.

2) Si bien los elementos de la cartera de productos pueden provenir de cualquier persona, el PO debe comprenderlos lo suficiente como para hablar de su valor y ser capaz de priorizar. ¿Son sus elementos de backlog expresiones de problemas a resolver o tareas en la solución? Si es lo primero, es posible que desee ver una orden de compra diferente. Si es lo último, es posible que tenga elementos incorrectos en su cartera de pedidos.

3) Primero, no necesita usar historias de usuario. Sin embargo, tienes alguna persona o grupo de personas que se benefician de tu trabajo. Cada uno de los elementos de su cartera de pedidos debe proporcionarles valor. Si un producto no proporciona valor a nadie, debe cancelarlo. (Estoy, por supuesto, siendo hiperbólico. En realidad, nunca me he encontrado con un proyecto que no haya proporcionado ningún valor a nadie)

4) La estimación relativa está diseñada para poder manejar la incertidumbre o las incógnitas y ayuda en la mayoría de los proyectos. Sin embargo, algunos proyectos tienen tanta incertidumbre que hacen inútiles las estimaciones. Afortunadamente, Scrum no los requiere. Una recomendación que haría es que si no usa estimaciones, use cuadros de tiempo. Un cuadro de tiempo establece la cantidad de tiempo para trabajar en algo antes de volver al grupo para ver si vale la pena seguir dedicando tiempo o si algo más es más importante.

5) Este es un desafío común. La solución es simple, pero requiere práctica para ser bueno. La solución es a) dividir el problema en problemas más pequeños o b) realizar un experimento para obtener un aprendizaje validado en lugar de largos procesos de aprendizaje de investigación. El primero se utiliza en los casos en que el ciclo de investigación es largo debido simplemente a intentar investigar muchas cosas. El segundo se usa cuando el ciclo de investigación es largo debido a muchos factores complicados que deben tenerse en cuenta en problemas complejos. Por supuesto, es mucho más fácil escribir este párrafo que hacerlo, así que no te sientas mal si te encuentras con algunos problemas que no sabes cómo abordar en un sprint.

6) ¿Quién quiere un mayor rendimiento, cuánto quieren y cómo les afectará? Eso es lo que tienes en tu revisión. El espacio de su problema suena muy limitado, por lo que no me sorprendería saber que sus revisiones son muy directas.

tanto para el #4 como para el #5. En los casos en los que se requiere una investigación/investigación extensa y las tareas generales son actualmente demasiado grandes y desconocidas para estimar de manera confiable, dividirlas en partes más pequeñas es definitivamente la respuesta. Para aceptar tanto la sugerencia del cuadro de tiempo como para mantener los sprints significativos... Pueden dividir la investigación en una tarea con límite de tiempo y hacer que los resultados de la investigación sean el entregable para esa tarea en un sprint. Luego pueden usar lo que aprendieron para fragmentar/estimar con mayor precisión la implementación en un sprint futuro.
@Mr.Mindor, ¿realmente vale la pena todos los gastos generales de gastar toneladas de tiempo tratando de (quizás incluso artificialmente) dividir las tareas en tareas más pequeñas que puedan caber dentro de un sprint de 2 semanas? Implica mucho esfuerzo y tiempo que, en última instancia, podría haberse dedicado a hacer el trabajo. ¿Cuál es el principal beneficio que hace que valga la pena?
@dragosb La pregunta de "¿Realmente vale la pena?" se responderá de manera diferente caso por caso. Para cada tarea habrá un punto donde el costo de hacerlo excede el beneficio, donde este punto depende de qué tan bien se entienda la tarea y qué tan grande sea. Probablemente nunca valga la pena dividir una tarea artificialmente . Puede que no valga la pena dividir una tarea grande pero muy bien entendida. Sin embargo, en mi experiencia, la facilidad para dividir una tarea está directamente relacionada con qué tan bien se entiende. (continuación)
(...continuación) En mis años de experiencia, no puedo pensar en una tarea bien entendida de más de 2 semanas que hubiera requerido medios artificiales para dividirse en partes más manejables. No estoy diciendo que siempre dividimos esas tareas aún más.
@JimmyBreck-McKye esa es una "tarea" que podría llevar a varias personas varios meses. Me preocuparía profundamente si no pudiera dividirse en subtareas. Por supuesto, las tareas posteriores probablemente evolucionarán a medida que se trabajen las anteriores, pero eso probablemente esté bien. Deje vagas las tareas futuras y refínelas a medida que sus requisitos previos se acerquen a su finalización.
@dragosb En cuanto a 'realmente haciendo el trabajo'. Averiguar cómo implementar algo ES el trabajo real. Para trabajar de manera eficiente, esa parte siempre tendrá que hacerse. Puede resolverlo antes de que comience la implementación, gradualmente/iterativamente a medida que escribe el código en su IDE, o puede hacerlo solo en retrospectiva 3 meses después. No es necesario que tenga todos los detalles antes de comenzar, pero si no comprende un problema lo suficientemente bien como para no poder dividirlo en partes del tamaño de un sprint, salte a "hacer el trabajo". sin una estrategia casi siempre costará más al final.
@JimmyBreck-McKye Ese sonido es como un objetivo que puede que ni siquiera sea posible, por lo que no puede dividirlo explícitamente sin más investigación. Pero 7 (bonificación) 6 tareas generales: 1: analizar/probar las características térmicas del diseño actual e identificar "puntos calientes". 2: determinar delta entre el perfil actual y el objetivo. 3: proponer X cambios candidatos. 4: Simula el efecto de cada Xj en el perfil. 5: Seleccionar/incorporar candidatos exitosos e incorporarlos al diseño. 6. Simular/validar el efecto combinado de los cambios seleccionados. 7. Fabricar y probar prototipos de mejoras.
@dragosb para responder explícitamente a la última pregunta de su comentario: ¡Los principales beneficios que hacen que valga la pena son los mismos que los principales beneficios de seguir Scrum! (sin ningún orden en particular) Visibilidad/transparencia (las expectativas son claras para las partes interesadas y pueden verificarse); mayor calidad (menos errores por situaciones imprevistas); Flexibilidad (tomar decisiones informadas para abandonar/cambiar de rumbo); Disminución del riesgo (ver calidad y visibilidad). productividad mejorada (perder menos tiempo en callejones sin salida, errores de reelaboración).
Al revisar los comentarios, recuerdo esa frase común en el desarrollo de software... "semanas de codificación pueden ahorrar horas de análisis".

¿Scrum es realmente adecuado para todo tipo de proyectos?

Al igual que con muchas cosas en la industria del software, Scrum no es una panacea. Funciona bien para algunos tipos de proyectos, y menos para otros. A menudo he visto que Cynefin Framework se menciona al tratar de identificar los tipos de proyectos en los que se podría usar Scrum, así que tal vez eche un vistazo y vea en qué categoría podría caer su proyecto.

Otra cosa que he visto muchas veces es que Scrum se impone a los equipos sin considerar el tipo de trabajo que se está realizando. De su pregunta parece que este podría ser el caso. ¿Quién eligió Scrum para usted y su equipo? ¿Por qué? ¿Has buscado otras formas de organizar tu trabajo? ¿Kanban parecería más prometedor?

El problema con la forma en que redactó la pregunta es que menciona cosas contra la adopción de Scrum, pero no dice nada sobre el resto. ¿Son estas cosas importantes "no go" o simplemente algo que identificó? Lo que digo es que cualquier proyecto tiene sus desafíos. Así que trata esto como un desafío, analízalo y busca soluciones, ya sean Scrum, Kanban u otra cosa.

Luego, si Scrum puede abordar el trabajo, utilícelo. Pero si encuentra algo mejor, es mejor no "doblar" su trabajo para que se ajuste a Scrum, simplemente use lo mejor que haya encontrado. Si, por otro lado, no tiene un dicho para elegir la forma en que trabaja y necesita usar Scrum porque una entidad superior lo dice, entonces tiene problemas mayores que Scrum no es lo mejor para usar para su trabajo.

"¿Son estas cosas importantes 'no go's o simplemente algo que identificaste?" Los elementos que enumeré son los que identifiqué como cosas que no tienen sentido para mí en todo el proceso que tenemos que seguir y que me hicieron pensar que nuestro proyecto podría no ser tan adecuado para scrum. A partir de la respuesta de Daniels, me doy cuenta de que algunos de los puntos no son en realidad parte de Scrum, sino algunas "mejoras de Scrum" que lamentablemente son obligatorias.
Si algún proceso es "obligatorio", no está haciendo scrum en absoluto y es posible que deba cambiar su pregunta. Un principio de Scrum es que el equipo tiene el poder de cambiar cualquier proceso o ceremonia. Principio ágil 12: "A intervalos regulares, el equipo reflexiona sobre cómo volverse más efectivo, luego sintoniza y ajusta su comportamiento en consecuencia". Manifiesto valor 1: "Hemos llegado a valorar a las personas y las interacciones por encima de los procesos y las herramientas" agilemanifesto.org
@dcorking Aunque Scrum es un contenedor excelente, no puedes hacer lo que quieras y llamarlo Scrum. Scrum tiene aspectos inmutables . --No confunda inspeccionar y adaptar con "agilidad de vaquero". Todos los marcos y metodologías ágiles requieren el cumplimiento de algunas reglas básicas de compromiso. La diferencia entre inspeccionar y adaptar y cowboy ágil es sutil, pero es muy real.

Agregando un poco a la excelente respuesta de Daniel.

Tu dices:

todo el trabajo es profundamente técnico y no tiene consecuencias para el usuario

Pero también dices:

centrado en mejorar el rendimiento del producto como un todo

Puedo pensar en dos razones por las que podría mejorar el rendimiento del producto:

  1. Para mejorar la experiencia del usuario (tiempos de respuesta más rápidos, etc.)
  2. Para reducir la cantidad de hardware que necesita para obtener el mismo nivel de rendimiento

Si es la razón 1, entonces tiene consecuencias para el usuario y esas definirán sus historias. Por ejemplo, algo como:

Como usuario, quiero que el producto responda más rápido para poder hacer más

Si es el motivo 2, es probable que el cliente sea interno y quiera ahorrar dinero. Por ejemplo, algo como:

Como CIO, quiero reducir mi presupuesto de hardware recurrente para poder aumentar la rentabilidad.

Tenga en cuenta que estas historias son perfectamente comprensibles para alguien que no sea técnico, como una persona de negocios o un propietario del producto. Describen lo que se desea, en lugar de cómo se entregará.

Gracias por el aporte. El problema que encuentro con el tipo de historias que mencionas es que son muy genéricas. "Como usuario, quiero que el producto responda más rápido, así que X" ... esa sería literalmente una declaración válida para todo el trabajo que hemos realizado en los últimos años y no veo cómo podemos tener una acumulación de este tipo de cuentos. Eso me suena más como el objetivo general del proyecto que como una historia de usuario,
Los ejemplos que di son genéricos porque tengo poca idea sobre los detalles de su situación. Pueden ser mucho más específicos: "Como usuario, quiero que los tiempos de carga de la página sean inferiores a 10 segundos, incluso durante las horas pico de carga, para poder disfrutar de mi experiencia de navegación". De hecho, cuán específicas son estas historias reflejarán cuán bien pensados ​​están los requisitos no funcionales. Puede ser tentador ignorar el aspecto del 'por qué' de los requisitos no funcionales, pero en realidad es tan importante como con los requisitos funcionales.
@dragosb ¿Por qué necesita mejorar el rendimiento? Anote, digamos, cinco situaciones específicas en las que el rendimiento deficiente esté creando problemas (y qué problemas exactamente): si no puede, entonces tal vez no se trate del rendimiento, sino de algo más que mejorar. (Comenté en el contexto de esta respuesta porque Barnaby Golden sugiere principalmente el mismo enfoque).
@Arvo No lo necesito, el negocio lo necesita y todo este proyecto se inició con ese propósito, que efectivamente reemplaza un antiguo motor de ejecución/cómputo por uno nuevo.
@BarnabyGolden, incluso el ejemplo "específico" que das todavía me suena muy genérico. Nuestro objetivo es tener un mejor tiempo de respuesta general y lo logramos reemplazando el motor de ejecución subyacente. Realmente no veo cómo un usuario entra en la imagen de hacer este trabajo, ya que los cambios son completamente transparentes para ellos y el valor comercial en sí es genérico... un mejor rendimiento que lleva a un hardware más barato y clientes más satisfechos, este es el objetivo. del proyecto no una historia de usuario.
¿Está creando el nuevo motor de ejecución o configurando uno existente que fue creado por otro equipo?

TL;DR

El marco Scrum generalmente se puede adaptar a cualquier producto o servicio que pueda beneficiarse del esfuerzo de tiempo limitado y la entrega incremental. Eso no significa que sea la mejor opción para cada proyecto, pero la pregunta original no describe nada que no pueda encajar en una implementación de Scrum.

Análisis de preguntas

La pregunta, tal como está constituida actualmente, describía una serie de olores de implementación del marco que, en conjunto, son demasiado amplios para abordarlos en una sola pregunta y respuesta. Tal como se describe, este proyecto no parece articular claramente una necesidad comercial medible que se ajuste al modelo de control de procesos empíricos de muchos marcos ágiles. Eso no es una falla de Scrum o Agile, sino una falla en uno o más de los siguientes:

  • iniciación del proyecto
  • conceptualización o selección de controles de proyecto
  • comunicaciones organizacionales o de proyectos

La pregunta, tal como está redactada actualmente, también se presenta más como una solicitud de apoyo de sesgo de confirmación que como un problema concreto a resolver. Como tal, ese aspecto de la pregunta está fuera del alcance y no se abordará en esta respuesta.

Para qué fue diseñado Scrum

El marco Scrum tiene solo tres roles claramente definidos y cuatro eventos prescritos . Aparte de los elementos del marco obligatorios mencionados en el marco, las organizaciones son libres de adaptarlo a sus necesidades específicas.

Scrum está pensado principalmente como un marco de entrega de productos. La propia guía menciona una serie de usos concretos:

  1. Investigar e identificar mercados, tecnologías y capacidades de productos viables;
  2. Desarrollar productos y mejoras;
  3. Lanzar productos y mejoras, tantas veces como sea posible al día;
  4. Desarrollar y mantener la nube (en línea, segura, bajo demanda) y otros entornos operativos para el uso del producto; y,
  5. Mantener y renovar los productos.

Siempre que un proyecto se pueda descomponer en unidades iterativas o incrementales que se puedan dividir en tiempo, Scrum se puede adaptar para el caso de uso. La pregunta original implica fuertemente que las fallas percibidas del modelo Scrum para el caso de uso actual tienen más que ver con las dificultades para conceptualizar el proyecto como un conjunto de incrementos de tiempo limitado que contienen una cohesión central. Lo más probable es que se trate de una brecha de implementación o experiencia en lugar de un caso de uso negativo para la aplicabilidad de Scrum a un dominio de problema específico.

Cuándo no usar Scrum

Ciertamente, existen alternativas al uso de Scrum formal cuando el dominio del problema no cumple con la teoría o los valores del marco. Tal lista nunca puede ser exhaustiva. Sin embargo, ciertamente hay casos de uso negativos comunes, que incluyen:

  1. Procesos abiertos de soporte o prestación de servicios.
  2. Procesos bajo demanda (la mesa de ayuda o el centro de llamadas son dos ejemplos frecuentes).
  3. Cuando la planificación de incrementos justo a tiempo no es factible o deseable.
  4. Proyectos extremadamente cortos.
  5. Proyectos de colaboradores individuales.
  6. Equipos muy pequeños o muy grandes.
  7. Entregables que carecen de cohesión central.
  8. Entregables que carecen de una Definición medible de Hecho.
  9. Proyectos sin la colaboración activa de las partes interesadas.

Si el dominio de su problema no se ajusta fundamentalmente al modelo Scrum, otros marcos o metodologías pueden encajar mejor. Qué marco es "mejor" va a ser subjetivo, pero cualquier marco establecido debe tener objetivos de diseño claramente definidos que pueda usar para guiar su proceso de selección.

"La pregunta (...) es (...) una solicitud de apoyo de sesgo de confirmación que un problema concreto a resolver". Este. No habrá respuestas que cambien de opinión si el OP no está dispuesto a cambiar.

Scrum es una palabra de moda entre los gerentes, especialmente aquellos que nunca realizan codificación/análisis/prueba. Se adapta a algunos proyectos específicos, pero no a todos. No es apto para muchos, estos que tratan temas muy técnicos es uno de ellos. Scrum es realmente conocido por acumular deuda técnica (es fácil simplemente barajar estas tareas 'no agradables' en algún lugar del trabajo pendiente). Creo que la mejor manera para cada proyecto es usar un kanban básico y luego adaptarlo de acuerdo con el desarrollador y las necesidades del proyecto para que sea más ágil o más rígido (lo que no es malo en sí mismo, especialmente para los de alto riesgo). proyectos). Eso sí, cascada no es una mala palabra como todos estos entrenadores, maestros y gurús de scrum quieren que creamos.

Esto contiene declaraciones falsas sobre Agile y Scrum. Intente leer la Guía de Scrum, se sorprenderá gratamente de que no abogue por nada de eso. Además, el nombre Waterfall fue la palabra creada como un muñeco de paja por los practicantes ágiles, así que sí, eso es exactamente lo que significa.
@DaveHillier Su atribución de "cascada" como peyorativo ágil es incorrecta. Hay un modelo real llamado Waterfall Model , y tiene sus raíces en 1956. Incluso el primer uso formal del término es anterior al movimiento ágil, aunque tiene razón en que, incluso en su forma original, tenía la intención de describir un modelo. con defectos conocidos.
Dejando a un lado mi comentario a @DaveHillier, tiene razón en que esta "respuesta" es en gran medida un artículo de opinión sin fundamento. Si bien "palabras de moda ágiles" ciertamente puede ser un problema, Scrum no es inherentemente un marco de trabajo solo de palabras de moda. La mayoría de las fallas de Scrum son fallas de implementación o aplicación incorrecta , en lugar de deficiencias del marco. Como tal, esta respuesta actualmente no responde la pregunta como se planteó originalmente.
@ ToddA.Jacobs wikipedia hace la siguiente afirmación: "La primera descripción formal del modelo de cascada a menudo se cita como un artículo de 1970 de Winston W. Royce, [3] [4] aunque Royce no usó el término cascada en ese artículo. Royce presentó este modelo como un ejemplo de un modelo defectuoso que no funciona, que es como se usa generalmente el término al escribir sobre desarrollo de software, para describir una visión crítica de una práctica de desarrollo de software de uso común.[5]" Quizás lo haría. Habría sido mejor decir que se usa como muñeco de paja.