Documentos de Académico
Documentos de Profesional
Documentos de Cultura
daniel.tapias@uam.es
PROYECTOS
PROGRAMA DE LA ASIGNATURA
Captulo 1: Introduccin. Captulo 2: Qu es un proyecto?
Proyectos
NDICE
- Tecnologa de procesado de la
informacin SW.
- Tecnologa comunicaciones SW: - SW de gestin de red. - SW de gestin de servicios. - SW de control de red. - SW de planificacin de red. - Etc.
TECNOLOGA
-Resolucin de problemas de
- Mejora de la
productividad
- Nuevas aplicaciones: - Teletrabajo. - Televigilancia. - E-commerce. - E-Learning. - E- Administracin. - Realidad virtual. - Etc.
Proyectos
Cerca de un tercio de los proyectos de desarrollo software falla. Sin embargo, a pesar de la importancia del Software en la sociedad actual y futura, hay mltiples estudios que indican que:
Proyectos
Se desarrolla. No se fabrica en el sentido tradicional de la palabra. Los proyectos de desarrollo software son distintos del resto de los proyectos de ingeniera tradicional por la propia naturaleza del software:
Proyectos
Programas: que cuando se ejecutan realizan una o varias funciones con el rendimiento esperado.
SW
Estructuras de datos: que permiten que los programas manipulen adecuadamente la informacin.
Proyectos
Aprendizaje
Proyectos
Motivacin: El director de proyecto no crea un ambiente que invite a la motivacin o, incluso, toma medidas que minan la moral del equipo. Mala seleccin de personal: El criterio de seleccin no est relacionado con los resultados que se esperan de la persona. Por ejemplo: criterios econmicos, de inmediatez de la incorporacin, etc. Relacionados con los miembros del equipo Miembros del equipo problemticos e incontrolados: Todo el mundo sabe que esa persona slo da problemas pero el jefe no interviene. Oficinas saturadas, ruidosas e incmodas. Desarrolladores desenfocados: Encuentran fascinante una nueva tecnologa, prestacin, lenguaje, etc. y se ponen a trabajar en temas innecesarios pero interesantes para ellos.
Proyectos
Proyectos
10
Optimismo tecnolgico: Es frecuente que se pongan demasiadas esperanzas en las bondades proclamadas de las nuevas tecnologas (OOD, C++, Java, etc.) No se analiza lo buenas que pueden ser en el entorno de aplicacin.
Sobreestimacin de las nuevas herramientas y/o metodologas: Los beneficios potenciales de las nuevas herramientas se ven afectados por el tiempo de aprendizaje, de implantacin y de resolucin de los problemas asociados a las mismas.
Cambio de herramientas durante el proyecto: Si un cambio de versin de la herramienta ya supone un riesgo por el tiempo de aprendizaje, la resolucin de los errores cometidos con la nueva versin, etc. un cambio de herramienta es un riesgo importante para el proyecto.
Control de versiones: Si no se realiza de forma automtica, hay muchas probabilidades de que dos desarrolladores modifiquen la misma parte del programa (sobreescribiendo el cdigo del otro desarrollador) o que trabajen sobre versiones distintas del cdigo.
Proyectos
11
El experimento que vamos a realizar consiste en intentar meter un conjunto de pelotas en una caja en el menor tiempo posible. La nica regla que existe es que nadie puede poner los pies a menos de dos metros de la caja.
2 metros
Se pueden meter todas las pelotas en la caja en menos de 1 minuto?
Caja
Y en menos de 10 segundos?
Proyectos
12
Modelo en Espiral.
Modelo Concurrente. El ciclo de vida del software permite describir las fases principales del desarrollo software y ayuda a administrar el progreso del desarrollo. Esto es: ayuda a ordenar las diversas actividades tcnicas del proyecto y nos dota de un marco para estimar los recursos, definir los puntos de control, conocer el grado de avance, etc.
Proyectos
13
Diseo
Integracin y Pruebas
Las flechas verdes muestran el flujo normal de avance del ciclo de vida. Las flechas azules discontinuas muestran la realimentacin entre fases.
Operacin y Mantenimiento
Documentacin
Proyectos
14
o Si se comete un error importante, afecta a la ltima fase y siempre se puede ir a una versin anterior.
o Se puede depurar cada fase (versin) antes de pasar a la siguiente. o Al desarrollar slo parte de las funcionalidades y requerimientos en cada fase, es ms fcil comprobar si los requerimientos de las siguientes fases son adecuados y correctos. o Se dispone de una primera versin ms rpidamente y se controla mejor el avance del proyecto.
Requerimientos
Fase 1: incremento 1
Fase n Incremento n
Proyectos
15
Requerimientos
Diseo
Diseo
Operacin y Mantenimiento
Documentacin
Proyectos
16
Requerimientos fase 1
Requerimientos fase 2
Requerimientos fase n
Desarrollo fase 1
Desarrollo fase 2
Desarrollo fase n
Proyectos
17
Proyectos
18
Prototipado
Requerimientos
Diseo
Integracin y Pruebas
Prototipado de requerimientos basado en el modelo de cascada
Operacin y Mantenimiento
Documentacin
Proyectos
19
Proyectos
20
En modificacin
Pruebas Sin actividad En desarrollo En revisin Realizado Esperando cambios
Proyectos
21
Proyectos
22
Proyectos
23
MODELO CONCURRENTE
VENTAJAS Modela mucho mejor la naturaleza del proceso de desarrollo software. Proporciona una visin exacta de la situacin del proyecto. INCONVENIENTES Su implementacin y gestin son complejas.
Proyectos
24