Las revistas COMPUTING (en edición impresa, On Line…) ITCIO, STRATEGIC PARTNER, TECHWEEK y COMUNICACIONES HOY, y el diario EL ECONOMISTA han publicado el artículo redactado por Ignacio López Carrillo, Director del área de Gobierno de Pruebas de LEDAmc, titulado ¿Cómo hacer un buen outsourcing de una factoría de pruebas?
Según el autor La externalización en factorías de pruebas de software debería ser una evolución de un servicio interno de pruebas, y tener como objetivo mejorar el coste, la capacidad, el rendimiento y la efectividad actual.
Les invitamos a leerlo.
Publicado en:
ARTÍCULO
Si reflexionamos sobre en qué elementos basamos la decisión de externalizar un servicio de pruebas de software, la respuesta a esta pregunta está relacionada con el precio, después, se matiza indicando que, se mira la calidad del ofertante y del servicio ofrecido, para, finalmente, seleccionar la oferta con mejor relación calidad/precio.
La externalización en factorías de pruebas de software debería ser una evolución de un servicio interno de pruebas, y tener como objetivo mejorar el coste, la capacidad, el rendimiento y la efectividad actual.
El problema se presenta al decidir externalizar siguiendo la tendencia mayoritaria del mercado pero sin realizar un análisis previo de conveniencia para controlar el proceso.
Así, algunas organizaciones se lanzan a externalizar sin tener métricas de su situación actual relacionadas con el Testware (entendiendo como Testware los resultados de las actividades de pruebas: planes, casos, de prueba, resultados, esfuerzos, defectos de las pruebas, incidencias en producción no detectadas?) sobre las que fijar los objetivos de mejora de productividad, de rendimiento, de efectividad y de coste.
Es más, muchas organizaciones saltan directamente a este modelo de servicios sin haber pasado por un proceso interno de operación de los mismos, lo que imposibilita disponer de esos elementos para comparar y analizar los aspectos de mejora.
El resultado requiere grandes inversiones en factorías de pruebas que no son tan eficientes como se esperaban y que, con el paso de los años, van engordando hasta que hay un cambio de dirección, o en el entorno económico que pone en cuestión las inversiones realizadas, una crisis interna?
No obstante, todas las organizaciones que quieren externalizar un servicio de pruebas necesitan tener dentro de la compañía a alguien que lidere el proceso. Sí lo tuvieran, necesitan cambiar la forma de trabajo, cambiando el foco, desde gestionar las actividades y resultados de un proceso de pruebas realizado por un equipo de trabajo, a gestionar un proveedor. Y además, sin que nadie les enseñe cómo hacer ese cambio de enfoque. El asunto se complica más cuando la organización no tiene un especialista de pruebas y pone en su lugar a un jefe de proyecto, de desarrollo, de soporte o de otra disciplina de ingeniería de software.
La situación es, siempre la misma: a alguien le asigna la responsabilidad de dirigir y gestionar el proceso de externalización pero no dispone de suficiente información de lo que se necesita hacer y cómo controlarlo.
Igualmente, existe siempre el riesgo de que los equipos de desarrollo se enfoquen sólo en sus actividades de desarrollo y olviden realizar las pruebas que son parte de su responsabilidad como desarrolladores (pruebas unitarias y de integración) y que esto produzca una pérdida de calidad entregada que debe ser corregida (y pagada) en las etapas finales, lo que conlleva un fuerte incremento de costes (y de recursos) pagados al servicio externalizado de pruebas.
La realidad es que la decisión sobre el mejor proveedor de servicios de pruebas de software basada en la mejor relación calidad/precio cae por su peso, al no disponer de métricas objetivas relacionadas con el precio, ni con la calidad. Estas decisiones se toman únicamente con datos subjetivos y usando, como único dato numérico, el precio de la hora-hombre del personal del equipo de pruebas que va a realizar el servicio.
La solución
Para evitar esta situación, y para facilitar a la industria de TI, los pasos requeridos para mejorar la situación descrita, NESMA (asociación holandesa de métricas del software, una de las asociaciones de métricas más activas en el mundo, y desde luego la más activa de Europa) ha lanzado una iniciativa en la que ha participado de forma importante LEDAmc (principal socio de NESMA en España) para desarrollar una guía práctica (Mini Guía) que ayuda a las compañías que necesitan evolucionar de su modelo actual de pruebas a un modelo de externalización de factorías basado en la importancia de las métricas de pruebas.
El primer paso sería, cómo conseguir el mejor precio. Y es que, a falta de otros elementos objetivos, las compañías que se embarcan en el proceso de Outsourcing de un servicio de pruebas basan su decisión en comparar diferentes proveedores usando sólo datos económicos cuantitativos.
Aunque esta idea es buena en la teoría, desgraciadamente, de la forma en que se lleva a la práctica produce frecuentemente lo opuesto del resultado deseado: tienen que gastar más dinero en cada funcionalidad probada y produce un incremento del coste de las actividades de pruebas externalizadas.
El hecho es que, poniendo el foco en conseguir el mejor precio, acaba ocurriendo lo contrario, que los proveedores reaccionan poniendo en el servicio, a personal con menos experiencia y menor cualificación, lo que conduce directamente a una disminución de la productividad, de la calidad y de la efectividad del trabajo de pruebas realizado.
El paso siguiente consistiría en cómo controlar el riesgo.
Si el proveedor seleccionado tiene suficiente experiencia, la mayoría de las actividades de pruebas se realizarán correctamente.
Los problemas vendrían por la falta de control por parte del cliente del servicio externalizado que acaban produciendo una pérdida de efectividad o un sobrecoste del mismo.
Como norma general, y no solo en Testing, quién controla las estimaciones controla el proyecto, la planificación y el coste, y no es aconsejable dejar ninguna de estos puntos críticos en manos de un proveedor.
La mayoría de los problemas están originados por la falta de estimaciones objetivas del testware y, por tanto, de la ausencia de gobierno de las actividades de pruebas. Cuando el proceso está externalizado, estos problemas se suelen agravar.
Si una compañía quiere externalizar su proceso de pruebas, hay cinco aspectos clave que considerar: económicos, recursos humanos, organizativos, planificación y toma de decisiones.
Ignacio López Carrillo, Director del área de Gobierno de Pruebas de LEDAmc