The Number We Almost Missed: Finding Hidden Rework in SAP ChaRM

The Number That Did Not Add Up

A first pass through the change management (ChaRM) records suggested a small, easily ignored problem: a modest number of changes moving backward through the process instead of forward. Reading the records the way the system actually writes them told a different story: the real figure was more than twenty five times higher than the naive count suggested.

That gap between what a shallow read shows and what actually happened is, in a sense, the whole story.

The Question Behind the Analysis

ChaRM is how every SAP change travels from an initial idea to production: through development, testing, quality checks, approvals, and transport. Most changes complete that journey without incident. But some take dramatically longer than others, and nobody could say precisely why, or where the time was actually going. It was a suspicion, not a fact, until the data was reconstructed in full.

How the Investigation Was Done

Every status change in ChaRM is timestamped and stored, which means the process leaves a complete digital footprint for anyone willing to read all of it. Rather than sampling a handful of changes, the analysis reconstructed the complete journey of tens of thousands of changes across several hundred thousand recorded status events, spanning a multi year period.

That scale mattered for three reasons a small sample would have hidden entirely:

What the Data Revealed

Out of the full eighteen step process, nearly all measurable waste concentrated in exactly two backward moving steps, and both of them return a change all the way to In Development.

Bottleneck Share of all rework
Developer Test back to Development 52.3%
Transport to Test back to Development 32.8%
Everything else in the whole process about 15%

The cost compounds. Changes that flow through cleanly complete in well under a month. Changes caught in even moderate rework take well over two months, more than twice as long. Rework is not a contributing factor to slow changes; it is the dominant one.

Two Problems Wearing the Same Disguise

Both bottlenecks look identical on the surface, simply labeled rework, but the data showed they are two structurally different problems requiring opposite fixes.

The fast loop. A change is sent forward for testing and bounces back almost immediately; a large share return in under an hour. At that speed, no real testing has occurred. This is a technical failure: a locked file, a missing dependency, a code error present the moment the change was promoted. Each loop is cheap and quiet, which is exactly why it never raises an alarm, yet it recurs constantly, and some individual changes cycle through it hundreds of times.

The slow rejection. A change transports successfully into the test system, sits there while testers do real work, and then, often days or weeks later, gets sent back. This is a genuine functional failure: the change worked mechanically but did the wrong thing, and testers correctly caught it, but only after real time and effort had already been spent.

Treating these as one problem would fix half of it while leaving the other half untouched. The fast loop needs a technical gate before promotion. The slow rejection needs earlier and better functional testing; no automated check can catch it, because the change is technically sound. It is simply wrong.

The Core Finding

The evidence for the fast loop is blunt. A large share of that rework returns in under an hour, meaning the change was never going to pass. It was promoted before it was ready, and the test was really just confirmation of a failure that had already happened. Every one of those promotions produced guaranteed, entirely avoidable rework.

A small number of changes got trapped in this loop for a median of around three months.

What Changes as a Result

Acting on just the fast loop fixes alone is projected to cut total rework by 20 to 30 percent, moving the overall rework rate down by roughly a quarter to a third.

What the Data Could Not Tell Us

Every number here traces back to the verified analysis, and where the data could not answer a question, that limit was stated rather than guessed. The dataset explains what happens and how often. It does not fully explain the reasoning behind any single case, and the recommendations target the pattern, not any individual.

The Takeaway

Most of the wasted effort in a complex enterprise change process does not come from difficult problems. It comes from pushing work forward before it is actually ready, hoping the next stage will catch it. The data made that pattern impossible to ignore, and impossible to fix by guessing. It had to be measured first.