El modelo de Putnam es un modelo de estimación de esfuerzo de software empírico . [1] El artículo original de Lawrence H. Putnam publicado en 1978 se considera un trabajo pionero en el campo del modelado de procesos de software. [2] Como grupo, los modelos empíricos funcionan recopilando datos del proyecto de software (por ejemplo, esfuerzo y tamaño) y ajustando una curva a los datos. Las estimaciones del esfuerzo futuro se realizan proporcionando el tamaño y calculando el esfuerzo asociado utilizando la ecuación que se ajusta a los datos originales (generalmente con algún error ).
Creado por Lawrence Putnam, Sr., el modelo de Putnam describe el tiempo y el esfuerzo necesarios para terminar un proyecto de software de tamaño específico . SLIM (Software LIfecycle Management) es el nombre dado por Putnam al conjunto de herramientas patentado que su empresa QSM, Inc. ha desarrollado en base a su modelo. Es uno de los primeros modelos desarrollados de este tipo y se encuentra entre los más utilizados. Los modelos paramétricos de software estrechamente relacionados son el modelo de coste constructivo ( COCOMO ), la revisión paramétrica de información para el cálculo de costes y la evaluación - software (PRICE-S) y la evaluación y estimación de recursos de software - modelo de estimación de software ( SEER-SEM ).
La ecuación del software
Mientras administraba proyectos de I + D para el Ejército y luego en GE , Putnam notó que los perfiles de personal de software seguían la conocida distribución de Rayleigh . [3]
Putnam utilizó sus observaciones sobre los niveles de productividad para derivar la ecuación del software:
dónde:
- El tamaño es el tamaño del producto (cualquier tamaño estimado que utilice su organización es apropiado). Putnam usa ESLOC ( Líneas de código fuente efectivas ) en todos sus libros.
- B es un factor de escala y es una función del tamaño del proyecto. [4] [5]
- La productividad es la productividad del proceso , la capacidad de una organización de software en particular para producir software de un tamaño determinado con una tasa de defectos determinada.
- El esfuerzo es el esfuerzo total aplicado al proyecto en años-persona.
- El tiempo es el cronograma total del proyecto en años.
En el uso práctico, al hacer una estimación para una tarea de software, la ecuación del software se resuelve para el esfuerzo :
Se utiliza un tamaño de software estimado al finalizar el proyecto y la productividad del proceso organizacional. Al trazar el esfuerzo en función del tiempo se obtiene la curva tiempo-esfuerzo . Los puntos a lo largo de la curva representan el esfuerzo total estimado para completar el proyecto en algún momento . Una de las características distintivas del modelo de Putnam es que el esfuerzo total disminuye a medida que se extiende el tiempo para completar el proyecto. Esto normalmente se representa en otros modelos paramétricos con un parámetro de relajación de programación.
Este método de estimación es bastante sensible a la incertidumbre tanto en el tamaño como en la productividad del proceso . Putnam aboga por obtener la productividad del proceso mediante la calibración: [1]
Putnam hace una clara distinción entre "productividad convencional": tamaño / esfuerzo y productividad del proceso.
Una de las principales ventajas de este modelo es la sencillez con la que está calibrado. La mayoría de las organizaciones de software, independientemente del nivel de madurez, pueden recopilar fácilmente el tamaño , el esfuerzo y la duración ( tiempo ) de proyectos anteriores. La productividad del proceso, al ser de naturaleza exponencial , generalmente se convierte en un índice de productividad lineal que una organización puede usar para rastrear sus propios cambios en la productividad y aplicar en estimaciones de esfuerzo futuro. [6]
Ver también
Referencias
- ^ a b Putnam, Lawrence H .; Ware Myers (septiembre de 2003). Cinco métricas fundamentales: la inteligencia detrás de una gestión de software exitosa . Editorial de Dorset House. ISBN 0-932633-55-2.
- ^ Putnam, Lawrence H. (1978). "Una solución empírica general al problema de estimación y dimensionamiento del software macro". TRANSACCIONES IEEE SOBRE INGENIERÍA DE SOFTWARE, VOL. SE-4, NO. 4, págs. 345-361. Falta o vacío
|url=
( ayuda ) - ^ "Focus on Lawrence Putnam: A CAI State of the Practice Interview" (PDF) . Computer Aid, Inc. Septiembre de 2006.
- ^ Gobierno de los Estados Unidos (20 de agosto de 1997). "Tabla de factores de habilidades especiales de Putnam". Centro de análisis y datos para software. Falta o vacío
|url=
( ayuda ) - ^ Putnam, Lawrence H .; Ware Myers (octubre de 1991). Medidas para la excelencia: software confiable a tiempo, dentro del presupuesto . Prentice Hall. pag. 234 . ISBN 978-0-13-567694-3.
El factor de habilidades especiales, B, es una función del tamaño del sistema: .16 para 5-15 KSLOC, .18 para 20 KSLOC, .28 para 30 KSLOC, .34 para 40 KSLOC, .37 para 50 KSLOC y .39 para> 70 KSLOC
- ^ Gobierno de los Estados Unidos (20 de agosto de 1997). "Tabla de parámetros de productividad de Putnam". Centro de análisis y datos para software. Falta o vacío
|url=
( ayuda )
enlaces externos
- Putnam, Lawrence H .; Ware Myers (octubre de 1991). Medidas para la excelencia: software confiable A tiempo, dentro del presupuesto . Yourdon Press. ISBN 0-13-567694-0.
- Jensen, Dr. Randall W .; Putnam, Lawrence H., Sr .; Roetzheim, William (febrero de 2006). "Modelos de estimación de software: tres puntos de vista" (PDF) . Centro de soporte de tecnología de software.
- Jones, Capers (octubre de 2004). "Prácticas de gestión de proyectos de software: fracaso versus éxito" (PDF) . Centro de soporte de tecnología de software.
- Gobierno de Estados Unidos (octubre de 2005). "Manual de precios de la FAA" . Administración Federal de Aviación.
- Kemerer, Chris F. (mayo de 1987). "Una validación empírica de modelos de estimación de costos de software" (PDF) . Comunicaciones de la ACM.