Вы находитесь на странице: 1из 3

Como realizar un algoritmo de software

QUE ES UN ALGORITMO Es una frmula para resolver un problema. Es un conjunto de acciones o secuencia de operaciones que ejecutadas en un determinado orden resuelven el problema. Caractersticas: y y y Tiene que ser preciso Tiene que estar bien definido Tiene que ser finito

ordenador. Un programa es un conjunto de instrucciones que ejecutadas ordenadamente resuelven un problema. Tipos de lenguajes: Lenguaje maquina: Todo se programa con 1 y 0, que es lo nico que entiende el ordenador. Ventaja: no necesita ser traducido Inconveniente: la dificultad, la confusin, para corregirse errores, es propia de cada mquina. De nivel bajo o ensamblador: se utilizan mnemotcnico (abreviaturas). Ventaja: no es tan difcil como el lenguaje maquina. Inconvenientes: cada mquina tiene su propio lenguaje, necesitamos un proceso de traduccin.

La programacin es adaptar el algoritmo al ordenador. El algoritmo es independiente segn donde lo implemente. Fases: Anlisis preliminar o evaluacin del problema: Estudiar el problema en general y ver que parte nos interesa Definicin o anlisis del problema: Ver que es lo que entra y que es lo que sale, las posibles condiciones o restricciones. Diseo del algoritmo: Disear la solucin. El programa: Codificacin del algoritmo en un lenguaje de programacin. Ejecucin del programa y las pruebas: Ver si el programa hace lo que queramos. EL LENGUAJE DE PROGRAMACION Existen diferentes tipos, de bajo nivel y de alto nivel. Una instruccin es cada paso de un algoritmo, pero que lo ejecuta el

El programa escrito en ensamblador se llama programa fuente y el programa que se obtiene al ensamblarlo se llama programa objeto. Lenguaje de alto nivel: Los ms cercanos al lenguaje humano. Ventaja: son independientes de cada mquina (los compiladores aceptan instrucciones estndar, pero tambin tiene instrucciones propias). Inconvenientes: el proceso de traduccin es muy largo y ocupa ms recursos. Aprovecha menos recursos internos. DISEO DEL ALGORITMO:

Una vez comprendido el problema, se trata de determinar qu pasos o acciones tenemos que realizar para resolverlo. Como criterios a seguir a la hora de dar la solucin algortmica hay que tener en cuenta las siguientes situaciones: - Si el problema es bastante complicado lo mejor es dividirlo en partes ms pequeas e intentar resolverlas por separado. Se conoce con el nombre de diseo descendente. - Al dividir el problema en mdulos o partes se comprende ms fcil. - En cuanto a los resultados, se probaran mucho mejor comprobando si cada modulo da el resultado correcto que si intentamos probar de un golpe todo el programa, as, si se produce un error sabremos en que modulo ha sido. Una segunda filosofa a la hora de disear algoritmos es el refinamiento por pasos, y es a partir de una idea general e ir concretando cada vez ms esa descripcin hasta que tengamos algo tan concreto para resolver. Pasamos de lo ms complejo a lo ms simple.

Las acciones o pasos a realizar tienen que tener un determinado orden. En cada momento solo se puede ejecutar una accin. Dentro de las sentencias del algoritmo pueden existir palabras reservadas. Si estamos utilizando pseudocdigo tenemos tambin que usar la identacin. Flujogramas: Es una notacin grafica para implementar algoritmos. Se basa en la utilizacin de unos smbolos grficos que denominamos cajas, en las que escribimos las acciones que tiene que realizar el algoritmo. Las cajas estn conectadas entre si por lneas y eso nos indica el orden en el que tenemos que ejecutar las acciones. En todo algoritmo siempre habr una caja de inicio y otra de fin, para el principio y final del algoritmo. Pseudocdigo: Es un lenguaje de especificacin de algoritmos, pero muy parecido a cualquier lenguaje de programacin, por lo que luego su traduccin al lenguaje es muy sencillo, pero con la ventaja de que no se rige por las normas de un lenguaje en particular. Nos centramos ms en la lgica del problema. El pseudocdigo tambin va a utilizar una serie de palabras clave o palabras especiales que van indicando lo que significa el algoritmo. Programa: Un programa es un conjunto de instrucciones que al ser ejecutadas resuelven un problema. Un programa tiene 3 partes: - Entrada de datos: normalmente se va a ejecutar a travs de instrucciones de lectura,

La representacin de los algoritmos: Una vez que tenemos la solucin hay que implementarla con alguna representacin. Las representaciones ms usadas son los flujogramas, los diagramas NS y el pseudocdigo. Tambin la solucin se puede escribir en algunos casos como el lenguaje natural pero no se hace porque es muy ambiguo, e incluso otras formas de expresin como formulas matemticas. Escritura del algoritmo:

y en lo que se le pide al usuario la informacin que el programa va a necesitar para ejecutarse y se hace a travs de lecturas. - Acciones de un algoritmo: parte en la que se resuelve el problema usando los datos de entrada. - Salida: mostrar en un dispositivo de salida los resultados de las acciones anteriormente realizadas. Son acciones de escritura. En la parte de las acciones a ejecutar se distinguirn dos partes: declaracin de variables e instrucciones del programa. ESCRITURA DE ALGORITMOS Y PROGRAMAS: En pseudocdigo el programa tiene dos partes, la cabecera y el cuerpo. La cabecera contiene el nombre del algoritmo y el cuerpo 2 partes. La primera es la zona de declaraciones de var y const, y la segunda es la zona de las instrucciones del programa. En la zona de instrucciones para que quede ms legible hay que usar la identacin y si es necesario hay que usar comentarios entre llaves. SOFTWARE Se define la calidad de software como la ausencia de errores y de funcionamiento la adecuacin a las necesidades del usuario, y el alcance de un desempeo apropiado (tiempo, volumen, espacio), adems del cumplimento de los estndares. Los objetivos que la calidad persigue son: la aceptacin y la mantenibilidad (posibilidad y facilidad de correccin, ajuste y modificacin durante largo tiempo). Para alcanzar estos

objetivos, es necesaria una actitud y compromiso de todo el personal que se encuentre en el desarrollo del proyecto, y en todas y cada una de las etapas (en general, planeacin, anlisis, diseo, programacin, pruebas, mantenimiento) correspondientes al ciclo de vida que hubiese seleccionado para el proyecto.