SHARE
Metodología > Desarrollo Ágil

Método de Desarrollo Ágil

Cooperación, Flexibilidad y Eficiencia





Web724 aplica como método de trabajo tecnologías ágiles, basadas en Scrum y XP, pensadas para proyectos complejos donde la organización, la flexibilidad y productividad son los requisitos esenciales.
Las tecnologías ágiles se basan en el desarrollo iterativo e incremental de un software. Ello significa que, a la hora de realizar un proyecto para un cliente determinado, se realizan entregas parciales y regulares del producto final. La regularidad de la gestión posibilita la flexibilidad y adaptación por parte de nuestro equipo de trabajo a todo cambio que desee realizar el cliente con el fin de lograr su satisfacción. De este modo, se genera un importante feedback entre este último y nuestro personal, cuya eficiencia radica en trabajar en forma organizada y cohesionada.

El uso de tecnologías ágiles permite a Web724 integrar dos criterios de calidad en cada proyecto de Software:



EL PROCESO DE DESARROLLO

Los métodos ágiles se basan en el desarrollo iterativo e incremental de un software.
Ello significa que, al desarrollar un proyecto para un cliente determinado, se realizan entregas parciales y regulares del producto final, con el fin de adaptarse a sus necesidades, aumentar el feedback y lograr su satisfacción.

La eficiencia radica en que estos métodos se llevan a cabo por grupos de trabajo altamente organizados y cohesionados. Ello permite lograr resultados rápidos y crecimiento constante en un lapso breve.




PROCEDIMIENTO


Fase 1: Planificación del proyecto



En primer lugar, se elabora un plan de proyecto donde el cliente especifica sus objetivos. Los desarrolladores se encargan de la recopilación de cada uno de estos requerimientos, planifican su desarrollo y elaboran la primera realización de un modelo global.
Esta etapa se caracteriza por la interacción constante entre el cliente y los miembros del equipo.

Fase 2: Diseño



A partir de la lista de objetivos presentada por el cliente en la fase anterior, se elabora un diseño simple, sencillo e implementable y se comienza a crear el proyecto.

Fase 3: Codificación



El equipo se comunica con el cliente, para codificar todo aquello que el proyecto requiere. Es la fase donde se desarrolla la programación del proyecto. Este se divide en iteraciones y en lapsos de entregas, con el fin de obtener resultados acabados de un proyecto global y aportar al crecimiento del proyecto. Estas iteraciones consisten en tiempos breves y fijos (sprint), que generalmente duran entre dos a cuatro semanas.
Esta organización del trabajo en módulos requiere de la presencia de un equipo organizado en forma eficaz. Por eso, para este proceso es esencial la figura del Scrum Master.
Esta persona es parte del equipo y quien mejor lo conoce, tiene un contacto fluido con sus integrantes, conoce de tecnologías y metodologías de trabajo. Se encarga de dividir las tareas dentro del equipo de trabajo con el fin que cada integrante resuelva una parte específica del proyecto.
De esta manera el equipo trabaja en forma organizada, y es capaz de enfrentar todo reto con seguridad.

Fase 4: Prueba



El equipo realiza un test para probar el funcionamiento del software a implementar. Cada semana se realiza un sprint review, se plantea la planificación liderada por un moderador y un testeo grupal para revisar el proyecto.
El último día de iteración, se reúne el equipo para revisar el proyecto. En primer lugar, se presenta al cliente el proyecto con sus respectivos resultados. En función de los pedidos de este último, se harán las adaptaciones necesarias. En segundo lugar, el equipo analiza su modo de trabajar y detecta los principales inconvenientes con el fin de eliminarlos.

ROLES

Product Owner (Cliente)



Es el responsable de la creación y mantenimiento del backlog del producto a desarrollarse, de modo que conoce el valor que aportará cada uno de los requisitos planteados en el mismo.
De este modo, el Product Owner:

  • - Define cuáles serán los objetivos tanto del proceso como del producto.

  • - Colabora con el equipo para revisar si se cumplen los objetivos de cada iteración y evalúa los resultados.

  • - Apunta a maximizar el ROI (Return Of Investment).

Scrum Master



Es el responsable de un correcto desarrollo del proceso scrum. Guía la colaboración interna entre el equipo para facilitar su autogestión y con el cliente.
A pesar de que es aconsejable su presencia en las reuniones, aquellos equipos de desarrollo que cuentan con mucha experiencia pueden trabajar sin su rol.


Equipo de desarrollo



Es el responsable del desarrollo del sprint, su incremento potencial y finalmente su entrega.
Se destaca por su organización. Esto implica que el equipo de desarrollo:

  • - Trabaja de manera conjunta.

  • - Sus miembros comparten responsabilidades en cada sprint.

  • - Tienen un objetivo común.

  • - Sus miembros cuentan con la habilidad necesaria para llevar adelante cualquier proyecto, enfrentar inconvenientes, sin necesidad de acudir a alguna clase de ayuda externa al equipo.

Stakeholder - Managers, clientes y usuarios




Son aquellas personas que hacen posible el proyecto, y para quienes el mismo produce los beneficios acordados.
Sólo están involucrados en el proceso en el sprint review.