Lectura Unidad 2 - Solucion de Problemas

Embed Size (px)

Citation preview

  • 8/16/2019 Lectura Unidad 2 - Solucion de Problemas

    1/22

    METODOLOGÍA PARA ELDISEÑO DE SOFTWARE

  • 8/16/2019 Lectura Unidad 2 - Solucion de Problemas

    2/22

    SOLUCIÓN DE PROBLEMAS

    Para poder definir bien un problema esconveniente responder a las siguientes preguntas:

    ¿Qué entradas se requieren? (tipo y cantidad)¿Cuál es la salida deseada? (tipo y cantidad)¿Qué método produce la salida deseada?

  • 8/16/2019 Lectura Unidad 2 - Solucion de Problemas

    3/22

    TOP-DOWN Y BOTTOM-UP

    Top-down y Bottom-up son estrategias deprocesamiento de información características delas ciencias de la información.

  • 8/16/2019 Lectura Unidad 2 - Solucion de Problemas

    4/22

  • 8/16/2019 Lectura Unidad 2 - Solucion de Problemas

    5/22

    SOLUCIÓN DE PROBLEMAS

    Cada parte nueva es entonces redefinida, cadavez con mayor detalle, hasta que laespecificación completa es lo suficientementedetallada para validar el modelo.

  • 8/16/2019 Lectura Unidad 2 - Solucion de Problemas

    6/22

  • 8/16/2019 Lectura Unidad 2 - Solucion de Problemas

    7/22

    BOTTOM-UP

    En contraste, en el diseño Bottom-up las partesindividuales se diseñan con detalle y luego seenlazan para formar componentes más grandes,que a su vez se enlazan hasta que se forma elsistema completo. Las estrategias basadas en elflujo de información "bottom-up" se antojan

    potencialmente necesarias y suficientes porque sebasan en el conocimiento de todas las variablesque pueden afectar los elementos del sistema.

  • 8/16/2019 Lectura Unidad 2 - Solucion de Problemas

    8/22

    METODOLOGÍA PARA LA SOLUCIÓN D

    PROBLEMASLas fases de resolución de un problema con computadora son:

    1. Análisis del problema2. Diseño del algoritmo

    3. Codificación

    4. Compilación y ejecución

    5. Verificación6. Depuración

    7. Mantenimiento

    8. Documentación

  • 8/16/2019 Lectura Unidad 2 - Solucion de Problemas

    9/22

  • 8/16/2019 Lectura Unidad 2 - Solucion de Problemas

    10/22

    DISEÑO DEL ALGORITMO

    AnálisisSe determina qué hace el programa.

    DiseñoSe determina cómo hace el programa la tarea solicitada.

    Divide yVencerás!

  • 8/16/2019 Lectura Unidad 2 - Solucion de Problemas

    11/22

    CODIFICACIÓN

    1. Análisis del problema

    2. Diseño del algoritmo

    3. Codificación

    4. Compilación y ejecución

    5. Verificación

    6. Depuración7. Mantenimiento

    8. Documentación

  • 8/16/2019 Lectura Unidad 2 - Solucion de Problemas

    12/22

    CODIFICACIÓN

    • En esta etapa se tienen quetraducir los algoritmos a unlenguaje de programaciónespecífico; es decir, lasacciones definidas en losalgoritmos hay que

    convertirlas a instrucciones.

    Definición:

  • 8/16/2019 Lectura Unidad 2 - Solucion de Problemas

    13/22

    COMPILACIÓN

    • Proceso de traducción deun código fuente (escrito

    en un lenguaje deprogramación de altonivel) a lenguaje máquina(código objeto) para quepueda ser ejecutado porla computadora.

    Definicion:Las computadorassólo entienden ellenguaje máquina.

  • 8/16/2019 Lectura Unidad 2 - Solucion de Problemas

    14/22

    EJECUCIÓN

    Si tras la compilación se presentan errores (errores decompilación) en el programa fuente, es preciso volvera editar el programa, corregir los errores y compilarnuevamente. Este proceso se repite hasta que no seproducen errores, obteniéndose el programa objeto

    que todavía no es ejecutable directamente.

    Cuando el programaejecutable se ha creado, sepuede ya ejecutar desde el

    sistema operativo

  • 8/16/2019 Lectura Unidad 2 - Solucion de Problemas

    15/22

    VERIFICACIÓN

    La verificación de un programa es el proceso de ejecucióndel programa con una amplia variedad de datos de

    entrada, llamados datos de test o prueba, quedeterminarán si el programa tiene errores (“bugs”). Pararealizar la verificación se debe desarrollar una ampliagama de datos de test: valores normales de entrada,valores extremos de entrada que comprueben los límites

    del programa y valores de entrada que compruebenaspectos especiales del programa.

  • 8/16/2019 Lectura Unidad 2 - Solucion de Problemas

    16/22

    DEPURACIÓN

    La depuración es el proceso de:1. Encontrar los errores del programa

    2. Corregir o eliminar dichos errores.

  • 8/16/2019 Lectura Unidad 2 - Solucion de Problemas

    17/22

  • 8/16/2019 Lectura Unidad 2 - Solucion de Problemas

    18/22

    ERRORES DE COMPILACIÓN

    Se producen normalmente por un uso incorrecto de lasreglas del lenguaje de programación y suelen ser errores

    de sintaxis. Si existe un error de sintaxis, la computadorani puede comprender la instrucción, no se obtendrá elprograma objeto y el compilador imprimirá una lista detodos los errores encontrados durante la compilación.

  • 8/16/2019 Lectura Unidad 2 - Solucion de Problemas

    19/22

    ERRORES DE EJECUCIÓN

    Estos errores se producen por instrucciones que lacomputadora puede comprender pero noejecutar. Ejemplos típicos son: división entre cero yraíces cuadradas de números negativos. En estoscasos se detiene la ejecución del programa y seimprime un mensaje de error.

  • 8/16/2019 Lectura Unidad 2 - Solucion de Problemas

    20/22

    ERRORES DE LÓGICA

    Se producen en la lógica del programa y la fuentedel error suele ser el diseño del algoritmo. Estoserrores son los más difíciles de detectar, ya que elprograma puede funcionar y no producir errores decompilación ni de ejecución, y sólo puede advertir elerror por la obtención de resultados incorrectos.

    En este caso se debe volver a la fase de diseño delalgoritmo, modificar el algoritmo, cambiar elprograma fuente y compilar y ejecutar una vez más.

  • 8/16/2019 Lectura Unidad 2 - Solucion de Problemas

    21/22

    DOCUMENTACIÓN Y MANTENIMIENT

    La documentación de un problema consta de lasdescripciones de los pasos a dar en el proceso deresolución de un problema. La importancia de ladocumentación debe ser destacada por su decisivainfluencia en el producto final. Programas pobrementedocumentados son difíciles de leer, más difíciles dedepurar y casi imposibles de mantener y modificar.La documentación de un programa puede ser interna yexterna. La documentación interna es la contenida enlíneas de comentarios. La documentación externa incluyeanálisis, diagramas de flujo, pseudocódigos, manuales deusuario con instrucciones para ejecutar el programa ypara interpretar los resultados.

  • 8/16/2019 Lectura Unidad 2 - Solucion de Problemas

    22/22