El modelo intermedio considera quince factores agrupados en cuatro categorías, que son las siguientes:
- Atributos del producto
- Fiabilidad del software requerida
- Tamaño de la base de datos de la aplicación
- Complejidad del producto
- Atributos del hardware
- Restricciones de rendimiento en tiempo de ejecución
- Restricciones de memoria
- Volatilidad del entorno de la máquina virtual
- Tiempo de espera requerido
- Atributos del personal
- Capacidad de análisis
- Capacidad del ingeniero de software
- Experiencia en aplicaciones
- Experiencia con la máquina virtual
- Experiencia con el lenguaje de programación
- Atributos del proyecto
- Utilización de herramientas de software
- Aplicación de métodos de ingeniería del software
- Planificación temporal del desarrollo requerida
A cada factor se le asigna un valor dentro de un rango de seis. Según este valor le corresponde un multiplicador de esfuerzo, especificado en las tablas de Boehm, y con todos estos datos se encuentra un factor de ajuste de esfuerzo, que se añade a las fórmulas del modelo básico.

