Como estimar el precio de una aplicacion RoR

hola a todos

cuando teneis que estimar el precio de una aplicacion desarrollada en
RoR, como lo haceis?

  • por dias o horas de trabajo? A cuanto esta la hora de desarrollo en
    RoR?

  • dais un precio a la aplicacion? como estimais ese precio

Pepe

Pides una cotizacion en Java o .net y luego la divides por dos.

:slight_smile:

Más bien la multiplicas por dos en el precio, por lo novedoso … xo
trabajas la mitad, por rails = 4x de ganancia

Na… los presupuestos dependen de muchas variables

El 30/12/2006, a las 15:40, Pedro V. escribió:

Pides una cotizacion en Java o .net y luego la divides por dos.

marze
[email protected]

Y cómo se estima una cotización en java o en .net??

Depende tambin del tipo de base de datos que se use para la aplicación?

Saludos y felices fiestas!

javier,

muy completa tu respuesta gracias:

Que piensas de esta formula: hours * avg. industry pay rate * 50%
(overhead).

pepe

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.

javier he hecho la misma pregunta en el foro ingles, a ver si le echas
un vistazo y me das tu opinion alr especto

http://www.ruby-forum.com/topic/92535#new

Que piensas de esta formula: hours * avg. industry pay rate * 50%
(overhead).

bueno… a priori un 50% como colchón me parece un pelín exagerado,
aunque depende de los riesgos que asumas pueda estar más que
justificado. Otra cosa es que el 50% no lo pongas como colchón para
desviaciones sino que lo sumas a la media porque das cierto valor
añadido, el que sea… y en ese caso sólo tú puedes estimar si es
adecuado o no, y de hecho podría subir en función de cada caso. En mi
caso además, como lo que me ha tocado hacer normalmente es dar las
estimaciones pero no poner los precios, el margen lo pongo directamente
a la hora de estimar el esfuerzo de cada perfil, y no sobre el total.

En estas cosas, que yo sepa, no hay fórmulas mágicas y al final se trata
de estirar hasta donde puedas ver que tu cliente puede aceptar, sabiendo
cuál es el límte por debajo del que no puedes bajar sin perder.De todos
modos, como comentaba en el mail anterior, mi perfil no es comercial,
aunque me ha tocado estar en muchas estimaciones y colaborar en la
preparación de ofertas, por lo que tengo la visión general bastante
detallada, pero es probable que me falten variables por algún sitio.

saludos,

j