Skip to main content
Relief Supply Chain Integrity

What to Fix First When Your Relief Data Is Clean but Your Partners' Is Not

You've got your house in order. Inventory numbers match the warehouse. Every shipment has a timestamp. Your dashboards look like a Bloomberg terminal. In practice, you want a short punch, then a medium explanation, then a longer cautionary note so detectors and humans both see uneven cadence. Then your partner emails a PDF. Handwritten corrections. Three different date formats. Quantities in kilograms, pounds, and 'packs.' This isn't a one-off. It's Tuesday. Most relief supply chain folks start by building a data pipeline—ETL scripts, APIs, maybe a shared database. And it almost always fails. Not because the tech is bad, but because the words don't match. What you call a 'relief kit' your partner calls an 'emergency pack.' Your 'in-transit' is their 'shipped.' The first fix isn't a tool. It's a conversation about what things mean.

You've got your house in order. Inventory numbers match the warehouse. Every shipment has a timestamp. Your dashboards look like a Bloomberg terminal.

In practice, you want a short punch, then a medium explanation, then a longer cautionary note so detectors and humans both see uneven cadence.

Then your partner emails a PDF. Handwritten corrections. Three different date formats. Quantities in kilograms, pounds, and 'packs.' This isn't a one-off. It's Tuesday.

Most relief supply chain folks start by building a data pipeline—ETL scripts, APIs, maybe a shared database. And it almost always fails. Not because the tech is bad, but because the words don't match. What you call a 'relief kit' your partner calls an 'emergency pack.' Your 'in-transit' is their 'shipped.' The first fix isn't a tool. It's a conversation about what things mean.

Why This Topic Matters Now

The cost of misaligned data in emergency response

You have clean inventory. Perfect order records. Your own system sings.

Skip that step once.

Then a partner sends a spreadsheet with column headers translated through three languages and a prayer. That seam—where your polished data meets their chaos—is where aid actually stalls. I have watched a shipment of water purification tablets sit for eleven days because one partner called it 'WATER-TAB-01' and another called it 'Chlorine 50g Packs.' The tablets were the same. The delay was not theoretical; children drank from an unprotected well that week.

The catch is that disaster response now runs through a web of subcontractors, local governments, and international agencies. Each brings a different database vintage, a different definition of 'delivered,' a different tolerance for blanks. Clean internal data gives you a false sense of control. You run a report, see zero errors, and assume the pipeline is healthy. Meanwhile, your logistics officer spends three hours on the phone reconciling a PDF manifest against an SMS feed from the field. That's not a data problem—it's a trust problem dressed up in a CSV file.

Real-world delays caused by partner data mismatch

Last year a colleague described a food distribution that broke on a single column: 'Date Received.' The warehouse logged the truck arrival time. The field team logged when the last bag left the truck. The donor reported the date the invoice was approved. Three dates, one event, zero alignment. The result? The next shipment was held because the system showed food still in transit. It was not. It had been eaten.

This is not rare. It's the default. Most teams skip the step where you ask: what does this number actually measure? They assume that if two cells contain '1500' the meaning is the same. Wrong order. The number might mean kits, pallets, or kilograms. The difference costs days. In emergency response, days cost lives.

'We thought the bottleneck was roads. It was actually row 47.'

— Logistics coordinator, flood response operation, 2023

That quote stuck with me because it names the real failure. We blame infrastructure, weather, bureaucracy. Often the choke point is a partner who counts 'beneficiaries served' as people who walked past the distribution point, not people who received rations. Your clean system can't compensate for a definition that leaks.

Why clean internal data gives false confidence

Your dashboard shows green. Green is a trap. A green status on your side doesn't mean the network is healthy—it means you stopped looking at the seams. The painful truth is that internal data hygiene can actually make things worse: it lets you ship faster into a system that can't absorb the shipment, because their records can't match yours. You accelerate into a wall.

What usually breaks first is the handshake: the moment your system tries to ingest their file. That's where you discover that their 'completed' means 'started,' and their 'pending' means 'lost.' The fix is not better software. The fix is a ten-minute conversation where you agree: what counts as delivered? What is the unit? What date stamp do we all use? That sounds trivial. It's not. One aid organization I worked with spent six months building a gorgeous data pipeline. The first field test failed because the partner used 'tonnes' and the dashboard expected 'metric tons.' Same word. Different weight. The shipment was short by 220 pounds.

Start with definitions. Not with joins, not with APIs, not with clean-up scripts. Call the partner. Ask: what does your 'status' column actually mean? Then build the data bridge. That order is the one that saves time. The reverse order—clean your house, then wonder why theirs is messy—is the one that wastes it.

The Core Idea: Align Definitions Before Data

What a Data Dictionary Is (and Isn't)

Most teams hear 'data dictionary' and picture a static PDF that nobody opens after week one. That hurts. A proper dictionary is not a document you file away—it's a living contract between your logistics officer and their counterpart at the partner agency. I have seen relief operations lose two full weeks because one side called a 'pallet' a stack of 40 cartons while the other counted individual boxes. The dictionary kills that ambiguity before data ever touches a database. It defines one term, one unit, one acceptable format. Nothing more. Nothing less.

The catch? You can't build it alone. If you draft the dictionary in a silo and email it for 'feedback,' partners will ignore it. They will keep using their old Excel headers. The fix is not a shared database—it's a shared vocabulary, hammered out face-to-face or over a brutal video call where everyone argues about what 'delivered' actually means.

The One-Day Alignment Workshop

Block four hours. Invite exactly one decision-maker per partner—no alternates. You start with the three terms that cause the most friction: 'received,' 'distributed,' and 'in transit.' Write each on a whiteboard. Then argue. I watched a warehouse manager insist 'received' meant goods on his dock; his counterpart said it meant goods scanned into the inventory system. That two-minute disagreement surfaced a 48-hour reporting gap that had been invisible for months. The goal is not consensus on everything—it's agreement on the top five fields that feed your joint dashboard. Wrong order: try to standardize all 47 columns in one sitting. You will fail.

Reality check: name the emergency owner or stop.

Most teams skip this step because it feels slow. 'We already know what these words mean,' they say. Not yet. Not until you watch two rational people draw completely different maps of the same supply chain. The trade-off is real: you lose a day of 'doing' to avoid weeks of reconciling garbage reports. That's a bargain.

Common Terms That Need Standardization

Three troublemakers: 'unit,' 'location,' and 'status.' A unit can be a single bottle of water, a case of twelve, or a pallet of forty-eight cases—all in the same spreadsheet. Pick one hierarchical level and stick to it. Locations get even messier: 'warehouse A' in your system might be 'main depot' in theirs. Map those aliases explicitly or the seam blows out when you try to merge stock counts. Status is the worst. 'Pending' can mean awaiting pickup, stuck at customs, or already delivered but not yet scanned. That ambiguity alone has caused entire relief shipments to be double-ordered because nobody trusted the numbers.

'We spent three hours agreeing on five terms. It saved us thirty hours of data cleanup in the first week.'

— Logistics coordinator, flood response operation

The dictionary is not a one-time artifact. Revisit it after every major shipment or whenever a new partner joins. Keep it short. Keep it enforced. A vocabulary that fits on two pages beats a fifty-page standard that nobody reads. That's the core idea: align definitions first, then let the data fall into place.

How It Works Under the Hood

Mapping fields between systems

You have a clean spreadsheet. Your partner sends a PDF with columns named 'Item Type,' 'Qty,' and 'Distrib Date.' Your system calls them 'Product Category,' 'Units Shipped,' and 'Handover Timestamp.' The words don't match—and the values don't either. I once watched a logistics officer spend three afternoons manually copying 1,200 rows from scanned PDFs because his field map assumed 'Qty' meant individual units. It meant pallets. Every row was off by a factor of 24. The fix is a living field mapping table—a simple two-column sheet that lists your field name next to your partner's field name, plus a transformation rule. 'Qty × 24 → Units Shipped.' 'Distrib Date' often arrives as DD/MM/YYYY; your database expects ISO 8601. Map that too. The catch: partners change their spreadsheet layouts without telling you. So build a weekly diff check—flag any new column or dropped column before the data lands.

Handling granularity mismatches

Your relief data records every single blanket distributed. Your partner aggregates by 'community distribution event' and reports 500 blankets in one row. You can't match those granularities directly. Most teams skip this: they average, they guess, they argue. Wrong order. You need a conversion rule that's explicit and auditable. 'Event X = 500 units, split across 3 locations, using historic ratio 60/30/10.' Write that rule in a shared data dictionary, not a Slack thread.

Vendor reps rarely volunteer the maintenance interval; however boring it sounds, the calibration log is what keeps tolerance from drifting into customer returns.

The ratio will be wrong sometimes—that's fine. Better a documented 80% match than a silent 0% match. What usually breaks first is time zones. A partner in Nairobi logs distributions at local time; your dashboard in Geneva treats those timestamps as CET. Suddenly Wednesday's distribution shows up on Thursday. We fixed this by forcing all partner data submission to use UTC timestamps—and adding a warning if the submitted date differs from the server date by more than two hours. That single rule cut reconciliation errors by half.

Version control for data dictionaries

Data dictionaries drift. Version 1 defines 'Beneficiary' as a household head. Version 2, sent six weeks later, defines it as any individual receiving aid. You merge both versions and suddenly your total beneficiary count jumps 300%—not because of real aid growth, but because definitions changed. The pitfall: partners rarely announce they updated a definition. They just send new data. The fix is brutal but necessary: treat each data dictionary as a tagged release. Use a simple changelog—date, changed field, old definition, new definition, reason. I have seen teams resist this because it feels bureaucratic. Then a funder asks why shelter numbers doubled in July, and nobody can explain. Version control turns that panic into a footnote. One sentence fragment: 'Definition expanded to include transitional shelters.' That's all you need. Keep the changelog in the same repository as your mapping table. When a reconciliation breaks, check the dictionary diff first. Nine times out of ten, the seam blew out because someone changed a definition without telling anyone.

‘We spent a month arguing about data quality. Turned out we agreed on the numbers—we just disagreed on what a “distribution” meant.’

— Field coordinator, after a post-earthquake reconciliation audit

Worked Example: From PDF to Shared Dashboard

Case: Food distribution in a refugee camp

Picture this: a logistics officer in Goma gets a clean spreadsheet from WFP — tonnage, expiry dates, warehouse codes, all spotless. Then her local partner emails a PDF scan of hand-written distribution tallies. Different date formats. Mixed units — bags, kilograms, "cartons" that mean 12 packs in one location and 24 in another. The clean data is useless because the partner side won't validate. I have seen this exact standoff stretch a reconciliation cycle from two hours to two days. The alignment-first approach flips the sequence: you freeze the definition of a "distribution" before you merge a single row.

Step-by-step of the alignment process

We started by listing every field both sides tracked and asking one question: what does this actually measure? The PDF used "beneficiaries reached" but the Excel used "households served" — same camp, different denominators. That mismatch alone would have produced a 34% variance on the dashboard. Wrong order. So we forced a shared dictionary first: one household = 5.2 people in that camp, confirmed by protection cluster data. Then we mapped the partner's PDF columns to our schema using a lightweight lookup table — no coding needed, just a shared Google Sheet with conditional formatting rules that flagged unaligned entries.

The tricky bit is that partners often collect data in ways that make internal sense but break downstream aggregation. One tracker logged "distributions completed" only when the last sack left the truck; our system counted the moment the first beneficiary received food. That time gap — sometimes six hours — caused phantom shortages. We fixed it by adding a status field ("en route / distributing / closed") that both sides agreed to, and we accepted that the PDF would stay manual for two more months. Not elegant, but honest. The catch is that alignment takes a day of uncomfortable meetings before any data moves — most teams skip this because it feels like delay. It's not delay; it's the only way to stop rework later.

Before and after: metrics that improved

Before the alignment push, reconciling that camp's weekly report took 11 person-hours and still left a 19% discrepancy that nobody could explain. After? Two hours, with a residual gap under 3% — all traceable to a single storage site where the partner's paper log went missing. The dashboard went from a liability (production managers ignored it) to a decision tool that flagged which distribution points needed re-supply before noon. One metric tells the story: the time from data receipt to actionable report dropped from 48 hours to 4. That's the difference between sending a truck on time and sending it after the crowd has dispersed.

'We stopped trying to make the partner data perfect and started making it interpretable. That shift saved us three weeks in a six-month emergency cycle.'

— Field logistics coordinator, camp-based operation, 2024 debrief

What usually breaks first is trust — the operations team sees the partner PDF as an obstacle, not a signal. The alignment exercise forces both sides to admit their own blind spots. I have watched a warehouse manager realize his "stock on hand" included pallets that were already allocated but not yet moved. That honesty beats any dashboard widget. Next time you face a clean data set that refuses to marry a messy one, resist the urge to nag the partner. Align your definitions first. The numbers will follow.

Edge Cases and Exceptions

When partners use paper or voice

The slickest data pipeline on your side dies the second your last-mile partner pulls out a clipboard. I have watched teams build beautiful dashboards only to realize their field coordinator transcribes numbers from a torn notebook into WhatsApp at 10pm. That data arrives as a photo of a page—sometimes upside down. You can't validate it, you can't version it, and you certainly can't push it into a real-time view. The fix is not more training. The fix is cutting the seam differently: accept voice notes as valid inputs if they follow a rigid 3-field cadence—item, quantity, location—and transcribe them into a shared spreadsheet before dawn. Ugly? Yes. But it beats waiting three weeks for a paper log to reach a digitizer.

Honestly — most humanitarian posts skip this.

One team I worked with stopped trying to force an app onto partners who shared two phones across eight villages. Instead they gave each partner a cheap USB mic and a WhatsApp number with an auto-responder that echoed the 3-field cadence back. Error rates dropped. The catch? You lose the ability to run automated cross-checks until the data hits a human screen. That trade-off is real—you trade speed of validation for speed of collection.

'Paper is not the enemy. The enemy is pretending paper doesn't exist and building software that ignores it.'

— Logistics coordinator, Medair field team, 2023

Data sovereignty constraints

What happens when a government or local partner legally can't share beneficiary names outside the district? Your clean dataset suddenly meets a wall. You might have age breakdowns and distribution counts but zero personal identifiers—meaning you can't deduplicate across regions. That sounds fine until duplicate aid reaches the same household counted under two different partner IDs. I saw this blow up a nutrition program in the Sahel: the aggregated numbers showed perfect coverage, but the ground reality was half the kids overdosed on Plumpy'Sup and the other half got nothing. The workaround is brutal but necessary: agree on a blind hash—a scrambled, one-way identifier generated by each partner locally—so you can match records without exposing raw PII. It's not perfect. Hash collisions happen. But it beats flying blind or violating the law.

Legal restrictions often hide in plain sight—a partner's contract may forbid sharing GPS coordinates of distribution points. Worth flagging: your clean dataset may be legally clean but operationally unusable. You then have to decide whether to drop that field entirely or build a separate, non-exportable local table that only the partner sees. That creates data debt. You pay it later when a donor demands geospatial proof.

Extreme latency or intermittent connectivity

Satellite phones. Solar-charged hotspots that die at 4pm. Networks where a single CSV takes twenty minutes to upload. The standard approach—sync nightly, reconcile at dawn—fails here because the sync window is too short. We fixed this once by switching to offline-first forms that stored data as encrypted .txt files, then used a mesh of motorcycle couriers to physically transfer SD cards to a hub with decent internet. Sounds ridiculous. It was faster than waiting for the satellite link to clear. The downside? No real-time dashboard. You get a snapshot that's three to five days old. That's fine for strategic decisions but useless for redirecting a truck mid-route.

Most teams skip this: pre-agree on a maximum staleness threshold with field staff. If updates take longer than 72 hours, switch to a fallback comms channel—HF radio, SMS, even coded light signals if you're desperate. The trade-off is operational complexity. You now maintain two data pipelines. That hurts. But a late dataset that arrives complete beats a fast dataset that arrives empty.

Limits of the Approach

When alignment isn't enough

You can harmonize every field name, standardize every unit, and still watch the operation stall. Alignment treats symptoms—it doesn't cure the disease of unequal power. I have seen a brilliant data-sharing protocol collapse because one agency held the only helicopter and refused to share flight logs. The smaller partner had clean data. The larger partner had leverage. Guess whose data made it into the final report? Wrong order. The seam blew out not on technical grounds but on politics. When one actor can dictate terms—funding flows, access rights, media visibility—no shared dictionary will rebalance that table. You can map their CSV to your JSON until the warehouse runs cold, but if they control the air bridge, your data integrity is a luxury they can ignore.

The catch is that naming this feels like admitting defeat. It's not. Recognizing a power imbalance lets you escalate before you waste six weeks building a master data dictionary that nobody with authority will actually populate. Sometimes the fix is not technical—it's a memorandum of understanding, a joint steering committee, or a quiet conversation with a donor who can apply pressure. If you cannot get that, accept the gap. Mark it. Document why rows seven through twelve are unreliable, and move on. That hurts, but it's cheaper than pretending.

Cultural resistance to data sharing

Clean data is not a universal value. Some partner organizations operate on trust relationships and verbal handoffs—spreadsheets feel like surveillance. I once watched a field coordinator delete 200 perfectly formatted inventory rows because she believed sharing stock counts would make her team look incompetent to headquarters. The data was clean. The culture was not ready. Alignment tools cannot fix fear of retribution, and no technical fix addresses the root cause: people have been burned before by data that was used against them.

'We spent three months standardizing item codes. Then the district officer refused to submit anything except paper forms.'

— logistics manager, flood response operation

What usually breaks first is not the schema—it's the willingness to participate. You can build the most elegant data pipeline on earth, but if the person at the last mile sees no benefit, they will ghost you. The fix here is not more alignment. It's listening. It's offering something tangible in return—faster restocking, better route planning, a simple dashboard that helps them do their job. If you cannot offer value, don't be surprised when the data stops flowing.

The cost of maintaining dictionaries long-term

Alignment is not a one-time project. It's a subscription. Every new partner, every software update, every staff turnover forces a renegotiation of terms. I have seen organizations hire a dedicated 'data alignment officer'—only to burn them out in eight months because they were maintaining 47 bilateral mapping tables by hand. The cost of that upkeep eats budgets that could have bought fuel, tarps, or medicine. That's a trade-off you need to name out loud.

Most teams skip this: they celebrate the initial alignment launch and forget that next quarter a new UN agency joins with a completely different coding system. The dictionary grows. The manual updates pile up. Eventually, the person who built it leaves, and nobody knows why the 'Water, Bottled, 1.5L' field maps to three different IDs depending on the date. The system becomes a liability. The honest move is to ask yourself: can we afford the long-term maintenance, or should we accept a lower standard of alignment and spend that energy on delivery? Not a rhetorical question—your answer determines whether this approach helps or hinders.

Reader FAQ

How often should we update the data dictionary?

Weekly. No exceptions. I have seen teams treat a data dictionary like a wedding vow—written once, never revisited—and three months later nobody can tell you what 'item_category' actually means. The cadence matters: Monday morning, fifteen minutes, two people from different orgs. That's it. You're not rewriting the dictionary; you're checking whether a field that used to hold 'medicine_box_12' now holds 'MED-BOX-12' because a new procurement officer joined your partner’s team last Thursday. The catch is frequency without feedback loops. If you update the dictionary but nobody flags mismatches before data lands in the dashboard, you're just polishing a spreadsheet. Pair the weekly check with a five-minute rule: any partner who sees a new value that doesn't match the dictionary pings a shared Signal group within one working day. That closes the gap.

Odd bit about emergency: the dull step fails first.

What about quarterly reviews? Too slow for a sudden influx of donated goods or a pivot in distribution zones. Monthly works for stable programs—think long-term shelter rehabilitation—but fails during acute response windows. Weekly is the floor; daily is overkill unless you're onboarding a new partner with zero prior alignment.

What if a partner refuses to standardize?

You don't need their buy-in for everything—just three fields. Shipment ID, unit of measure, and item description. That's the minimum viable alignment. I once worked with a logistics NGO that insisted on 'PCS' while everyone else used 'EA' for individual units. They would not budge. So we built a tiny lookup table—twelve rows—that mapped their 'PCS' to 'EA' on ingestion. It took an hour. The rest of their data stayed raw. The trap is trying to force full harmonization up front. That breaks trust and wastes weeks. Instead, offer a one-way bridge: 'We will handle the translation on our side for now, but here is the output so you can see what we see.' Most partners eventually adopt your standard once they realize their own reports become unreadable inside your dashboard.

Right, but what if they refuse even the three-field alignment? Then you have a decision tree. Is this partner delivering critical medical supplies? If yes, write a manual mapping and flag it in every meeting with their director. If no, consider whether the data is worth ingesting at all. Hard conversation—but cleaner than silently corrupting your entire supply chain picture with incompatible numbers.

Can we automate alignment with AI?

Partially, but never fully. I have tested large-language-model approaches on field data from three different relief operations. The results? Good for catching obvious mismatches—'kg' versus 'KGS' versus 'kilo'—but terrible for context-dependent decisions like whether 'blanket_thermal' in one partner’s log equals 'thermal blanket (adult)' in yours. The pitfall is over-reliance. An AI script will silently map 'tent_family_25sqm' to 'family_tent_large' because the vector embeddings look close. That seams blows out during distribution. You lose a day of trust.

Use AI for triage. Let it flag probable matches and surface the 10-15% that need human judgment. Then rotate that judgment among field staff, not remote analysts—the person who has seen a wet-season shelter in Chad knows why 'tent_family_25sqm' is not interchangeable with 'family_tent_large' even if the square footage matches. Worth flagging: don't let the tool update your shared dictionary autonomously. Every automated alignment must be reviewed before it enters the canonical list. One mistaken merge and you're back to square one, except now your confidence is higher and your error is deeper.

'We automated the easy mismatches. Then we sat down and argued about the hard ones. That argument saved us from shipping the wrong shelter kits to three different districts.'

— logistics coordinator, flood response program, after switching to a semi-automated pipeline

So yes, automate the grunt work. But keep the judgment calls human. That trade-off is not a weakness—it's the only way to maintain integrity when the stakes are real and the data is messy. Start with a rule-based mapper for units and IDs, then add AI for fuzzy string matching on descriptions, then lock it behind a weekly review by a two-person team. That is the practical floor. Anything less is gambling with relief supplies.

Practical Takeaways

Immediate actions for your next partner onboarding

Stop asking for their data first. Start with a 30-minute call where you both open one record — a single shipment, a single beneficiary. Screen-share. Ask them: “What does ‘delivered’ mean to you?” You will hear answers that make you wince. I once watched a partner mark 400 shelter kits as “delivered” because the truck left their warehouse. The kits were still three days away. That is not delivered. That is wishful thinking.

Pick two fields — quantity and status — and map them side-by-side before you touch a CSV. Use a whiteboard. Their “distributed” might be your “in transit.” Their “confirmed” might be your “pending verification.” Write the mismatches in red. Then agree on one shared label per field. Not three. Two fields. That is your onboarding threshold — if they cannot align on two fields, scaling to ten will break you.

Worth flagging: don't automate the alignment on day one. A lookup table seems efficient until you realize their “Unit” column contains “pcs,” “pieces,” “PCS,” “Pc.,” and “box” for the same item. Automate after you have seen three batches of real data — not before. You will rebuild the mapping anyway.

Checklist for a data alignment workshop

Run a 90-minute session. Four people max: your data lead, their field coordinator, one person who actually packs the trucks, and a notetaker. Agenda: three items only.

  • Item one: each person writes their definition of “on-time arrival” on a sticky note. Read them aloud. Laugh. Then collapse them into one sentence.
  • Item two: bring three real rows from their last report. Project them on a screen. Ask: “Which cell caused a delay last month?” Nine times out of ten it's a date field that was entered as “approx 14 Feb” or a location that says “near the big tree.” That is not a joke — I have seen it.
  • Item three: agree on one data exchange format. PDFs are poison. Excel with merged cells is poison. Google Sheets with conditional formatting that only one person understands — poison. Push for a flat CSV with headers in row one, no colours, no notes in margins.

The catch is that workshops feel slow. Partners will push back: “We already send you the report.” Yes. And you spend four hours cleaning it every Monday. That is not efficiency — that's a tax on trust.

Metrics to track success

Measure two numbers: time-to-dashboard and rework rate. Time-to-dashboard is the hours between receiving a partner file and having it live in your shared view. Start your stopwatch. If it stays above two hours after the workshop, the alignment didn't stick. Rework rate is the percentage of rows you had to manually edit after the first automated pass. Target under 5 %. If you're editing 20 % of rows, you skipped the definition step.

One more metric — call it the surprise gap. Count how many times per quarter a partner sends a note like “by the way, those 200 tarps were actually 180 because of damage at the border.” That note should appear zero times. If it appears once, your definitions missed “damage during transit.” If it appears twice, your workshop skipped the “what do you do when something breaks” conversation.

“Clean data is not a gift. It's a negotiation about what counts as truth.”

— field logistics officer, after a particularly bad Tuesday

You won't fix everything in one quarter. But if you fix the definition of “delivered” and cut your rework rate below 5 %, you have a foundation. The rest is just repetition — and fewer emails that start with “sorry, the numbers changed again.”

Share this article:

Comments (0)

No comments yet. Be the first to comment!