1.VERIFICACIÓN, PRUEBA Y DEPURACIÓN DE ALGORITMOS
Llamamos verificación de algoritmos a la comprobación del correcto funcionamiento del pseudocódigo planteado. Los conceptos de verificación, prueba y depuración son en cierta medida similares y en cierta medida distintos.

Nosotros de momento no vamos a entrar en detalles de momento. Hemos comentado en diferentes ocasiones que el concepto de algoritmo se entrelaza con el de programa hasta, en ocasiones, llegar a confundirse. En este caso hablaremos de verificación de algoritmos pero todo lo expuesto nos será útil para enfrentarnos a la verificación del programa.
Al hablar de verificación estamos tratando una parte de lo que supone el desarrollo de algoritmos – pseudocódigo así como del proceso posterior a disponer del código del programa. Habrá que entender que para programas complejos, aunque se parta de un conocimiento profundo del problema a resolver, el proceso que va desde generar algoritmos hasta mejorar el programa puede convertirse en un recorrido de ida y vuelta con cierta interposición entre fases. Es decir, mientras que en un problema sencillo el esquema lineal puede ser ajustado a la realidad, en un problema complejo puede ser necesaria una cierta superposición entre desarrollo, programación, verificación y mejora. Es posible que al realizar la verificación del programa o partes del programa descubramos defectos que nos obliguen a volver a la parte de desarrollo. Las verificaciones, aunque tienen momentos principales, también es habitual que se extiendan a lo largo de las fases de desarrollo, programación y mejora.
Nuestro cerebro ha creado una estructura en base a nuestra experiencia, conocimientos, etc. y preliminarmente valora que debe funcionar para cumplir nuestros objetivos. Esta verificación mental preliminar no debe bastar desde el momento en que exista un mínimo de complejidad, pues supondría arriesgarnos a que existan errores que pueden comprometer todo el desarrollo del programa. Por ello, usaremos una o varias de las técnicas indicadas a continuación:
· Verificación mental.
· Verificación por seguimiento escrito.
· Verificación por seguimiento con tablas de variables.
· Verificación por seguimiento con desarrollo en un lenguaje.
· Verificación por seguimiento con un lenguaje y paso a paso.
Aunque hemos dicho que la verificación del algoritmo guarda estrecha relación con lo que sería verificación del programa, podemos matizar esta afirmación.
La verificación de algoritmos suele realizarse para procesos parciales como los contenidos en módulos o partes de módulos, ya que una verificación global del algoritmo puede resultar muy costosa y compleja. Durante la creación del programa es posible que se haga necesario retocar algunos aspectos de algoritmos previamente verificados, en términos de puesta a punto.
Veremos a continuación las diferentes técnicas de verificación usando como ejemplo base el doble anidamiento de bucles Desde empleado al principio de este apartado, con un bucle externo controlado por la variable i, un bucle interno controlado por la variable j y una variable A que adquiere valores en función de i y j.
No hay comentarios:
Publicar un comentario