3.3 KiB
3.3 KiB
ADDED Requirements
Requirement: Charge-off reject metric SHALL be computed from five reject component columns
The system SHALL compute REJECT_TOTAL_QTY as the sum of five reject-related quantity columns.
Scenario: Reject total formula
- WHEN a source record is transformed
- THEN
REJECT_TOTAL_QTYSHALL equalREJECTQTY + STANDBYQTY + QTYTOPROCESS + INPROCESSQTY + PROCESSEDQTY - THEN null component values SHALL be treated as zero
Requirement: Defect metric SHALL remain independent from reject total
The system SHALL compute DEFECT_QTY only from DEFECTQTY and SHALL NOT merge it into REJECT_TOTAL_QTY.
Scenario: Defect independence
- WHEN a record has
DEFECTQTY > 0and reject component sum equals 0 - THEN
DEFECT_QTYSHALL be non-zero - THEN
REJECT_TOTAL_QTYSHALL remain 0
Requirement: Yield-exclusion policy SHALL follow ERP exclusion table
The system SHALL use ERP_PJ_WIP_SCRAP_REASONS_EXCLUDE as the policy source for "not included in yield" scrap reasons.
Scenario: Enabled policy rows
- WHEN exclusion policy is evaluated
- THEN only rows with
ENABLE_FLAG='Y'SHALL be considered exclusion rules
Scenario: Default exclusion behavior
- WHEN
include_excluded_scrap=false(default) - THEN source rows matching enabled exclusion reasons SHALL be excluded before computing yield-related metrics
Scenario: Optional inclusion override
- WHEN
include_excluded_scrap=true - THEN the same matched rows SHALL be included back into metric calculations
Requirement: Move-in denominator SHALL be deduplicated at event level
The system SHALL deduplicate MOVEIN_QTY by event key before rate calculations.
Scenario: Primary dedupe key
- WHEN
HISTORYMAINLINEIDis present - THEN only one row per
HISTORYMAINLINEIDSHALL contributeMOVEIN_QTY
Scenario: Fallback dedupe key
- WHEN
HISTORYMAINLINEIDis missing - THEN fallback dedupe key SHALL use a deterministic composite key from transaction context
Requirement: Reject and defect rates SHALL use the same deduplicated denominator
The system SHALL calculate percentage rates from deduplicated MOVEIN_QTY to ensure comparability.
Scenario: Reject rate formula
- WHEN
MOVEIN_QTY > 0 - THEN
REJECT_RATE_PCTSHALL equalREJECT_TOTAL_QTY / MOVEIN_QTY * 100
Scenario: Defect rate formula
- WHEN
MOVEIN_QTY > 0 - THEN
DEFECT_RATE_PCTSHALL equalDEFECT_QTY / MOVEIN_QTY * 100
Scenario: Zero denominator handling
- WHEN
MOVEIN_QTY = 0 - THEN both rate fields SHALL return 0 and SHALL NOT raise divide-by-zero errors
Requirement: Reject share SHALL describe reject proportion within total loss
The system SHALL calculate reject share against combined reject and defect loss quantities.
Scenario: Reject share formula
- WHEN
REJECT_TOTAL_QTY + DEFECT_QTY > 0 - THEN
REJECT_SHARE_PCTSHALL equalREJECT_TOTAL_QTY / (REJECT_TOTAL_QTY + DEFECT_QTY) * 100
Requirement: Metric naming SHALL preserve semantic meaning across transformations
The system SHALL keep explicit names for charge-off reject and non-charge-off defect metrics.
Scenario: No ambiguous remapping
- WHEN service or export fields are generated
- THEN
REJECT_TOTAL_QTYSHALL NOT be renamed toDEFECT_QTY - THEN
DEFECT_QTYSHALL refer only toDEFECTQTY