unidad 2 desarrollo de logica algoritmica.docx

Upload: ilse-solis

Post on 06-Jul-2018

220 views

Category:

Documents


2 download

TRANSCRIPT

  • 8/17/2019 UNIDAD 2 DESARROLLO DE LOGICA ALGORITMICA.docx

    1/9

    UNIDAD 2 DESARROLLO DE LOGICA ALGORITMICA

    2.1. METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS.

    La metodología que se utiliza para resolver problemas de computacionales constade 5 etapas que garantizan un resultado correcto a cualquier problema.

    IDENTIFIACION DEL PROBLEMA.

    Esta es una fase muy importante en la metodología, pues de esta fase depende eldesarrollo correcto de la solución de nuestro problema. Un problema biendelimitado es una gran ayuda para que el proceso general avance bien, si notenemos bien definido el problema provocara desvíos conceptuales que serándifíciles de remediar. En esta etapa es fundamental el análisis de la informacióninicial entrada! con el fin de distinguir los datos pertinentes de los que no lo son,de esta manera se puede elegir la estructura más conveniente para las posiblessoluciones.

    PLANTAMIENTO DE LAS ALTERNATIVAS DE SOLUCIÓN.

    Una vez que "allas definido el problema y de "aber analizado los datos deentrada, el proceso continua con el análisis de las alternativas de solución. #or logeneral los problemas pueden resolverse por varias vías. Es conveniente tratar deplatear la mayor cantidad de alternativas de solución posibles, con estoaumentamos las probabilidades de encontrar la solución más optima.

    ELECCION DE UNA ALTERNATIVA.

    Una vez que tengamos varias posibles soluciones es necesario pasar a otra etapa,la elección de la me$or entre todas las posibilidades. Esta fase es igual deimportante porque aquí elegiremos la me$or posible solución y de esta dependeráel avance final "asta la solución. %e debe de elegir la alternativa que sea másadecuada para la solución del problema, tomando en cuanta qu& característicastiene el problema y que características deberá tener la solución, así como loselementos, los datos o información con la que cuentas.

    DESARROLLO DE LA SOLUCIÓN.

    'espu&s de decidir cuál es la me$or alternativa de todas se llega a la etapa de lasolución. En esta etapa, y a aporte de los datos de entrada relacionaos con lame$or alternativa de solución seleccionada, se aplican las operaciones necesariaspara solucionar el problema. %i la alternativa es la optima llevara a la solucióndesea da que fue prevista en la identificación del problema. El desarrollo de la

  • 8/17/2019 UNIDAD 2 DESARROLLO DE LOGICA ALGORITMICA.docx

    2/9

    solución deben de ser evaluadas para que sean las mas optimas, es decir estedesarrollo debe de llegar a la solución por el camino más corto y ser eficaz.

    EVALUACIÓN DE LA SOLUCIÓN.

    Luego de "aber desarrollado la solución queda aun una etapa, que es la deevaluar la solución. En esta fase es necesario pulir los procesos que nos lleva a lasolución para me$orarlos y sean mas óptimos en encontrar la solución, ya que elalgoritmo mas eficiente es aquel que llega a la solución desea con menosprocedimientos posibles.

    Diseño del l!o"i#$o

    En la fase de análisis, se determina qu& "ará el programa. En la etapa de dise(ose determina cómo "ará el programa la tarea solicitada. Los m&todos máseficaces para el proceso de dise(o se basan en el conocido divide y vencerás. Esdecir, la resolución de un problema comple$o se realiza dividiendo el problema ensubproblemas y &stos a su vez, en otros de nivel más ba$o. Este m&todo seconoce t&cnicamente como dise(o descendente top)do*n! o modular.+etodología para la resolución de problemas a trav&s de la computadora. Elproceso de revisión de la secuencia lógica del programa y de enlazar cada una delas partes, se conoce como refinamiento sucesivo o por pasos. El proceso queconvierte los resultados del análisis del problema en un dise(o modular conrefinamientos sucesivos que permitan una posterior traducción a un lengua$e deprogramación se denomina dise(o del algoritmo. El dise(o del algoritmo es

    independiente del lengua$e de programación en el que se vaya a codificar posteriormente.Las "erramientas más utilizadas para dise(ar algoritmos son

    -'iagramas de flu$o

    -#seudocódigo

    -'iagramas )%

    Di !" $ s de %l&'o

    Un diagrama de flu$o flo*c"art! es una representación gráfica de un algoritmo. En

    ella, se muestra la secuencia de pasos del algoritmo representados por una seriede símbolos que tienen un significado particular. Estos diagramas utilizan símboloscon significados bien definidos que representan los pasos del algoritmo, yrepresentan el flu$o de e$ecución mediante flec"as que conectan los puntos deinicio y de t&rmino. +etodología para la resolución de problemas a trav&s de lacomputadora. %u correcta construcción es sumamente importante porque , a partir del mismo se escribe un programa en alg/n Lengua$e de #rogramación. %i el

  • 8/17/2019 UNIDAD 2 DESARROLLO DE LOGICA ALGORITMICA.docx

    3/9

    'iagrama de 0lu$o está completo y correcto, el paso del mismo a un Lengua$e de#rogramación es relativamente simple y directo. Los símbolos utilizados "an sidonormalizados por el 1nstituto orteamericano de ormalización 2 %1!, y los másfrecuentemente empleados son los siguientes

  • 8/17/2019 UNIDAD 2 DESARROLLO DE LOGICA ALGORITMICA.docx

    4/9

    Pse&do()di!o

  • 8/17/2019 UNIDAD 2 DESARROLLO DE LOGICA ALGORITMICA.docx

    5/9

    El pseudocódigo falso lengua$e! es una descripción de alto nivel de un algoritmoque emplea una mezcla de lengua$e natural con algunas convenciones sintácticaspropias de lengua$es de programación, como asignaciones, ciclos y condicionales.Es utilizado para describir algoritmos en libros y publicaciones científicas, y comoproducto intermedio durante el desarrollo de un algoritmo. El pseudocódigo estápensado para facilitar a las personas el entendimiento de un algoritmo, y por lotanto puede omitir detalles irrelevantes que son necesarios en unaimplementación. E$emplo

    leer x

    si x>5 entonces

    imprimir “mayor de 5”

    si no entonces

    imprimir “no mayor de 5”

    fin si

    Di !" $ s N*S +N ssi , S(- eide"$ /

    El diagrama )% o tambi&n conocido como diagrama de 3"apin es una t&cnica deespecificación de algoritmos que combina la descripción te4tual, propia delpseudocódigo, con la representación gráfica del diagrama de flu$o. El diagrama )% cuenta con un con$unto limitado de símbolos para representar los pasos del

    algoritmo, por ello se apoya en e4presiones del lengua$e natural sin embargo,dado que el lengua$e natural es muy e4tenso y se presta para la ambig6edad, solose utiliza un con$unto de palabras, a las que se denomina palabras reservadas.Laspalabras reservadas más utilizadas son

    1nicio, 0in, Leer, Escribir, +ientras, 7epita,

    8asta, #ara, 1ncrementar, 8acer, 0unción99

  • 8/17/2019 UNIDAD 2 DESARROLLO DE LOGICA ALGORITMICA.docx

    6/9

    2.2.METODOLOGÍA DE DESARROLLO DE SOFT0ARE

    Las metodologías de desarrollo de soft*are son un con$unto de procedimientos,t&cnicas y ayudas a la documentación para el desarrollo de productos soft*are.

    Es como un libro de recetas de cocina, en el que se van indicando paso a paso

    todas las actividades a realizar para lograr el producto informático deseado,indicando además qu& personas deben participar en el desarrollo de lasactividades y qu& papel deben de tener. 2demás detallan la información que sedebe producir como resultado de una actividad y la información necesaria paracomenzarla.

    2ctualmente es imprescindible considerar los riesgos, aunque "abitualmente lasempresas, no "an sido concienciadas de los riesgos in"erentes al procesamiento

  • 8/17/2019 UNIDAD 2 DESARROLLO DE LOGICA ALGORITMICA.docx

    7/9

    de la información mediante ordenadores, a lo que "an contribuido, a veces, lospropios responsables de informática, que no "an sabido e4plicar con la suficienteclaridad las consecuencias de una política de seguridad insuficiente o inclusoine4istente. #or otro lado, debido a una cierta deformación profesional en laaplicación de los criterios de coste:beneficio, el directivo desconocedor de lainformática no acostumbra a autorizar inversiones que no lleven implicito unbeneficio demostrable, tangible y mensurable.

    Las t&cnicas indican cómo debe ser realizada una actividad t&cnica determinadaidentificada en la metodología. 3ombina el empleo de unos modelos orepresentaciones gráficas $unto con el empleo de unos procedimientos detallados.%e debe tener en consideración que una t&cnica determinada puede ser utilizadaen una o más actividades de la metodología de desarrollo de soft*are. 2demás se

    debe tener muc"o cuidado cuando se quiere cambiar una t&cnica por otra.

    T ( i( s de Diseño Mod&l "

    Las siguientes t&cnicas se derivan directamente de la #rogramación +odular.

    M #odo Des(e de #e +To *Do3 /

    ;ambi&n conocido como de arriba a aba$o consiste en establecer una serie deniveles de mayor a menor comple$idad que den solución al problema. Luego secrea una relación entre las etapas de la estructuración de forma que una etapa

    $erárquica y su inmediato inferior se relacionen mediante una interfaz claramentedefinida de entradas y salidas de información. El ;op)'o*n es muy popular por ser metodológico para la ense(anza de la programación, por favorecer la rápidacreación de una estructura de dise(o inicial fle4ible y fácil de comprender y por ser muy /til en la solución de problemas comple$os. Esencialmente consiste en crear una estructura $erárquica de tipo arbórea, en la que los niveles superiorespró4imos a la raíz enuncian el problema a groso modo, mientras que seg/n vamosdescendiendo por la estructura, vamos entrando en mayor detalle, "asta llegar alas "o$as del árbol, que representan las instrucciones simples en que sedescompone el problema.

    M #odo As(e de #e +Bo##o$*U /

    El dise(o ascendente se refiere a la identificación de aquellos procesos quenecesitan computarizarse conforme vayan apareciendo, su análisis como sistemay su codificación, o bien, la adquisición de paquetes de soft*are para satisfacer elproblema inmediato.

  • 8/17/2019 UNIDAD 2 DESARROLLO DE LOGICA ALGORITMICA.docx

    8/9

    3uando la programación se realiza internamente y se "ace un enfoqueascendente, es difícil llegar a integrar los subsistemas al grado tal de que eldesempe(o global sea fluido. Los problemas de integración entre los subsistemasson sumamente costosos y muc"os de ellos no se solucionan "asta que laprogramación alcanza la fec"a límite para la integración total del sistema. En estafec"a, ya se cuenta con muy poco tiempo, presupuesto o paciencia de losusuarios, como para corregir aquellas delicadas interfaces, que en un principio, seignoran.

    2unque cada subsistema parece ofrecer lo que se requiere, cuando se contemplaal sistema como una entidad global, &ste padece de ciertas limitaciones por "aber tomado un enfoque ascendente. Una de ellas es la duplicación de esfuerzos paraaccesar el soft*are y más a/n al introducir los datos.

  • 8/17/2019 UNIDAD 2 DESARROLLO DE LOGICA ALGORITMICA.docx

    9/9

    comprender o usar un programa o para facilitar futuras modificacionesmantenimiento!.

    La documentación se divide en tres partes

    - 'ocumentación 1nterna

    - 'ocumentación E4terna

    - +anual del Usuario

    'ocumentación 1nterna %on los comentarios o mensa$e que se a(aden al códigofuente para "acer más claro el entendimiento de un proceso. 'ocumentaciónE4terna %e define en un documento escrito los siguientes puntos

    - 'escripción del #roblema

    - ombre del 2utor

    - 2lgoritmo diagrama de flu$o o pseudocodigo!

    - 'iccionario de 'atos

    - 3ódigo 0uente programa!

    +anual del Usuario 'escribe paso a paso la manera cómo funciona el programa,con el fin de que el usuario obtenga el resultado deseado.

    M #e i$ie #o

    %e lleva acabo despu&s de terminado el programa, cuando se detecta que esnecesario "acer alg/n cambio, a$uste o complementación al programa para quesiga traba$ando de manera correcta. #ara poder realizar este traba$o se requiereque el programa este correctamente documentado.