Problema general
Nosotros (una pequeña organización) queremos repartir todos los beneficios de un proyecto en función de la cantidad de trabajo invertido en ese proyecto (así, si la persona A invierte 40h y la persona B invierte 60h, A se lleva el 40% de todos los beneficios y B el 60%). Sin embargo, existe una complicación cuando un componente de un proyecto se reutiliza en otro proyecto. Por ejemplo:
Proyecto 1: A gasta 10h en un Componente utilizado en el proyecto, B gasta 5h haciendo otra cosa, el proyecto gana \$60
Proyecto 2 (ocurre después del Proyecto 1): El componente se reutiliza y B pasa otras 5h, el proyecto gana \$60
Después del Proyecto 1, esperamos que A obtenga \$40, having done two thirds of the work, and likewise B gets \$ 20.
Después del Proyecto 2, tenemos un problema (que se explica a continuación): ¿cómo se debe asignar el dinero?
Supuestos
- Las personas del mismo proyecto hicieron aproximadamente el mismo trabajo de calidad
- La calidad de un proyecto determina sus beneficios
- Un proyecto no perderá dinero en general (si lo hace, tenemos la intención de utilizar un sistema diferente)
Quiere
- El orden de los proyectos no debería importar (es decir, cambiar el orden de los proyectos no debería cambiar la forma de repartir los beneficios)
- A medida que se completan los nuevos proyectos y se calculan los beneficios, nadie debería perder dinero (es decir, no queremos estar pagando a alguien en un proyecto y luego recuperar parte de ese dinero en el siguiente)
- Si dos personas han hecho un trabajo de la misma calidad, deben recibir la misma cantidad.
- (Menos importante) Si dos proyectos son idénticos, excepto que uno gana "x" veces más dinero que el otro, entonces el salario de los que trabajaron en el proyecto más valioso debería ser "x" veces mayor en comparación con el otro.
Sabemos que las dos primeras hipótesis son contradictorias (si un componente se utiliza en varios proyectos, cada uno de los cuales tardó la misma cantidad de tiempo total en crearse, pero dio lugar a diferentes beneficios, o bien el componente no es de la misma calidad que el resto del proyecto, o bien la calidad del proyecto no determina el beneficio).
Debido al "deseo nº 3" y a los dos primeros supuestos, esperamos que en el escenario anterior, tanto A como B obtengan el 50% de los beneficios (\N60 dólares cada uno). Nuestro problema es cómo calcular esto en el caso general.
"Soluciones" que no funcionan
- Agrupar todas las horas y los beneficios (en todos los proyectos), y luego repartir los beneficios. Además de violar el supuesto 2, acaba violando también el deseo 2 (imagina un proyecto que no obtiene beneficios pero que consume muchas horas: el beneficio se distribuiría entre esas horas infructuosas, quitando dinero a proyectos más exitosos).
- Cuenta el tiempo de un componente como cualquier otro trabajo. En el escenario anterior, esto significa dar a A 40 dólares en ambos proyectos. Por desgracia, esto daría a A más dinero que a B, que no es lo que queremos en este caso.
- Ignorar el tiempo de un componente después de su reutilización. Esto significa no dar a A nada en el Proyecto 2 (B lo obtendría todo).
Salario base
El salario base en un solo proyecto es igual al beneficio del proyecto * el porcentaje de tiempo invertido en un proyecto del que una persona fue responsable (excluyendo el tiempo invertido en componentes que fueron reutilizados en otro proyecto). Por ejemplo, en el escenario anterior, B trabajó 5 de 15 horas en el Proyecto 1, por lo que su "salario base" es \$20 (one-third of \$ 60).
El "valor" de un componente se calcula de la misma manera (\$40 para el Componente del Proyecto 1).
El "valor máximo" de un componente es el valor máximo del componente en cualquier proyecto (por lo que si se valora en \$10, \$ 50, y \$25 in three different projects, we say its “max value” is \$ 50).
(Aquí es donde entra en juego la contradicción de los supuestos 1 y 2: si el componente vale \$40 in Project 1, we would expect the component to be worth \$ 40 en todos los proyectos, lo que no siempre es el caso. Para tener una idea de su "valor real", utilizamos el "valor máximo" de un componente. Otras soluciones posibles son el "primer valor", el "valor medio" y el "valor máximo tras dos proyectos". El principal inconveniente del "valor medio" es que puede infringir el "deseo nº 2" en caso de que el componente se utilice en un proyecto que no genere dinero).
El salario base total de una persona (en todos los proyectos) es igual a la suma de sus salarios base en los proyectos individuales más el valor máximo de los componentes reutilizados que haya creado. (En la situación anterior, A tiene \$0 base pay in each project (A spent no time on either project outside of the Component), but since A created the component and the component is valued at \$ 40 en ambos proyectos, el salario base de A es \$0 + \$ 40 = \$40.)
Residual
Pretendemos pagar a cada persona su "sueldo base", pero si nos detenemos ahí, hay un beneficio residual. Por ejemplo, en el escenario anterior, el beneficio total es \$120, but A’s base pay (\$ 40) más el salario base de B ( \$40) is only \$ 80.
Así, nuestra pregunta se convierte en: ¿Cómo repartimos el residuo de forma justa?
Al principio tratamos de repartirlo en función de la cantidad de trabajo de cada persona, o en función del salario base de una persona (según nuestras suposiciones, eso es igual a la calidad del trabajo que ha producido). Sin embargo, esto nunca funcionó porque el aumento del residuo no es necesariamente proporcional al éxito de un proyecto (ni a las horas trabajadas en ese proyecto). Esto daba lugar a la posibilidad de que un proyecto muy exitoso apareciera y "robara" dinero a los menos exitosos.
ex. Si ampliamos el escenario original para tener un tercer proyecto de gran éxito:
Proyecto 3: Se reutiliza el componente y la persona C dedica 90 horas. El proyecto gana 1.000 dólares.
Un salario base = Valor máximo del componente: \$100
El salario base C: \$900
B sueldo base: \$40
Residual: \$80
Obsérvese que antes de que apareciera el Proyecto 3, tanto A como B tenían \$60 (due to the residual of \$ 40 se reparten a partes iguales entre ellos; su salario base de \$40 plus \$ 20 de su parte del residuo es de \N 60 dólares).
Si "inflamos" todas las retribuciones básicas para que agoten el residuo (multiplicar todas las retribuciones básicas por (1120/1040) 1,08 , B sólo obtiene 40*1,08 = 43,2, lo que supone una bajada del \$60 he was getting after Project 2 -- in other words, some of B’s money is taken away (we already paid B the \$ 60 y ahora piden que se les devuelva parte de esa cantidad), algo claramente indeseable.
(Intentamos limitar los cálculos de la distribución del residuo al proyecto específico en el que se generó el residuo, pero esto tampoco funcionó: terminaríamos violando el "deseo #1" y/o no satisfaciendo nuestro escenario original).
Así que pasamos a la siguiente pregunta: qué es proporcional al aumento del residuo?
En general, el residuo "generado" por un componente específico dentro de un proyecto es igual al mínimo de estas dos cosas:
- El "valor máximo" del componente en todos los proyectos anteriores (Este número es 0 cuando el componente no se ha utilizado antes)
- El valor actual del componente (en el proyecto específico que estamos considerando)
Así, por ejemplo, en el escenario que hemos visto, el residuo generado en cada proyecto es: Proyecto 1: \$0 (the “max value” of the component was \$ 0 antes de este punto, el valor actual en el Proyecto 1 es \$40; the minimum of these two values is \$ 0)
Proyecto 2: \$40 (el valor máximo anterior era 40, el valor actual en el Proyecto 2 es 40)
Proyecto 3: \$40 (el valor máximo anterior era 40, aunque el valor actual en el Proyecto 3 es 100)
No estamos seguros de si hay una manera de atribuir algún porcentaje del residuo generado en cada proyecto (con la idea de que si atribuimos el 50% del residuo a una persona, entonces esa persona recibe el 50% del residuo) a las diferentes personas involucradas mientras seguimos satisfaciendo nuestra lista de deseos y satisfaciendo el escenario original (es decir, después del Proyecto 2, esperamos que el dinero total dado a A y a B sea el mismo).
¿Hay alguna forma de hacerlo? ¿Existe un enfoque totalmente diferente que funcione?