La propuesta económica inicial es un dato muy importante para decantarse por un desarrollador de software. Pensamos que, como cliente, si sabes cómo se realizan esas valoraciones podrás salvar ciertos imprevistos y algún que otro dolor de cabeza.
Y este es el propósito de nuestro artículo, explicar la parte de atrás, el porqué te enfrentas a escenarios con diferentes soluciones y con diferentes precios para un mismo planteamiento. Intentaremos responder a ciertas preguntas que rodean la valoración de un proyecto de software esperando que te sirva de ayuda:
- Valorar lo intangible
- ¿Cómo se hacen las valoraciones?
- ¿Cómo afrontar la subjetividad de las valoraciones?
- Si no tienes ganas de leer, puedes ir directamente al resumen.
Un caso habitual
Hace poco, un cliente nos pedía una valoración para un programa a medida. Se quería modernizar para seguir siendo competitivo pero no quería cambiar su manera de trabajar, sólo mejorarla.
Su idea era invertir en tecnología, en un proyecto de software a medida que le sirviera tanto de herramienta de gestión como de guía para futuros empleados. Sopesando las alternativas que había en el mercado, no le convencía ninguno de los paquetes de software ya prefabricado y había comenzado la búsqueda de una empresa de desarrollo de software.
Hasta la fecha, había recibido varias ofertas con las soluciones y los precios más variopintos para su proyecto. Estaba asombrado y desorientado por completo. No entendía el porqué de tantas diferencias.
Resulta que en muchos de esos presupuestos no se precisaban ciertos detalles, que en otros sí se valoraban pero con unas horquillas de desviación muy amplias, tenía propuestas con tecnologías diferentes, precios muy desiguales….. En resumen, una locura.
Le daba la sensación de que estaba comprando aire.
Sin conocer los detalles exactos de las propuestas que había recibido, nuestro comentario fue que en informática, al igual que en botica, existen multitud de alternativas para solventar un problema/necesidad. No era de extrañar por tanto que hubiera recibido soluciones diferentes y con precios distintos para ese mismo proyecto.
Pero esta respuesta evidentemente no resolvía su incertidumbre. Analizándolo desde el punto de vista de nuestro cliente, entendíamos que decantarse por uno de esos presupuestos le tuviera que resultar complicado porque tenía que decidir sobre algo que no podía ver y no podía probar hasta estar desarrollado. No era algo como comprar 1 ordenador portátil.
Valorar lo intangible
Son tantos los casos que se pueden dar y diversos los caminos para llegar y valorar una propuesta técnica, que no se puede ofrecer una solución estandard y mucho menos una explicación estereotipada . Y nos damos cuenta de que esto a veces genera desconfianza hacia nuestro sector.
Esta situación que nos relataba nuestro cliente no es algo aislado, en realidad es una situación bastante habitual.
Cuando un cliente nos plantea una idea de proyecto, cuando nos pide un presupuesto, todo está en el aire. Convertir en números ciertas preguntas sin conocer el entorno que las rodea supone responder con un
"depende".
Y , por supuesto, esa no es la respuesta que esperas como cliente.
Desde nuestro punto de vista, entendemos la creación de software a medida como un conjunto formado por la creatividad, la experiencia y el trabajo de uno o varios desarrolladores y situarlo en el contexto adecuado es primordial para que cobre sentido.
El cliente tendrá su idea, el desarrollador quizás tenga otra, los usuarios que utilizarán el programa tendrán su propia visión.... Es necesario tiempo para crear una idea conjunta y ofrecer un resultado acorde con las expectativas.
Programar es algo así como el “arte”.
No te asustes, no nos ponemos póeticos ni nos vamos a quedar en esta justificación “fácil”, pero sí la vamos a poner como ejemplo en el siguiente vídeo.
Lo vimos a través de una red social (gracias por compartir) y, ya en su momento, nos pareció muy ilustrativo para nuestro sector. Como explicación rápida y visual pensamos que es perfecto para el tema que nos ocupa.
Echa un vistazo.
En los tres casos que se muestran en el video se ofrece el dibujo de El Joker terminado, tres soluciones en tiempos distintos pero con diferencias apreciables. En cada escena se observa que la preparación y la posición de la mano del dibujante cambia. Los tiempos son desiguales y los trazos por tanto van a ser otros. Nos proporciona también otra información: el dibujante sabe de lo que es capaz en los diferentes lapsos de tiempo.
Con el desarrollo de software pasa un poco igual. Un acabado perfecto requiere una etapa de análisis y otra de ejecución. Para ofrecer una valoración óptima se necesita tiempo, aunque inicialmente se sustente en métricas ya predefinidas.
Cómo se hacen las valoraciones
La valoración de cualquier desarrollo a medida está basada en el tiempo de ejecución y en su confiabilidad. Influye el número de recursos humanos que requiera el proyecto así como su capacitación.
El cálculo de su coste exacto precisa de un trabajo de consultoría y planificación, invirtiendo el tiempo necesario y recogiendo el máximo número de detalles de la nueva aplicación. Esto sería lo más correcto.
El cliente recibe una valoración “estimada”
Pero en una fase temprana, en el primer contacto cliente-proveedor, no suele ser factible separar la propuesta comercial en dos partes y vender el análisis por un lado y la construcción de la solución por otro.
En ese momento, la cantidad de información proporcionada es muy pequeña y realizar una valoración justa, según los términos anteriores, no es posible.
El cliente nos presenta una aplicación que todavía no está bien definida, es una idea, una necesidad. Por ese motivo se ofrece un dato económico aproximado y el éxito de la estimación vendrá dado por la forma en que se haya definido el alcance del proyecto.
Desarrollar un programa a medida requiere el mismo esfuerzo y compromiso por parte del cliente que de la empresa que programa. Y dentro de este primer contacto es de suma importancia que el cliente ya tenga definida a una persona que figure como responsable.
Estimaciones basadas en métricas
Este tipo de cálculo, aunque se sustenta en la incertidumbre, no se realiza a lo loco, hinchando lo hinchable o a ojo de buen cubero. La estimación se basa en metodologías, métricas y medidas extraídas de proyectos anteriores. Las similitudes básicas entre proyectos nos facilitan obtener, con poca información, las referencias para los nuevos. Se analizarían entonces los siguientes puntos:
- La complejidad del proyecto
- El tamaño del proyecto
- La necesidad de estructura organizativa y metodología para el proyecto
La valoración preliminar deberá incluir la estimación de todas las fases por las que pasa cualquier proyecto: definición, análisis, diseño de la arquitectura, codificación, pruebas e implantación.
La verdad es que, después de todo lo leído, estás como al principio. No sabes qué esperar. Si todo se basa en predicciones, en “dependes” y en métricas anteriores parecidas a la tuya (pero que no son la tuya), capaz de empezar con un precio “X” y acabar en un "Potosí".
Valorar correctamente un desarrollo de software en su etapa inicial es clave, tanto para el desarrollador como para el cliente
Desde el punto de vista del proveedor, entra en juego su reputación, saber hacer o imagen. Un análisis conjunto con el cliente determinará si el trabajo es viable.
Como cliente, esperas que tu coste real coincida con el coste estimado.
Por tanto, esta estimación inicial, bajo nuestro punto de vista, se convierte en crucial. Una buena valoración elimina las grandes desviaciones presupuestarias del desarrollo
y la capacitación del estimador es determinante para conseguirlo.
La empresa o desarrollador debe aglutinar experiencia profesional suficiente para guiar al cliente en los requerimientos del sistema y solventar cualquier problema en la gestión del proyecto.
Independientemente de la métrica utilizada para calcular su coste, la propuesta debe ser homogénea, estar bien documentada y ofrecer una valoración inicial lo más fiel posible.
Durante la etapa de un análisis previo, el proveedor deberá identificar claramente QUÉ se va a solucionar y tendrá que recabar la mayor información sobre:
- La gestión de los procesos a automatizar
- Las carencias del sistema actual
- Problemáticas ocasionadas
Dentro de este contexto, contar con la figura de un buen estimador es decisivo. Una correcta definición del sistema es responsabilidad del equipo de desarrollo..
En cualquier actividad que una empresa afronta día a día es imprescindible contar con el software adecuado. En muchos casos es uno de los principales objetivos estratégicos por lo que, atinar con el proveedor de soluciones apropiado, es vital.
Cuando te enfrentes a una necesidad de desarrollo a medida y consultes a varios proveedores de software, seguramente recibas planteamientos diversos y con precios diferentes. Ten en cuenta entonces:
- Como TICs orientamos a nuestros clientes en las opciones que consideramos posibles y más óptimas y eso lleva a diferentes soluciones. Casi todo es posible en el software, pero hay situaciones por ejemplo que, por el tiempo de resolución, quizás no convenga llevarlas a cabo.
- Recibirás una valoración estimada. Las ofertas estarán valoradas en base a métricas anteriores y ya definidas. Cuanta más información aportes en la etapa inicial, mayor aproximación al coste real del proyecto. Importante que tengas ya designada a la persona de tu empresa que se encargará del proyecto para realizar esta tarea.
- Para mitigar la incertidumbre y conseguir una buena valoración inicial, busca la figura de un buen estimador. El equipo de desarrolladores que lleve tu proyecto debe ofrecer ciertas garantías: formación, capacidad y experiencia en todas las fases de gestión de proyectos. La primera valoración que recibas es crucial ya que, como cliente, esperas que el presupuesto inicial coincida con el presupuesto estimado.