Showing posts with label dueño del producto. Show all posts
Showing posts with label dueño del producto. Show all posts

Tuesday 8 July 2014

¿Cómo puede Agile "agilidad" dar origen a proyectos de TI de éxito?

Empresas y organizaciones de desarrollo de TI han estado usando Agile para impulsar su actividad de desarrollo y entregar proyectos con límites temporales. Como en la actualidad, el marco Agile es popularmente utilizado para reducir la deuda técnica y el control de la regresión. El marco proporciona características a través del cual los incrementos de productos se pueden servir sobre una base consistente y las historias de usuario fáciles de enviar se entregan al final de las iteraciones del sprint. Mucho se ha discutido acerca de los entregables en Agile, la entrega más importante es una versión de software de trabajo libre de errores incorporado el uso de código de buena factura - el "código base". Es muy importante entregar el valor del proyecto requerida a través de bien diseñado, lógica y libre de errores de código. En scrum Agile, el equipo de cross desarrollo funcional idealmente debe exhibir virtudes tales como la responsabilidad, el pragmatismo, el profesionalismo, y hasta el orgullo, mientras que la entrega de la productividad durante los sprints diarias. Estos valores ayudan a comprobar la deuda técnica y mejorar los valores de negocio asociadas con los casos de uso.

El alcance y los tipos de proyectos de software que puede ser desarrollado utilizando Scrum
Durante el examen de cualquier proyecto basado en TI, las necesidades de desarrollo de software y el alcance de las fases de desarrollo del proyecto en general siguen siendo los mismos, y no cambian mucho con independencia del tipo de proyecto de software a desarrollar. Los diferentes tipos de proyectos que se pueden desarrollar utilizando Scrum incluyen:
  • Una aplicación / sistema cliente-servidor
  • Una aplicación / sistema autónomo
  • HTML / DHTML / XHTML, ASP, PHP, Joomla y DotNetNuke basado en la web de desarrollo de sitios / portal
  • Java, VB Script, o cualquier otro desarrollo de guiones basados
  • Android / Symbian / iOS o cualquier otro desarrollo de aplicaciones móviles, etc
Entonces, ¿qué es lo que puede aumentar la "agilidad" en Agile y entregar proyectos de software con éxito?

Código Bien diseñado y elaborado
La mayoría de las empresas de TI sienten que sobre una base práctica, es casi imposible, o muy difícil, para desarrollar código libre de errores con una funcionalidad robusta como para los usuarios finales. Las empresas de TI tienden a desarrollar proyectos bajo condiciones de estrés relacionados con extremos, y es importante para cumplir con las fechas de lanzamiento y los plazos de los clientes. El equipo de desarrollo, en la mayoría de los casos, se centra en gran medida en la finalización del proyecto dentro del plazo estipulado, y esto se convierte en el foco central de su actividad de desarrollo. La premura en la elaboración del proyecto a menudo deja muy poco en la prueba de las características del software y la funcionalidad de una manera apropiada. Esto lleva a la deuda técnica. La empresa puede incluso tener que "tirar" la versión de software si las características centrales no funcionan correctamente, y esto puede conducir a los gastos generales de desarrollo inflados. Si el re-desarrollo sigue sin entregar el valor del proyecto a los usuarios finales, la deuda técnica sigue aumentando. Si esto no se verifica, puede llegar a ser imposible de controlar la deuda técnica y la recuperación de los costos de desarrollo del proyecto.

Agile ayuda a reducir la deuda técnica y el control de la regresión. Cuando la funcionalidad en forma de historias de usuario ha sido desarrollado por el equipo, que está ampliamente probada con respecto a los criterios de aceptación relacionados con ella. Durante la retrospectiva del sprint, el dueño del producto determina el desarrollo en lo relativo a la definición de "Done" y aprueba la historia si se cumple el criterio. Por lo tanto, "entregable" y libre de errores funcionalidad del producto se suministra a través sprints ágiles. Esta es la forma de regresión es dirigido principalmente usando Agile. Además, el desarrollo de carrera se lleva a cabo en base a las votaciones hecho uso de los usuarios finales y los interesados​​. El equipo de desarrollo es capaz de concentrarse en proporcionar la funcionalidad básica, mientras que el desarrollo de las historias de usuario. Esta forma directa, e indirectamente, ayuda a comprobar la deuda técnica y mantenerlo bajo control.

Los primeros comentarios y fiable
Agile necesita retroalimentación temprana y fiable para producir incrementos exitosos productos. La respuesta también debe ser coherente. Una de las principales causas de preocupación en el desarrollo de TI es la disponibilidad de retroalimentación constante y confiable de los usuarios finales. El desarrollo llevado a cabo puede ser sometido a pruebas de calidad rigurosas y de referencia. Sin embargo, cuando la liberación se despliega a los usuarios finales en el mercado, es posible que a menudo discutir sobre la naturaleza de la funcionalidad que ofrece. La funcionalidad puede ser diseñado correctamente, pero todavía no pueden entregar exactamente lo que el usuario final no puede desear o necesitar. Si tal es el caso, la culpa no es con el equipo de desarrollo. En realidad, se encuentra en la forma en que la característica o funcionalidad particular se entiende y lo previsto por el dueño del producto. El resultado es un aumento en la deuda técnica, ya que se requiere la misma historia para ser re-desarrollado de acuerdo a los requisitos exactos sugeridas por los usuarios finales.

Los primeros comentarios en Agile evita que esto suceda. Cuando una funcionalidad particular se desarrolla en forma de una historia de usuario por el equipo, que es aprobado por el PO durante las sesiones retrospectivas (el sprint de reuniones retrospectiva), quien lo revisa y determina si es técnicamente sólido es decir, satisface la aceptación criterios. Posteriormente, las partes interesadas revisar la funcionalidad aprobado por el PO, y determinar su valor para el negocio, es decir la cantidad de la historia es importante para el usuario final y lo mucho que contribuye al "valor" del producto. La historia es actualmente considerada como "entregable" sólo después de que las partes interesadas aprueben por su valor de negocio. Esta característica evita que Agile deuda técnica de aumento desde los usuarios finales se involucren con el proyecto en una etapa temprana y aprobar el desarrollo llevado a cabo en cuanto a si se encuentra con sus criterios, y es de hecho útil para ellos.

Equipos de programación profesionales
El equipo de desarrollo es la base de toda la actividad de desarrollo de Agile. En muchos sentidos, es la columna vertebral de todo marco Agile. Un equipo multi funcional, con experiencia y capaz de ejecutar sprints exitosas pueden recorrer un largo camino para hacer proyectos ágiles con éxito. Con Scrum y Agile discusiones relacionadas principalmente dirigidos al dueño del producto y el maestro scrum, es igualmente importante hablar sobre el equipo de desarrollo, sin la cual, la existencia de la orden de compra y el scrum master se convierte en superfluo. La productividad que ofrece el equipo de desarrollo afecta directamente el éxito del proyecto. Si el equipo está bien colaboró​​, comparte las opiniones y puntos de vista, y se siente cómoda la realización de las pruebas de velocidad diarias, que daría lugar a la subasta del producto fiable y consistente. Uno de los principales problemas de por qué el equipo no puede entregar las historias de usuario fáciles de enviar es que el equipo a menudo pierde el foco cuando se enfrentan a problemas técnicos y se le hace difícil encontrar soluciones aceptables. Otro factor importante que influye en la aceptación de las historias desarrolladas por el equipo es la falta de comprensión clara de lo que el usuario final realmente espera de las características del producto. Es muy común que el equipo para el desarrollo de características que son rechazados por los usuarios finales después de que el software se implementa simplemente porque no funciona de la manera así se desea. En realidad, el equipo no está en un error, ya que sigue el plan de desarrollo. Este escenario es muy común en el caso de los métodos de la cascada en la que se lleva a cabo la actividad de desarrollo en etapas.

Agile ofrece retroalimentación confiable y oportuna que ayuda al equipo a comprender las necesidades de los usuarios finales y llevar a cabo la actividad de desarrollo de acuerdo a los comentarios recibidos de las partes interesadas y los usuarios finales. Si la funcionalidad no cumple con los usuarios finales, se rechaza y se recogió para el desarrollo de nuevo. Esto controla en gran medida el aumento de la deuda técnica, ya que el desarrollo es "desafió" inmediatamente después de que se lleve a cabo, y las historias de usuario no se implementan a desarrollarse de nuevo más tarde.

Suscríbete a la versión permanente y gratuita de la herramienta de gestión de proyectos Quickscrum para tener una idea de cómo funciona la herramienta y lo que tiene que ofrecer.