Software y errores
Una parte muy importante del desarrollo de software es la parte de pruebas, que en teoría se debe realizar a lo largo de la realización del proyecto, desde el primer día que se programa la primera línea (bueno, quizás no tanto, pero casi) los programadores deben realizar pruebas y pruebas con cada archivo desarrollado. Gracias a estas pruebas se detectan los fallos, y se consigue mejorar el software.
Para los que no saben demasiado del ciclo de desarrollo de un producto software, típicamente está dividido en varias etapas.
- Análisis
- Diseño
- Implementación (programación)
- Pruebas
- Implantación
- Mantenimiento
Estas son las clásicas etapas, pero como para cada proceso de ingeniería, tiene variantes en las que se extiende, recorta o se toman de otra forma. Esto siempre depende de proyecto que se este desarrollando, el equipo con el que se desarrolle, las herramientas, etc. Estas etapas son un ciclo que se realiza una y otra vez hasta que se consigue el producto software deseado. Durante estas etapas interviene el cliente para dar su feedback.
Ciclo de un producto software
Pensar que crear un programa es ponerse directamente a escribir código es como pensar que levantar una casa es decirle a un peón “Eh, tú quiero una casa de 3 pisos” sin dar ningún tipo de plano, orden de ejecución, especificación de los materiales que debe usar, etc. Este pensamiento está muy generalizado entre todos aquellos ajenos a la informática y que lleva a la consiguiente infravaloración de la profesión de ingeniero informático, del que se piensa que es un tío delante de un ordenador todo el día, cuando ha sido formado para pasar más tiempo delante de una pizarra creando diagramas (los planos).
Volviendo sobre el tema de los errores en el software y la importancia de detectarlos a tiempo, comentar que estas etapas son secuenciales y cada una necesita de la anterior para llevarse a cabo (generalmente). Es importante verificar que todo es correcto antes de seguir a la siguiente etapa porque un error no resuelto en una de las primeras etapas conllevará un mayor coste para solventarlo cuanto más se avance en el proyecto. Esto es debido a que será necesario modificar todos los aspectos referentes a dicho error entre la fase actual y la fase donde se encuentra el error.
La mayor parte de los errores del software, 75%, están relacionados con las dos primeras etapas (análisis y diseño), vagas especificaciones, requerimientos erróneos, diseño incompleto, etc. Tan solo un 10% está relacionado con errores directamente achacables a la etapa de implementación. En mi experiencia, las pequeñas empresas tienden a omitir las fases de análisis y diseño (mandan a los peones construir la casa directamente) y es debido a una falsa sensación de que se está perdiendo el tiempo cuando uno se encuentra en estas etapas, pero la realidad, como se ha visto es muy diferente, saltarse estas etapas (análisis y diseño) conlleva la creación de un producto software de baja calidad y altísimo coste.






deja un comentario