Primeramente debemos empezar sabiendo que es un problema en sí. Un problema es el conjunto de hechos o circunstancias que dificultan la consecución de algún fin. Esta cuestión se tiene que tratar, para conseguir el objetivo.
Teniendo esto claro, procedemos a enumerar los pasos que tenemos que seguir para solventar dicho problema:
1.- DEFINICION DEL PROBLEMA: Es importante fijar con claridad, exactitud y precisión del problema que vamos a tratar. De este modo que este paso es el mas importante, dado que si no sabemos que problema tenemos mucho menos sabremos como resolverlo.
2.- ANALISIS DEL PROBLEMA: Identificado el problema tendremos pues, que estudiar, mediante técnicas informáticas, las características y las posibles soluciones del problema. Es ponernos del lado del ordenador y realizarnos preguntas cómo:
-
¿Qué datos o resultados se esperan?
-
¿Son correctos los datos de entrada que he suministrado?
-
¿Es adecuado el procesamiento de esos datos?
3.- ELECCION DE LA MEJOR ALTERNATIVA: Una vez analizado el problema, seguramente tendremos varias alternativas para poder solucionarlo, es aquí, donde según nuestra experiencia y juicio debemos elegir la que produzca los resultados que esperamos en el menor tiempo y al mejor costo.
4.- DIAGRAMACIÓN: Es bien sabido que las cosas gráficas nos sirven para entender mejor las cosas y para no perder cierta secuencia. En este caso particular no será la excepción. Haremos pues, un diagrama de flujo, es decir, la representación gráfica de una secuencia lógica de pasos a cumplir por el computador para producir un resultado esperado.
Una vez elaborado el diagrama de flujo, podremos pasar dicha información a un lenguaje entendible por nosotros, en palabras de nuestro idioma, como si platicáramos con la computadora. Esto es a lo que le llamamos pseudocódigo.
5.- LA PRUEBA: Y como todo, para saber si nuestro diagrama y/o pseudocódigo esta funcionando correctamente, hay que probarlo. Dicha prueba la conocemos como “Prueba de escritorio” la cual consiste en que damos diferentes datos de entrada al programa y seguimos la secuencia indicada en el diagrama, hasta obtener los resultados deseados. Esta prueba nos permitirá realizar los ajustes que sean necesarios, o bien, validar que nuestro código es correcto.
6.- CODIFICACION Y TRANSCRIPCION: Ya que hemos verificado y probado el programa, es entonces cuando viene la codificación y la transcripción, es decir, colocamos cada paso de nuestro diagrama de flujo en una instrucción o sentencia, utilizando un lenguaje que el computador reconoce. Se guarda en memoria para que la computadora pueda leerlo y entenderlo.
7.- COMPILACIÓN: Este paso es la transformación a lenguaje máquina (el lenguaje que maneja la computadora) a partir de nuestro pseudocódigo o código fuente. El compilador realizará un análisis léxico, eliminando información innecesaria del código fuente como son los espacios en blanco y comentarios. Después realizará un análisis sintáctico haciendo un árbol de derivación, es decir, convierte el texto en otras estructuras (comúnmente árboles) más útiles para el posterior análisis y para organizar la jerarquía implícita de la entrada.
8.- PRUEBAS EN EL ORDENADOR: Normalmente los compiladores nos dan un archivo ejecutable, por ejemplo .exe en el caso de Windows, este programa ya está en lenguaje máquina y podemos ejecutarlo, haremos una prueba similar a la prueba de escritorio. Analizando los posibles resultados, como son:
-
La lógica del programa está bien, pero tiene errores sencillos. En este caso tendremos que corregirlo, bien modificando algunas instrucciones o añadiendo nuevas.
-
Hay errores en la lógica del programa. De ser así, tendremos que regresar hasta nuestro diagrama de flujo para volver a analizarlo y hacer las correcciones pertinentes.
-
Existen errores demasiado graves. Nos llevará mucho más atrás en nuestro programa, es decir, estaremos replanteando el problema y buscando nuevamente soluciones para continuar con los demás pasos.
-
No hay errores y los resultados son los esperados. En hora buena, en este caso podemos guardar nuestro programa en memoria y utilizarlo cuando lo necesitemos.
9.- DOCUMENTACION ADICIONAL: Teniendo nuestro programa completo y correcto, es bueno guardar una copia de nuestro código fuente, y diagramas para la futura mejora o mantenimiento del mismo.