A causa del elevado presupuesto que el mantenimiento del software implica para el desarrollo de sistemas informáticos, es interesante planificar el proyecto teniendo en cuenta los aspectos que le afectan directamente. Facilitaremos esta acción si cabe la posibilidad de modificar un módulo del software sin que afecte a los otros, si el estilo de codificación es claro, si se ha empleado el esfuerzo adecuado para revisar el diseño, etc.
Sin embargo, la necesidad de mantenimiento nunca desaparecerá, entre otros motivos porque hay factores que no pueden controlarse durante la realización del proyecto, como la permanencia del personal de desarrollo durante el mantenimiento o los cambios que se produzcan en el exterior, tanto de tecnología como de contenido textual que pueda tener el software (por ejemplo, el de la declaración de la renta).
A pesar de todos estos factores impredecibles, Boehm desarrolló una fórmula para estimar el gasto que el mantenimiento del software puede implicar en un proyecto informático. Lo calculó teniendo en cuenta una cantidad que él definió como la fracción de instrucciones fuente de un producto de software que experimenta cambios durante un año, ya sea por adición o por modificación. La llamó tráfico de cambio anual (TCA), y se calcula de la siguiente manera:
,
donde KLDC son miles de líneas de código e IC es el número de instrucciones de código fuente que se modifican o se añaden durante un año de mantenimiento.
|
 |
|
El esfuerzo de mantenimiento anual se calcula mediante esta cantidad y el tiempo de desarrollo del software:
EMA 1,0 · TCA · TDS,
donde EMA es el esfuerzo de mantenimiento anual (calculado en personas/mes) y TDS es el tiempo de desarrollo de software (en tablas).
|
|
 |
Esta fórmula se puede refinar teniendo en cuenta otros parámetros de estimación ya definidos por Boehm en el método COCOMO de estimación de gastos y tiempo para proyectos de desarrollo de software. Sólo hay que decidir qué parámetros afectan más al mantenimiento y multiplicar el resultado de la fórmula anterior por éstos (rasgos de las tablas de Boehm para el método COCOMO).