19 de Noviembre, 2008

La percepción de Calidad en el Software y las ñapas

the plumber

Ayer estuve en un evento sobre la Implantación del Modelo de Calidad del Software CMMI, que ha resultado ser más interesante de lo que esperaba por factores en realidad nada relacionados con CMMI (ya comentaré más cosas que trataron en este desayuno tecnológico).

En una de las ponencias se hablaba de la percepción que tenemos sobre lo que es aceptable hablando de Software, y que no toleramos en otros productos de ingeniería (creo recordar que este fue el término que empleó el ponente :P).

Es impensable comprar un horno microondas y que a veces, eligiendo una de las opciones que trae (descongelar, potencia, tiempo, activar el grill), se quedara colgado y tuviéramos que reiniciarlo y volver a empezar. ¿Por qué? Damos por sentado unos parámetros de calidad (el dispositivo cumple el propósito para el que fue concebido). Es sorprendente que en el Software esto no ocurra así, y además toleremos los fallos con mucho estoicismo.

En ese momento yo pensé: claro, está acostumbrado al software privativo. Con eso no quiero decir que el Software Libre no tenga fallos o que tenga un nivel de calidad más alto de forma explícita (aunque sí implícitamente, por el modelo de desarrollo Open Source), pero creo que hablamos de cosas distintas.

El caso es que anoche estuve haciendo de Juanjo the plumber, porque la falta de presión del grifo del baño era debida a que el dosificador estaba sucio, sucio y viejo.

La solución del momento fue un workaround, una ñapa, un parche (en el sentido peyorativo del término), o incluso un hack (emplee en la limpieza un producto químico que, en realidad, no está pensado para arrancar la cal... ingenioso pero maloliente :D).

Con demasiada frecuencia, en el desarrollo de software, se quedaría así (si funciona, no lo toques). No sé si por mala cultura, malos profesionales, o porque muchas veces el desarrollo es una frenética huida hacia adelante luchando contra plazos ajustados y exceso de proyectos en paralelo (disapara y avanza, gritando).

Así que se me hizo algo tarde jugando con los grifos, y acabé en la cama insatisfecho, y convencido de que hoy iría a una ferretería para solucionar el problema como es debido.

A lo mejor todo esto es fruto de un mareo por abusar de los químicos intentando limpiar un grifo, o es posible que haya relación entre la mala calidad del software y las ñapas.

Anotación por Juan J. Martínez, clasificada en: software libre, calidad.

Hay 10 comentarios

Gravatar

Y bastante grande, además, lo peor es que una ñapa en un producto software, desgraciadamente acabará originando muchas más ñapas, con lo cual llega un momento en que se tira todo abajo y se vuelve a hacer (con tranquilidad y el paso de los años)

Si un microondas no te funciona, lo tiras y compras uno nuevo, no lo manipulas, por lo que pueda pasar.

por esaiz, en 2008-11-19 19:48:09

Gravatar

No asegura la calidad de los productos, sino del proceso, es más, me atrevo a decir que solamente asegura que podrán facturar el proceso al cliente, y estorba en la creación del software.
Es válido para desarrollos monolíticos y en cascada, donde el cliente sabe lo que quiere y donde se puede dedicar una persona el 100% del tiempo a gestionar documentación y otra persona para auditar, para luego cobrar todo esto al cliente.

La libertad, y la aproximación al "desarrollo ágil" es lo que hace que los productos del software libre funcionen como lo hacen (con sus virtudes y defectos, pero bastante mejor que el soft privativo).
Hay que admitir que estabas con un vendendor y el tipo estaba intentando hablarte de las virtudes de su producto, pero creeme, que no es mejor que un vendedor de motos.

BTW: odio CMMI

Salu2

por Peibol, en 2008-11-19 20:41:58

Gravatar

@Peibol: ah, amigo... cuando me preguntan digo que fui a que me vendieran enciclopedias (porque lo de decir sesión de tupperware sería algo injusto).

Estoy de acuerdo contigo al 100%, con alguna matización. Muestra de que no soy creyente es que, en la ronda de preguntas, saqué el tema de metodologías ágiles y, concretamente, scrum.

El 'vendedor' incluso dijo que se podía integrar scrum dentro de CMMI :'D

Pero ya comentaré lo que toca. Cuando hablo de calidad, hablo más de QC que de QA.

por Juanjo, en 2008-11-19 21:08:38

Gravatar

De CMMI no opino, y menos de los comerciales (Dios me libre, de los comerciales digo.)pero tengo un consejo para la próxima: el tamizador se arregla desmontándolo y dejándolo sumergido en vinagre (de vino normal, no de módena pijo) durante toda la noche.
Te evitarás intoxicarte con vapores nocivos, y elimina la cal.
Ea, eso tenía que decir.

por MsNice, en 2008-11-19 22:36:40

Gravatar

Ya me gustaría a mi ver el microondas fabricado como se fabrica software: "pues ahora el botón de descongelar que no descongele"...pues ahora que sí que descongele".."pues ahora me añades otro botón"..."¿Que qué tiene que hacer el microondas? Pues no lo sé, tú ves construyéndolo y cuando lo vea ya lo corregimos..."

El problema no es CCMI sino que hacerlo bien cuesta pasta. ¿Cuantas empresas están dispuestas a pagar por un software de calidad lo que vale? Prefieren ñapas.

En fin, tampoco digo nada nuevo.

por yabu, en 2008-11-20 09:24:11

Gravatar

@Yabu: no te creas que solo se limite al software, tu mira también las empresas automovilisticas. Actualmente los beta tester de sus productos son los compradores. Coches que salen a la venta con defectos de fabricación del tipo: vas a 130khm en autovía, fallo electrico, no tienes servofreno, hala... arreglatelas (307fallos?)

@Juanjo: hay un error de base en la frase "...SCRUM se podría integrar dentro de CMMI." Y es que la idea de SCRUM rompe con la típica estructura monolítica de la empresa clásica que supone que la construcción de un soft es similar a la de un edificio.
No es SCRUM quien es debe integrar en esta estructura empresarial (CMMI), a lo sumo es la estructura la que debe cohexistir alrededor de SCRUM, pero no puede interferir en la ejecución del proceso de creación. No se puede perder el tiempo en documentos de gestión mutantes y menos aún asignar a los cerdos a ocuparse de esto y desarrollar a la vez. Que Mahoma vaya a la montaña no es lo mismo que que la montaña vaya a Mahoma.

Salu2

por Peibol, en 2008-11-20 09:52:21

Gravatar

Muy claro lo dejas con la comparativa de QC vs QA, yo soy del pensamiento de que no podemos estar seguros de nada, pero si que podemos controlar la calidad a medida que se produce, pero claro, ve tu y explicale eso a un JP carcamal que piensa que los proyectos se sacan a base de latigazos y "esfuerzo".

(Este segundo comentario es porque el campo "comentario" es demasiado grande. Pon un contador de caracteres decreciente, anda)

Salu2

por Peibol, en 2008-11-20 09:55:30

Gravatar

Estoy deacuerdo con @MsNice con el vinagre hubieras solucionado el problema con un hack muy elegante que no hubiera generado otros bugs.

por mercu, en 2008-11-20 18:47:57

Gravatar

Como dice @Peibol, el CMMI no es más un sistema que te dice cómo hacer las cosas, pero que tú uses ese sistema no garantiza nada. Un bug es un bug.

Un bug aparece porque alguien ha metido la pata, y meter la pata es natural.

Para reducir los bugs lo mejor es hacer unit tests y tests de integración, luego tests de regresión, y finalmente no hay nada como darlo a conocer al público y dejarle que experimente con el software (y que luego te cuente si ha tenido problemas).

por Pau Sánchez, en 2008-11-26 19:03:44

Gravatar

La ventaja del software libre es el feedback de los usuarios. No quiere decir que en el software libre no existan bugs, quiere decir que se solucionan más rápido y cuanto más tiempo pasa desde que se ha congelado una versión, menos bugs hay, porque más usuarios lo habrán usado, y más bugs habrán sido reportados y solucionados.

Me atrevería a decir que pasa lo mismo con las páginas webs (da igual si son opensource o no) si una página web tiene muchas visitas, y en la web hay un bug, con que un usuario contacte con el programador y reporte el bug será suficiente (siempre que el que lleva la web, persona o empresa, no sea un dejado).

Creo que esto de webs y opensource da para un articulo...

Un saludo!

por Pau Sanchez, en 2008-11-26 19:06:25

Los comentarios están cerrados: los comentarios se cierran automáticamente una vez pasados 30 días. Si quieres comentar algo acerca de la anotación, puedes hacerlo por e-mail.

Algunas anotaciones relacionadas: