La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Tema 1: Introducción a la Ingeniería de Software

Presentaciones similares


Presentación del tema: "Tema 1: Introducción a la Ingeniería de Software"— Transcripción de la presentación:

1 Tema 1: Introducción a la Ingeniería de Software
Ingeniería de Sistemas 2012

2 Índice Introducción La complejidad inherente del software
Algunos principios de la ingeniería del software Sistemas de Información

3 Introducción Qué es ingeniería?

4 Introducción ¿Qué es ingeniería?
Es el conjunto de conocimientos y técnicas científicas aplicadas a la invención, perfeccionamiento y utilización de la técnica industrial para la resolución u optimización de problemas.

5 Qué es ser Ingeniero? Saber realizar de diseños y soluciones tecnológicas a necesidades sociales, industriales o económicas. Saber identificar y comprender los obstáculos más importantes para poder realizar un buen diseño (limitaciones físicas o técnicas, de coste, de flexibilidad, estéticas y comerciales). Saber utilizar el conocimiento de la ciencia y la experiencia apropiada para encontrar las mejores soluciones a los problemas concretos

6 Introducción Qué es software?

7 Introducción Qué es software?
Conjunto de programas que proporcionan una función y un rendimiento esperados. Conjunto de estructuras de datos que permiten a los programas manipular adecuadamente la información. Conjunto de documentos que describen el funcionamiento del SI (Sistema de Información). Tipos: ◦Genéricos: Productos de uso genérico (procesadores, bases de datos, etc.) ◦A medida: Productos específicos para un cliente particular

8 Introducción Qué es software?
Características: No tiene forma física Se desarrolla, no se fabrica. Los costes del SW son de ingeniería. No de fabricación El SW no se rompe, se deteriora. La complejidad del mantenimiento del SW es mucho más grande que la del HW. Si el HW se rompe se cambia por otro y listo Hay piezas de recambio. Si el SW se deteriora, con cada cambio que se realiza se deteriore aún más No hay piezas de recambio.

9 Introducción ¿Qué es Ingeniería del Software?
Definición: “La Ingeniería del Software es la disciplina de ingeniería encargada de todos los aspectos relacionados con la producción de software desde sus etapas más tempranas de la especificación del sistema, hasta el mantenimiento del sistema tras su puesta en marcha.” Ingeniería del Software – Ian Sommerville

10 Introducción ¿Qué es Ingeniería del Software?
Disciplina de ingeniería Los ingenieros de software usan las métodos, herramientas, procedimientos y paradigmas para solucionar los problemas que aparecen. Incluso teniendo en cuenta restricciones económicas y de organización Producción de software Planificación de proyectos Administración de proyectos software Procesos técnicos de desarrollo de software Dirección de proyectos

11 Introducción ¿Qué es Ingeniería del Software?
Proceso Software: procedimiento formal para producir algún resultado.

12 Introducción ¿Qué es Ingeniería del Software?
Herramienta: instrumento para realizar algo de mejor manera.

13 Introducción ¿Qué es Ingeniería del Software?
Paradigma: Representa una filosofía para la construcción de software

14 Introducción ¿Quién hace Ingeniería del Software?

15 Introducción ¿ Por qué surge la Ing. del Software?
Para superar la crisis del software y terminar con los mitos del software hasta ahora existentes. Para acabar con las malas prácticas de desarrollo y mantenimiento de software llevadas a cabo por las empresas. Crear software de calidad.

16 Introducción Crisis del Software
Dificultad en escribir programas libres de defectos, fácilmente comprensibles, y que sean verificables (Dijkstra–1968) Causas: Los proyectos no terminaban en plazo Los proyectos no se ajustaban al presupuesto inicial Software que no cumplía las especificaciones Código inmantenible que dificultaba la gestión y evolución del proyecto Consecuencias: Baja Calidad del Software Tiempo y Presupuesto Excedido Confiabilidad Cuestionable Altos requerimientos del personal para el desarrollo y el mantenimiento

17 Introducción Crisis del Software
Diferencia entre error defecto y fallo.

18 Introducción Mitos del SW –Sobre la gestión

19 Introducción Mitos del SW –Sobre la gestión

20 Introducción Mitos del SW –Sobre la gestión

21 Introducción Mitos del SW –Sobre el cliente

22 Introducción Mitos del SW –Sobre el cliente

23 Introducción Mitos del SW –Sobre desarrolladores

24 Introducción Mitos del SW –Sobre desarrolladores

25 Introducción Malas prácticas de desarrollo y mantenimiento
Planificación y estimaciones imprecisas: No se recopilan datos de proyectos pasados. Se invierte más dinero en mantenimiento que en formación de los ingenieros en las nuevas tecnologías de desarrollo. No se documenta lo suficiente. Se pasa directamente a la codificación.

26 Introducción Malas prácticas de desarrollo y mantenimiento
Procesos software improvisados No se siguen rigurosamente las especificaciones No se hace planificación de riesgos. Se resuelven crisis inmediatas Se apagan fuegos Se sacrifica funcionalidad y calidad del producto para cumplir plazos. No se planifica debidamente. No se realizan pruebas, verificaciones o revisiones del SW

27 Introducción Malas prácticas de desarrollo y mantenimiento
Síntomas: Baja calidad del software desarrollado Alto grado de desconfianza e insatisfacción en el cliente Empresas inmaduras En fase artesanal. Se exceden en los plazos y presupuestos previstos 90% de los proyectos no consiguen los objetivos propuestos 40% fracasan completamente 29% nunca se entregan

28 Introducción ¿Qué propone la IS? ¡ser Ingenieros!
Artesano Ingeniero. Para ello se debe: Aplicar métodos, técnicas y herramientas de desarrollo Adoptar estándares de desarrollo Utilizar la experiencia acumulada Documentación

29 Introducción ¿Qué propone la IS? ¡usar Estándares!
¿Qué conseguimos adoptando estándares de desarrollo? Mejorar el proceso: Reducción de costes Reducción del tiempo de desarrollo Reducción de riesgos Mejora de la calidad del producto Protección del cliente Protección de la organización Aumenta su competitividad

30 Índice Introducción La complejidad inherente del software
Algunos principios de la ingeniería del software Sistemas de Información

31 Complejidad del SW ¿Por qué es complejo el Software? Tres motivos:
Brooks (1987): “La complejidad del Software es una propiedad esencial y no accidental” Complejidad accidental: se debe a la manera en que intentamos solucionar el problema Complejidad esencial: es inherente al problema en sí mismo. Tres motivos: La complejidad del dominio del problema La dificultad de controlar el proceso de desarrollo Los problemas para caracterizar sistemas discretos

32 Complejidad del SW

33 Complejidad del SW Complejidad del dominio del problema
Los problemas del mundo real son complejos (miles de requisitos compitiendo y quizás contradictorios) Se añaden requerimientos no funcionales: eficiencia, coste, fiabilidad, robustez... Diferente perspectiva del mismo problema entre los usuarios y los desarrolladores Modificación de los requisitos / Inserción de nuevos requisitos ¡Los requisitos cambian durante el desarrollo!

34 Complejidad del SW Dificultad de controlar el proceso de desarrollo
Surgen incidencias Algunas previstas y otras no Miles de líneas de código Intentar la reutilización Surgen diferentes versiones del producto Disminuir la complejidad mediante el “divide y vencerás” División en módulos Aún así, la creación de muchos módulos puede ser inmanejable

35 Complejidad del SW Dificultad de controlar el proceso de desarrollo


Descargar ppt "Tema 1: Introducción a la Ingeniería de Software"

Presentaciones similares


Anuncios Google