Cuando hablamos sobre la Resolución de Problemas (algoritmos), básicamente la podemos dividir en varias fases: 

Fase 1: Análisis del Problema

      Se determina lo que se desea conseguir, estableciendo los datos de entrada y cálculos necesarios para poder llegar a la solución del problema. Muchas veces se recomienda realizarnos las siguientes interrogantes: 

  - ¿Qué nos están solicitando?

  - ¿Qué datos necesito para lograr lo deseado?

  - ¿Qué cálculos debo realizar y en que orden?




Fase 2:  Diseño del Algoritmo

     Consiste en diseñar el algoritmo mediante un diagrama de flujo o pseudocódigo.


Diagrama de Flujo



Pseudocódigo

Fase 3: Codificación

     Adaptar el algoritmo a un determinado lenguaje de programación, pasando  cada uno de los pasos de la sintaxis al lenguaje escogido.     




Fase 4: Ejecución, Verificación y Depuración

     En esta fase se busca detectar cualquier tipo de error lógico o de compilación que se pueda estar generando.




Fase 5: Mantenimiento y Optimización 

    Esta fase es de gran importancia ya que se busca de optimizar el razonamiento lógico por procesamientos mas cortos y precisos.




Fase 6: Documentación

     Por ultimo pero no menos importante tenemos esta fase, se recomienda principalmente con el fin de realizar comentarios dentro de el código ya sea en las variables, constantes, procedimientos y/ o funciones que cumplen un rol fundamental en el algoritmo.