Desarrollo de Software II Escuela de Ingeniería de Sistemas y Computación Desarrollo de Software...
-
Upload
luis-arturo-olivares-casado -
Category
Documents
-
view
212 -
download
0
Transcript of Desarrollo de Software II Escuela de Ingeniería de Sistemas y Computación Desarrollo de Software...
Desarrollo de Software II
Escuela de Ingeniería de Sistemas y Computación
Desarrollo de Software II
Agosto - Diciembre 2008
Ing. Oswaldo Solarte Pabó[email protected]
Ing. Liliana Machuca [email protected]
Generalidades de la Ingeniería del software
Ingeniería de Software:“Es la disciplina tecnológica y administrativadedicada a la producción sistemática deproductos de software que sondesarrollados y modificados a tiempo ydentro de un presupuesto definido” (Fairley)
Escuela de Ingeniería de Sistemas y Computación
Desarrollo de Software II
Agosto - Diciembre 2008
Generalidades de la Ingeniería del software
Escuela de Ingeniería de Sistemas y Computación
Desarrollo de Software II
Agosto - Diciembre 2008
Tecnológica:Hace uso de las tecnologías de gestión deinformación (TI) y de las diversas ciencias dela computación en la fabricación del producto.
Generalidades de la Ingeniería del software
Escuela de Ingeniería de Sistemas y Computación
Desarrollo de Software II
Agosto - Diciembre 2008
AdministrativaSe requiere administrar un conjunto derecursos (Personal, Tiempo,Infraestructura,etc) de tal manera que permita el correctoavance del Proyecto de Desarrollo deSoftware.
Generalidades de la Ingeniería del software
Escuela de Ingeniería de Sistemas y Computación
Desarrollo de Software II
Agosto - Diciembre 2008
Producción Sistemática
Conjunto de procesos que se aplican en laconstrucción del producto que le otorgan a esteun conjunto de características especificas(Calidad).La madurez de una organización es proporcional asu capacidad para poner en practica procesosde software que produzcan resultados previstos.
Generalidades de la Ingeniería del software
Escuela de Ingeniería de Sistemas y Computación
Desarrollo de Software II
Agosto - Diciembre 2008
Producto de SoftwareEs el conjunto de programas (fuentes yejecutables), procedimientos, reglas ydocumentación posibles asociada, así comolos datos pertinentes a la operación delsistema.
Generalidades de la Ingeniería del software
Escuela de Ingeniería de Sistemas y Computación
Desarrollo de Software II
Agosto - Diciembre 2008
Otras ÁreasEconomía: Fundamentos para la estimade recursos y control de costos.
Psicología y Técnicas de Comunicación:Fundamentos para el trabajo del equipo yinteracción con el cliente.
Generalidades de la Ingeniería del software
Escuela de Ingeniería de Sistemas y Computación
Desarrollo de Software II
Agosto - Diciembre 2008
Que se Busca?• Métodos Completos para todas las fases deldesarrollo de software.• Mejores herramientas para la automatización de losmétodos.• Bloques de construcción mas potentes para laimplementación del software.• Mejores técnicas para la garantía de la calidad delsoftware.• Filosofía predominante para la coordinación control ygestión.
Escuela de Ingeniería de Sistemas y Computación
Desarrollo de Software II
Agosto - Diciembre 2008
1. Definición del PROCESO de desarrollo de software que se usará
2. Administración del PROYECTO de desarrollo
3. Descripción del PRODUCTO de software que se desea
4. Diseño del PRODUCTO
5. Codificación del PRODUCTO
6. Prueba de las partes del PRODUCTO
7. Integración de las partes del PRODUCTO y pruebas del producto completo
8. Mantenimiento del PRODUCTO
Actividades Básicas de la Ingeniería de Software
Generalidades de la Ingeniería del software
Escuela de Ingeniería de Sistemas y Computación
Desarrollo de Software II
Agosto - Diciembre 2008
La crisis del software
Escuela de Ingeniería de Sistemas y Computación
Desarrollo de Software II
Agosto - Diciembre 2008
“Los sistemas de software son complejos,caros, lentos, no son fiables y no satisfacen susespecificaciones.”• ¿Por qué lleva tanto tiempo hacer un programa?• ¿Por qué es tan elevado el coste?• ¿Por qué no se pueden encontrar todos los errores antesde entregarlo al cliente?• ¿Por qué es tan difícil constatar el progreso durante eldesarrollo?• ¿Por qué es tan difícil calcular cuánto tiempo va a tomar?
Escuela de Ingeniería de Sistemas y Computación
Desarrollo de Software II
Agosto - Diciembre 2008
La crisis del software
En promedio un proyecto toma un 189% del presupuesto planeado, 221% del tiempo planeado y se entrega un 61% de lo esperado(1994).
Escuela de Ingeniería de Sistemas y Computación
Desarrollo de Software II
Agosto - Diciembre 2008
Casos de Fracaso
London Ambulance Dispatching System(1992)• Sistema para gestionar las llamadas de emergencias.• Inversión :1.8 millones €.• Pérdidas: se estima 20 vidas.• Problema: El sistema no distinguía llamadasdistintas.• Retenía llamadas durante horas. Usuarios sinformación.• Implantación del sistema de manera apresurada.
Escuela de Ingeniería de Sistemas y Computación
Desarrollo de Software II
Agosto - Diciembre 2008
Agencia Espacial Europea (1996)
• Sistema de navegación del Ariane 5. Evolución delAriane 4• Inversión : 7 billones de dólares.• Pérdidas: 2 satélites se desintegraron.• Problema: Overflow al operar con la velocidad (5veces mayor que en el Ariane 4). No se controlabanlas excepciones.
Casos de Fracaso
Escuela de Ingeniería de Sistemas y Computación
Desarrollo de Software II
Agosto - Diciembre 2008
Casos de Fracaso
FBI (2005)
• Sistema para aumentar la seguridad de las redes ymodernizar las aplicaciones de investigación• Inversión : 581 millones dólares (450 millones €)• Pérdidas: 170 millones de dólares y 5 años detrabajo• Problema: Prisas tras el 11S;Continuos cambios enlos requerimientos y en los responsables; Pocapreparación de los directores de proyecto
Escuela de Ingeniería de Sistemas y Computación
Desarrollo de Software II
Agosto - Diciembre 2008
Casos de Fracaso
Nike (2001)
• Sistema para automatizar la gestión, producción y venta.• Inversión : 400 millones dólares.• Pérdidas: 100 millones en ventas. Reducción de un tercio del valor de las acciones• Problema: El sistema intercambiaba órdenes de producción. Exceso de stock en algunos productos y falta en otros
Por qué?
Escuela de Ingeniería de Sistemas y Computación
Desarrollo de Software II
Agosto - Diciembre 2008
• Planificación pobre.• Objetivos poco claros.• Objetivos cambiantes durante el proyecto.• Previsiones poco realistas.• Falta de participación del usuario.• Falta de comunicación en el equipo.• Uso de técnicas inadecuadas.
Escuela de Ingeniería de Sistemas y Computación
Desarrollo de Software II
Agosto - Diciembre 2008
Por qué?
Como se construye usualmente el software
Cómo lo evitamos?
Escuela de Ingeniería de Sistemas y Computación
Desarrollo de Software II
Agosto - Diciembre 2008
Programadores DS1 y DS2
Arquitectos de software Administradores del proyecto
Arquitecto de software
Escuela de Ingeniería de Sistemas y Computación
Desarrollo de Software II
Agosto - Diciembre 2008
• Diseñan la macro estructuras del sistema y la manera como interactúan• Analiza los problemas y determina lasolución adecuada a los mismos, con los recursos disponibles.• Anticipa las situaciones que afectaran alsistema.• Entre otras.
Administrador del proyecto
Escuela de Ingeniería de Sistemas y Computación
Desarrollo de Software II
Agosto - Diciembre 2008
• Planifica y Gestiona los recursos del proyecto.
• Programa las actividades a seguir.
• Mide continuamente el desarrollo del proyecto.• Esta atento a cualquier riesgo que pueda afectar el proyecto.
• Intermediador entre todos los participantes.
Escuela de Ingeniería de Sistemas y Computación
Desarrollo de Software II
Agosto - Diciembre 2008
Administrador del proyecto
Proyecto de desarrollo de software
Escuela de Ingeniería de Sistemas y Computación
Desarrollo de Software II
Agosto - Diciembre 2008
Que es un Proyecto?“Conjunto de actividades, planificadas,ejecutadas y supervisadas que, con recursosfinitos, tienen como objetivo crear unproducto o servicio único” (Alberto Domingo)
Escuela de Ingeniería de Sistemas y Computación
Desarrollo de Software II
Agosto - Diciembre 2008
Interrogantes de un Proyecto• Que voy hacer?• Con que lo hago?, Como lo hago?• Como va la ejecución?
Proyecto de desarrollo de software
Escuela de Ingeniería de Sistemas y Computación
Desarrollo de Software II
Agosto - Diciembre 2008
Consiste de:• El cliente: Requisitos• El analista : ¿Qué hay que hacer?• El diseñador diseña: ¿Cómo se hace?• El programador: Ejecuta• El director: Planifica y Gestión
Proyecto de desarrollo de software