Overblog
Edit post Seguir este blog Administration + Create my blog
7 marzo 2009 6 07 /03 /marzo /2009 16:33

 
    Algoritmo

         Es una serie de operaciones detalladas a ejecutar paso a paso, que conducen a la resolución de problemas. Es un conjunto de reglas para resolver determinado problema describiendo de forma lógica su solución. Cada una de las acciones de que consta un algoritmo es denominada sentencia y éstas deben ser escritas en términos de cierto lenguaje comprensible para el computador, que es el lenguaje de programación. Para diseñar un algoritmo se debe comenzar por identificar las tareas más importantes para resolver el problema y disponerlas en el orden en que han de ser ejecutadas.

 Criterios que debe satisfacer un algoritmo (características):
1. Entrada. Son cero o más cantidades las cuales son externamente sustituidas.
2. Salida. Al menos una cantidad es producida.
3. Exactitud/precisión. Cada instrucción debe ser clara y sin ambigüedad.
4. Finito. Terminará después de un número finito de pasos.
5. Eficiente. Cada instrucción puede ser verificada por una persona con una prueba manual que satisfaga los requerimientos planteados por el problema.

Partes de un Algoritmo

    



Programación.

    Es un proceso para convertir especificaciones generales de un sistema en instrucciones utilizables por la máquina, que produzcan los resultados deseados. Se le conoce también como desarrollo de software.

Programa

Es una lista de instrucciones que la computadora debe seguir para procesar datos y convertirlos en información. Las instrucciones se componen de enunciados usados en lenguajes de programación como Basic, Pascal o C.

Caracteristicas de un Programa

- Debe ser confiable y funcional
- Advertir errores de entrada obvios y comunes
- Documentado adecuadamente
- Ser comprensible
- Codificado en el lenguaje apropiado

Pasos del desarrollo de un Programa

1. Especificación del programa o Análisis del Problema.
2. Diseño del programa
3. Codificación del programa
4. Prueba
5. Documentación
6. Mantenimiento

    1. Especificación del programa

    Se conoce también como definición del problema o análisis del programa. En este paso se determinan la información inicial para la elaboración del programa. Es donde se determina qué es lo que debe resolverse con el computador, de qué presupuestos se debe partir... en definitiva, el planteamiento del problema.

Se requieren cinco tareas:
    a. Determinación de objetivos del programa.

   Debe definirse claramente los problemas particulares que deberán ser resueltos o las tareas que hay que realizar, esto nos permitirá saber qué es lo que se pretende solucionar y nos proporcionará información útil para el planeamiento de la solución.

    b. Determinación de la salida deseada.

Los datos seleccionados deben ser arreglados en una forma ordenada para producir información. Esta salida podría ser una salida de impresión o de presentación en el monitor.

    c. Determinación de los datos de entrada.

Una vez identificada la salida que se desea, se pueden determinar los datos de entrada y la fuente de estos datos. Los datos deben ser recolectados y analizados.

   d. Determinación de los requerimientos de procesamiento.

Aquí se definen las tareas de procesamiento que deben desempeñarse para que los datos de entrada se conviertan en una salida.

  e. Documentación de las especificaciones del programa.

Es importante disponer de documentación permanente. Deben registrarse todos los datos necesarios para el procesamiento requerido. Esto conduce al siguiente paso del diseño del programa.

  2 . Diseño del programa

 Es diseñar cualquier sistema nuevo o las aplicaciones que se requieren para satisfacer las necesidades.   Esta actividad se debe dividir en:

-Operaciones de entrada/salida
-Cálculos
-Lógica/comparación
- Almacenamiento/ consulta

En este paso se genera una solución con técnicas de programación como diseño descendente de programas, pseudocódigos,  flujogramas y estructuras lógicas.

  3. Codificación del programa

  Es la generación real del programa con un lenguaje de programación. En esta etapa se hace uso de la lógica que desarrolló en el paso del diseño del programa para efectivamente generar un programa. Se debe seleccionar el lenguaje apropiado para resolver el problema.

  4. Prueba y depuración del programa

  Depurar es correr el programa en una computadora y corregir las partes que no funcionan. En esta fase se comprueba el funcionamiento de cada programa y esto se hace con datos reales o ficticios. Cuando los programas están depurados, se prueban. Cuando los programas se depuran, se pueden encontrar los siguientes errores:

  a) Errores de sintaxis o de compilación

  b) Errores de ejecución

  c) Errores de lógica

 d) Errores de especificación.

   a) Errores de sintaxis o de compilación

  Es una violación de las reglas del lenguaje de programación. Son más fáciles de corregir, ya que son detectados por el compilador (posible error de escritura), el cual dará información sobre el lugar donde está y la naturaleza de cada uno de ellos mediante un mensaje de error.

  b) Errores de Ejecución

  Se deben generalmente a operaciones no permitidas como dividir por cero, leer un dato no numérico en una variable numérica, exceder un rango de valores permitidos, etc. Se detectan porque se produce una parada anormal del programa durante su ejecución.

  c) Errores de Lógica

  Corresponden a la obtención de resultados que no son correctos y la única manera de detectarlos es realizando suficientes pruebas del programa. Son los más difíciles de corregir, no sólo por la dificultad de detectarlos, sino porque se deben a la propia concepción y diseño del programa.

 d) Errores de Especificación

            Es el peor tipo de error y el más difícil de corregir. Se deben a mal diseño del programa posiblemente por mala comunicación usuario programador y se detectan cuando ya se ha concluido el diseño e instalación del programa, lo cual puede implicar repetir gran parte del trabajo realizado.

 Prueba:

  Consiste en verificar la funcionalidad del programa a través de varios métodos para detectar errores posibles.

 Métodos de Prueba:

 Chequeo de escritorio

 Prueba manual de datos de muestra

 Intento de traducción

 Prueba de datos de muestra en la computadora

 Prueba por un grupo selecto de usuarios potenciales.

 a. Chequeo de Escritorio:

  El programador se sienta frente a un escritorio y corrige una impresión del programa. Revisa el listado línea por línea en busca de errores de sintaxis y lógica.

 b. Prueba manual de datos de muestra:

 Se corre el programa en forma manual aplicando datos tanto correctos como incorrectos para comprobar que funciona correctamente.

c. Intento de Traducción:

 El programa corre en una computadora usando un programa traductor para convertirlo a lenguaje de máquina. Para ello debe estar ya libre de errores de sintaxis, de lo contrario serán identificados por el programa de traducción.

 d. Prueba de datos de muestra en la computadora:

 Después del intento de traducción y corregidos los errores de sintaxis, se procede a buscar errores de lógica utilizando diferentes datos de muestra.

e. Prueba por un grupo selecto de usuarios potenciales:

 Esto se conoce como prueba beta. Se trata por lo general del paso final en la prueba de un programa. Usuarios potenciales ponen a prueba el programa y ofrecen retroalimentación.

5. Documentación del programa

            Consiste en describir por escrito a nivel técnico los procedimientos relacionados con el programa y su modo de uso. También se debe documentar el programa para que sea más entendible.

¿Para quiénes son la documentación?

-Usuarios(Digitadores)
-Operadores
-Programadores
- Analistas de sistemas

Documentos que se elaboran:

Manual de Usuario y Manual del Analista.

  A los usuarios se les elabora un manual de referencia para que aprendan a utilizar el programa. Esto se hace a través de capacitaciones y revisión de la documentación del manual de usuario. El manual del usuario no está escrito a nivel técnico sino al de los distintos usuarios previstos y explica en detalle cómo usar el programa: descripción de las tareas que realiza el programa, instrucciones necesarias para su instalación puesta en marcha y funcionamiento, recomendaciones de uso, menús de opciones, método de entrada y salida de datos, mensajes de error, recuperación de errores, etc.

  A los operadores por si se presentan mensajes de error, sepan cómo responder a ellos. Además que se encargan de darle soporte técnico al programa.

  A los programadores a través del manual del analista para que recuerden aspectos de la elaboración del programa o en caso que otras personas puedan actualizarlo o modificarlo (darle mantenimiento) y no son necesariamente las personas que lo diseñaron. Es por ello, que la documentación debe contener algoritmos y flujogramas de los diferentes módulos que lo constituyen y las relaciones que se establecen entre ellos; listados del programa, corridas, descripción de variables que se emplean en cada módulo, cuáles son comunes a diferentes módulos y cuáles locales; descripción de los ficheros de cada módulo y todo lo que sea de importancia para un programador.

  A los analistas de sistemas que son las personas que deberán proporcionar toda la información al programador. Estos se encargan de hacer una investigación previa de cómo realizar el programa y documentar con las herramientas necesarias para que el programador pueda desarrollar el sistema en algún lenguaje de programación adecuado.

6. Mantenimiento del programa

  Es el paso final del desarrollo del software. Alrededor del 75% del costo total del ciclo de vida de un programa se destina al mantenimiento. El propósito del mantenimiento es garantizar que los programas en uso estén libres de errores de operación y sean eficientes y efectivos.

Compartir este post
Repost0

Comentarios

J
Hola buenas tardes me parece muy bueno el contenido del blog ya que es muy detallado y explicito!...
Responder
R
buenas noche ... Esta bueno el articulo ..Ese va hacer el contenido para la proxima clase ..
Responder