¿Cuál es la mejor manera de clonar o volver a implementar una aplicación de software de forma ágil?

Gracias por el A2A, mi respuesta es el desarrollo impulsado por el comportamiento …

¡Creo que esta pregunta es brillante! notaste algo que muchos pasan por alto.

Como el software ya está instalado, debes saber

  1. ¿Quiénes son los principales actores / disparadores para ejecutar la funcionalidad?
  2. El diferente componente y funcionalidad

Se le ha asignado la tarea de ‘reinnovación’ en una nueva interfaz de usuario. Esa es una excusa para mejorar la usabilidad del software.

Dígale al cliente que necesita entrevistar a los actores principales (identificados anteriormente) sobre cuáles eran sus problemas con el software anterior.

Cuando entrevistes a tus actores, ve con dos desarrolladores

Desarrollador 1 – Experto en la materia

  • saber en profundidad lo que hace cada funcionalidad
  • saber errores reportados previamente
  • cualquier mejora solicitada pero no implementada

Desarrollador 2: experto en nuevas tecnologías (pero preferiblemente no experto en la materia)

En realidad, será mejor si Developer 2 es un diseñador de usabilidad Ux que no se preocupa por la tecnología pero sabe cómo funciona la mente de un usuario / actor.

la entrevista

  • Pídale al actor que use la herramienta frente a usted para una tarea típica.
  • Pon mucha atención a
    • Hacks, software utilizado de una manera no diseñada, o de una manera que no se dio cuenta
    • Uso de herramientas fuera del software (calculadoras, blocs de notas para anotar detalles, copiar y pegar la acción entre pantallas … espero que entiendas)
    • Teclas de atajo, consejos y trucos utilizados.
    • Cosas que NO se usan
  • Pregúntele al actor cuándo tuvieron que trabajar en una situación muy difícil en la que el software no fue útil.
  • Pregunte cuándo algo salió mal debido a algún error y qué tan doloroso fue recuperarse.
  • Aprenda a diferenciar entre los requisitos del usuario y la limitación de la tecnología. por ejemplo, los usuarios de software de negocios más antiguos no pueden vivir sin una lista de valores, pero la mayoría de los casos modifican un poco el proceso, mantienen el contexto entre pantallas y la lista de valores se vuelve irrelevante.

despues de la entrevista

  • Anote las historias de los usuarios (ver Gherkin)
  • Desarrolle una comprensión a nivel comercial de cómo funciona el proceso.

Luego, vuelva a desarrollar solo los bits que usan los actores; dejar de lado lo que no usan.

Gracias por preguntar a A2A. Por lo general, para una empresa de servicios, el camino estratégico a seguir para la implementación ágil sería poco complejo, ya que es posible que no pueda justificar y aprovechar todas las capacidades ágiles. Pero, esto no significa que Agile no se puede hacer o implementar en absoluto. Así que aquí está la cosa, entiendan el alcance de los cambios que se deben hacer. Esto debe hacerse porque necesita preparar el trabajo atrasado. Inicialmente, la acumulación podría incluir epopeyas arquitectónicas, cambios de diseño, epopeyas funcionales y NFR, si es que existen. Ahora, dado que usted dijo que el cliente no está revelando información suficiente, por lo tanto, se encontrará en una situación en la que el retraso no puede prepararse con mucha antelación. Por lo tanto, es posible que no pueda proyectar la capacidad real de mantener al menos 2-3 meses de trabajo atrasado por adelantado. Desde entonces, dijiste que los requisitos vienen sobre la marcha. En tales casos, puede optar por ejecutar Scrum y Kanban juntos, lo que hoy en día es una metodología creciente llamada ScrumBan. Utilice las mejores prácticas de Scrum para facilitar el proceso de lanzamiento para el desarrollo s / w. El Kanban puede ayudarlo a administrar y minimizar el desperdicio y manejar las solicitudes, que llegan justo a tiempo. Hay muchas otras cosas que pueden ser realmente útiles para administrar el flujo de trabajo con Kanban.

Si hay preguntas específicas, hágamelo saber. ¡Espero que esto ayude!

–Agregando más en referencia a los comentarios A2A

Si, pasa. Por lo tanto, la transición de una aplicación de trabajo completamente heredada a un sistema totalmente nuevo es un modelo de servicios común en la industria de TI / ITES. Por lo tanto, debe estar al tanto de las siguientes cosas desde el punto de vista de la estimación:

  1. Puntos funcionales: cuántos puntos funcionales hay, que deben desarrollarse. Estos podrían ser útiles para definir las epopeyas (colección de múltiples historias de usuarios)
  2. Epics de arquitectura: esto es algo que es crucial y probablemente sería la base para tomar el proyecto. Esto debería tener una idea clara de los diseños de Tecnología, Recursos, Marco y todos
  3. Ahora el problema es cómo iniciar la discusión y comenzar con las estimaciones. Tal vez, puede tomar el componente más fácil de su aplicación y, en consecuencia, hacer un SPIKE, un elemento de investigación, con un límite de tiempo, con un enfoque claro para lograr algo. No existe el mandato de que haya éxito, pero le dará un sabor agridulce antes de profundizar en el proceso de desarrollo. Puede comenzar teniendo el sprint cero, lo que a veces le daría la posibilidad de establecer la base fundamental en su trabajo de desarrollo.
  4. Confía en mí, la idea es que debes mostrar una hoja de ruta clara de la transición completa de la aplicación a una plataforma más nueva. La transición debería centrarse claramente en tener versiones de software de trabajo más pequeñas pero utilizables. Debería poder venderle los beneficios reales de llevar a cabo todo el proceso de desarrollo de forma ágil.
  5. Si el cliente ve una ganancia potencial, daría retroalimentación, lo que puede ser un gran refuerzo para obtener más información sobre el lado de los requisitos, que es el problema más destacado. ¡Espero que esto ayude!

Ágil es simple de entender pero difícil de dominar. Se adapta a cualquier tipo de proyecto. Simplemente comience con la creación de la cartera de productos con historias de usuario claras y definidas. Asegúrese de que las historias sean aprobadas por el cliente. Y siga las ceremonias de scrum y el ciclo de Sprint. Parece simple pero lo importante es la inspección y la adaptación.