Ingenieria de software

1,128 views

Published on

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

No Downloads
Views
Total views
1,128
On SlideShare
0
From Embeds
0
Number of Embeds
13
Actions
Shares
0
Downloads
47
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Ingenieria de software

  1. 1. ADA ESTELA COLATO REYES<br />S-I-A<br />Selección de técnicas de <br />Ingeniería de Software<br />
  2. 2. ¿Qué es programa, software y aplicación?<br />Programa: Es un conjunto de instrucciones que una vez ejecutadas realizaran una o varias tareas en una computadora.<br />Software: Es el conjunto de programas, de computo, procedimientos, reglas, documentación y datos asociados que forman parte de los operadores de un sistema de computación.<br />Aplicación: Es una forma de software que ayuda al usuario a realizar alguna tarea.<br />
  3. 3. ¿Qué es ingeniería?<br />Es el estudio de las ramas de la tecnología que proveen técnicas y soluciones para sus respectivas áreas. Es tratar de aplicar todos los conocimientos de estudio y la practica con el fin de desarrollar un proyecto de manera eficaz.<br />
  4. 4. ¿Qué es ingeniería de software?<br />Es la disciplina o área de la informática que ofrece métodos y técnicas para desarrollar y mantener un software de calidad.<br />
  5. 5. ¿Por qué se dice que “El software no se crea ni se construye, sino se desarrolla”?<br />El software se desarrolla porque una vez que comienza puede tener cambios o medicaciones que se le harán aun después de implementarlo, el desarrollo es como decir que continua creciendo.<br />
  6. 6. ¿Qué es calidad?<br />Significa desarrollar, diseñar, producir y mantener un producto que sea el mas económico el mas útil y siempre satisfactorio para el consumidor.<br />
  7. 7. ¿Qué es calidad de software?<br />Es el grado con el que un sistema, componente o proceso cumple los requerimientos especificados y las necesidades o expectativas del cliente o usuario.<br />
  8. 8. ¿Por qué se dice que no existe un software ya terminado?<br />Porque ya que después de estar implementado este esta sujeto a modificaciones y mantenimiento para alcanzar lo que una empresa en crecimiento espera de un software.<br />
  9. 9. ¿En que consiste un proyecto de desarrollo de software?<br />Es aquel en que las necesidades del usuario son traducidas en requerimientos de software, estos requerimientos transformados en diseño, y el diseño implementado en código, el código es probado, documentado y certificado para su uso operativo “concretamente” define quien esta haciendo que, cuando hacerlo y como alcanzar un cierto objetivo.<br />
  10. 10. ¿Cuáles son las etapas del desarrollo del software?<br />
  11. 11. Análisis de requerimientos<br />Extraer los requisitos de un producto de software es la primera etapa para crearlo. Mientras que los clientes piensan que ellos saben lo que el software tiene que hacer, se requiere de habilidad y experiencia en la ingeniería de software para reconocer requisitos incompletos, ambiguos o contradictorios.<br />
  12. 12. Diseño y arquitectura:<br />Consiste en diseñar, en forma general un sistema, su interfaz y consiste en incorporar consideraciones de la implementación tecnológica, como el hardware la red, etc.<br />
  13. 13. Programación:<br />Reducir un diseño a código puede ser la parte mas obvia del trabajo de ingeniería de software, pero no es necesariamente la porción mas larga. La complejidad y la duración de esta etapa esta íntimamente ligada al o a los lenguajes de programación utilizados. <br />
  14. 14. Pruebas:<br />Consiste en comprobar que el software realice correctamente las tareas indicadas en la especificación. Una técnica de prueba es probar por separado cada modulo del software, y luego probarlo de forma integral, para así llegar al objetivo.<br />
  15. 15. Documentación:<br />Todo lo concerniente a la documentación del propio desarrollo del software y de la gestión del proyecto, pasando por modelaciones (UMLS), diagramas, pruebas. Manuales de usuario, manuales técnicos, etc.; todo con el propósito de eventuales correcciones , usabilidad, mantenimiento futuro y ampliaciones del sistema. <br />
  16. 16. Mantenimiento: <br />Mantener y mejorar el software para enfrentar errores descubiertos y nuevos requisitos. Esto puede llevar mas tiempo incluso que el desarrollo inicial del software. Alrededor del 2/3 de toda la ingeniería del software tiene que ver con dar mantenimiento.<br /> Una pequeña parte de este trabajo consiste en arreglar errores o bugs. La mayor parte consiste en extender el sistema para hacer nuevas cosas. <br />
  17. 17. ¿Cuál es la diferencia entre ingeniería del software y el simple desarrollo o producción del software?<br />La ingeniería del software se refiere a área de la informática que ofrece métodos y técnicas para desarrollar y mantener un software de calidad. Y el simple desarrollo o producción del software son las actividades que se realizan para poder crearlo realizando un estudio de las ideas para poder llevar a cabo la implementación del sistema, en el cual se ha detallado los requerimientos necesarios para ello. <br />
  18. 18. ¿Cuáles son los modelos del desarrollo de software?<br />Modelo cascada<br />Modelo en espiral<br />Desarrollo por etapas <br />Desarrollo iterativo y creciente<br />
  19. 19. Modelo cascada<br />El desarrollo en cascada, también llamado modelo en cascada, es el enfoque metodológico que ordena rigurosamente las etapas del ciclo de vida del software, de tal forma que el inicio de cada etapa debe esperar a la finalización de la inmediatamente anterior.<br />
  20. 20.
  21. 21. Modelo en espiral<br />Las actividades de este modelo se conforman en una espiral, en la que cada bucle o iteración representa un conjunto de actividades. Las actividades no están fijadas a priori, sino que las siguientes se eligen en función del análisis de riesgo, comenzando por el bucle interior.<br />
  22. 22.
  23. 23. Desarrollo por etapas<br />El modelo de desarrollo de software por etapas es similar al Modelo de prototipos ya que se muestra al cliente el software en diferentes estados sucesivos de desarrollo, se diferencia en que las especificaciones no son conocidas en detalle al inicio del proyecto y por tanto se van desarrollando simultáneamente con las diferentes versiones del código.<br />
  24. 24.
  25. 25. Desarrollo iterativo y creciente<br />Es un proceso de desarrollo de software, creado en respuesta a las debilidades del modelo tradicional de cascada. El desarrollo incremental e iterativo es también una parte esencial de un tipo de programación conocido como Extreme Programming y los demás frameworks de desarrollo rápido de software.<br />
  26. 26.
  27. 27. Video ARIANE FLIGHT 501<br />
  28. 28. ¿Qué fue lo que sucedió?<br />Se dio por el error en el diseño . El cohete cambio de dirección de vuelo y a los segundos después del lanzamiento se destruyo, se partió y exploto. Fue uno de los mas infames bugs. <br />
  29. 29. ¿Qué efectos tienen las fallas del software sobre el cohete?<br />El resultado fue incorrecto e inesperado. El resultado también fuera perdidas económicas. Por un mal diseño del software.<br />
  30. 30. ¿Qué afectan en nuestras vidas que el software no sea de calidad? <br />Nos afectan estos problemas de calidad en forma de retraso, perdidas de tiempo o dinero etc. Lamentablemente estos problemas pueden ser mas mucho mas graves si afectan al sistema critico es decir, aquellos cuto fallo puede provocar perdidas económicas, problemas ambientales o sociales. <br />
  31. 31. ¿Cómo podemos garantizar calidad en el desarrollo del software?<br />Hacer un buen diseño.<br />Cumplir con todos los requerimientos que el cliente desee.<br />Hacer un buen análisis.<br />Prueba del software.<br />
  32. 32. Video ¿Qué pasaría si los programadores hicieran los aviones?<br />
  33. 33. ¿Por qué se da ese fenómeno?<br />Porque el diseño no estaba desarrollado con calidad y no tenia un buen análisis, y no se establecieron las pruebas necesarias antes de utilizarlo y no le dieron un buen mantenimiento. <br />
  34. 34. ¿Cuál es el mensaje?<br />Que entes de implementar un sistema hay que hacerle las pruebas para saber si este funcionara correctamente, hacer un buen diseño con un buen análisis. No ir modificando los errores cuando el sistema este en marcha. Y es deber del programador seguir en contacto con el usuario y no como se muestra en el video que los programadores se lanzan con paracaídas<br />
  35. 35. ¿Se hará realmente lo correcto?<br />No porque el programador debe entregar su sistema con sus respectivas pruebas y completamente terminado, tomar muy enserio su trabajo y crear un software de calidad.<br />
  36. 36. ¿Qué estrategias proporciona la ingeniería de software para solventar esta situación?<br />Aplicar todas las fases para el desarrollo de software. Hacer un buen análisis de lo que el usuario necesita de sus sistemas para poder crearlo con calidad.<br />

×