180 likes | 348 Views
INGENIERÍA DEL SOFTWARE. Docente: Lic. M. Alina Vargas García Horario: Lunes 20:05 – 21:25 Miércoles 20:05 – 21:25 Gestión: 2011. NOCIONES CONCEPTUALES BÁSICAS Y TERMINOLOGÍA. Diseño Conceptual. ¿CÓMO?. ¿QUE?. SOFTWARE FUNCIONANDO. Función. INFORMES, RESULTADOS.
E N D
INGENIERÍA DEL SOFTWARE Docente:Lic. M. Alina Vargas García Horario: Lunes 20:05 – 21:25 Miércoles 20:05 – 21:25 Gestión:2011
NOCIONES CONCEPTUALES BÁSICAS Y TERMINOLOGÍA Diseño Conceptual ¿CÓMO? ¿QUE? SOFTWARE FUNCIONANDO Función INFORMES, RESULTADOS INSTALADORES COMUNICACIÓN CON EL CLIENTE IMPLEMENTACIÓN
SOFTWARE - DEFINICIÓN • Software • Definición • Características • Tipos • Mitos del Software • Crisis del software • Surgimiento de la Ingeniería del Software • Definiciones de Ingeniería del Software Podemos definir el software como: Instrucciones de computadora + estructuras de datos + documentación.
SOFTWARE - CARACTERÍSTICAS • Software • Definición • Características • Tipos • Mitos del Software • Crisis del software • Surgimiento de la Ingeniería del Software • Definiciones de Ingeniería del Software • Se desarrolla o construye; no se fabrica en el sentido clásico. • No se “desgasta”, pero se deteriora. • La mayoría aún se construye a la medida del cliente. Fallas HARDWARE SOFTWARE Tiempo
TIPOS DE SOFTWARE • Software • Definición • Características • Tipos • Mitos del Software • Crisis del software • Surgimiento de la Ingeniería del Software • Definiciones de Ingeniería del Software • Software de sistemas • Software de aplicación • Software de científico y de ingeniería. • Software empotrado • Software de línea de productos • Aplicaciones basadas en Web • Software de inteligencia artificial
SOFTWARE - MITOS • Software • Definición • Características • Evolución • Tipos • Mitos del Software • Gestión • Cliente • Desarrolladores • Crisis del software • Surgimiento de la Ingeniería del Software • Definiciones de Ingeniería del Software • Surgen durante los primeros años del desarrollo del software. • Propagaron información errónea y confusión. • Insidiosos. • Existen varios mitos clasificados en tres áreas: • Gestión • Cliente • Desarrolladores.
SOFTWARE – MITOS DE GESTIÓN • Software • Definición • Características • Evolución • Tipos • Mitos del Software • Gestión • Cliente • Desarrolladores • Surgimiento de la Ingeniería del Software • Definiciones de Ingeniería del Software • Calidad Objetivo de la gestión: Cumplir los presupuestos, hacer que no se retrase el proyecto (tiempo) y mejorar la calidad. Mitos: • Se tiene ya un libro que está lleno de estándares y procedimientos para construir software. Esto es suficiente. • Los desarrolladores disponen de las herramientas de desarrollo de software más avanzadas; después de todo, cuentan con las computadoras más modernas. • Si se falla en la planificación, se puede adicionar más programadores y adelantar el tiempo perdido (horda mongoliana)
SOFTWARE – MITOS DEL CLIENTE • Software • Definición • Características • Evolución • Tipos • Mitos del Software • Gestión • Cliente • Desarrolladores • Crisis del software • Surgimiento de la Ingeniería del Software • Definiciones de Ingeniería del Software El cliente es la persona que solicita un software bajo contrato. Mitos: • Una declaración general de los objetivos es suficiente para comenzar a escribir los programas, se puede trabajar con los detalles más adelante. • Los requisitos del proyecto cambian continuamente, pero los cambios pueden acomodarse fácilmente, ya que el software es flexible.
SOFTWARE – MITOS DE LOS DESARROLLADORES • Software • Definición • Características • Evolución • Tipos • Mitos del Software • Gestión • Cliente • Desarrolladores • Crisis del software • Surgimiento de la Ingeniería del Software • Definiciones de Ingeniería del Software • Una vez que se escribe un programa y se hace funcionar el mismo, el trabajo de programación ha terminado. • Hasta que no se cuente con un programa ejecutable, realmente no se puede comprobar su calidad. • Lo único que se entrega al terminar el proyecto es el programa funcionando.
SOFTWARE - CRISIS • Software • Definición • Características • Evolución • Tipos • Mitos del Software • Gestión • Cliente • Desarrolladores • Crisis del software • Surgimiento de la Ingeniería del Software • Definiciones de Ingeniería del Software • A principios de los 50: Software rústico y primitivo (aplicaciones científicas, procesamiento de datos de censos). • En los años 60: Grandes adelantos en el hardware. El hardware más poderoso dió lugar a la construcción de software más poderoso y complejo.Herramientas y técnicas de desarrollo existentes inaplicables para software más complejo.
SOFTWARE - CRISIS Ejemplo: • Software • Definición • Características • Evolución • Tipos • Mitos del Software • Gestión • Cliente • Desarrolladores • Crisis del software • Surgimiento de la Ingeniería del Software • Definiciones de Ingeniería del Software Choza Casa de concreto y hierro
SOFTWARE - CRISIS • Software • Definición • Características • Evolución • Tipos • Mitos del Software • Gestión • Cliente • Desarrolladores • Crisis del software • Surgimiento de la Ingeniería del Software • Definiciones de Ingeniería del Software Se entiende por “Crisis del Software” a un conjunto de problemas que aparecen con el desarrollo del mismo debido a su evolución más lenta que la del hardware. Problemas: Funcionamiento, manera de desarrollarlo, mantenerlo, saciar la creciente demanda, aumento desmesurado de los costos del software con respecto al hardware.
SOFTWARE - CRISIS • Software • Definición • Características • Evolución • Tipos • Mitos del Software • Gestión • Cliente • Desarrolladores • Crisis del software • Surgimiento de la Ingeniería del Software • Definiciones de Ingeniería del Software Consecuencias de la crisis del software: • No pudo ser completado • Fue entregado demasiado tarde • Fue sobre-presupuestado • No era confiable (no hacía lo que se esperaba que hiciera).
SOFTWARE – INGENIERÍA DEL SOFTWARE • Software • Definición • Características • Evolución • Tipos • Mitos del Software • Gestión • Cliente • Desarrolladores • Crisis del software • Surgimiento de la Ingeniería del Software • Definiciones de Ingeniería del Software 1968: Conferencia patrocinada por la OTAN (Organización del Tratado del Atlántico Norte): • Introducción de los términos “Ingeniería de software” y “Crisis de software”. • Expresar que el software era caro, poco fiable y escaso. • Ingeniería del software es el resultado de la crisis del software.
SOFTWARE - INGENIERÍA • Software • Definición • Características • Evolución • Tipos • Mitos del Software • Gestión • Cliente • Desarrolladores • Crisis del software • Surgimiento de la Ingeniería del Software • Ingeniería • Definiciones de Ingeniería del Software “Proceso mediante el cual se pone en práctica el conocimiento científico”. Ejemplo: La ingeniería civil se basa en la física. La física en sí misma no es una ingeniería pero el uso de la física en la construcción de edificios, puentes, etc. es ingeniería civil. Por tanto las ciencias de la computación son a la ingeniería del software como la física es a la ingeniería civil.
SOFTWARE - INGENIERÍA DE SOFTWARE • Software • Definición • Características • Evolución • Tipos • Mitos del Software • Gestión • Cliente • Desarrolladores • Crisis del software • Surgimiento de la Ingeniería del Software • Ingeniería • Definiciones de Ingeniería del Software “Proceso de utilizar nuestro conocimiento de ciencias de la computación en la producción efectiva de sistemas de software”. “Aplicación de un enfoque sistemático, disciplinado y cuantificable al desarrollo, operación y mantenimiento del software. (IEEE) “Aplicación de ingeniería al software”.
SOFTWARE E INGENIERÍA DE SOFTWARE • Software • Definición • Características • Evolución • Tipos • Mitos del Software • Gestión • Cliente • Desarrolladores • Crisis del software • Surgimiento de la Ingeniería del Software • Ingeniería • Definiciones de Ingeniería del Software “Establecimiento y uso de principios sólidos de ingeniería para obtener económicamente un software confiable y que funcione de modo eficiente en máquinas reales. ¿Cuáles son los principios sólidos de la ingeniería que pueden aplicarse en el desarrollo del software de computadora? ¿De qué manera se construye económicamente un software confiable? ¿Qué se requiere para crear programas de computadora que funcionen de manera eficiente no sólo en una, sino en varias máquinas reales diferentes?
ALGUNAS SOLUCIONES … Modelado del negocio métodos de análisis, diseño, prueba... ingeniería de requisitos reutilización POO Prototipado INGENIERÍA DEL SOFTWARE • herramientas 4ª gen. • lenguajes no procedimentales para consulta a BD’s • generadores de pantallas, • generadores de código, • generadores de informes métodos formales herramientas CASE: editores dirigidos por la sintaxis, entornos integrados de desarrollo, herramientas para la gestión de proyectos, herramientas de prototipado, etc.