Estrategias y Técnicas para la Estimación de Costos y Esfuerzo en Proyectos de Software
Enviado por Programa Chuletas y clasificado en Diseño e Ingeniería
Escrito el en
con un tamaño de 4,48 KB
Estimación de Proyectos de Software
La estimación de costo y esfuerzo del software nunca será una ciencia exacta. Demasiadas variables (humanas, técnicas, ambientales y políticas) pueden afectar el costo final del software y el esfuerzo aplicado para su desarrollo. Para lograr estimaciones confiables, existen diversas opciones:
- Basar las estimaciones en proyectos similares que ya estén completos.
- Dejar la estimación para una etapa posterior.
- Utilizar un modelo empírico.
- Adquirir herramientas automáticas de estimación.
Estimación por Descomposición
- Declaración del ámbito de la información.
- Descomposición de subfunciones.
- Estimación de LDC (Líneas de Código) por subfunción.
- Cálculo de LDC/personas-mes.
- Derivación de costo y esfuerzo.
- Combinación de las estimaciones.
- Estimación total del proyecto.
Métodos Utilizados para la Estimación de Proyectos
A) Basados en la experiencia
Consiste en comparar las especificaciones de un proyecto con las de otros proyectos previos, considerando factores como:
- Tamaño: ¿Mayor o menor?
- Complejidad: ¿Más complejo de lo usual?
- Usuarios: A mayor número de usuarios, mayores complicaciones.
- Otros factores: Sistema operativo, entornos, hardware, etc.
También se analiza la distribución de la utilización de recursos en el ciclo de vida. Generalmente, las organizaciones tienen una estructura de costos similar entre proyectos; si ya se han realizado algunas fases, es de esperar que los costos se distribuyan de manera proporcional.
Juicio experto puro
- Un experto estudia las especificaciones y realiza su estimación.
- Se basa fundamentalmente en los conocimientos del experto.
- Si el experto abandona la organización, la empresa pierde su capacidad de estimar.
Juicio experto Delphi
Un grupo de personas es informado y trata de determinar el costo y la duración del desarrollo. Las estimaciones grupales suelen ser superiores a las individuales.
Métodos de trabajo:
- Se entregan las especificaciones a un grupo de expertos.
- Se les reúne para discutir tanto el producto como la estimación.
- Remiten sus estimaciones individuales al coordinador.
- Cada estimador recibe información sobre su estimación y las ajenas de forma anónima.
- Se reúnen de nuevo para discutir las estimaciones.
- Cada uno revisa su propia estimación y la envía al coordinador.
- Se repite el proceso hasta que la estimación converge de forma razonable.
B) Basado exclusivamente en los recursos
Consiste en evaluar cuánto personal y cuánto tiempo se tiene disponible. En la práctica, se cumple la Ley de Parkinson: "El trabajo se expande hasta consumir todos los recursos disponibles".
C) Método basado exclusivamente en el mercado
- El objetivo principal es conseguir el contrato.
- El precio se fija en función de lo que el cliente está dispuesto a pagar.
- Puede ser aceptable si se usa en conjunción con otros métodos para ajustar la oferta.
- Representa un peligro si es el único método utilizado.
D) Basado en los componentes del producto o proceso de desarrollo
- Bottom-up: Se descompone el proyecto en las unidades más pequeñas posibles, se estima cada una y se calcula el costo total.
- Top-Down: Se analiza el proyecto completo, se descompone en grandes bloques o fases y se estima el costo de cada componente.
E) Métodos algorítmicos
Se basan en la utilización de fórmulas que, aplicadas sobre modelos top-down o bottom-up, producen una estimación de costo del proyecto.
Modelo COCOMO
Es un modelo empírico obtenido mediante la recopilación de datos de varios proyectos de gran envergadura. Estos datos fueron analizados para descubrir las fórmulas que mejor se ajustaban a las observaciones. Dichas fórmulas vinculan el tamaño del sistema, el producto, los factores del proyecto y el equipo con el esfuerzo necesario para el desarrollo.
El principal cálculo en el modelo COCOMO es el uso de la ecuación del esfuerzo para estimar el número de personas o meses necesarios para completar el proyecto.