"PASOS PARA LA SOLUCIÓN DE UN PROBLEMA DE SOFTWARE"
1. ANÁLISIS DEL PROBLEMA
El análisis consiste en una clara definición del problema, donde se contemple exactamente lo que debe hacer el programa y el resultado o solución deseada.
Para que este paso se realice de manera correcta, se deben conocer claramente tres cosas:
- Datos de Entrada de que se dispone
- Proceso o Tratamiento que ha de realizarse con estos datos.
- Información de salida deseada.
EJEMPLO:
Para hacer la nómina de los mejores estudiantes de una carrera, se necesita saber:
2. DISEÑO DEL ALGORITMO
Teniendo en cuenta que un algoritmo es un método para resolver problemas, una vez analizado el mismo se precisa diseñar un algoritmo que indique claramente los pasos a seguir para resolverlo.
En esta etapa se realizará una representación de la secuencia. Estas representaciones son las herramientas de:
Diagramas de flujo:
Diagrama NS:
Pseudocódigos:
Tablas de decisión:
En conclusión, en la etapa anterior se define qué es lo que hará el programa, en esta fase, se define como lo hará.
3. ENTORNO DE DESARROLLO Y CODIFICACIÓN (PROGRAMACIÓN)
Una vez que el diagrama de flujo o el algoritmo de resolución del problema está definido se pasa a la fase de codificación del programa en cualquier lenguaje (Pseint, C, C++, C#, Phyton, Java, etc.) cuyo resultado será el programa fuente, el cual sigue las reglas de sintaxis que el lenguaje escogido exija.
EJEMPLO:
Programa que calcula el cuadrado de un número:
Como vemos en el ejemplo, se da el nombre al código y se lo crea siguiendo el lenguaje de programación deseado, que en este caso es PSeInt.
4. EJECUCIÓN Y PRUEBAS:
El hecho de haber diseñado un buen algoritmo y luego haberlo codificado en algún lenguaje de programación no significa que el programa resuelva correctamente el problema en cuestión. Por eso, antes de dar por finalizada cualquier labor de programación, es fundamental preparar un conjunto de datos lo más representativo posible del problema, que permitan probar el programa cuando se ejecute y así verificar los resultados.
Como podemos ver, el programa se ejecuta de manera normal generando un resultado correcto.
5. DOCUMENTACIÓN Y MANTENIMIENTO
Por último se debe tener una documentación de todos los pasos hasta llegar a la solución del problema, es muy importante ya que muchas veces suceden modificaciones con el pasar del tiempo y estas se hace en algunos casos por otros programadores diferentes a los que lo crearon, y cuando un programa es pobre en documentación este proceso de modificación es bastante complejo.
Para este paso también es importante conocer las herramientas que tenemos a la mano, como las integradas en el medio de programación que estamos usando.
Por ejemplo:
PSeInt posee una función para ejecutar el código paso a paso
Lo cual ayuda a comprender donde se encuentra un posible problema en el código.
" PRUEBA DE ESCRITORIO "
La prueba de escritorio permite analizar un algoritmo manualmente para detectar posibles errores.
Consideraciones:
• Es conveniente realizar más de una prueba para
verificar cómo se comporta el algoritmo con diferentes datos de entrada.
• Se elige un caso normal y uno o dos casos límite (mejor
y peor caso).
• Una herramienta útil para la prueba de escritorio es una tabla con una fila por cada instrucción y una columna para cada variable, estructura y salida (s).