Recientemente ojeando JavaHispano, he visto que han publicado un documento hablando de niveles de calidad de software y su inclusión, o más bien no inclusión en las metodologías de desarrollo actuales ya sean ágiles o tradicionales.
El documento ha sido escrito por Francisco Morero Peyrona y Abraham Otero (si no me equivoco con el apellido), y aunque es un texto corto (16 páginas), su lectura es interesante.
Quizás la primera parte habla de cosas que un desarrollador ya conoce y ha pensado en más de una ocasión, pero las directrices o reglas que ofreces en el apartado que ellos han nombrado como “Reglas del pulgar” son bastante interesantes. Como siempre decir que son casos generales y que luego cada uno tiene que tomar sus propias decisiones y, adaptar las cosas a su caso concreto. Con esto, me ha parecido una lectura interesante ya que le dan forma (de documento) a unas ideas que casi todos llevamos en la cabeza.
En general yo diría que mi idea sobre que nivel de calidad a aplicar es más o menos la siguiente
Si el tiempo y el presupuesto lo permite (lo decide el cliente normalmente) Aplicar calidad de mayor a menor a Proyectos que van a usar otros desarrolladores Proyecto que solo van a usar los usuarios Chapuzillas (vease aquí script, aplicaciones para automatizar cosillas puntuales,...) Sino Se hace lo que se puede
Está ha sido muy resumida mi regla siempre.
La verdad es que si en algo tienen razón, es en que es algo que nunca se nombra ni se hace referencia en las metodologías de software, todas ellas parecen enfocadas a alcanzar siempre la “perfección”, pero ¿de verdad merece la pena hacer siempre el esfuerzo? Esta es una muy buena reflexión.
También es cierto que debe ser difícil como mínimo tratar con un cliente y tener que especificar el nivel de calidad que se va a utilizar en un proyecto y presupuestarlo en este. Imagino que siempre es más fácil no decir nada y centrarse únicamente en la funcionalidad y la calidad, ya se verá sobre la marcha. Sobre todo porque depende de muchos factores, tiempo, imprevistos, preparación de nuestro equipo de desarrolladores, cambios de requisitos, … cosas que por lo general, no pueden ser medidas específicamente.
Y vosotros, ¿tenéis alguna regla sobre esto? ¿Aplicáis el 100% de la calidad siempre? ¿Nunca?
Os dejo el enlace al post en JavaHispano para que podáis leer el artículo:
Niveles de calidad: el agujero en las metodologías de software
Nos vemos.