Tenemos una aplicación nativa de Android y ahora queremos crear una versión nativa de iOS. Trabajamos proceso scrum/kanban. ¿Cuál es la mejor manera de asegurarnos de que la implementación de Características/Historias de usuario en ambas versiones esté alineada? Usamos servicios web para que lo compartan como su backend común, lo cual es bueno.
¿Cómo mantienes a los desarrolladores de iOS y Android en la misma página? ¿Qué otras prácticas lo ayudan a asegurarse de que una característica o una historia de usuario se implementen de la misma manera en ambas aplicaciones? ¿Qué son las prácticas estándar? Por ejemplo, ¿duplica los post-its para una historia de usuario y marca un post-it como Android y el otro como iOS? ¿o que?
ps, los desarrolladores de Android e iOS serán personas diferentes
Desde el punto de vista de PM son dos proyectos separados. Si los mismos desarrolladores trabajan tanto en el cliente de Android como en el de iOS, podría ejecutarlo como un solo proyecto. Podría lograr una alineación de características razonable, al tener dos versiones de las historias de usuario (iOS/Android) y priorizarlas una tras otra.
Sin embargo, si se trata de dos equipos diferentes, no puede ni debe intentar alinear el desarrollo de funcionalidades en los dos proyectos. Por supuesto, puede dar la misma prioridad de historia de usuario en las dos versiones, pero no cree dependencias de un proyecto a otro. Esto inevitablemente causará retrasos en un equipo, ya que la misma historia puede variar ampliamente en el tiempo requerido entre las dos plataformas. En esta situación, es mejor ejecutarlo como dos procesos de desarrollo diferentes con tableros kanban separados, etc.
Si hace Scrum, ejecutaría dos procesos Scrum diferentes simultáneamente y luego haría un "scrum de scrums" diario o semanal donde los líderes de cada equipo se reúnan y discutan el progreso.
No debería haber ninguna diferencia en las historias de usuario o las tareas/pruebas de aceptación porque ambos explican la funcionalidad, que será la misma para ambas aplicaciones.
Dicho esto, se recomienda crear tareas para cada plataforma (incluso si son las mismas) ya que será más fácil seguir el progreso de cada versión por las siguientes razones:
1. La estimación del tiempo puede diferir
2. Cesionario diferente
3. Brinde a cada equipo la flexibilidad para administrar sus tareas, tal vez al equipo de iPhone le gustaría comenzar a trabajar en la tarea n. ° 4 y luego en la n. ° 3 dado que, por supuesto, no dependen de ninguna otra tarea, pero el equipo de Android comenzará a trabajar en la tarea n. ° 3 y luego #4.
Puede usar códigos de colores (p. ej., post-its rojos para Android, post-its amarillos para iPhone)
Tomemos la pantalla de inicio de sesión como ejemplo.
Historia de usuario: Como usuario, quiero ingresar mis credenciales para ver mi perfil.
Prueba de aceptacion:
Tareas (los post-its)
etcétera.
Espero eso ayude.
En el orden de sus preguntas..
¿Cómo mantienes a los desarrolladores de iOS y Android en la misma página?
Están construyendo diferentes clientes para el mismo producto. Trataría esto como un solo proyecto.
¿Qué otras prácticas lo ayudan a asegurarse de que una característica o una historia de usuario se implementen de la misma manera en ambas aplicaciones? ¿Qué son las prácticas estándar?
Esto es lo que he hecho..
Entonces, como señalé anteriormente, para todas las comunicaciones relacionadas con características, requisitos, planificación de sprints, los miembros del equipo de diseño de interfaz de usuario que trabajan en ambas plataformas deben unirse, ya que exigen una cierta cantidad de sincronización.
Durante la implementación, los miembros del equipo de control de calidad y lanzamiento que trabajan en cada plataforma tendrán tareas específicas de la plataforma.
En general:
Melé:
Datos:
Mejores prácticas:
por favor véalo como dos proyectos diferentes porque.
Los problemas que surgen al tratar de crear interfaces de usuario para diferentes teléfonos móviles o teléfonos inteligentes no se limitan a la forma en que el contenido diseñado aparece en la pantalla. Por ejemplo, diseñar una interfaz de usuario para teléfonos sin pantalla táctil es muy diferente de diseñar para teléfonos con pantalla táctil. Un tipo de interfaz no se adapta necesariamente a los requisitos técnicos de todos los dispositivos.
Creo que varias personas han dicho que debes tratarlo como dos proyectos separados.
Creo que debe tratarlo como un programa: un conjunto de proyectos gestionados con una metodología similar y con un objetivo coherente en mente.
¿Cómo mantienes los dos proyectos alineados? Alinear los proyectos. Asegurarse de que:
Cuando los dos no coincidan, asegúrese de que haya una razón. Si hace su parte en la configuración de esto, también identificará claramente qué parte del trabajo es el núcleo de su proyecto y qué partes son específicas de la plataforma.
Si esto es algo que va a hacer regularmente, puede ser útil tratarlo como tres proyectos.
Un proyecto para producir un nuevo producto: énfasis en la arquitectura, la funcionalidad, etc. Una vez que se determinan la arquitectura y la funcionalidad, todo el trabajo se subcontrata a uno de los otros dos equipos, que son tratados como subcontratistas.
Un proyecto para implementar el producto en Android.
Un proyecto para implementar el producto en Apple.
Aunque hay muchos más gastos generales al configurarlo de esa manera, creo que es posible que, a la larga, todos los miembros del equipo entiendan lo que están haciendo. "Estoy desarrollando la arquitectura para el producto X". "Estoy implementando la interfaz de usuario del producto X en Apple". etc.
usuario25602