Faces De La Programacion
Enviado por zr98 • 3 de Marzo de 2014 • 2.146 Palabras (9 Páginas) • 265 Visitas
Fases de la programación
Las Fases de la Programación son:
Definición del problema
Análisis del problema
Diseño de la solución
Codificación
Prueba y Depuración (Puesta a Punto o Testing)
Documentación
Implementación (Producción)
Mantenimiento
Aunque el proceso de crear software es esencialmente un proceso creativo, el seguir esta serie de pasos lógicos conduce a la obtención de programas de mayor calidad. Es muy común que los principiantes se salten algunos pasos de esta metodología por desconocimiento o pereza, y procedan directo a la codificación de los programas. Esta práctica no sólo es incorrecta, sino que hace perder tiempo, dinero y esfuerzo. Aún los programadores experimentados y los profesionales utilizan esta metodología en el desarrollo de su programas. Los resultados que se obtienen con su aplicación son más confiables, rápidos y seguros que los obtenidos mediante prácticas incorrectas y desordenadas.
1. Definición del Problema
Consiste en la obtención sin ambigüedades de una visión general y clara del problema. Ayuda a identificar los elementos claves del problema y los de la futura solución, así como fijar los límites de los mismos basados en su planteamiento textual sobre el papel. Un problema mal planteado, incompleto o mal comprendido es un mal inicio para la programación. Las respuestas a las siguientes preguntas son claves para la correcta definición de un problema:
¿Qué entradas se requieren, de qué tipo, en qué orden y qué cantidad?
¿Qué salidas se desean, de qué tipo, en qué orden y qué cantidad?
¿Qué método(s) o fórmula(s) produce(n), o puede(n) producir las salidas deseadas?
Dependiendo de qué tan precisas sean las respuestas a esas preguntas, así será la definición del problema, sobre todo en cuanto al orden explícito de las entradas y las salidas esperadas. Mientras no se comprenda con claridad el problema por resolver no puede pasarse a la fase siguiente.
2. Análisis del Problema
Es la comprensión a fondo del problema y sus detalles y es un requisito para lograr una solución eficaz. Es precesamente en esta fase donde se definen formal y correctamente la Entrada que recibirá el programa (datos o materia prima), la Salida que producirá (información o resultados) y el Proceso necesario para su solución (el método para convertir los datos de entrada en información de salida). Cada uno de estos aspectos coincide respectivamente con las preguntas planteadas en la fase de Definición del Problema. A este enfoque se le conoce comúnmente como E-P-S (Entrada-Proceso-Salida).
3. Diseño de la solución
En esta fase se diseña la lógica de la solución a usar, o sea, cómo hará el programa la tarea que se desea automatizar usando los datos de entrada para generar los datos de salida, enfatizándose los diseños limpios, sencillos y claros. Pueden plantearse diferentes alternativas de solución al problema y elegir la más adecuada, la que produzca los resultados esperados en el menor tiempo y al menor costo. El proceso de diseño se realiza en dos pasos:
3.1 Elaboración del Algoritmo
Un algoritmo es una secuencia lógica y cronológica de pasos encaminados a resolver un problema. Las acciones básicas que puede llevar a cabo un algoritmo son: pedir datos, desplegar datos, evaluar condiciones y ejecutar operaciones.
Los programas se estructuran a partir de los algoritmos, los cuales se pueden escribir utilizando la técnica convencional del pseudocódigo (mezcla de lenguaje común, términos técnicos de computación, símbolos y palabras reservadas de algún lenguaje de programación) y los diagramas de flujo (flujogramas) que son la representación gráfica de un algoritmo, plasmados en papel para su estudio. En el caso de emplear diagramas de flujo pueden emplearse herramientas de software tales como el DFD v1.0. Si se opta por el pseudocódigo, se recomienda escribirlos a doble interlínea para efecto de facilitar modificaciones o adición de acciones no consideradas y dotarlos de las siguientes características.
3.1.1 Características de los Algoritmos
Un algoritmo debe tener un punto de inicio o partida.
Debe ser preciso e indicar el orden de realización de cada paso.
Debe estar bien definido. Si se sigue un algoritmo dos veces, se debe obtener el mismo resultado cada vez.
Debe ser finito (tener un número finito de pasos). Si se sigue un algoritmo, se debe terminar en algún momento.
La definición de un algoritmo debe describir con claridad las tres partes fundamentales del problema: Entrada, Proceso y Salida encontradas en las fases de Definición y Análisis del problema.
Se deja sentado que todos los programas empiezan primero en papel, no directamente frente a la computadora. Aún los programadores más experimentados plasman en papel sus ideas y soluciones antes de programarlas. Pero es común que los novatos vayan directamente a la computadora sin haber siquiera leído bien el problema o pensado siquiera el algoritmo. Eventualmente podrán concluir el programa y alcanzar una solución, pero sólo después de probar diferentes ideas, hacer miles de cambios y perder gran cantidad de tiempo y esfuerzo. Los que se toman tiempo para analizar el problema, pensar y plasmar su solución en papel mediante un algoritmo tendrán un tiempo de respuesta (el tiempo para obtener el programa terminado) mucho menor, y se convierten en mejores programadores. Es un hecho.
Los problemas complejos pueden solucionarse más eficazmente utilizándo el método "Divide y Vencerás", el que consiste en fraccionar un problema complejo en otros más simples y más fáciles de solucionar. Esto conduce a la Modulación del programa auxiliado por el método de diseño Top-Down o Descendente en el que se da un refinamiento de los pasos del algoritmo. De hecho, el enfoque E-P-S mencionado anteriemente es un buen ejemplo de esto, pues al concentrarse en resolver cada uno de los tres aspectos del enfoque de manera independiente se lograr la solución del problema completo.
3.2 Realización de Pruebas de Escritorio
O sea, comprobaciones a mano del algoritmo planteado (en pseudocódigo o en diagrama de flujo) con datos y resultados de prueba conocidos, papel, lápiz y calculadora (si es necesaria) para simular su ejecución y evaluar su correcta operación. Si la lógica es correcta, los resultados serán satisfactorios. Si no, el algoritmo deberá modificarse y volverlo a probar hasta que esté correcto. Algunos programas no son fáciles de probar a mano por su complejidad y/o tamaño, pero en tu ayuda está la verificación durante la programación
...