¿Cómo puedo encontrar la mejor distribución de un conjunto de tareas?

Tengo un proyecto que tiene muchas tareas, algunas necesitan otras como requisitos, otras no. Todas las tareas tienen una duración que no cambiará. Tenemos 5 "trabajadores" que pueden trabajar en una sola tarea a la vez.

¿Es posible encontrar la mejor manera posible de asignar tareas para reducir el tiempo total?

Probé OmniPlan, pero en realidad no soy un administrador de proyectos y no sé cómo funciona el software.

He logrado asignar algunas tareas a un trabajador y " nivelarlas " para ver una antes que la otra. Pero tengo que asignar manualmente una tarea a un trabajador y tengo muchas tareas.

¿Hay algún software que pueda calcular eso?

Ejemplo:

Task 1 - 1d
Task 2 - 3d
Task 3 - 3d
Task 4 - 7d
Task 5 - 9d
Task 6 - 2d
Task 7 - 5d
Task 8 - 3d

Distribución posible:

Worker 1: Task 5
Worker 2: Task 4, 6
Worker 3: Task 2, 3
Worker 4: Task 1, 7
Worker 5: Task 8
Si está dispuesto a leer una página realmente densa, puede echar un vistazo al artículo de Wikipedia Técnica de revisión y evaluación del programa. Los diagramas PERT (también conocidos como diagramas de red) ayudan a diseñar las rutas críticas más cortas.
"mejor" implica que está optimizando según algunos criterios. No sé qué significa "mejor" para ti. ¿Duración total más corta? consulte la página wiki sobre la ruta crítica y el bloqueo. ¿Menor riesgo? comprobar el método de la cadena crítica. máxima eficiencia? ¿El costo más bajo? ¿Uso óptimo de los recursos clave? "mejor" es como "más bonito": hay algunas convenciones, pero en última instancia es una opinión.

Respuestas (2)

La respuesta muy directa a su pregunta es que no sé si algo lo hace sin sumergirse en las aplicaciones de gestión de proyectos más grandes (y mencionó que realmente no quería sumergirse en eso).

Ahora, más allá de eso, podría codificar un script que lo haga en tal vez una hora o hacerlo a mano con este método:

1) Hacer 5 filas (una para cada trabajador). 2) Comience con la tarea más grande y trabaje en la lista de trabajadores hasta que todos tengan una tarea inicial. 3) Vaya al trabajador que tendrá tiempo disponible antes y asígnele la siguiente tarea en la lista (nuevamente la lista está ordenada de la más larga a la más corta) 4) Repita 3 hasta que se quede sin tareas.

Puede trabajar las dependencias cuando ordena su lista.

Sin dependencias, las tareas son así (en este orden):

W1: Tarea 5 (tiempo total de 9 días) W2: Tarea 4 (tiempo total de 7 días) W3: Tarea 7, Tarea 1 (tiempo total de 6 días) W4: Tarea 2, Tarea 8 (tiempo total de 6 días) W5: Tarea 3 , Tarea 6 (5 días de tiempo total)

El tiempo total de finalización es de 9 días solo porque la tarea 5 lleva 9 días.

La advertencia:

Ahora, ¿por qué no hay un montón de software que haga esto? Porque salvo casos excepcionales, es una forma pésima de organizar el trabajo. Es increíblemente raro que las tareas no tengan un valor diferente, que todas las tareas puedan ser realizadas por una sola persona y que quien las realiza no tenga impacto en el tiempo o la calidad. Esto funciona bien para un ejercicio de libro de texto, pero muy pocas aplicaciones de la vida real funcionarán mejor de esta manera.

Una herramienta de gestión de proyectos es tan buena como el proceso que están implementando. Antes de probar un enfoque basado en herramientas, debe pensar en el proceso manual que le gustaría implementar.

En su caso, usar matemáticas puras para llegar a la duración de las tareas es muy difícil porque ese enfoque no puede tener en cuenta todas las variables posibles: conocimiento del trabajador, comprensión de la tarea, motivación, descarriladores, etc. Básicamente, está tratando de arroje una herramienta a un problema de proceso, y eso nunca funcionará.

La mayoría de los PM modernos en la comunidad de desarrollo de software guían a sus desarrolladores para llegar a la duración de las tareas. La idea aquí es que solo la persona que hace el trabajo realmente entiende cuánto tiempo le llevará hacerlo. Y luego, incluso esa estimación cambiará a medida que comiencen el trabajo y aprendan más sobre la tarea.

Parece que podrías tener un nuevo equipo, o tal vez eres nuevo para ellos. Le sugiero que comience con SCRUM y use ese enfoque para ayudarlo a acostumbrarse a su equipo.

Entiendo que. La cosa es que para este proyecto solo no hay variables. No hay nada que pueda cambiar el horario. Si se requiere que una tarea tenga X horas, tendrá pase lo que pase. Este proyecto no tiene un trabajador humano. Utiliza trabajadores de máquinas. Lo único que quiero es encontrar la mejor manera de dividir las tareas para que todo termine lo antes posible.