jueves, 17 de diciembre de 2009

Diagrama de flujo
Un Diagrama de Flujo representa la esquematización gráfica de un algoritmo , el cual muestra gráficamente los pasos o procesos a seguir para alcanzar la solución de un problema . Su correcta construcción es sumamente importante porque , a partir del mismo se escribe un programa en algún Lenguaje de Programación. Si el Diagrama de Flujo está completo y correcto,el paso del mismo a un Lenguaje de Programación es relativamente simple y directo. Es importante resaltar que el Diagrama de Flujo muestra el sistema como una red de procesos funcionales conectados entre sí por " Tuberías " y "Depósitos" de datos que permite describir el movimiento de los datos a través del Sistema. Este describirá : Lugares de Origen y Destino de los datos , Transformaciones a las que son sometidos los datos, Lugares en los que se almacenan los datos dentro del sistema , Los canales por donde circulan los datos. Además de esto podemos decir que este es una representación reticular de un Sistema ,el cual lo contempla en términos de sus componentes indicando el enlace entre los mismos.En el presente Trabajo se representará a través de un Diagrama de Flujo el Procedimiento que debe efectuarse para calcular el pago de los trabajadores de una Empresa .


DESCRIPCION DE LOS SIMBOLOS PARA LA DIAGRAMACION


Los Diagramas de flujo se dibujan generalmente usando algunos símbolos estándares; sin embargo, algunos símbolos especiales pueden también ser desarrollados cuando séan requeridos. Algunos símbolos estándares, que se requieren con frecuencia para diagramar programas de computadora se muestran a continuación:

Inicio o fin del programa
Pasos, procesos o líneas de instruccion de programa de computo
Operaciones de entrada y salida
Toma de desiciónes y Ramificación
Conector para unir el flujo a otra parte del diagrama
Cinta magnética
Disco magnético
Conector de pagina
Líneas de flujo
Anotación
Display, para mostrar datos
Envía datos a la impresora

VENTAJAS DE LOS DIAGRAMAS DE FLUJO

Favorecen la comprensión del proceso a través de mostrarlo como un dibujo. El cerebro humano reconoce fácilmente los dibujos. Un buen diagrama de flujo reemplaza varias páginas de texto.
Permiten identificar los problemas y las oportunidades de mejora del proceso. Se identifican los pasos redundantes, los flujos de los re-procesos , los conflictos de autoridad, las responsabilidades, los cuellos de botella, y los puntos de decisión.
Muestran las interfaces cliente-proveedor y las transacciones que en ellas se realizan, facilitando a los empleados el análisis de las mismas.
Son una excelente herramienta para capacitar a los nuevos empleados y también a los que desarrollan la tarea, cuando se realizan mejoras en el proceso.
EJEMPLOS




CONCEPTOS BÁSICOS DE PROGRAMACIÓN

PROGRAMA

Un programa de computadora es un conjunto de instrucciones que producirán la ejecución de una determinada tarea.
En esencia, un programa es un medio para llegar a un fin.
El fin será normalmente definido como la información necesaria para solucionar un problema.
En conclusión programa es el proceso para solucionar un problema.

CARACTERISTICAS DE UN PROGRAMA

Un buen programa debe ser rápido: Puede tener o no un código optimizado, pero el usuario final debe sentir que para lo que usa el programa el tiempo que tarda en hacer las cosas es normal, un buen ejemplo es el reproductor multimedia Songbird, que puede ser excelente pero por lo que tarda en iniciar para los que solo quieren escuchar una canción lo convierten en una contra que le cava la tumba. Otro buen ejemplo son los visualizadores de imágenes, que deben ser instantáneos al abrir (como Irfanview). Por el otro lado programas profesionales como Autocad, 3Dstudio y demás pueden tardarse otro tiempo en abrir, para ellos tenemos otras pretensiones.
Un buen programa debe ser estable: Una fija es la confiabilidad que debe generar un programa, una buena aplicación no te debe dejar a mitad del camino con todo el trabajo hecho en un procesador de textos, con una cita a punto de concretarse mediante el programa de chat ni con una presentación frustrada delante de decenas de colegas. Y si falla (porque nade es perfecto en esta vida) un buen software debe tener tantas opciones de recuperación como sean posibles (recuperar últimas sesiones, mensajes offline, abrir el último archivo en el lugar donde quedamos, entre otras).
Un buen programa debe ser usable e intuitivo: De nada sirve que programes algo con miles opciones si no las colocas de una manera de que el usuario pueda encontrarlas y utilizarlas. Eso no quiere decir que las miles de opciones estén a la vista como las viejas versiones de Word que mareaban al pobre usuario de oficina. Lo ideal es presentar de una manera accesible los menúes frecuentes y luego juntar todos los demás en un menú avanzado para que, además, los usuarios que se inician con el software no sufran frustraciones tempranas y se vayan adecuando al mismo de una manera paulatina. El botón office fué uno de los primeros ejemplos de ello, que ahora sigue con todos los programas que usan Ribbon, el menú configuración avanzada de NOD es otro. Picasa es un ejemplo genial de usabilidad, tiene de todo, para todo, y se encuentra muy fácil.
Un buen programa debe actualizarse silenciosamente: No hay nada más placentero que ver que Mozilla nos avisa que actualizó a la última versión y que se instalará en el próximo reinicio. Este mismo programa a lo sumo requiere la acción del usuario para actualizar complementos de vez en cuando y es casi el extremo de programas molestísimos como Adobe Reader o Real Player que le pregutan al usuario hasta la hora.
Un buen programa debe ser inteligente: Quizás este punto parezca un poco pretencioso, pero hace unos días estaba hablando con un amigo de algunas características que tiene JDownloader, entre ellas el hecho de que si usas un password para descomprimir un archivo descargado, luego, al bajar otros archivos y en lugar de pedir passwords primero prueba descomprimirlo con los passwords anteriormente utilizados. Esto que parece una tontería (y debe ser sencillo de implementar) es una genial muestra de un programa que va aprendiendo a medida que uno lo va utilizando. Cuanta razón tienen los libros de usabilidad cuando afirman que los usuarios no quieren pensar, quieren todo servido, ya digerido

DEFINIR: DATOS, INFORMACIÓN,PROCESAMIENTOS DE DATOS

Datos son los hechos que describen sucesos y entidades."Datos" es una palabra en plural que se refiere a más de un hecho. A un hecho simple se le denomina "data-ítem" o elemento de dato.Los datos son comunicados por varios tipos de símbolos tales como las letras del alfabeto, números, movimientos de labios,puntos y rayas, señales con la mano, dibujos, etc. Estos símbolos se pueden ordenar y reordenar de forma utilizable y se les denomina información.Los datos son símbolos que describen condiciones, hechos, situaciones o valores. Los datos se caracterizan por no contener ninguna información. Un dato puede significar un número, una letra, un signo ortográfico o cualquier símbolo que represente una cantidad, una medida, una palabra o una descripción.La importancia de los datos está en su capacidad de asociarse dentro de un contexto para convertirse en información. Por si mismos los datos no tienen capacidad de comunicar un significado y por tanto no pueden afectar el comportamiento de quien los recibe. Para ser útiles, los datos deben convertirse en información para ofrecer un significado, conocimiento, ideas o conclusiones

INFORMACIÓN

La información es un elemento fundamental en el proceso de la comunicación, ya que tiene un significado para quien la recibe, que la va a comprender si comparte el mismo código que quien la envía. Esto no sólo ocurre en un proceso social sino también en el mundo de la informática.

PROCESAMIENTOS DE DATOS

Hasta el momento hemos supuesto que los datos que maneja una aplicación no son tan voluminosos y por lo tanto caben en memoria. Cuando recurrimos a archivos se debe a la necesidad de conservar datos después de que termina un programa, por ejemplo para apagar el computador. Sin embargo, existen problemas en donde el volumen de datos es tan grande que es imposible mantenerlos en memoria. Entonces, los datos se almacenan en un conjunto de archivos, los que forman una base de datos. Una base de datos es por lo tanto un conjunto de archivos que almacenan, por ejemplo, datos con respecto al negocio de una empresa. Cada archivo se forma en base a un conjunto de líneas y cada línea esta formada por campos de información. Todas las líneas de un mismo archivo tienen la misma estructura, es decir los mismos campos de información. Diferentes archivos poseen estructuras distintas, i.e. campos de información.

PASOS PARA EL DESARROLLO DE UN PROGRAMA

1. Especificación del programa

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ónb) Errores de ejecuciónc) Errores de lógicad) 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 escritorioPrueba manual de datos de muestraIntento de traducciónPrueba de datos de muestra en la computadoraPrueba 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.








No hay comentarios:

Publicar un comentario