[Ror-es] Como estimar el precio de una aplicacion RoR

javier ramirez jramirez at aspgems.com
Sun Dec 31 13:28:40 GMT 2006


> Y cómo se estima una cotización en java o en .net??
>   
Voy a tratar de contestar en general, cómo se estima una cotización en 
informática, desde la experiencia de llevar unos cuantos años en el 
mundillo éste (habiendo participado también en hacer estimaciones y en 
tareas de preventa). Probablemente me falte parte de información, y 
además al final la política de precios depende en gran parte de la 
política comercial y el mundo comercial está en algunos casos muy 
influenciado por las relaciones personales y la confianza, así que no 
hay receta mágica, pero por lo menos espero que valga como visión 
genérica. Sé que casi todo lo que digo son "verdades de perogrullo", 
pero no está de más comentarlas por si acaso.

Lo primero es determinar si se está vendiendo un desarrollo o una 
prestación de servicios. En el primer caso llegado el término del 
contrato hay que entregar un producto, y en el segundo caso se hace lo 
que te vayan pidiendo durante la duración del contrato y cuando se acaba 
el contrato te vas y punto.

El segundo caso es mucho más fácil de estimar. Para cada 
recurso(persona) que incluya el contrato le pones tu precio por hora 
según el perfil y listos. El resto es "tan simple" como tener en cuenta 
en el contrato las diferentes claúsulas (perfiles, preaviso, no 
agresión, NDA, sustitución de personas, vacaciones, instalaciones, 
renovación, penalizaciones, resolución de conflictos... ). En este caso 
el precio por hora suele variar si se hace en instalaciones del cliente 
(tú no usas tu infraestructura en ese caso) o si lo haces en tus 
instalaciones (necesitas usar hardware, software, oficinas y pagar los 
diferentes consumos).

En el caso de contratar un desarrollo cerrado, se complica un pelín más 
la estimación, porque eres tú el que tiene que decidir qué perfiles vas 
a necesitar para tener el trabajo terminado en el plazo acordado (o si 
acuerdas tú el plazo, entonces ver con los perfiles que tienes en cuánto 
tiempo lo puedes tener), y vas a tener que añadir perfiles de gestión, 
además de seguir una metodología de trabajo propia, controlar 
desviaciones, establecer hitos de revisión con tu cliente, puede que 
fijar fases de entrega para diferentes funcionalidades, ocuparte del 
soporte a la instalación, formación si es necesaria, dar un periodo de 
garantía, acotar muy bien las funcionalidades incluídas y las que quedan 
fuera... Una vez has estimado el total de recursos y perfiles y durante 
cuánto tiempo los vas a  necesitar, ya estás en situación de marcar tu 
precio por hora y sumarlo todo para conseguir el total.

Todo esto se complica considerablemente si dependeis de terceras 
empresas en vuestro desarrollo, bien porque necesiteis subcontratar 
vosotros mismos o bien porque esteis haciendo módulos que deben integrarse


Sea para el desarrollo cerrado por proyecto o en la prestación de 
servicios, hay que fijar un precio por hora. El precio por hora varía 
bastante entre unos proveedores y otros. Las empresas que se dedican a 
prestación de servicios sin más valor añadido suelen estar todas en un 
rango de precios parecido, por lo que para ser competitivo lo normal en 
esos casos es marcar los mismos precios, y en función de eso tenerlo en 
cuenta a la hora de fijar los sueldos cuando contratemos gente.

En el caso de que se dé algún valor añadido, las empresas marcan sus 
propios precios (con el límite de que el mercado luego te los acepte), y 
en ese caso lo suyo es ver cuánto te cuesta a ti realmente la hora de 
cada perfil (incluyendo vacaciones, permisos varios, previsiones legales 
por si despides a alguien indemnizarle, blablabla), y a todo eso sumarle 
tu margen comercial.

Hay un factor importante aquí, y es el de la gente que no es facturable, 
pero es necesaria. Por ejemplo, los comerciales, los gerentes de 
proyectos, personal administrativo... También el de los costes de 
infraestructura: comunicaciones, alquileres, hardware, licencias... Eso 
hay que tenerlo en cuenta a la hora de establecer tu margen, porque si 
no, no te van a salir las cuentas.

Por último, hay que tener en cuenta que, a veces, es posible por 
diferentes motivos que el precio que se pueda dar es mucho mayor que el 
precio por hora + margen. Esto pasa por ejemplo cuando sabemos que 
estamos en condiciones de trabajar mucho más rápido que la competencia y 
sabemos que por comparación somos más baratos, cuando vamos a reutilizar 
módulos nuestros desarrollados anteriormente con lo que el desarrollo va 
a ser más corto, o cuando estamos haciendo un desarrollo que resuelve un 
problema muy importante y para el que no hay solución sencilla (y la 
competencia no está en condiciones de darlo más barato), etc. Pero estos 
casos ya son más complicados de ver y hay que andar con más experiencia 
para saber cuándo se puede o cuándo no.

También se da a veces el caso de dar precios menores a los de tu coste 
por motivos comerciales, pero ahí también o tu comercial sabe bien lo 
que hace o vas a acabar palmando pasta.

> Depende tambin del tipo de base de datos que se use para la aplicación?
>   
No debería.. usar una base de datos u otra al final es bastante 
parecido. Si el uso de una base de datos determinada alarga tu 
desarrollo por cualquier motivo, entonces la duración de tu proyecto 
será mayor y listos. Otro tema sería si tú le vendes también al cliente 
las licencias que necesite para la implantación y las incluyas en tu 
total. En ese caso obviamente hay una diferencia en función de la 
licencia comercial de cada fabricante.


p.s. obviamente si hablamos de un proyecto de una sola persona y no de 
una cosa empresarial, todo esto se simplifica mucho... mira cuánto 
tiempo te va a llevar el desarrollo completo, súmale un porcentaje 
considerable si no tienes experiencia en desarrollos reales o un 
porcentaje considerable pero menos si tienes experiencia, mira a ver 
cuánto sueldo te quieres poner por mes, suma los gastos que te provoque 
(darte de alta como autónomo, etc...) y ya estás en disposición de dar 
un precio. Lo del porcentaje a sumarle es MUY importante. El tiempo de 
desarrollo nunca es el que pensamos. Al final con reuniones, 
dependencias de otra gente, imprevistos, puestas en producción, etc. 
acaba subiendo bastante. Si no quieres perder dinero, tenlo en cuenta.


p.s.2 a veces pasa que te llaman y te preguntan si puedes hacer algo por 
un precio determinado... y en ese caso todo lo que tienes que hacer es 
calcular si te encaja y, en un momento dado, acotar el ámbito de ciertas 
partes del proyecto. En casos así poner el precio es fácil, pero sigues 
necesitando saber tus costes para saber si puedes asumirlo.


More information about the Ror-es mailing list