Upload
gregorio-torres-ayala
View
215
Download
0
Embed Size (px)
Citation preview
INGENIERÍA DEL SOFTWARE
Docente: Lic. M. Alina Vargas GarcíaHorario:
Lunes 20:05 – 21:25 Miércoles 20:05 – 21:25
Gestión: 2011
COMUNICACIÓN
CON EL CLIENTE
Diseño Conceptual
Función
¿QUE?
¿CÓMO?
IMPLEMENTACIÓN
INSTALADORES
SOFTWARE FUNCIONANDO
INFORMES, RESULTADOS
NOCIONES CONCEPTUALES BÁSICAS Y TERMINOLOGÍA
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.
HARDWARE
SOFTWARE
Fallas
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
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
Ejemplo:
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).
1. Lo que el director desea. 2. Como lo define el director deproyecto.
3. Como se diseña el Sistema.
4. Como lo desarrolla elprogramador.
5. Como se ha realizado lainstalación.
6. Lo que el usuario quería.
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 …
INGENIERÍA DEL SOFTWARE
reutilización
ingeniería de requisitos
métodos de análisis, diseño, prueba...
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.
herramientas 4ª gen.lenguajes no procedimentales para consulta a BD’sgeneradores de pantallas,generadores de código,generadores de informes
POOPrototipado
Modelado del negocio