Chapter 35 Quiz: Insurance and Government Systems

Test your understanding of COBOL in insurance and government systems. Each question has one correct answer. Try to answer without looking at the chapter text first, then check your answers.


Question 1

Why are COBOL table-driven rate lookups preferred over hardcoded IF/ELSE chains for insurance premium calculations?

a) Table-driven lookups execute faster than IF/ELSE chains b) Tables can be loaded from external files, allowing rate changes without recompiling the program c) COBOL does not support nested IF statements d) Table-driven lookups require less memory

Answer **b) Tables can be loaded from external files, allowing rate changes without recompiling the program** Insurance rates change frequently -- annually for most lines of business, and sometimes more often in response to regulatory filings or market conditions. Hardcoding rates in IF/ELSE chains requires a code change, recompilation, and redeployment for every rate update. Table-driven lookups allow actuaries to update a rate file without any code changes. This separation of data from logic is a fundamental design principle in insurance systems.

Question 2

In an auto insurance premium calculation, what is a "rating factor"?

a) A fixed dollar amount added to the base premium b) A multiplier applied to the base premium based on a risk characteristic like driver age, territory, or vehicle type c) The insurance company's profit margin d) The deductible amount selected by the policyholder

Answer **b) A multiplier applied to the base premium based on a risk characteristic like driver age, territory, or vehicle type** Rating factors are numerical multipliers that adjust the base premium up or down based on the policyholder's risk profile. A factor of 1.00 means no change, below 1.00 means a discount (lower risk), and above 1.00 means a surcharge (higher risk). The final premium is typically the base premium multiplied by all applicable rating factors. For example: $1,000 base * 1.30 (urban territory) * 1.45 (young driver) * 1.00 (sedan) = $1,885.

Question 3

What is the purpose of the OCCURS clause in the following insurance data structure?

       01  WS-DIAGNOSIS-CODES.
           05  WS-DIAG-CODE  PIC X(07) OCCURS 4 TIMES.

a) It creates 4 separate variables named WS-DIAG-CODE b) It defines a table of 4 diagnosis code entries, each 7 characters, accessible by subscript c) It limits the program to processing only 4 records d) It repeats the field definition 4 times in the compiled object

Answer **b) It defines a table of 4 diagnosis code entries, each 7 characters, accessible by subscript** In health insurance claims processing, a single claim can have multiple diagnosis codes (ICD-10 codes that describe the patient's conditions). The OCCURS clause creates a table that stores up to 4 diagnosis codes, accessed as WS-DIAG-CODE(1) through WS-DIAG-CODE(4). This is essential for claims that involve multiple related diagnoses.

Question 4

What is a "loss ratio" in insurance, and what does a loss ratio of 75% indicate?

a) It means 75% of policyholders filed claims; indicates poor underwriting b) It means 75 cents of every premium dollar goes to paying claims; indicates the company retains 25 cents for expenses and profit c) It means 75% of claims are denied d) It means the company lost 75% of its capital

Answer **b) It means 75 cents of every premium dollar goes to paying claims; indicates the company retains 25 cents for expenses and profit** Loss ratio = Incurred Claims / Earned Premiums * 100. A 75% loss ratio means that for every $1.00 of premium collected, $0.75 goes to pay claims. The remaining $0.25 covers operating expenses, commissions, taxes, and profit. A loss ratio that is too high (above 100%) means the company is paying more in claims than it collects in premiums for that line of business. A loss ratio that is too low may attract regulatory scrutiny for excessive pricing.

Question 5

In COBOL claims processing, what is "adjudication"?

a) Resolving a legal dispute between insurer and policyholder b) The systematic process of evaluating a claim, applying plan rules, and determining the payment amount c) Cancelling a policy for non-payment of premium d) Transferring a claim to a reinsurer

Answer **b) The systematic process of evaluating a claim, applying plan rules, and determining the payment amount** Adjudication is the core business process of insurance claims systems. A COBOL adjudication program reads each claim, validates the data, checks eligibility, applies the plan's benefit rules (deductibles, copays, coinsurance, coverage limits), determines the allowed amount, calculates the payment, and produces an Explanation of Benefits (EOB). Large insurers adjudicate millions of claims per day in batch COBOL programs.

Question 6

What is the correct calculation for patient responsibility given the following parameters?

Allowed amount:      $1,000.00
Deductible remaining:  $200.00
Coinsurance:              20%
Copay:                  $25.00

a) $200.00 + $25.00 = $225.00 b) $200.00 + ($800.00 * 20%) + $25.00 = $385.00 c) $1,000.00 * 20% = $200.00 d) $200.00 + ($1,000.00 * 20%) + $25.00 = $425.00

Answer **b) $200.00 + ($800.00 * 20%) + $25.00 = $385.00** The calculation proceeds in order: (1) Apply the copay ($25.00). (2) Apply remaining deductible to the allowed amount ($200.00). (3) Calculate coinsurance on the amount after the deductible: $1,000 - $200 = $800, and 20% of $800 = $160.00. (4) Total patient responsibility = $25.00 + $200.00 + $160.00 = $385.00. The plan pays $1,000.00 - $385.00 = $615.00. Option (d) is wrong because coinsurance applies after the deductible, not on the full allowed amount.

Question 7

In Social Security tax calculation, what happens when an employee's year-to-date earnings reach the wage base limit ($168,600 in 2024)?

a) All payroll taxes stop for the rest of the year b) Social Security tax stops, but Medicare tax continues on all earnings c) Both Social Security and Medicare taxes stop d) The tax rate doubles for earnings above the limit

Answer **b) Social Security tax stops, but Medicare tax continues on all earnings** The Social Security (OASDI) tax of 6.2% applies only to earnings up to the annual wage base ($168,600 for 2024). Once an employee's year-to-date earnings exceed this limit, no further Social Security tax is withheld for the remainder of the year. However, the Medicare tax of 1.45% has no wage base limit -- it applies to all earnings. Additionally, an extra 0.9% Medicare tax applies to individual earnings over $200,000. COBOL payroll systems must track YTD earnings to handle the Social Security cap correctly.

Question 8

True or False: In a workers compensation insurance premium calculation, an Experience Modification Rate (EMR) of 0.85 means the employer's premiums will be 15% lower than the manual rate.

a) True b) False

Answer **a) True** An EMR (also called an experience mod or e-mod) is a multiplier applied to the manual premium. An EMR of 1.00 means average loss experience. An EMR of 0.85 means the employer's loss experience is 15% better than average, resulting in a 15% premium reduction. Conversely, an EMR of 1.25 would mean 25% higher premiums due to worse-than-average losses. The EMR is calculated by the National Council on Compensation Insurance (NCCI) or a state rating bureau based on the employer's 3-year claims history.

Question 9

What is the COBOL EVALUATE statement commonly used for in insurance systems?

           EVALUATE WS-VEHICLE-CLASS
               WHEN 'SD'
                   MOVE 1.00 TO WS-CLASS-FACTOR
               WHEN 'SV'
                   MOVE 1.10 TO WS-CLASS-FACTOR
               WHEN 'TK'
                   MOVE 1.05 TO WS-CLASS-FACTOR
               WHEN 'SP'
                   MOVE 1.35 TO WS-CLASS-FACTOR
               WHEN OTHER
                   MOVE 1.00 TO WS-CLASS-FACTOR
           END-EVALUATE

a) Sorting vehicles by class b) Implementing multi-way branching to assign rating factors based on classification codes c) Validating that the vehicle class field is numeric d) Counting the number of vehicles in each class

Answer **b) Implementing multi-way branching to assign rating factors based on classification codes** The EVALUATE statement (equivalent to a switch/case in other languages) is the natural choice for mapping classification codes to rating factors, status codes to descriptions, coverage codes to limits, and similar code-to-value lookups in insurance systems. It is clearer and more maintainable than nested IF/ELSE chains, and the WHEN OTHER clause provides a safe default for unexpected codes. Insurance systems are full of coded values that must be translated, making EVALUATE one of the most frequently used statements.

Question 10

What is the purpose of the "out-of-pocket maximum" in a health insurance plan?

a) It limits how much the insurance company pays per claim b) It caps the total amount the patient pays in deductibles, copays, and coinsurance during a plan year; after reaching it, the plan pays 100% c) It is the maximum premium the employer can charge d) It limits the number of claims a member can file per year

Answer **b) It caps the total amount the patient pays in deductibles, copays, and coinsurance during a plan year; after reaching it, the plan pays 100%** The out-of-pocket maximum (OOPM) protects patients from catastrophic medical expenses. Once a patient's deductibles, copays, and coinsurance for covered services reach the OOPM (e.g., $5,000), the plan pays 100% of allowed amounts for the rest of the year. COBOL claims adjudication programs must track year-to-date out-of-pocket spending per member and apply the OOPM rule when processing each claim.

Question 11

In a government benefits system, why is it important to use table-driven income thresholds rather than hardcoded values?

a) Tables use less disk space b) Federal poverty guidelines and benefit thresholds are updated annually, and table-driven designs allow updates without code changes c) COBOL cannot compare numeric values directly d) Hardcoded values cause compilation errors

Answer **b) Federal poverty guidelines and benefit thresholds are updated annually, and table-driven designs allow updates without code changes** Government benefit programs like SNAP (food stamps), Medicaid, TANF (cash assistance), and Social Security adjust income thresholds, benefit amounts, and tax brackets annually based on inflation, legislative changes, or regulatory updates. Table-driven designs allow system administrators to update a parameter file or database table without modifying, recompiling, and testing the COBOL program. This is especially critical in government systems where incorrect benefits can affect millions of recipients.

Question 12

Analyze the following code for an insurance premium calculation. What is the final premium?

       01  WS-BASE-PREMIUM   PIC S9(5)V99 COMP-3 VALUE 1000.00.
       01  WS-AGE-FACTOR     PIC S9V99    COMP-3 VALUE 1.25.
       01  WS-TERR-FACTOR    PIC S9V99    COMP-3 VALUE 1.10.
       01  WS-CLAIMS-DISC    PIC S9V99    COMP-3 VALUE 0.90.
       01  WS-FINAL-PREMIUM  PIC S9(5)V99 COMP-3.

           COMPUTE WS-FINAL-PREMIUM ROUNDED =
               WS-BASE-PREMIUM * WS-AGE-FACTOR
               * WS-TERR-FACTOR * WS-CLAIMS-DISC

a) $1,237.50 b) $1,325.00 c) $1,100.00 d) $2,475.00

Answer **a) $1,237.50** The calculation is: $1,000.00 * 1.25 * 1.10 * 0.90 = $1,237.50. The age factor increases the premium by 25%, the territory factor by 10%, and the claims-free discount reduces it by 10%. Note that the 0.90 claims discount factor represents a 10% discount (multiplying by 0.90 is equivalent to subtracting 10%). The order of multiplication does not matter because multiplication is commutative.

Question 13

What is the DRG (Diagnosis Related Group) system used for in Medicare claims processing?

a) Classifying outpatient doctor visits by specialty b) Grouping inpatient hospital stays into clinically similar categories with predetermined payment amounts c) Determining patient eligibility for Medicare d) Calculating Medicare Part B premiums based on income

Answer **b) Grouping inpatient hospital stays into clinically similar categories with predetermined payment amounts** The DRG system classifies each inpatient hospital admission into one of approximately 750 groups based on the diagnosis, procedures performed, patient age, and complications. Each DRG has a relative weight that reflects the average resource intensity of cases in that group. Medicare pays the hospital a fixed amount per DRG (base rate * DRG weight * adjustments) regardless of the actual costs incurred. This prospective payment system incentivizes efficiency. COBOL programs at Medicare intermediaries process millions of DRG-based claims using table lookups of DRG weights and payment formulas.

Question 14

True or False: In a COBOL insurance system, a claim status field using 88-level condition names makes the code more readable than checking character values directly.

       05  WS-CLAIM-STATUS   PIC X(01).
           88  CLAIM-PENDING  VALUE 'P'.
           88  CLAIM-APPROVED VALUE 'A'.
           88  CLAIM-DENIED   VALUE 'D'.

      * Using 88-level:
           IF CLAIM-APPROVED
               PERFORM 5000-PROCESS-PAYMENT

      * Without 88-level:
           IF WS-CLAIM-STATUS = 'A'
               PERFORM 5000-PROCESS-PAYMENT

a) True b) False

Answer **a) True** The 88-level condition names make the code self-documenting. `IF CLAIM-APPROVED` reads like English and immediately conveys the business meaning, while `IF WS-CLAIM-STATUS = 'A'` requires the reader to know what 'A' represents. Insurance and government systems process hundreds of status codes, reason codes, coverage codes, and classification codes. Using 88-level conditions for all coded values significantly improves readability and reduces the risk of using the wrong literal value. If the code value ever changes, only the 88-level definition needs updating, not every IF statement that references it.

Question 15

In workers compensation insurance, what is the "experience modification rate" (EMR) used for?

a) Adjusting the employee's wage for inflation b) Modifying the insurance premium based on the employer's actual loss history compared to expected losses for their industry c) Calculating the disability benefit amount d) Determining the tax rate for the employer

Answer **b) Modifying the insurance premium based on the employer's actual loss history compared to expected losses for their industry** The EMR compares an employer's actual workers compensation claims over a 3-year period to the expected claims for similar businesses in the same industry and size category. If actual losses are lower than expected (good safety record), the EMR is below 1.00 and the premium is reduced. If actual losses exceed expectations (poor safety record), the EMR exceeds 1.00 and the premium increases. The EMR is a key metric that employers monitor closely, as it directly impacts their insurance costs.

Question 16

What is wrong with the following claims processing code?

           IF WS-BILLED-AMOUNT > WS-ALLOWED-AMOUNT
               SUBTRACT WS-ALLOWED-AMOUNT FROM WS-BILLED-AMOUNT
                   GIVING WS-WRITE-OFF
           END-IF

           SUBTRACT WS-DEDUCTIBLE FROM WS-ALLOWED-AMOUNT
               GIVING WS-AFTER-DED

           COMPUTE WS-PLAN-PAYMENT ROUNDED =
               WS-AFTER-DED * 0.80

           COMPUTE WS-PATIENT-COINS ROUNDED =
               WS-AFTER-DED * 0.20

a) The COMPUTE statements are syntactically wrong b) It does not handle the case where the allowed amount is less than or equal to the remaining deductible, which would make WS-AFTER-DED negative c) The write-off calculation is incorrect d) ROUNDED should not be used with multiplication

Answer **b) It does not handle the case where the allowed amount is less than or equal to the remaining deductible, which would make WS-AFTER-DED negative** If the allowed amount ($175.00) is less than the remaining deductible ($500.00), the subtraction produces a negative result. The plan should pay $0 and the entire allowed amount should apply to the deductible. The fix is to check: if the allowed amount is less than the remaining deductible, apply the full allowed amount to the deductible and set the plan payment to zero. Only the portion of the allowed amount exceeding the deductible should be subject to coinsurance.

Question 17

In the SNAP (food stamp) benefit formula, what does "30% of net income" represent?

a) The household's tax obligation b) The amount the household is expected to spend on food from their own income, deducted from the maximum allotment to determine the benefit c) The maximum benefit amount d) The administrative cost of the program

Answer **b) The amount the household is expected to spend on food from their own income, deducted from the maximum allotment to determine the benefit** The SNAP benefit formula assumes that participating households can contribute 30% of their net income toward food purchases. The SNAP benefit makes up the difference between this expected contribution and the cost of a nutritionally adequate diet (the maximum allotment). For example, if the maximum allotment is $766 and the household's net income is $1,500, the expected food contribution is $450 (30% * $1,500), and the SNAP benefit is $766 - $450 = $316. This is why lower-income households receive larger benefits.

Question 18

What is an "Explanation of Benefits" (EOB) and how is it typically generated in a COBOL system?

a) A marketing document describing insurance coverage options, generated by a web application b) A detailed statement sent to the patient showing how each claim was processed, generated as a report file by the batch claims adjudication program c) An internal memo between insurance adjusters d) A government-mandated form completed by the healthcare provider

Answer **b) A detailed statement sent to the patient showing how each claim was processed, generated as a report file by the batch claims adjudication program** The EOB is a document that explains how the insurance company processed a claim. It shows the billed amount, allowed amount, amount applied to deductible, copay, coinsurance, plan payment, and patient responsibility for each service. In a COBOL batch system, the claims adjudication program writes EOB records to an output file during claims processing. These records are later formatted into printable or electronic EOB documents and sent to members. The EOB is a regulatory requirement under ERISA and state insurance laws.

Question 19

What is the "combined ratio" and what does a combined ratio of 103% tell you?

a) The ratio of premiums to claims; 103% means excellent profitability b) The sum of the loss ratio and expense ratio; 103% means the company is spending $1.03 for every $1.00 of premium collected, resulting in an underwriting loss c) The ratio of new policies to renewals; 103% means growth d) The percentage of claims that are approved

Answer **b) The sum of the loss ratio and expense ratio; 103% means the company is spending $1.03 for every $1.00 of premium collected, resulting in an underwriting loss** Combined ratio = loss ratio + expense ratio. A combined ratio above 100% indicates an underwriting loss: the insurer is paying more in claims and expenses than it collects in premiums. A combined ratio below 100% indicates an underwriting profit. Even with a combined ratio above 100%, an insurer may still be profitable overall because of investment income earned on premium float. However, sustained combined ratios above 100% are unsustainable and indicate pricing or underwriting problems.

Question 20

In a pension benefit calculation using the formula "1.5% * Final Average Salary * Years of Service," what is the monthly benefit for an employee with a final average salary of $90,000 and 30 years of service?

a) $2,700.00 b) $3,375.00 c) $40,500.00 d) $1,350.00

Answer **b) $3,375.00** Annual benefit = 1.5% * $90,000 * 30 = 0.015 * $90,000 * 30 = $40,500 per year. Monthly benefit = $40,500 / 12 = $3,375.00 per month. This is the "single life" annuity benefit. If the retiree elects a joint and survivor option, the monthly amount is reduced by a factor that depends on the survivor percentage and the ages of both the retiree and the beneficiary. Pension benefit calculations require COMP-3 arithmetic because the annual benefit formula involves multiplication of large salary figures by small percentage factors.

Question 21

Why do government COBOL systems often use VSAM (Virtual Storage Access Method) files instead of simple sequential files?

a) VSAM is required by federal law b) VSAM files support keyed access for real-time lookups and can be updated in place, which is essential for systems like Social Security where individual records must be accessed and updated by SSN c) Sequential files cannot store numeric data d) VSAM uses less disk space than sequential files

Answer **b) VSAM files support keyed access for real-time lookups and can be updated in place, which is essential for systems like Social Security where individual records must be accessed and updated by SSN** Government systems must frequently look up individual records by identifier (Social Security Number, case number, policy number) for both batch processing and online inquiries. VSAM KSDS (Key-Sequenced Data Sets) provide indexed access by key, allowing direct retrieval of any record without scanning the entire file. VSAM also supports in-place updates (REWRITE), which is necessary for updating benefit amounts, status codes, and payment records. Sequential files would require reading the entire file to find one record, which is impractical for files with millions of records.

Question 22

True or False: In an insurance batch processing system, it is acceptable to process claims without ON SIZE ERROR handling because claim amounts are always within expected ranges.

a) True b) False

Answer **b) False** ON SIZE ERROR handling is mandatory in insurance claims processing for several reasons: (1) Catastrophic claims (e.g., major medical or liability) can produce amounts that exceed expected field sizes. (2) Calculation errors, data corruption, or invalid input can produce unexpected results. (3) Without ON SIZE ERROR, an overflow silently corrupts the result, potentially paying the wrong amount -- either overpaying (financial loss) or underpaying (regulatory violation and customer harm). (4) Regulatory examinations require evidence that system controls detect and handle arithmetic exceptions. Insurance regulators explicitly look for error handling in system audits.

Question 23

What is the purpose of "IBNR" (Incurred But Not Reported) reserves in insurance accounting?

a) To refund premiums to policyholders who cancel b) To estimate the liability for claims that have occurred but have not yet been reported to the insurer, ensuring financial statements reflect the true liability c) To pay commissions to insurance agents d) To fund marketing campaigns for new products

Answer **b) To estimate the liability for claims that have occurred but have not yet been reported to the insurer, ensuring financial statements reflect the true liability** Not all claims are reported immediately. An auto accident might take days to report, a workers comp injury weeks, and a liability claim months or even years. IBNR reserves estimate the total value of these unreported claims based on historical patterns, industry statistics, and actuarial analysis. COBOL programs calculate IBNR reserves by applying development factors to historical claim data. Without IBNR reserves, an insurer's financial statements would understate liabilities and overstate profitability, which is a regulatory violation and potentially fraudulent.

Question 24

In the following government payroll code, what is the purpose of the year-to-date wage comparison?

           COMPUTE WS-REMAINING-SS-WAGES =
               WS-SS-WAGE-BASE - WS-YTD-WAGES
           IF WS-REMAINING-SS-WAGES <= ZEROS
               MOVE ZEROS TO WS-SS-TAX
           ELSE
               IF WS-CURRENT-GROSS > WS-REMAINING-SS-WAGES
                   COMPUTE WS-SS-TAX ROUNDED =
                       WS-REMAINING-SS-WAGES * WS-SS-RATE
               ELSE
                   COMPUTE WS-SS-TAX ROUNDED =
                       WS-CURRENT-GROSS * WS-SS-RATE
               END-IF
           END-IF

a) To calculate the employee's bonus b) To determine whether the employee has exceeded the Social Security wage base, and if so, to tax only the remaining taxable amount rather than the full gross pay c) To calculate overtime pay d) To verify the employee's identity

Answer **b) To determine whether the employee has exceeded the Social Security wage base, and if so, to tax only the remaining taxable amount rather than the full gross pay** This code implements the Social Security wage base cap. It first calculates how much taxable wage room remains (wage base minus year-to-date wages). If no room remains (already exceeded the cap), no Social Security tax is due. If the current gross pay would push the employee over the cap, only the remaining amount is taxed. Otherwise, the full gross pay is taxed at the Social Security rate. This is a critical pattern in payroll programming that must be implemented precisely to avoid over-withholding or under-withholding FICA taxes.

Question 25

What regulatory requirement drives the need for COBOL insurance systems to maintain complete audit trails of every calculation?

a) ISO 9001 quality certification b) State insurance department market conduct examinations, which require insurers to demonstrate that premiums are calculated correctly and claims are paid accurately according to policy terms c) The Sarbanes-Oxley Act applies only to banking d) Audit trails are optional best practices, not regulatory requirements

Answer **b) State insurance department market conduct examinations, which require insurers to demonstrate that premiums are calculated correctly and claims are paid accurately according to policy terms** Insurance companies are regulated by state insurance departments, which conduct regular market conduct examinations. During these examinations, regulators review a sample of policies and claims to verify that (1) premiums are calculated according to the filed and approved rating plan, (2) claims are paid accurately and promptly, (3) benefits match the policy terms, and (4) no unfair discrimination exists in pricing or claims handling. The COBOL system must maintain detailed records of every rate factor applied, every calculation performed, and every payment decision made so that any transaction can be reconstructed and verified during an examination.

Scoring Guide

Score Rating
23-25 Excellent -- You have a thorough understanding of COBOL in insurance and government systems
20-22 Good -- Strong foundation with minor gaps to address
17-19 Satisfactory -- Review the topics you missed before proceeding
14-16 Needs Improvement -- Re-read the relevant sections and practice with exercises
Below 14 Re-study -- Work through the chapter examples and exercises before retaking the quiz