Lenguajes de programación parte i.3

1,383
-1

Published on

UpMor - Parte III - Metodologías de Programación - Metodología para desarrollo para el curso UpMor

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,383
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
75
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Lenguajes de programación parte i.3

  1. 1. Proceso de desarrollo de SoftWare Ciclo de Vida y Metodologías
  2. 2. Definiciones <ul><li>Programa: </li></ul><ul><ul><li>Conjunto de instrucciones escritas en un lenguaje de programación que indican a la computadora la secuencia de pasos para resolver un problema. </li></ul></ul>
  3. 3. Ciclo de Vida
  4. 4. Ciclo de vida
  5. 5. Una metodología puede seguir uno o varios modelos de ciclo de vida, es decir, el ciclo de vida indica qué es lo que hay que obtener a lo largo del desarrollo del proyecto pero no cómo hacerlo. La metodología indica cómo hay que obtener los distintos productos parciales y Finales. Metodología Vs Ciclo de Vida
  6. 6. Elementos a considerar en el ciclo de vida
  7. 7. Metodologías y Modelos
  8. 8. Tipo de Metodologías
  9. 9. Programación Estructurada
  10. 10. Programación Estructurada
  11. 11. Construcciones
  12. 12. Trabajo en Equipo
  13. 13. Problemas que se enfrenta la PE Ejemplo: Nueva sede del Senado, Antulio, Colonos, PeopleSoft, manuales, .net, administración de proyectos, paradigmas, certificación, actitud personal, bomberazos, parches, “esto urge”, el cliente es 1ero….Proceso Administrativo Problemas a los que se enfrenta laPE
  14. 14. Fase tradicional de desarrollo
  15. 15. Metodología James Martin
  16. 16. Metodología Yourdan
  17. 18. Metodología Jackson
  18. 19. Metodología Merise
  19. 20. Metodología SSADM
  20. 21. Metodología SSADM
  21. 22. Desarrollo Case
  22. 23. Metodologías
  23. 25. Metodología Propuesta (Resumen Programación Estructurada) Técnicas Top-Down Codificación Algoritmos Diagrama de Flujos Pseudocódigo Elementos de Calidad Documentar todas las étapas
  24. 26. Metodología Modelo Estudio de Viabilidad Estudio Preliminar Planteamiento del Problema Antecedentes Objetivos Alcances
  25. 27. Análisis Lógico o Análisis Funcional Diseño Físico y Realización Documento de Requerimientos Documento de Funcionalidad Diagrama de flujo Algoritmos Diagrama de flujo
  26. 28. Continuación… Diseño Físico y Realización <ul><li>Diseño Top-Dow </li></ul><ul><li>Manual de Usuario. </li></ul><ul><li>Manual Técnico. </li></ul><ul><li>Informe de Pruebas. </li></ul>
  27. 29. Puesta en Marcha o Implantación Explotación y Mtto
  28. 30. Diseño Top-Down Técnicas <ul><li>Técnicas más conocidas </li></ul><ul><ul><li>TopDown (diseño descendente). </li></ul></ul><ul><ul><li>BottonUp </li></ul></ul><ul><ul><li>WarnierOff </li></ul></ul><ul><ul><li>Con el objeto de facilitar el diseño de algoritmos y la organización de los divesos elementos de los que se comopne se ututilizan algunas tecnicas que muestran una metodoslo a se seguir para resolver prolemas. Estas tecnicas hacen que los programas sean mas fáciles de escribir, verificar, leer y mantener. </li></ul></ul>
  29. 31. TopDown <ul><li>Es una técnica para diseñar que consiste en tomar el problema en forma inicial como una cuestiuon global y descomponerlo sucesivamente en problemas más pequeños y por lo tanto entender la solución de una forma más sencilla. </li></ul><ul><li>La descomposición del problema original (y de las etapas subsecuentes), puede detenerse cuandos los probnlemas resultantes alcanzan un nivel de detalle que el programado o analista puede implmentar fácilmente. </li></ul><ul><li>El problema se descompone en etapas o estructuras jerárquicas de modo que se puede considerar cada estructura como dos putnso de vista, lo que hace y como se hace. </li></ul>
  30. 32. Diseño Top-Down
  31. 33. Diseño Top-Down
  32. 34. Diseño Top-Down
  33. 35. Diseño Top-Down
  34. 36. Ciclo de vida
  35. 37. Elementos de Calidad en el Desarrollo Software
  36. 38. Codificación <ul><li>Es la obtención de un programa fuente definitivo que será comprensible para la máquina. Una vez codificado el programa deberá seguir la etapa de compilación (o bien con interprete). El diseño se transcribe a código. </li></ul>Diseño Codifcación Compilación Link .exe Concepto de Codificación
  37. 39. Codificación
  38. 40. Codificación
  39. 41. Técnica de algoritmos
  40. 42. Un algoritmo es un conjunto de reglas que determinan la secuencia de las operaciones a seguir para resolver un problema específico y que cumple con las siguientes cinco características: 1) Finitud: Un algoritmo debe terminar después de ejecutar un número finito de pasos. 2) Definición: Cada paso en un algoritmo debe estar definido con precisión, esto es, la acción a seguir no debe ser ambigua, sino rigurosamente especificada. UN algoritmo descrito en un lenguaje como inglés o español, en el cual una misma palabra puede significar varias cosas, puede no cumplir con este punto. Es por eso que se han definido los lenguajes de programación o lenguajes de computación para especificar algoritmos, ya que en ellos el significado de cada palabra es uno y sólo uno. 3) Entrada: Se considera como entrada el conjunto de datos o información requerida para resolver un problema dado. No cualquier grupo de datos se puede considerar como entrada en el procedimiento señalado. 4) Salida: La salida es un conjunto de resultados que se obtienen al aplicar el algoritmo al conjunto de datos de entrada. 5) Efectividad: Un algoritmo debe llevar a la solución del problema planteado, en otras palabras, se puede decir que todas las operaciones que efectúa el algoritmo, deben ser lo suficientemente simples para que en principio, se puedan ejecutar con papel y lápiz y al final obtener el resultado deseado. Lenguaje de Algoritmo; Algoritmo ¿Papá que usaban en la escuela?
  41. 43. Algoritmos En la práctica, un algoritmo es un método para resolver problemas mediante los pasos o etapas siguientes: 1. Diseño del algoritmo que describe la secuencia ordenada de pasos —sin ambigüedades— conduncentes a la solución de un problema dado ( Análisis del problema y desarrollo del algoritmo). 2. Expresar el algoritmo como un programa en un lenguaje de programación adecuado. (Fase de codificación). 3. Ejecución y validación del programa por la computadora. Para llegar a la realización de un programa es necesario el diseño previo de un algoritmo indicando cómo hace el algoritmo la tarea solicitada, y eso se traduce en la construcción de un algoritmo. El resultado final del diseño es una solución que debe ser fácil de traducir a estructuras de datos y estructuras de control de un lenguaje de programación específico. Las dos herramientas más comúnmente utilizadas para diseñar algoritmos son: diagramas de flujo y pseudocódigos. • Diagrama de flujo ( flowchart). Representación gráfica de un algoritmo. • Pseudocódigo. Lenguaje de especificación de algoritmos, mediante palabras similares al inglés o español
  42. 44. Algoritmos cotidianos <ul><li>Aquellos algoritmos que nos ayudan a resolver problemas diarios y seguimos una metodología para realizarlos. </li></ul><ul><ul><li>Cambiar una llanta en el coche </li></ul></ul><ul><ul><ul><li>Inicio </li></ul></ul></ul><ul><ul><ul><li>Traer Gato </li></ul></ul></ul><ul><ul><ul><li>Levantar el coche con el gato </li></ul></ul></ul><ul><ul><ul><li>Aflojar tornillos de las llantas </li></ul></ul></ul><ul><ul><ul><li>Sacar los tornillos de las llantas </li></ul></ul></ul><ul><ul><ul><li>Quitar la llanta </li></ul></ul></ul><ul><ul><ul><li>Poner la llanta de respuesto </li></ul></ul></ul><ul><ul><ul><li>Poner los tornillos </li></ul></ul></ul><ul><ul><ul><li>Aoretar los tornillos Bajar gato </li></ul></ul></ul><ul><ul><ul><li>Fin </li></ul></ul></ul><ul><li>Ejercicio : Un cliente realiza un pedido a una fabrica. La fabrica examina en su banco de datos la ficha del cliente, si el cliente es solvente entonces la empresa acepta el pedido, en caso contrario rechaza el pedido. </li></ul><ul><li>Ejercicio2 : Determinar el mayor de 3 números enteros. </li></ul><ul><li>Ejercicio 3: De un directorio telefónico determinar que empleados inician con la letra A. </li></ul>
  43. 45. <ul><li>Pasos del Algoritmo </li></ul><ul><ul><li>Ejemplo 1 </li></ul></ul><ul><ul><li>Inicio </li></ul></ul><ul><ul><ul><li>Examinar ficha del cliente </li></ul></ul></ul><ul><ul><li>Si el cliente es solvente se acepta pedido caso contrario se rechaza. </li></ul></ul><ul><ul><li>Ejemplo 2 </li></ul></ul><ul><ul><li>Inicio </li></ul></ul><ul><ul><ul><li>Comparar el 1 y el 2do número para determinar cuál es mayor. </li></ul></ul></ul><ul><ul><ul><li>Comparar el mayor anterior con el 3ero y deducir cuál es el mayor. </li></ul></ul></ul><ul><ul><li>Ejemplo3 </li></ul></ul><ul><ul><ul><li>Examinar primer registro y letra inicial de nombre. </li></ul></ul></ul><ul><ul><ul><li>Si el nombre del registro n inicio con “A”; presentar nombre. </li></ul></ul></ul><ul><ul><ul><li>Salto de registro y repetir proceso hasta el último registro. </li></ul></ul></ul>
  44. 46. Anexo <ul><li>Metodología básica para el desarrollo de una aplicación: </li></ul><ul><ul><li>Definición del problema. </li></ul></ul><ul><ul><li>Requerimientos. </li></ul></ul><ul><ul><li>Análisis de los datos. </li></ul></ul><ul><ul><li>Diseño de la solución. </li></ul></ul><ul><ul><li>Codificación. </li></ul></ul><ul><ul><li>Prueba y depuración. </li></ul></ul><ul><ul><li>Documentación. </li></ul></ul><ul><ul><li>Mantenimiento. </li></ul></ul>COMUNICACIÓN
  45. 47. Metodologías para el desarrollo <ul><li>Definición del problema: </li></ul><ul><ul><li>Es el planteamiento en base a la necesidad de lo que se requiere y se desea, desde un punto de vista operativo, claro y definido. </li></ul></ul><ul><li>Requerimientos: </li></ul><ul><ul><li>Se especifican todas las necesidades del problema, desde los alcances, limitaciones, crecimiento y operación. </li></ul></ul><ul><li>Análisis de los datos </li></ul><ul><ul><li>Una vez que se cuenta con un documento de requerimientos se especifican las entradas/salidas deseadas a detalle. Los aspectos a analizar son: </li></ul></ul><ul><ul><ul><li>Resultados esperados, </li></ul></ul></ul><ul><ul><ul><li>Datos de entradas disponibles. </li></ul></ul></ul><ul><ul><ul><li>Herramientas necesarias para el desarrollo (lenguajes de alto nvel, hardware, software, administración, etc). </li></ul></ul></ul><ul><ul><ul><li>Esta etapa debe analizar los tipos de datos de captura, resultados, interfaz, etc. </li></ul></ul></ul><ul><ul><li>Diseño de la solución: </li></ul></ul><ul><ul><ul><li>Esta etapa incluye la descripción del algoritmo del programa, los diagramas de flujo y pseudocódigo. En esta etapa se ve la solución del problema en forma conceptual. </li></ul></ul></ul>
  46. 48. Pruebas, depuración y documentación <ul><li>Pruebas y depuración. </li></ul><ul><ul><li>Una vez que se obtiene el programa ejecutable, se instala y se realizan las pruebas en base a los requerimientos y análisis del programa. </li></ul></ul><ul><ul><li>Se deben introducir datos validos, no validos, incongruentes, saturar el sistema y ver su comportamiento. </li></ul></ul><ul><ul><li>El proceso de depuración consiste en encontrar inconsistencia, localizar errores y corregirlos en caso de que existan. Si no existen errores, puede entenderse la depuración como una etapa de refinamiento en la que se ajustan detalles para optimizar el desempeño del programa. </li></ul></ul><ul><li>Documentación </li></ul><ul><ul><li>Se documenta todo el proceso de desarrollo, instrucciones de uso del programa y su mantenimiento. </li></ul></ul><ul><ul><li>La documentación debe estar dirigida al usuario final, al administrador y a los analistas del programa. </li></ul></ul><ul><li>Mantenimiento </li></ul><ul><ul><li>Se refiere a las actualizaciones que deben aplicarse al programa cuando las circunstancias asi lo requieran. Le programa puede ser modificable a nuevas condiciones de operación. </li></ul></ul>

×