IMATIA INNOVATION, S.L. empresa especializada en el desarrollo rápido de software para empresas y administraciones públicas, se ofrece no sólo como proveedor de soluciones a medida, sino como socio tecnológico o “departamento de I+D+i externo”.
Hace más de 10 años que con carácter informal ha aplicado los principios de las metodologías ágiles en el desarrollo de sus proyectos siendo recientemente cuando abordo un proceso de ‘transformación ágil’ para formalizar las metodologías empleadas, capacitar a los equipos de desarrollo, establecer indicadores (KPls), etc. Ese proceso comenzó hace 5 meses y sigue en curso actualmente. Las dos metodologías que emplean, Kanban y Scrum, les han requerido la formación de sus equipos con distintos cursos a lo largo del tiempo (Scrum), recibiendo una formación más general para todo el personal (Scrum y Kanban) en 2017.
A la hora de elegir la metodología de trabajo para sus proyectos tienen en cuenta principalmente la tipología del proyecto. Desde de su punto de vista las metodologías ágiles se basan en unos principios que han viniendo aplicando desde hace bastantes años. Estos principios aportan una serie de ventajas en multitud de aspectos, tanto en relación a la empresa como a los equipos de desarrollo. Por otro lado, en el desarrollo de software las metodologías clásicas (cascada, etc.) tienen una serie de carencias frente a las metodologías ágiles. Estas últimas les permiten satisfacer mejor las necesidades de sus clientes, entregando valor desde las primeras etapas del proyecto, asumiendo el cambio de requisitos como algo natural y gestionándolo de forma adecuada.
En definitiva, el objetivo principal es asegurar el éxito de sus proyectos, tanto desde el punto de vista de la empresa, como del cliente y los equipos de desarrollo (satisfacción de todos ellos).
Independientemente de la metodología seleccionada para cada caso (dado que cada proyecto tiene necesidades diferentes), la aplicación de una de ellas se hace indispensable a medida que el equipo va incrementando el número de miembros, así como de clientes, ya que deben canalizarse las necesidades de éstos últimos y garantizar que el esfuerzo empleado por los equipos se dirige a satisfacer esos requisitos. Por otro lado, estas metodologías favorecen enormemente que el desarrollo esté orientado a aportar valor al producto, permitiendo ver el estado del proyecto a los diferentes interesados de un simple vistazo.
La experiencia en la implementación de estas metodologías por los equipos les hace tener una percepción general satisfactoria (de hecho, tiene indicadores a este respecto desde hace unos meses). En este sentido, los equipos valoran de forma positiva la implantación de estos métodos de trabajo, si bien unos le dan más valor que otros a la aplicación ‘estricta’ de las metodologías, debido a las diferentes dificultades que cada una de ellas presenta. Por ello, siguen adaptando estas metodologías a sus necesidades en este proceso de ‘transformación ágil’, pero ya utilizando a diario practicas tales como: las reuniones diarias, de retrospectiva, planificación y el «Sit Together».
La satisfacción de sus clientes ligada a la posibilidad de tener una participación más activa en el desarrollo depende en general de multitud de factores, pero esa participación más activa siempre ha sido percibida de forma positiva. El poder utilizar distintas funcionalidades desde las primeras etapas del proyecto es algo que valoran mucho. Su percepción es que esta valoración tan positiva se debe a que para el cliente también es un proceso mucho más natural y eficiente, permitiéndole entender bien sus propias necesidades (y las de los usuarios finales), realizando cambios si es necesario y con mayor garantía de éxito.
IMATIA siempre ha visto ventajas en la aplicación de las metodologías ágiles, tales como:
- Mayor éxito con sus clientes y en sus proyectos internos de desarrollo e innovación
- Mayor satisfacción de los equipos de desarrollo y otros actores (clientes, stakeholders, etc.)
- Aumento de visibilidad de problemas y necesidades de los equipos de desarrollo (en cuanto a metodologías, recursos, etc.)
Siendo que en su opinión la aplicación de los principios de las metodologías ágiles siempre ha sido ventajosa en todos sus proyectos, aún sin la aplicación formal de una metodología desde un punto de vista estricto (Scrum, por ejemplo), la construcción iterativa e incremental siempre ha sido ventajosa, pero principalmente ventajosa en el desarrollo de su framework Ontimize Web, en el que la aplicación de sprints de Scrum ha sido rápida y natural y los resultados a nivel de control de esfuerzo y valor proporcionado en cada iteración son testeados en cada iteración (2 semanas).
Para gestionar todo el flujo de trabajo, en general utilizan algunas herramientas digitales, entre ellas Trello y Redmine. Además, usan tableros físicos de tipo kanban, user history mapping y scrum. Para el control de calidad utilizan Sonar (CPD, findbugs, PMD, checkstyle, …) y para el testing principalmente JMeter y Selenium en algunos proyectos, aunque no en todos.