utiliza la computadora ha sido posible debido a un
hardware de bajo costo, por lo cual la demanda de software ha crecido de forma exponencial.
INTRODUCCIN Esto implica que son necesarias tcnicas y tecnologa eficientes de Ingeniera de Software para resolver los mltiples problemas que se derivan de las aplicaciones en donde se desarrollan sistemas de software de gran tamao. INTRODUCCIN Cada proyecto de software presenta distintos problemas en su desarrollo, los cuales involucran personas, equipo, usuarios del software y ambiente de la aplicacin. Por estas razones, cada proyecto debe resolver el problema de la produccin del software.
CONCEPTOS BSICOS Aunque existen muchas razones por las cuales el software se entrega con rechazo, entre ellas: fechas lmite irrealizables, cambios en requisitos, riesgos, dificultades humanas y tcnicas, falta de comunicacin, fallas en la gestin del proyecto. POR QU LAS COSAS VAN MAL? Las tcnicas de estimacin son pobremente desarrolladas. Se confunde esfuerzo con progreso, suponiendo que hombres y meses son intercambiables. El progreso de la calendarizacin es pobremente monitoreado. Cuando un resbaln en la calendarizacin es reconocido, la respuesta tradicional es aadir mano de obra. CALENDARIZACIN Es una actividad que distribuye estimaciones de esfuerzo a travs de la duracin planificada del proyecto, al asignar el esfuerzo a tareas especficas de ingeniera del software. Es la culminacin de una actividad de planificacin que es un componente principal de la gestin del proyecto de software
PRINCIPIOS BSICOS Compartimentacin: El proyecto debe dividirse en compartimentos en varias actividades, acciones y tareas manejables. Interdependencia: Se debe determinar la interdependencia de cada actividad, accin o tarea compartimentada. Asignacin de tiempo: A cada tarea se le debe asignar cierto nmero de unidades de trabajo (Ej: personas-da de esfuerzo)
Validacin del esfuerzo: El gestor del proyecto debe asegurarse de que, en un tiempo dado, no se han asignado ms que el nmero de personas calendarizadas.
Definicin de responsabilidades: Asignar un miembro del equipo.
Definicin de resultados: Toda tarea debe tener un resultado definido. (Ej: Diseo de un mdulo)
Definicin de hitos(significa tener un logro importante): Cualquier tarea o grupo de tareas debe estar asociado con un hito de proyecto. Un hito se logra cuando se ha revisado la calidad de uno o mas productos de trabajo y se ha aprobado.
CALENDARIZACIN DE PROYECTOS Recomendaciones Parta el proyecto en tareas y estime el tiempo y los recursos requeridos para completar cada tarea. Organice las tareas concurrentemente, para optimizar la fuerza de trabajo Minimizar las dependencias entre las tareas para evitar los retrasos. Se recomienda asignar entre 30% y 50% adicional al tiempo estimado por actividad.
PROBLEMAS EN LA CALENDARIZACIN No se puede calcular la dificultad de un problema con exactitud y por ende tampoco el costo necesario para resolverlo. La productividad no es proporcional al nmero de personas. Agregar persona a un proyecto avanzado puede provocar demoras por la sobrecarga de comunicacin. Lo inesperado siempre pasara, siempre tener planes contingencia
EJEMPLO DE CALENDARIZACIN DE PROYECTO: RED DE TAREAS O ACTIVIDADES Red de Tareas: representacin grfica del flujo de tareas de un proyecto. muestra las principales tareas de la ingeniera de software, sus dependencias y si se pueden ejecutar en paralelo Dos posibles enfoques: Calendarizacin macroscpica. Calendarizacin detallada.
RED DE ACTIVIDADES: DURACIN Y DEPENDENCIAS RED DE TAREAS (MACROSCPICA) 1.1 Determinacin mbito concepto 1.2 Planeacin concepto 1.3a Evaluacin Riesgo Tc. 1.3b Evaluacin Riesgo Tc. 1.3c Evaluacin Riesgo Tc. 1.4 Prueba de Concepto Integracin a, b, c 1.5a Implementacin Concepto 1.5b Implementacin Concepto 1.5c Implementacin Concepto 1.6 Reaccin Cliente CALENDARIZACIN Pueden utilizar tcnicas/herramientas calendarizacin de proyectos. PERT (Tcnica de evaluacin y revisin de programa) CPM (Mtodo de la Ruta Crtica)
Identificar todas las actividades que involucra el proyecto, lo que significa, determinar relaciones de precedencia, tiempos tcnicos para cada una de las actividades.
Construir una red con base en nodos y actividades (o arcos, segn el mtodo ms usado), que implican el proyecto.
CALENDARIZACIN Analizar los clculos especficos, identificando las rutas crticas y las holguras de los proyectos.
En trminos prcticos, la ruta crtica se interpreta como la dimensin mxima que puede durar el proyecto y las diferencias con las otras rutas que no sean la crtica, se denominan tiempos de holgura.
CALENDARIZACIN Informacin etapas tempranas: Estimacin de esfuerzo Descomposicin de la funcin del producto Seleccin del modelo de proceso y conjunto de tareas apropiadas. Descomposicin de Tareas.
CRONOGRAMAS Diagrama de Gantt: Muestra la programacin vs tiempo calendario. Uno por proyecto uno por cada funcin. Diamantes (rombos) marcan hitos.
Seguimiento de la Calendarizacin realizado:
Reuniones valorar estado. Evaluacin de resultados proceso de ingeniera software. Hitos. Comparar fechas: tentativa-real inicio tarea usando tabla de tareas. Diamantes (rombos) marcan hitos.
CONCLUSIONES:
Todos los proyectos que tengan una calendarizacin adecuada no va ha tener ningn inconveniente. Teniendo reuniones permanentes dentro del equipo que estn trabajando en proyecto y exponiendo todos los puntos en su desarrollo el producto final va ha tener xito.