Cada día que pasa se es más consciente de tener en cuenta los temas de Calidad en nuestras aplicaciones, la rapidez con que necesitamos la información es tal que ya es poco lo que toleramos que una aplicación falle y si es así, apreciamos enormemente el tiempo en el que es resuelto un fallo. El mercado está haciendo que los procesos de calidad no sean una opción o una ventaja competitiva que tengan algunas empresas sino que ya se está volviendo una exigencia, un estándar (o ya lo es).
Intento mostrar con este artículo algo superficial de cómo es el mundo del aseguramiento de calidad a nivel empresarial.
Hace ya algún tiempo vi que HP estaba empezando a ofrecer un nuevo servicio: HP Testing as a Service. como concepto es algo que no es nuevo pero puede serlo para nuestro país.
Normalmente las empresas que se dedican a ofrecer servicio de testing lo hacen en modalidad de Outsourcing o Body Shopping cobran basado en lo que pueda costar los recursos que se asignen (personas o herramientas) o hasta la metodología que se esté usando (puede cobrarse un testing manual o puede cobrarse la automatización de las pruebas) y con esto formar las bases para las estimaciones en tiempo y dinero en el proyecto.
Por otra parte, conocemos que entre más temprano se detecte un fallo es menos costoso para el proyecto, atribuimos a veces que los gerentes de proyectos de software no conocen este tema y deciden dejar las etapas de pruebas para el final, pero tomando en cuenta este modelo que se opera en las empresas de testing, es posible que la falla se origine aquí.
Como Project manager se deben cuidar los desfases tanto en tiempo, costo y recursos, con el conocimiento de que un recurso de pruebas es costoso se tomará mayor cuidado en qué punto del proyecto entrará a operar, así una de las opciones para esto es empezar cuando el desarrollo esté terminado.
El modelo que está ofreciendo HP es conocido como Testing as a Service, no es creado por ellos pues como concepto existe desde hace ya algún tiempo (no tengo fecha de referencia) y de la misma forma ya hay empresas internacionales que operan con él.
Como Objetivo TaaS busca que las organizaciones se centren en su core (como todas las empresas de outsourcing) la diferencia radica en que el servicio que se ofrezca sea por demanda y además de esto reduciendo al máximo los costos de los recursos asignados, de esta forma TaaS opera algo así:
- La forma de ingresos está basada más en la cantidad de casos de pruebas que en el costo del recurso, de esta forma con lo que podría costar un recurso en un mes, se podrían hacer los suficientes casos de pruebas que garanticen una cobertura considerable. Se establecen valores fijos para cada servicio ofrecido o el tipo de test que se requiera (funcionales o no funcionales)
- Se cuentan con SLAs (Acuerdos de niveles de Servicios / Service Level Agreements) establecidos con los que se pueden tomar decisiones de estimación o decisiones contractuales.
- El tiempo es un factor importante, definen un claro y estricto cronograma de trabajo
- No es relevante para el cliente las herramientas ni la metodología que se use, como estas empresas ofrecen rapidez y cumplimento en cronograma, es posible que para los casos de pruebas que se envíen estén utilizando técnicas automatizadas o estén varios recursos personas asignados haciendo manualmente las pruebas, para el cliente sería transparente.
De la forma como operan estas empresas ya es más cercano que se implementen mecanismos de aseguramiento de calidad desde etapas muy tempranas en un proyecto.
Un caso exitoso es la empresa uTest. Fue fundada en el 2007 y trabaja con este modelo de forma virtual, ha creado una aplicación web a través de la cual Testers de todo el mudo pueden unirse y de esta forma van incrementando su personal. Las empresas que quieren contratar con ellos, emiten su solicitud y uTest publica la necesidad de realizar un tipo de pruebas que se debe entregar en una fecha límite (tiempo establecido), los testers que deseen participar en el proyecto lo notifican y de esta forma un producto puede ser probado por muchas personas (recursos asignados) de diferentes países con diferente experiencia. A estas personas se les paga por bug registrado y aceptado ya que es posible que ya un error o falla haya sido registrado por otra persona. (Costo del servicio).
Este es un modelo interesante, pues cualquier persona puede realizar la solicitud de ingreso y cuando se sienta preparado para participar, notificarlo (si desea participar en él aconsejo empezar por los proyectos de traducción mientras se adquiere la confianza necesaria para otros proyectos)