Sunteți pe pagina 1din 7

NIDAD II.

- DESARROLLO DE LOGICA ALGORITMICA

2.1 Metodologa para la solucin de problemas.

2.2 Metodologa para el diseo de software: Top down, Bottom up, modular y programacin estructurada.

2.3 Definicin de lenguajes algortmicos

2.3.1 Elementos y reglas de la representacin grafica y manuscrita de los algoritmos (diagrama de flujo, diagrama N-S, diagrama estructurado y pseudocdigo.

2.3.2 Implementacin de algoritmos secuenciales (utilizando notacin algebraica)

2.4 Pruebas y depuracin

2.1 Metodologa para la solucin de problemas

La solucin de un problema por computadora, requiere de siete pasos, dispuestos de tal forma que cada uno es dependiente de los anteriores, lo cual indica que se trata de un proceso complementario y por lo tanto cada paso exige el mismo cuidado en su elaboracin. Los siete pasos de la metodologa son los siguientes:

1. Definicin del problema

2. Anlisis de la solucin

3. Diseo de la solucin

4. Codificacin

5. Prueba y Depuracin

6. Documentacin

7. Mantenimiento

Definicin del problema

Es el enunciado del problema, el cual debe ser claro y completo. Es fundamental conocer y delimitar por completo el problema, saber qu es lo se desea realice la computadora, mientras esto no se conozca del todo, no tiene caso continuar con el siguiente paso.

Anlisis de la solucin

Consiste en establecer una serie de preguntas acerca de lo que establece el problema, para poder determinar si se cuenta con los elementos suficientes para llevar a cabo la solucin del mismo, algunas preguntas son:

Con qu cuento?

Cules son los datos con los que se va a iniciar el proceso, qu tenemos que proporcionarle a la computadora y si los datos con los que cuento son suficientes para dar solucin al problema.

Qu hago con esos datos?

Una vez que tenemos todos los datos que necesitamos, debemos determinar qu hacer con ellos, es decir que frmula, clculos, que proceso o transformacin deben seguir los datos para convertirse en resultados.

Qu se espera obtener?

Que informacin deseamos obtener con el proceso de datos y de qu forma presentarla; en caso de la informacin obtenida no sea la deseada replantear nuevamente un anlisis en los puntos anteriores. Es recomendable que nos pongamos en el lugar de la computadora y analicemos que es lo que necesitamos que nos ordenen y en que secuencia para producir los resultados esperados.

Diseo de la solucin

Una vez definido y analizado el problema, se procede a la creacin del algoritmo (Diagrama de flujo pseudocdigo), en el cual se da la serie de pasos ordenados que nos proporcione un mtodo explcito para la solucin del problema.

Es recomendable la realizacin de pruebas de escritorio al algoritmo diseado, para determinar su confiabilidad y detectar los errores que se pueden presentar en ciertas situaciones. Estas pruebas consisten en dar valores a la variable e ir probando el algoritmo paso a paso para obtener una solucin y si sta es satisfactoria continuar con el siguiente paso de la metodologa; de no ser as y de existir errores deben corregirse y volver a hacer las pruebas de escritorio al algoritmo.

Codificacin

Consiste en escribir la solucin del problema (de acuerdo al pseudocdigo); en una serie de instrucciones detalladas en un cdigo reconocible por la computadora; es decir en un lenguaje de programacin (ya sea de bajo o alto nivel), a esta serie de instrucciones se le conoce como PROGRAMA.

Prueba y Depuracin

Prueba es el proceso de identificar los errores que se presenten durante la ejecucin del programa; es conveniente que cuando se pruebe un programa se tomen en cuenta los siguientes puntos:

1. - Tratar de iniciar la prueba con una mentalidad saboteadora, casi disfrutando la tarea de encontrar un error. 2. - Sospechar de todos los resultados que arroje la solucin, con lo cual se debern verificar todos. 3. - Considerar todas las situaciones posibles, normales y an las anormales.

La Depuracin consiste en eliminar los errores que se hayan detectado durante la prueba, para dar paso a una solucin adecuada y sin errores.

2.2 Metodologa para el diseo de software: Top-Down Top-Down y Bottom-up son estrategias de procesamiento de informacin caractersticas de las ciencias de la informacin, especialmente en lo relativo al software. Por extensin se aplican tambin a otras ciencias humanas y cientficas. En el modelo Top-Down se formula un resumen del sistema, sin especificar detalles. Cada parte del sistema se refina diseando con mayor detalle. Cada parte nueva es entonces

redefinida, cada vez con mayor detalle, hasta que la especificacin completa es lo suficientemente detallada para validar el modelo. El modelo "Top-Down" se disea con

frecuencia con la ayuda de "cajas negras" que hacen ms fcil cumplir requerimientos aunque estas cajas negras no expliquen en detalle los componentes individuales. En el proceso de desarrollo de software, los enfoques Top-Down y Bottom-up juegan un papel crucial. El diseo Top-Down fue promovido en los 1970s por los investigadores de IBM Harlan Mills y Niklaus Wirth. Mills desarroll los conceptos de programacin estructurada para usos prcticos y los prob en un proyecto en 1969 para automatizar el ndice de la morgue del New York Times. El xito administrativo e ingenieril del proyecto hicieron que el enfoque top-Down se esparciera por IBM y por el resto de la industria de los computadores. Niklaus Wirth, que entre sus logros est el desarrollo del lenguaje de programacin Pascal, escribi el artculo Program Development by Stepwise Refinement, que tuvo mucha influencia. Los mtodos Top-Down fueron favorecidos en la ingeniera de software hasta que lleg la programacin orientada a objetos a finales de los 1980s. El enfoque top-Down enfatiza la planificacin y conocimiento completo del sistema. Se entiende que la codificacin no puede comenzar hasta que no se haya alcanzado un nivel de detalle suficiente, al menos en alguna parte del sistema. Esto retrasa las pruebas de las unidades funcionales del sistema hasta que gran parte del diseo se ha completado.

Bottom-Up En contraste, en el diseo Bottom-up las partes individuales se disean con detalle y luego se enlazan para formar componentes ms grandes, que a su vez se enlazan hasta que se forma el sistema completo. Las estrategias basadas en el flujo
de informacin "bottom-up" se antojan potencialmente necesarias y suficientes porque se

basan en el conocimiento de todas las variables que pueden afectar los elementos del sistema. Bottom-up hace nfasis en la programacin y pruebas tempranas, que pueden comenzar tan pronto se ha especificado el primer mdulo. Este enfoque tiene el riesgo de programar cosas sin saber cmo se van a conectar al resto del sistema, y esta conexin puede no ser tan fcil como se crey al comienzo. El rehus del cdigo es uno de los mayores beneficios del enfoque bottom-up. El desarrollo de software moderno usualmente combina tanto Top-Down como Bottom-up. Aunque un conocimiento completo del sistema se considera usualmente necesario para un buen diseo, haciendo que tericamente sea un enfoque top-Down, la mayora de proyectos de desarrollo de software tratan de usar cdigo existente en algn grado. El uso de mdulos existentes le da al diseo un sabor 'bottom-up'. Algunos enfoques usan un enfoque en el que un sistema parcialmente funcional es diseado y programado completamente, y este sistema se va expandiendo para llenar los requisitos del proyecto

Programacin modular La programacin modular es un paradigma de programacin que consiste en dividir un programa en mdulos subprogramas con el fin de hacerlo ms legible y manejable. Se presenta histricamente como una evolucin de la programacin estructurada para solucionar problemas de programacin ms grandes y complejos de lo que sta puede resolver. Al aplicar la programacin modular, un problema complejo debe ser dividido en varios

su problemas ms simples, y estos a su vez en otros subproblemas ms simples. Esto debe hacerse hasta obtener subproblemas lo suficientemente simples como para poder ser resueltos fcilmente con algn lenguaje de programacin. sta tcnica se llama refinamiento sucesivo, divide y vencers anlisis descendente (Top-Down). Un mdulo es cada una de las partes de un programa que resuelve uno de los

subproblemas en que se divide el problema complejo original. Cada uno de estos mdulos tiene una tarea bien definida y algunos necesitan de otros para poder operar. En caso de que un mdulo necesite de otro, puede comunicarse con ste mediante una interfaz de comunicacin que tambin debe estar bien definida. Si bien un modulo puede entenderse como una parte de un programa en cualquiera de sus formas y variados contextos, en la prctica es comn representarlos con procedimientos y funciones. Adicionalmente, tambin pueden considerarse mdulos las libreras que pueden incluirse en un programa o, en programacin orientada a objetos, la implementacin de un tipo de dato abstracto. La programacin estructurada es una forma de escribir programas de ordenador (programacin de computadora) de forma clara. Para ello utiliza nicamente tres estructuras: secuencia, seleccin e iteracin; siendo innecesario y no permitindose el uso de la instruccin o instrucciones de transferencia incondicional (GOTO, EXIT FUNCTION, EXIT SUB o mltiples RETURN). Hoy en da las aplicaciones informticas son mucho ms ambiciosas que las necesidades de programacin

S-ar putea să vă placă și