Flowchart Logic for a Return-Authorization Process
A returns flowchart works as follows: Start → 'Order value over $500?' If yes → 'Manager approval.' If no → 'Item opened?' If opened → 'Deny return.' If not opened → 'Within 30 days?' If yes → 'Approve.' If no → 'Deny.' The Manager approval branch leads directly to 'Approve' with no further checks. A customer submits a $720 item that was opened and is 45 days old. A second customer submits a $120 item, unopened, 20 days old.
1. Trace both customers through the flowchart.
Read the worked answer
Customer 1 ($720): 'Over $500?' → Yes → Manager approval → Approve. The opened status and 45-day age are never evaluated because that branch bypasses them.
Customer 2 ($120): 'Over $500?' → No → 'Item opened?' → No → 'Within 30 days?' → Yes → Approve.
2. What design flaw does this trace reveal, and how would you fix the chart?
Read the worked answer
The $500+ branch skips the opened-item and 30-day checks, so a high-value, opened, 45-day-old return is approved while a cheaper version of the same problem is denied - an inconsistent policy. Fix: route the Manager approval branch back into the 'Item opened?' decision (or add those checks before approval) so all returns pass the same eligibility gates, with manager approval as an added condition rather than a shortcut.