Part A: SQL or AI?

Classify each requirement:

  1. Retrieve policies expiring within 30 days.
  2. Calculate the exact days remaining until expiry.
  3. Rank expiring policies by non-renewal risk.
  4. Send reminders to every eligible policyholder.
  5. Predict which policyholder is unlikely to respond.
  6. Retrieve all complaints recorded in the previous 90 days.
  7. Predict whether recent complaint behaviour increases renewal risk.

Choose:

SQL/C# rule
ML prediction
SQL feature preparation + ML prediction

Part B: Engineer features

Convert these raw columns into possible features:

Raw data Engineered feature
CustomerCreatedDate ?
Multiple complaint rows ?
Multiple claim rows ?
LastLoginDate ?
Current and previous premium ?
Multiple payment dates and due dates ?
PolicyType ?

Part C: Detect leakage

Prediction moment:

30 days before policy expiry

Classify each feature as valid or leaking:

  1. Claims recorded before the prediction moment
  2. Renewal payment date
  3. Complaints from the preceding 90 days
  4. Renewal receipt number
  5. Previous successful renewal count
  6. Result of the retention call made after scoring
  7. Premium amount known on the prediction date
  8. Final renewal status

Part D: Modify the ML.NET pipeline

Add this property:

public float CallsAnsweredLast30Days { get; set; }

Then:

  1. Add values to all three practice rows.
  2. Add the property name to numericColumns.
  3. Run the application.
  4. Confirm that the feature vector contains one additional numeric value.

Part E: Design Assessment OS features

For exam-session risk detection, complete:

Prediction moment:
TabSwitchCountLast10Minutes:
FaceMissingSecondsLast5Minutes:
MultipleFaceEventCount:
AudioAnomalyCount:
NetworkDisconnectCount:
CandidateId included as feature?:
Final reviewer decision used as:
Potential future-data leakage:

A risk score should support authorized review; it should not automatically prove malpractice.