Industry Applications (EDGEBIC)

Protecting Delivery Dates on Long Aerospace Routings

User Solutions TeamUser Solutions Team
|
10 min read

On a routing that runs twenty operations over three months, the delivery date is not lost at the end, it is lost quietly at operation three and discovered six weeks later. EDGEBIC by User Solutions protects long-routing delivery dates by pinning the constrained operation to the date it must start, planning feeding work backward to that pin with a buffer in front of it, and planning downstream work forward from it with a buffer protecting the promise. For aerospace and defense programs where one autoclave, one heat-treat cycle, or one NDT station governs everything, that is where the date is actually defended.

The mechanism is documented in anchor scheduling explained, and the shop-floor view of the same feature in scheduling a fab shop around its bottleneck. This post is about long routings and date protection.

Why Padding Every Step Fails

The instinct on a long routing is to add safety time everywhere: a little queue on each operation, a generous cycle time, a week of slack at the end.

It fails for a structural reason. Safety distributed across twenty operations is consumed by the ordinary variation of those twenty operations. Each step spends its own cushion because the cushion is there, and by the time real trouble arrives, none of it is left. Meanwhile the plan carries months of accumulated padding that inflates the quoted lead time and holds material longer than necessary.

Concentrating protection where the risk actually lands is the alternative. On a program routing, that is around the resource everything funnels through.

Three Buffers, Three Jobs

Anchoring places time in three specific positions rather than twenty vague ones.

BufferSits betweenProtects against
Constraint bufferThe last feeding operation and the constrained oneUpstream variation delaying the constraint
Feeding bufferAdded to the duration of the step that directly feeds the constraintVariation in the single most critical handoff
Shipping bufferThe constraint's end and the first downstream operationPost-constraint variation eating the delivery date

That structure is deliberate. The constraint is the one resource whose lost hour cannot be recovered anywhere in the plan, so the plan spends its safety protecting the constraint's start and the customer's date, and lets everything else run tight.

The Sizing, Worked

Buffers default to off. When enabled and the anchored work center is confirmed as the highest-loaded resource for that job:

  • Constraint buffer is 50 percent of the total upstream path, with a one-hour floor.
  • Shipping buffer is 25 percent of the total downstream path, with a two-hour floor.
  • Feeding buffer is 10 percent of the upstream path, applied only to the direct feeder.

Take a routing with 30.5 hours of upstream work and 16.5 hours downstream, anchored at Monday 07:00.

BufferCalculationValue
Constraint30.5 × 0.5015.25 h
Shipping16.5 × 0.254.125 h
Feeding30.5 × 0.103.05 h

The plan that falls out: the deadline for upstream work becomes Sunday 15:45, the direct feeder (11.5 hours plus its 3.05-hour feeding buffer) starts Sunday 01:12, and the first operation starts Friday 06:12. The constrained operation runs Monday 07:00 to Tuesday 05:00. Downstream begins Tuesday 09:08 and the job completes Wednesday 01:38.

What that buys. If the first operation runs an hour late, the constraint buffer absorbs it and the constraint still starts Monday 07:00. If the constraint finishes two hours early, the shipping buffer means downstream still starts at the planned time with a cushion, and Wednesday 01:38 is a committed date rather than an optimistic one.

What it costs. The job starts earlier and holds material longer. That is a business trade, not a technical one, and it is worth making explicitly rather than by default.

When the anchored work center is not the highest-loaded resource for the job, fixed and much smaller values are used instead: two hours, four hours, and one hour. The demand-proportional sizing is only justified when the pinned operation genuinely governs the job.

Confirming the Constraint Rather Than Assuming It

The scheduler does not take your word for which resource is the constraint. It computes a load factor for every work center in the routing, as demand hours divided by daily available capacity, and confirms the anchor only when its load equals the maximum.

On a 200-piece routing that might read:

Work centerLoad factor
Heat treat2.75
Mill1.31
Turn1.06
Inspect1.00
Grind0.78

Unambiguous. But the comparison is tight, and an anchor at 1.80 when another resource sits at 1.81 is not confirmed, so it receives the small fixed buffers rather than the proportional ones. If your two heaviest resources are close on a given part number, check which one the load calculation picked before assuming the plan is protected the way you intended. The check is per job at that quantity, so the same routing at a different quantity can shift which resource carries the load.

Two Flags, Both Required

Worth stating plainly because it catches most people once: flagging a work center as the bottleneck does not, on its own, activate anything. The mode is triggered by a target start date on that job's schedule row for the constrained operation. Without it the job schedules forward normally, however the work center is flagged.

The flag matters for buffer sizing. The date matters for activation. Set both.

Precedence on a Job That Wants Several Things

A long-routing aerospace job can easily carry three intentions at once: a whole-order backward direction to align to the due date, a planner's dragged start pins on specific operations, and a target start on the constrained operation. The resolution is fixed and worth knowing.

  1. Anchor. A pinned target start date is a user-placed constraint harder than the due date, and the anchor path already performs its own backward and forward split around the pin. A whole-order backward pass on top would fight the pin.
  2. Actuals. Once any operation carries an actual date, remaining operations plan forward from the resume point. "Start as late as possible" has no meaning for a job already running.
  3. Planned pins. Operations dragged to explicit start dates express forward intent and schedule from those dates.
  4. Whole-order backward. Only a new job with a real due date, no anchor, no actuals, and no pins runs backward.
  5. Forward. The default.

One consequence to internalize: setting a target start date on any schedule row silently converts a backward job into an anchored job on the next run. That is deliberate, and it is why the backward planning workflow edits the earliest-start floor rather than the target start date. See forward versus backward scheduling for the concepts and backward scheduling in EDGEBIC for the whole-order behavior.

The Due Date Stays Yours

The scheduler never writes to the order's due date. The computed completion lands on the schedule's own end date, which is what the grid shows. Your customer promise is not overwritten by a planning run, which on a government program is the difference between a schedule you can show and one you cannot.

What Happens as the Job Progresses

Long routings get rescheduled many times, and the behavior changes as the job moves through the constraint.

Before the constraint runs, each reschedule re-anchors and re-plans the feeding and downstream work around the pin, respecting whatever actuals exist upstream.

Once the constrained operation is complete, it is filtered out before the anchor is looked for, the match fails, and the remaining operations plan forward. That is correct: you cannot backward-plan feeder work to an operation that already happened. The completed operation's actual dates are preserved regardless, because completed work is never moved by a reschedule.

Between those states, an in-progress constraint keeps its machine and its start while the rest of the plan flows from where it actually stands.

Two Configuration Traps

Empty splits. If every routing operation shares the same level and the same sequence number and none use next-in-sequence links, the pre-anchor and post-anchor lists both come back empty. The constrained operation is scheduled at its target and nothing else is placed. Populating sequence numbers in order prevents this, and on a twenty-operation routing it is the kind of gap that is easy to introduce during an import.

Buffers silently zero. Dynamic buffer sizing is off by default. A job that anchors correctly but shows no gap in front of the constraint is almost always a job whose buffer flag was never set, not a sizing bug.

The Rest of the Aerospace Picture

Date protection is one of three answers a program schedule has to give. The routing question is answered by traceable routings, and the qualified-labor question by scheduling certified operators. A long routing usually needs all three, because the delivery date is exposed to all three kinds of variation. When the long routing is really several routings converging, scheduling the sub-assemblies that feed final assembly covers the multi-level case.

For the category background, aerospace and defense scheduling covers the fundamentals, production bottleneck identification covers finding the constraint, and the defense and aerospace manufacturing scheduling page is the shorter evaluation read. The industry fit guide maps the rest, and EDGEBIC is the product hub.

Ready to defend your delivery dates? Contact US for a demo and bring the routing that funnels through one resource.

By placing time deliberately where variation actually lands rather than padding every step. A constraint buffer sits between the last feeding operation and the constrained one, so an upstream overrun is absorbed instead of delaying the constraint. A shipping buffer sits between the constraint's end and the downstream work, so post-constraint variation does not consume the delivery date.

When dynamic sizing is enabled and the anchored work center is genuinely the highest-loaded resource for that job, the constraint buffer is half the upstream path with a one-hour floor, the shipping buffer is a quarter of the downstream path with a two-hour floor, and a feeding buffer of ten percent of the upstream path is applied to the step that directly feeds the constraint. When the anchor is not the highest-loaded resource, smaller fixed values of two, four, and one hour are used.

The anchor wins. A pinned target start date is a user-placed constraint that is harder than the due date, and the anchor path already performs its own backward and forward split around the pin, so a whole-order backward pass on top of it would fight the pin. The resolution order is anchor, then actuals, then planned pins, then whole-order backward, then plain forward.

No, and they default to off. With buffers disabled the job still anchors: the constrained operation is pinned at its target date, feeding work is planned backward to it and downstream work forward from it, but all three buffers are zero and the plan runs tight with no protection against variation. Enabling them is a deliberate choice that trades earlier material release for date reliability.

Expert Q&A: Deep Dive

Q: Our routings run twenty operations over three months and everything funnels through one autoclave. A two-hour slip at operation three shows up as a missed delivery six weeks later. Why does adding safety time to every step not fix it?

A: Because safety spread across twenty steps gets consumed by the ordinary variation of those twenty steps and is gone by the time it is needed, while safety concentrated where the risk actually lands is still there. Anchoring puts the protection in three specific places: between the last feeding operation and the constraint, between the constraint and the downstream work, and on the single step that directly feeds the constraint. On a routing with 30.5 hours of upstream work and 16.5 downstream, that is 15.25 hours protecting the autoclave, 4.125 hours protecting the delivery, and 3.05 hours on the direct feeder. An upstream hour lost is absorbed and the autoclave still opens on its pinned date, which is the only date that governs the whole program.

Q: How much confidence should we have that the anchored work center is really our constraint?

A: The scheduler checks rather than assuming. It computes a load factor for every work center in the routing as demand hours divided by daily available capacity, and confirms the anchor only when its load equals the maximum. On a 200-piece routing that might read 2.75 for heat treat against 1.31 for milling, 1.06 for turning, and 0.78 for grinding, which is unambiguous. The comparison is tight though, so an anchor at 1.80 when another resource sits at 1.81 is not confirmed and gets the smaller fixed buffers instead of the proportional ones. If your two heaviest resources are close, check which one the load calculation picked before assuming the plan is protected the way you intended.

Frequently Asked Questions

Ready to Transform Your Production Scheduling?

User Solutions has been helping manufacturers optimize their production schedules for over 35 years. One-time license, 5-day implementation.

User Solutions Team

User Solutions Team

Manufacturing Software Experts

User Solutions has been developing production planning and scheduling software for manufacturers since 1991. Our team combines 35+ years of manufacturing software expertise with deep industry knowledge to help factories optimize their operations.

Let's Solve Your Challenges Together