Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Relacin entre el personal y el esfuerzo. En un pequeo proyecto de desarrollo de software una sola puede analizar persona los requisitos, realizar el diseo, generar el cdigo y dirigir las pruebas conforme aumenta el tamao de un proyecto, ms gente resulta involucrada. La curva Putnam Norden-Raleigh (PNR) proporciona un indicio de la relacin entre el esfuerzo aplicado y el tiempo de entrega para un proyecto de software. La curva indica un valor mnimo que indica el tiempo de entrega de menor costo es decir, el tiempo de entrega que generar el menor gasto de esfuerzo. La curva se eleva en forma no lineal.
La ecuacin de software PUT92, se obtiene de la curva PNR y demuestra la relacin enormemente lineal entre el tiempo cronolgico para realizar un proyecto y el esfuerzo humano aplicado a este. El nmero de lneas de cdigo entregadas L se relaciona con el esfuerzo y el tiempo de desarrollo mediante la ecuacin:
Donde E es el esfuerzo del desarrollo en formato persona-mes, P es productividad y t es la duracin del proyecto en meses y podemos calcular el esfuerzo total del desarrollo con la siguiente ecuacin:
Distribucin del esfuerzo. Una distribucin recomendada de los esfuerzos es la tcnica llamada 40-20-40, la cual consta en dividir el 40% de los esfuerzos en el diseo de sistemas de entrada y otro 40 a probar lso sistemas de salida, con esto deducimos que solo 20% de los esfuerzos se van a dividir para la generacin de cdigo. Aunque no es recomendable iniciar con esta regla, ya que cada proyecto es diferente y hay proyectos donde no es necesario enfatizar tanto en la planeacin del mismo y ese porcentaje de esfuerzo puede ser dividido a otros procesos.
Definicin de un conjunto de tareas para el proyecto de software. Ningn conjunto de tareas es apropiado por si solo para todos los proyectos. El conjunto de tareas que sera apropiado para un sistema complejo y grande probablemente se apreciara para un producto de software pequeo y relativamente simple. Proyectos de desarrollo de concepto.- Se inician para explorar aplicaciones de nueva tecnologa. Proyectos de desarrollo de nuevas aplicaciones.- Se llevan a cabo como respuesta a una solicitud directa del cliente. Proyectos de mejora de la aplicacin.- Se utilizan cuando un software existenete sufre cambios considerables en cualquiera de sus elementos antes de llegar a la versin del usuario final. Proyectos de mantenimiento de aplicacin.- Corrigen, adaptan o extienden el software existente. Proyectos de reingeniera.- Se llevan a cabo para reconstruir un sistema ya existente.
Ejemplo de conjunto de tareas. Determinacin del mbito del concepto precisa el mbito global del proyecto. Planeacin preliminar del concepto establece la organizacin para acometer el trabajo que entraa el mbito del proyecto. Valoracin del riesgo de la tecnologa evala el riesgo asociado con la tecnologa que se implementara como parte del mbito del proyecto. Prueba del concepto demuestra la viabilidad del software. Implementacin del concepto pon en prctica la representacin del concepto de forma que el cliente pueda revisarla, se utiliza principalmente con fin de mercadotecnia. Reaccin del cliente solicita la retroalimentacin del cliente en cuanto al concepto de nueva tecnologa.
Refinamiento de las tareas principales. La calendarizacin macroscpica debe ser refinada para convertirse al final en la calendarizacin oficial del proyecto. Para refinar la calendarizacin se necesita analizar cada tarea principal y descomponerla en un conjunto de subtareas. Las tareas y subtareas anotadas en el proceso de refinamiento del lenguaje de diseo forman la base de una planeacin detallada de la actividad de determinar el mbito del concepto. Definicin de una red de tareas. Tambin denominada red de actividad, es una representacin grfica del flujo de tareas en un proyecto. En ocasiones se utiliza como el mecanismo mediante el cual la secuencia y dependencias de tareas son la entrada de una herramienta automatizada de calendarizacin del proyecto.
Calendarizacin. La calendarizacin de un proyecto de software no difiere enormemente de la de cualquier esfuerzo de ingeniera multitarea. En consecuencia, las tcnicas y herramientas generalizadas de calendarizacin de proyecto se pueden aplicar, poco modificadas en proyectos de software.