He visto en mi lugar de trabajo (una universidad) a la mayoría de los estudiantes que hacen que el costo de estimación del software de su diploma final trabaje con COCOMO . Supongo que esta forma de estimar los costos es algo antigua (fechas de COCOMO de 1981), de ahí mi pregunta:
How do you estimate costs in your software?
He visto cosas como:
Costo = (HoursOfWork + EstimatedIddle) * HourlyRate
Eso no es lo que quiero, estoy buscando un modelo de costos adecuadamente definido (científicamente)
EDITAR He encontrado algunas preguntas relacionadas sobre SO:
pricing
estimation
cocomo
David Conde
fuente
fuente
Respuestas:
En caso de que esté atascado en el modo Cascada, el único método bastante preciso que he usado es:
Terminarás con un número muy preciso. No digo que sea precisa, pero será precisa.
La precisión depende completamente de poder llegar a un número para cada tarea basado en la experiencia pasada, o de encontrar a alguien que lo haya hecho antes. Cuanta más experiencia tenga, mejores serán sus estimaciones.
Cuando ejecute el proyecto, haga un seguimiento de su tiempo en cada tarea y escriba las que perdió, para que pueda comparar. Esto te hará mejor con el tiempo.
fuente
La estimación del software es extremadamente difícil. Un enfoque que he usado es desglosar los requisitos lo más finamente posible y estimar cada pieza por separado. Luego agregue un "factor fudge" que puede ser un multiplicador (duplicarlo) o una cantidad fija (x horas para trabajo no anticipado). Si no tiene buenos requisitos, la estimación es imposible para fines prácticos.
fuente
La industria ha aprendido mucho en los 30 años desde el '81. Estimar así nunca funcionó. Con la locura de Agile haber reescrito básicamente el paisaje, usamos "puntos de historia" que representan alguna "dificultad comparativa" nebulosa. Luego ganamos "velocidad" para que los fangosos puedan hacer sus estimaciones $$ con cierta cantidad de datos empíricos.
fuente
Aprendí algunos enfoques "rigurosos", como las estimaciones de puntos de función y algunas variaciones que fueron diseñadas para aplicaciones modernas. Creo que la parte de estos enfoques que es valiosa es que obliga a un análisis más detallado de los requisitos conocidos que, de lo contrario, podría darle.
Obtener un buen conjunto de datos para trabajar es muy difícil, incluso si tiene un buen modelo. Medir la productividad es difícil. La gente juega casi cualquier métrica.
Dejé de usarlo porque mi organización es demasiado disfuncional para beneficiarse de las estimaciones de software, pero tengo cierta consideración por el grupo Cost Xpert y su herramienta; pero es muy costoso y probablemente no valga el costo y la curva de aprendizaje para la gran mayoría de las organizaciones.
fuente
Es muy difícil estimar los esfuerzos y los costos, pero si desea algo más preciso, entonces:
dividir el HoursOfWork en 3 componentes:
eliminar EstimatedIddle.
Tome nota de que cualquier cosa que tarde más de 8 horas introducirá un gran error.
fuente
Lo que normalmente hacemos es dividir el alcance del trabajo completo en módulos / elementos principales que podrían considerarse como subproyecto. En otras palabras, son aquellas partes de trabajo que el cliente considera como partes separadas del proyecto y que el cliente desea estimar por separado.
Una vez hecho esto, dividimos cada módulo en tareas, subtareas e incluso subtareas más pequeñas para que cada uno pueda estimarse con bastante facilidad y la estimación tome de una a diez horas-hombre. De esa forma obtenemos un desglose detallado del alcance del trabajo para el proyecto.
El último paso es distribuir tareas entre hitos. Lo hacemos de la manera para que después de cada hito el cliente obtenga resultados visibles. Eso ayuda a pasar un hito y pasar a otro. Entonces finalmente obtenemos algo como:
Módulo 1
Inicialmente lo hicimos simplemente usando la hoja de Excel. Pero hace más de dos años comenzamos a usar herramientas de software para eso. Hay pocos productos similares que ayudan con él www.evenflow.com , www.swproposal.com y algunos otros. No recuerdo toda la lista. Investigamos hace mucho tiempo. Espero que pueda ayudar.
Buena pregunta es cómo estimar con precisión. No hay una estimación 100% correcta como creemos. La única forma es dividir el alcance completo del trabajo en tareas tan pequeñas como sea posible. En las tareas más pequeñas, tiene una revisión y análisis más detallados del proyecto que realiza. De modo que de todos modos aumenta la precisión.
fuente