Conecta con cualquier ERP

La REST API abierta de SkyPlanner se conecta con sistemas ERP, MES y operativos, incluidos los ERP internos. Constrúyala usted mismo o deje que nuestro equipo le ayude.

También funciona independiente — una integración ERP es opcional, no requerida.

Discutir un proyecto de integración

Se conecta con sistemas ERP y MES como

recursos

Programación job shop: definición, ejemplo y métodos

Comprenda la programación job shop con un ejemplo de dos tareas, compare métodos y vea cómo SkyPlanner recalcula el trabajo en máquinas compartidas.

Jussi Mäntylä Especialista en planificación de producción, SkyPlanner Actualizado 4 de octubre de 2026 20 min de lectura
Two batches follow opposite routes between shared milling and drilling workstations
En este artículo
  1. Qué decide la programación job shop
  2. Job shop, flow shop, programación job shop flexible y fabricación bajo pedido
  3. Un ejemplo de programación job shop: las rutas de las tareas A y B se cruzan
  4. Dónde aparece la programación job shop en SkyPlanner
  5. Los datos de entrada que hacen utilizable un programa job shop
  6. Conectar los datos de pedidos con el modelo de programación
  7. Métodos de programación y el objetivo al que sirven
  8. ¿Qué cambia cuando B es urgente o una máquina no está disponible?
  9. Qué comprobar antes de dejar atrás la hoja de cálculo
  10. Preguntas frecuentes
  11. ¿Qué es la programación job shop?
  12. ¿Cuál es la diferencia entre la programación job shop y la programación flow shop?

Inicio » Recursos » Programación job shop: definición, ejemplo y métodos

Tiempo de lectura estimado: 15 minutos

La programación job shop asigna horas de inicio y recursos productivos compartidos a tareas cuyas operaciones siguen rutas de fabricación específicas y distintas entre sí. Mantiene en orden los pasos del proceso de cada tarea e impide que operaciones en competencia usen el mismo recurso a la vez. El resultado indica al equipo de producción qué puede ejecutarse a continuación y qué debe esperar.

Puntos clave

Un programa job shop vincula la ruta de fabricación de cada tarea con la disponibilidad compartida de las estaciones de trabajo, y no solo con su posición en una lista de pedidos.

Distintas máquinas pueden procesar distintas tareas en paralelo, mientras que cada tarea debe respetar su secuencia de operaciones.

El menor tiempo total de finalización y el plazo de un cliente urgente pueden exigir programas distintos.

En SkyPlanner, las etapas de trabajo ordenadas y las estaciones de trabajo aptas aportan el modelo de la ruta de fabricación; Arcturus, el motor de programación de SkyPlanner, recalcula el trabajo programado y el Gantt lo muestra.

Revise la ubicación de las tareas y los datos de la ruta de fabricación antes de usar Reschedule all: este botón reoptimiza las tareas que ya están en el Gantt.

Qué decide la programación job shop

En una planta de mecanizado, un pedido puede requerir fresado seguido de taladrado, mientras que otro necesita taladrado antes del fresado. Ambos pedidos compiten por las mismas máquinas, pero la siguiente máquina utilizable es distinta para cada uno. Ordenar los pedidos por fecha de entrega todavía no le dice al operario de la fresadora qué operación puede empezar.

Un programa resuelve tres decisiones conectadas: qué operación está lista, qué recurso productivo puede procesarla y cuándo puede ejecutarse. Que una operación esté lista depende de las operaciones anteriores y de los insumos de producción. La disponibilidad del recurso depende del resto del trabajo ya asignado a ese recurso. Por eso, cambiar una asignación puede afectar a varios pedidos más adelante en sus rutas de fabricación.

La programación job shop es un problema particular dentro de la programación de la producción. La programación de la producción abarca también entornos con rutas más sencillas o repetitivas. La distinción del job shop importa porque una única secuencia de pedidos para toda la fábrica no puede describir por completo la secuencia a nivel de operación en cada estación de trabajo.

Job shop, flow shop, programación job shop flexible y fabricación bajo pedido

ConceptoQué describePregunta práctica
Job shopCada tarea sigue su propia secuencia de operaciones especificada a través de recursos productivos compartidos¿Cómo pueden rutas distintas usar las mismas máquinas sin conflictos?
Flow shopLas tareas siguen la misma secuencia de máquinas¿En qué orden deben pasar las tareas por esa ruta común?
Job shop flexibleUna operación puede usar una de varias máquinas aptas¿Qué máquina apta y qué hora de inicio debe recibir cada operación?
Fabricación bajo pedidoUn pedido de un cliente desencadena la producción¿Cuándo debe lanzarse la producción de un pedido concreto?

El modelo clásico de job shop asigna una máquina específica a cada operación. La programación job shop flexible añade la selección de máquina al problema de los tiempos. La fabricación bajo pedido describe el desencadenante de la producción, por lo que una planta puede ser a la vez de fabricación bajo pedido y estar organizada como job shop.

La documentación de OR-Tools de Google muestra con claridad las dos restricciones fundamentales: una operación sigue a su predecesora y una máquina procesa una sola operación a la vez. En una planta real, los calendarios laborales, los materiales y las personas añaden más condiciones a ese modelo básico.

Un ejemplo de programación job shop: las rutas de las tareas A y B se cruzan

Los siguientes números son ilustraciones hipotéticas. Hay dos estaciones de trabajo, fresado M y taladrado D, disponibles desde el tiempo 0. Cada una procesa una operación a la vez. Para simplificar, este ejemplo no tiene tiempo de preparación, pausas de calendario, falta de material ni operario compartido, y cada operación se ejecuta sin interrupciones.

El conflicto es sencillo: A y B necesitan las mismas máquinas en orden opuesto, así que B debe esperar al fresado aunque el taladrado esté libre.

TareaPrimera operaciónSegunda operaciónTiempo total de procesamiento
AFresado M: 2 unidades de tiempoTaladrado D: 1 unidad de tiempo3 unidades de tiempo
BTaladrado D: 1 unidad de tiempoFresado M: 1 unidad de tiempo2 unidades de tiempo

Si el planificador termina toda la tarea A antes de empezar B, A usa el fresado de 0 a 2 y el taladrado de 2 a 3. Después, B usa el taladrado de 3 a 4 y el fresado de 4 a 5. Las tareas terminan en el tiempo 5, aunque el taladrado estaba disponible durante la primera operación de fresado de A.

Si se permite que las rutas se solapen, se obtiene este programa factible:

Estación de trabajoTiempo 0 a 1Tiempo 1 a 2Tiempo 2 a 3
Fresado MA, primera parteA, segunda parteB
Taladrado DBInactivaA

Ahora todo el trabajo termina en el tiempo 3. Este es el makespan mínimo del modelo ilustrado: el fresado debe procesar 3 unidades de tiempo de trabajo en una sola máquina, por lo que ningún programa factible puede terminar antes. B completa el taladrado en el tiempo 1, pero no puede empezar el fresado hasta que A libera M en el tiempo 2. El intervalo inactivo del taladrado no significa que el planificador se haya olvidado de una operación: A sigue fresando y B ya ha usado el taladrado.

El tiempo total de procesamiento es de 5 unidades, pero está repartido entre dos máquinas. Esa suma no equivale al tiempo transcurrido hasta que termina la fábrica. A la inversa, colocar ambas tareas en el tiempo 0 en una hoja de cálculo sin comprobar las operaciones individuales ocultaría su competencia posterior por el fresado.

El tiempo hasta que termina la última tarea se denomina makespan. Es una medida útil cuando el objetivo es terminar rápidamente todo este conjunto de trabajo. No indica si el pedido de un cliente concreto termina a tiempo. Esa distinción cobra importancia cuando B tiene un plazo urgente.

Dónde aparece la programación job shop en SkyPlanner

En SkyPlanner, las rutas de A y B se convierten en etapas de trabajo ordenadas con estaciones de trabajo aptas: A necesita fresado y luego taladrado, y B necesita taladrado y luego fresado. Configure en el modelo de producción las estaciones de trabajo, los turnos, los operarios, las prioridades y los materiales, e indique las rutas de fabricación y las duraciones de las tareas. El motor de programación respeta la secuencia de etapas definida y selecciona la mejor estación de trabajo apta disponible para cada paso. El software de programación de la producción de SkyPlanner programa automáticamente el trabajo de fabricación discreta teniendo en cuenta la disponibilidad de materiales, los turnos, las prioridades y las fechas de entrega. Los planificadores deciden; la IA obedece mediante prioridades predefinidas.

Una vez que A y B están en el Gantt, Reschedule all, el botón de recálculo de SkyPlanner, también conocido como King Button, hace que Arcturus recalcule el trabajo programado; el Gantt muestra las asignaciones y la secuencia resultantes. Reschedule all no traslada tareas de la pestaña Unscheduled al programa. Establezca la ubicación inicial de las tareas antes de evaluar la reprogramación. Para explorar el flujo de trabajo, pruebe SkyPlanner con datos de demostración o use la función Getting Started asistida por IA en SkyPlanner Assistant; reserve una demo para hablar de sus propias rutas y prioridades.

Los datos de entrada que hacen utilizable un programa job shop

Un algoritmo puede secuenciar el modelo de producción que recibe. El primer cometido del planificador es lograr que ese modelo refleje la planta. Para A y B, empiece por las rutas y compruebe después la disponibilidad y la información de los pedidos que influirá en el programa.

Dato de entrada a comprobarQué establecerDiagnóstico de A y B
Orden del procesoLa secuencia de operaciones refleja las dependencias reales de fabricaciónA requiere fresado antes que taladrado; B requiere el orden inverso
DuracionesCada operación activa tiene una duración positiva y creíbleLa duración del fresado de A no puede quedar vacía al valorar su fecha de finalización
Aptitud de las estaciones de trabajoCada etapa de trabajo tiene al menos una estación de trabajo aptaEl paso de fresado de B necesita una estación de trabajo capaz de realizar esa operación
Disponibilidad operativaLos turnos y la disponibilidad de los recursos productivos se corresponden con tiempo de producción ejecutableM debe estar realmente disponible durante el intervalo asignado a A
OperariosEl modelo de producción refleja la disponibilidad relevante de los operariosNo se puede suponer que A y B se ejecuten de forma independiente si se necesita a la misma persona para ambas
MaterialesSe representa la disponibilidad de los materiales necesariosB puede no poder empezar el taladrado aunque D esté libre
Prioridades y fechas de entregaSe registran la preferencia de negocio prevista y la fecha prometidaSi B es urgente, esa preferencia debe ser visible antes de recalcular

En SkyPlanner, una tarea no puede programarse si alguna etapa de trabajo tiene cero estaciones de trabajo aptas. Si el paso de fresado de B no tiene ninguna estación de trabajo apta, recalcular la programación una y otra vez no reparará la ruta de fabricación que falta. Compruebe primero la aptitud de ese paso. Compruebe también si B sigue sin programar, lo cual es un problema distinto de reordenar el trabajo ya programado.

Getting Started crea estaciones de trabajo, productos y flujos. Los flujos conectan pasos de proceso ordenados, duraciones y la asignación a estaciones de trabajo. Un producto fabricado listo para flujo necesita duraciones positivas y ruta de fabricación para sus operaciones activas. Valide esos aspectos básicos antes de usar el Gantt resultante para evaluar la calidad de la programación.

A continuación, revise la programación a capacidad finita: el trabajo asignado necesita capacidad disponible. Una máquina registrada como disponible durante todo el día dará una imagen distinta a la de otra disponible solo durante un turno concreto. Si un operario es compartido, la programación paralela ilustrativa de A y B requiere también esa comprobación adicional de capacidad.

Conectar los datos de pedidos con el modelo de programación

Los sistemas ERP y MES existentes aportan el contexto de datos de pedidos, productos y producción. SkyPlanner se integra con cualquier sistema ERP o MES mediante su REST API abierta. Utilice la vía de integración para establecer cómo llegarán al programador los datos de producción relevantes y qué sistema los mantiene.

Para A y B, acuerde de dónde proceden sus rutas de fabricación, duraciones, información de materiales y fechas de entrega. Si cambia una fecha de entrega en el ERP mientras el modelo de planificación conserva la anterior, el planificador está evaluando una cuestión de producción distinta. La titularidad de los datos y las actualizaciones coherentes forman parte de la evaluación de la programación, junto al resultado visual.

Métodos de programación y el objetivo al que sirven

Los métodos de programación difieren en cuánta parte del problema tienen en cuenta. Un método local basado en reglas de despacho elige la siguiente operación lista según un criterio. Un modelo de optimización matemática considera restricciones y un objetivo especificados. Un programador automático de la producción conecta los cálculos de programación con el modelo de producción que mantiene la fábrica.

EnfoquePunto de partida útilCompromiso a analizar
Primero en llegar, primero en ser atendidoMantener un orden de llegada comprensibleUna operación larga temprana puede retrasar trabajo urgente posterior
Fecha de entrega más próximaAtender a los plazos que se acercanUna tarea urgente puede seguir esperando a una predecesora o a un recurso productivo no disponible
Tiempo de procesamiento más cortoAdelantar las operaciones cortas que están listasEl trabajo más largo puede esperar aunque su compromiso con el cliente sea importante
Ratio críticoComparar el tiempo hasta la fecha de entrega con el tiempo de procesamiento restanteEl ratio requiere estimaciones actualizadas del trabajo restante
HolguraComparar el tiempo hasta la fecha de entrega menos el tiempo de procesamiento restanteUna holgura pequeña indica urgencia, pero no elimina los conflictos de recursos
Optimización matemáticaExplorar un objetivo definido, como el makespanLa respuesta depende de las restricciones y del objetivo incluidos en el modelo
Programación automática de la producciónRecalcular las asignaciones a partir de rutas de fabricación, disponibilidad y prioridades mantenidasUnos datos de entrada incorrectos siguen dando una imagen incorrecta de la planta

El tiempo de procesamiento más corto (SPT) ofrece una garantía concreta en el modelo básico de una sola máquina: cuando hay tareas independientes disponibles a la vez, se conocen los tiempos de procesamiento y el trabajo se ejecuta sin interrupciones ni tiempos de preparación dependientes de la secuencia, minimiza el tiempo de flujo medio y el inventario en proceso medio. Esa garantía no se extiende automáticamente a un job shop con rutas cruzadas. Los apuntes docentes sobre programación job shop de la Universidad de Washington explican el resultado para una sola máquina y el papel del SPT en la reducción del inventario en proceso.

En el ejemplo de A y B, elegir primero la breve operación de taladrado de B es solo una parte de la decisión. A todavía puede ocupar el fresado cuando B llegue a él. El planificador debe anticipar el siguiente recurso productivo compartido, y no juzgar la secuencia únicamente por la hora de finalización de la primera operación.

Para una carga de trabajo estable y sencilla, un enfoque transparente basado en reglas de despacho puede resultar útil. Con rutas cruzadas y cambios frecuentes, el planificador necesita una forma de evaluar repetidamente los efectos aguas abajo.

Antes de comparar resultados, formule el objetivo de forma explícita. Además del makespan, entre los objetivos figuran el retraso (cuánto terminan las tareas después de sus fechas de entrega) y el tiempo de flujo (tiempo desde la liberación hasta la finalización, incluidas las esperas). ¿Busca terminar rápidamente todo este grupo, proteger la fecha de entrega al cliente de B o averiguar qué promesa puede sostenerse con la capacidad disponible? Compare las programaciones con el mismo objetivo y los mismos datos de producción. Un mejor makespan por sí solo no puede responder a las tres preguntas.

¿Qué cambia cuando B es urgente o una máquina no está disponible?

Supongamos que B vence en el tiempo 2 en el mismo ejemplo hipotético. En la programación con solapamiento anterior, B termina en el tiempo 3. Para cumplir su fecha límite más temprana, el planificador puede darle el fresado antes que a A:

TareaPrimera operaciónSegunda operaciónFinalización
BTaladrado D: de 0 a 1Fresado M: de 1 a 2Tiempo 2
AFresado M: de 2 a 4Taladrado D: de 4 a 5Tiempo 5

El fresado espera deliberadamente de 0 a 1 para estar disponible cuando B termine el taladrado. B cumple la fecha límite ilustrativa, pero el conjunto completo termina más tarde. Por tanto, mantener todas las máquinas ocupadas en el primer momento posible no siempre es la mejor decisión para un pedido urgente.

Se trata de una disyuntiva entre prioridades. El planificador decide qué compromiso importa y comprueba el efecto sobre A. En SkyPlanner, las prioridades preestablecidas aportan esa dirección a la programación automática; después, el planificador revisa el Gantt frente al objetivo de producción y los recursos productivos disponibles.

Supongamos ahora que M deja de estar disponible durante el intervalo de fresado planificado de A. Actualizar la disponibilidad cambia las opciones factibles tanto para A como para B, aunque ninguna de las dos rutas de fabricación haya cambiado. Si otra máquina es realmente apta, la elección de máquina pasa a ser relevante. Si ninguna lo es, hay que resolver la falta de capacidad de fresado antes de que cualquiera de las dos tareas pueda completar su ruta.

El recurso limitante también puede cambiar con la mezcla de pedidos. El fresado condiciona el solapamiento del ejemplo, pero añadir trabajo con mucho taladrado cambia la carga de D. Revise los cuellos de botella de producción en el contexto de la carga de trabajo actual. No deduzca cuál será el siguiente cuello de botella únicamente a partir de la máquina más ocupada en la programación de la semana pasada.

Al revisar una programación actualizada, siga la tarea afectada a lo largo de sus operaciones restantes. En el caso de B, terminar antes el taladrado solo ayuda si el fresado puede seguirle. En el caso de A, un hueco de taladrado disponible solo ayuda una vez completado el fresado.

Qué comprobar antes de dejar atrás la hoja de cálculo

Una hoja de cálculo puede representar el orden de las operaciones de A y B, sus duraciones y la ocupación de las estaciones de trabajo. Con un modelo pequeño y estable, el planificador puede revisar los conflictos directamente. El trabajo resulta más difícil de mantener cuando un cambio obliga a revisar muchas operaciones dependientes, calendarios de recursos y prioridades de clientes.

Utilice un escenario de producción representativo para evaluar la siguiente herramienta. Incluya rutas que se cruzan, como las de A y B, una fecha límite urgente y un cambio de disponibilidad. Primero revise el modelo de datos de entrada; después, la programación resultante. Una línea de tiempo bien presentada no compensa una ruta de fresado que falta o un turno incorrecto.

Una secuencia de evaluación útil es la siguiente:

1. Asigne a cada operación su predecesora, su duración y su estación de trabajo apta.

2. Confirme la disponibilidad de materiales y de recursos productivos para el período de producción previsto.

3. Confirme cómo pasan a programarse las tareas nuevas, con independencia del recálculo del trabajo ya existente.

4. Defina las prioridades y las fechas de entrega que determinan la decisión.

5. Revise el avance de cada tarea en el Gantt y la carga de trabajo de los recursos compartidos.

6. Modifique un dato de entrada y examine las consecuencias tanto para el pedido urgente como para el resto del trabajo.

El caso publicado de Eskomatic, empresa de mecanizado por encargo, ofrece una observación operativa útil: las colas de trabajo manuales eran solo una parte de la dificultad. La visibilidad limitada de los materiales hacía más difícil anticipar la escasez de materiales. Eskomatic describe colas de trabajo más claras en el Gantt y una programación automática de la carga que ayudan a fijar las fechas de entrega. En su caso, resultó importante ver a la vez el trabajo próximo y las condiciones necesarias para ejecutarlo.

Para su propia evaluación, reúna esos dos aspectos: ¿puede el equipo entender la cola de trabajo y refleja esta los materiales y la capacidad realmente disponibles? En el caso de A y B, eso significa explicar tanto por qué B espera a M como si alguna de las dos tareas puede comenzar con los insumos disponibles.

Inicie una prueba de SkyPlanner para explorar datos de demostración o el Getting Started asistido por IA. Reserve una demo con rutas representativas, disponibilidad de estaciones de trabajo y un cambio de prioridad para ver cómo se aplica el flujo de programación a su producción.

Preguntas frecuentes

¿Qué es la programación job shop?

La programación job shop determina cuándo se ejecuta cada operación en un recurso compartido, respetando la secuencia de la ruta de cada tarea. Su dificultad distintiva es la interacción entre rutas diferentes: en el ejemplo, B puede terminar el taladrado y aun así esperar al fresado porque A lo ocupa. Conviene evaluar los tiempos a nivel de operación, no solo las fechas a nivel de pedido.

¿Cuál es la diferencia entre la programación job shop y la programación flow shop?

Un modelo flow shop asigna a todas las tareas la misma secuencia de máquinas. Un modelo job shop asigna a cada tarea su propia secuencia especificada. Si tanto A como B necesitaran fresado seguido de taladrado, compartirían una ruta de tipo flow shop. Las rutas opuestas de este artículo son las que generan el conflicto de programación job shop en la estación de trabajo de fresado.

¿Qué es la programación job shop flexible?

La programación job shop flexible permite que una operación se ejecute en una de varias máquinas aptas. La decisión incluye tanto la asignación de máquina como el momento de ejecución. Si B puede usar una segunda estación de trabajo de fresado adecuada, eso crea una opción de programación adicional. La aptitud debe corresponder a una máquina que realmente pueda realizar la operación, no simplemente a una que tenga tiempo libre.

¿Es lo mismo la producción job shop que la fabricación bajo pedido?

No. La fabricación bajo pedido describe una producción que se desencadena por el pedido de un cliente, mientras que job shop describe un trabajo organizado en torno a rutas de operaciones distintas y recursos compartidos. Las tareas A y B, específicas de cada cliente, podrían ser tareas de fabricación bajo pedido con rutas job shop. Una fábrica que trabaja bajo pedido también puede usar una ruta común, de modo que el desencadenante del pedido no determina la topología de programación.

¿Qué datos necesita una programación job shop?

Empiece por las operaciones ordenadas, las duraciones positivas y las estaciones de trabajo aptas; después añada la disponibilidad de trabajo, los operarios, los materiales, las prioridades y las fechas de entrega. En SkyPlanner, una etapa de trabajo sin ninguna estación de trabajo apta impide que la tarea se programe. Si B no aparece en el Gantt, revise la ruta de fabricación y la colocación inicial antes de valorar el resultado de la reprogramación.

¿Qué método de programación job shop debería usar un planificador de producción?

Elija el método en función del objetivo y de la frecuencia de los cambios. Las reglas de despacho sencillas pueden respaldar decisiones estables; cuando las rutas interactúan, hay que prestar atención a los conflictos de recursos en las etapas posteriores. En el caso de A y B, la programación con el menor plazo total de finalización (makespan) no coincide con la que protege la fecha de entrega más temprana de B. Compare los métodos con los mismos datos de entrada y la misma prioridad de cliente.

¿Se puede construir una programación job shop en Excel?

Sí, una hoja de cálculo puede representar rutas, duraciones y ocupación de estaciones de trabajo, pero debe comprobar las secuencias de operaciones y los conflictos de recursos, no solo el solapamiento de fechas de pedidos. Cuando los cambios afectan repetidamente a operaciones dependientes, evalúe cuánta conciliación manual exige el modelo y si el planificador puede explicar con fiabilidad las asignaciones de recursos y las fechas de finalización actualizadas.

¿Reschedule all programa las tareas de la pestaña «Sin programar»?

No. Reschedule all recalcula las tareas que ya están colocadas en el Gantt; no coloca las tareas de la pestaña «Sin programar». En el caso de A y B, compruebe primero la colocación: ¿se ven ambas tareas en el Gantt? Si B sigue sin programar, resuelva su colocación inicial antes de comparar las dos rutas. Así se distingue una tarea ausente de una cuestión de secuenciación, y el planificador evalúa el trabajo que realmente se incluye en el recálculo.

Jussi Mäntylä

Especialista en planificación de producción, SkyPlanner

Cree un cronograma de producción más claro con SkyPlanner

Conecte sus datos, revise el primer plan y mantenga a los planificadores en control de cada programación que se publique.