Seguidores

lunes, 3 de septiembre de 2012

Modelo de Solucion de problemas relacionados con la computadora

La Resolución de Problemas Utilizando la Computadora

 Aunque el proceso de diseñar programas es un proceso creativo, se puede conciderar tres pasos que ayudan al programador en este proceso:

 1. Análisis del problema
 2.Diseño del algoritmo
 3.Resolución de algoritmo en la computadora

Fases para la Resolucion de Problemas
 

1. Analisis del Problema. En la fase de analisis en el proceso de programaci´ on se determina que hace el
programa. Esta fase requiere una clara definicion donde se contemple exactamente lo que debe hacer el programa y el resultado o solucion deseada. Dado que se busca una solucion se precisan especificaciones de entrada y salida. Para poder definir bien un problema es conveniente responder a las siguientes
preguntas: ¿Que entradas se requieren? (cantidad y tipo) ¿Cual es la salida deseada? (cantidad y tipo) ¿Que metodo produce la salida deseada?


2. Diseño del Algoritmo. En la fase de diseño se determina como hace el programa la tarea solicitada. Los metodos utilizados para el proceso del diseño se basan en el conocido divide y venceras: la resolucion de un problema complejo se realiza dividiendo el problema en subproblemas y a continuacion dividir estos en otros de nivel m´ as bajo, hasta que sea implementada una solucion en la computadora. Este metodo se conoce tecnicamente como diseño descendente (top-down) o modular. El programa principal (el modulo de nivel mas alto) llama a subprogramas (modulos) de nivel mas bajo, que a su vez pueden llamar a otros subprogramas. Estos modulos pueden ser planeados, codificados, comprobados y depurados independientemente y luego combinarlos entre si. Este proceso implica la ejecucion de estos pasos hasta que el programa se ha terminado. El diseño del algoritmo es independiente del lenguaje de programacion en el que se vaya a codificar posteriormente.
 

3. Implementacion del Algoritmo. Para implementar un algoritmo en la computadora, se debe ejecutar los siguientes pasos: Codificacion y documentacion, Compilacion y ejecucion, Verificacion y finalmente la Depuracion.

  3.1.- Codificacion y documentacion. Es la escritura en un lenguaje de programacion de la representacion de un algoritmo, en el caso de este curso se utilizan como lenguajes Octave o Matlab.
La codificacion se conoce como programa fuente. La documentacion puede ser interna y externa. La documentacion interna es la contenida en lineas de comentarios. La documentacion externa incluye analisis, diagramas de flujo y/o pseudo codigos, manuales de usuarios con instrucciones para ejecutar el programa y para interpretar los resultados. La documentacion es vital cuando se desea corregir posibles errores futuros o bien cambiar el programa. Estos cambios se denominan mantenimiento del programa. Ademas es de buena costumbre para todo buen programador, dejar comentado su código, para que el futuro programador pueda darle mantenimiento facilmente a el programa, o incluso, si es el mismo creador quien debe darle mantenimiento. La importancia de la documentación debe ser destacada por su influencia en la etapa final, ya que programas pobremente documentados son dificiles de leer, mas dificiles de depurar y casi imposibles de mantener y modificar.
 

  3.2.- Compilacion y ejecucion. Una vez que el algoritmo se ha convertido en un programa fuente, debe ser traducido a lenguaje maquina. Este proceso se realiza con el compilador y el sistema operativo que se encarga pr´ acticamente de la compilacion. Si al compilar el programa fuente se presentan errores (errores de compilacion), es necesario volver a editar el programa, corregir los errores y compilar de nuevo. Esto se repite hasta que ya no se presenten mas errores, obteniendose el programa objeto. Cuando no existen errores en el programa fuente se debe instruir al sistema operativo para que efectue la fase de montaje o enlace, del programa fuente con las librerias del programa del compilador. Este proceso de montaje produce un programa ejecutable. Cuando se
ha creado un programa ejecutable este se puede ya ejecutar desde el sistema operativo con solo teclear su nombre. Suponiendo que no existen errores durante la ejecucion (errores en tiempo de ejecucion), se obtendra la salida de resultados correctos del programa.
 

  3.3.- Verificacion y depuracion. Es el proceso de ejecucion del programa con una amplia variedad de datos de entrada, llamados datos de test o prueba como son: valores normales de entrada,
valores extremos de entrada que comprueben los limites del programa y valores de entrada que comprueben aspectos especiales del programa. Estos determinaran si el programa contiene errores o no.

No hay comentarios:

Publicar un comentario