Presupuestar un proyecto

Estimar un buen presupuesto puede hacer no sólo que llenemos o no la nevera a final de mes, sino que el proyecto vaya adelante o no, así que si eres de los que te chupas el dedo, lo levantas y calculas hacia donde sopla el viento, es hora de dejar de hacerlo, y «perder un poco de tu tiempo» en dar un presupuesto.

Tranquilo, con el tiempo verás que no pierdes el tiempo, que avanzarás trabajo para luego, e incluso descubrirás especificaciones ocultas del proyecto que no te has planteado inicialmente.

Hay multitud de teorías y métodos para presupuestar, algunos con base más analítica que otros. Mi idea en este post es contar cómo suelo hacer yo los presupuestos.

¿Tarifario?

Es la forma más rápida y estandar de dar presupuestos, definir unos precios para los distintos tipos de productos y listo.

En nuestro mundo del desarrollo, sea web o no, esto se complica, ya que aunque muchos proyectos se puedan parecer, que sean 100% iguales, va a ser casi casi imposible.

Bueno, podemos tener un tarifario con rangos de precios, al menos para poder dar una estimación muy a grosso modo si alguien nos pregunta y quiere saber por dónde pueden ir los tiros.

Por ejemplo:

Web corporativa: 500 – 750€

Tienda online: 1000 – 1250€

Esto tendrá cientos de matices, pero al menos el usuario sabe que estás alrededor de los 1000€, y no de los 20.000€

Divide y vencerás

Uno de los principios más aplicados en el desarrollo software, como es «divide y vencerás», es en el que nos basaremos para crear nuestros presupuestos.

¿En qué consiste? Pues en dividir una tarea compleja en otras más sencillas, que sean más fácil de abordar.

Y esas más sencillas dividirlas a su vez en otras aún más sencillas, hasta que alcancemos un grado de granularidad que nos sea más sencillo de calcular.

Un ejemplo

Nos piden el desarrollo de una tienda online de un negocio, en la que quieres además tener toda la información corporativa y su propio blog. Calcular el precio a primer golpe de vista puede ser complicado, y eso que podemos considerarlo un proyecto medio-bajo de complicación.

Vamos a dividirlo en un primer nivel:

  • Web corporativa
  • Blog
  • Tienda online
  • Otros (tareas de gestión, testeo, paso a producción …)

Ahora quizás podamos afinar un poco más el precio, aunque sea a golpe de vista.

¿Qué tal si volvemos a dividir?

  • Web corporativa
    • Portada
    • Quienes somos
    • Contacto
    • Otros (partes comunes como cabecera y pie)
  • Blog
    • Portada del blog
    • Página de categoría
    • Página de etiqueta
    • Post
  • Tienda online
    • Página tienda
    • Página categoría
    • Página producto
    • Carro de compra
    • Checkout
    • Configuración (envíos, pagos, impuestos …)
  • Otros
    • Instalación WordPress + Woocommerce
    • Fase de testeo
    • Paso a producción
    • Gestión de proyecto

Si ahora vamos tarea por tarea, seguro que es más sencillo estimarlas y acertar en los tiempos propuestos.

Podríamos seguir dividiendo hasta que nos encontremos «cómodos» analizando las subtareas.

Pruébalo, descubrirás que presupuestos que a priori te parecían muy muy caros, cuando los divides en subtareas, calculas los tiempos de cada una de ellas y los multiplica por tu precio hora, ese precio desorbitado, es ahora un precio ridículo.

¿Software?

Para hacer esta división y estimar los presupuestos aconsejo usar algún software para la gestión de proyectos, que tenga la opción de diagrama de Gantt, ya que no sólo nos permitirá listar las distintas tareas, sino asignarles recursos (personas, que pueden tener costes distintos), ver las dependencias de las tareas (si por ejemplo para empezar una necesitamos terminar otra, o si pueden empezar en paralelo …), y otras funcionalidades con las que conseguiremos no sólo una cifra final, sino unas fechas de entrega.

Personalmente, uso ProjectLibre para la subdivisión de las tareas y estimación de sus tiempos, sin entrar en esta primera etapa en valorar dependencias ni recursos (me uso «a mi» siempre como recurso, ya que suelo hacer yo un 90% del trabajo, y si tengo que tirar de red de freelances para alguna tarea específica, tienen precios muy similares).

El ejemplo anterior quedaría algo como:

Una vez aprobado el proyecto, es cuando uso dicho diagrama para definirlo en más detalle y bajarlo a valores más reales. Como puedes ver, el esfuerzo que ha supuesto hacer un presupuesto más allá de levantar un dedo y ver hacia dónde va el viento, será ahora aprovechado durante el desarrollo del proyecto.

La experiencia, un grado

Todo esto está muy bien, pero si nuestros proyectos se parecen unos a otros en gran parte, o por lo menos comparten subtareas comunes, como pueden ser la instalación de WordPress o configuración de la pasarela de pago, podemos y debemos reutilizar datos históricos nuestros.

No sólo para ahorrarnos tiempo en el desarrollo de presupuestos, sino para aprender de errores pasados, y así afinar en el precio estimado.

Para aprender del pasado, necesitamos medir, medir nuestros proyectos, pero no sólo a nivel de proyecto, sino a nivel de tareas. Medir el tiempo que dedicamos a cada una de ellas, para cuando en el futuro nos llegue un proyecto con tareas similares, poder tener una estimación «real».

Una herramienta de time tracking debería ser un must en nuestro día a día. Personalmente uso Timecamp y me va muy bien con ella.

En resumen

  • Tarifario: Por si alguien te atraca en el bar preguntándote por cuanto le saldría hacer tal proyecto, pero poco más.
  • Divide y vencerás: Si no te sientes cómodo calculando los tiempos de una tarea, divídela en subtareas con las que sí te encuentres cómodo.
  • Aprende: Mide en tu día a día lo que tardas en las tareas, te permitirá cometer menos errores en el futuro cuando abordes una tareas similar.