DEL5 FunctionalTestScripts TraceabilityMatrix
DEL5 FunctionalTestScripts TraceabilityMatrix
DOCUMENT ID VERSION
FRD REFERENCE C L A S S I F I C AT I O N
FRD-BCCNG-001 Confidential
// SECTION 1
Test Overview & Scope
TESTING APPROACH
This document covers functional black-box test scripts for all ten FR modules defined in FRD-BCCNG-
001. Each test case includes preconditions, numbered steps, and a clearly stated expected result. Tests
span positive (happy-path), negative (error/boundary), and role-based scenarios. Security and NFR
testing are outside the scope of this document.
55 10
TOTAL TEST CASES FUNCTIONAL MODULES
54 11
FR REQUIREMENTS TRACED BUSINESS RULES VALIDATED
All test cases follow the format TC-XX-NNN where XX is the module number matching the FR module
(01–10) and NNN is the sequential test number within the module. Each test case references one or
more requirement IDs from the FRD.
2 Test user accounts pre-configured for all six roles: Operations Staff, Senior Reviewer, Operations
Manager, Compliance Officer, System Administrator, AI Auditor.
3 LLM API endpoint configured and accessible. A mock/stub LLM endpoint should also be available
for failure-mode testing.
4 SMTP relay configured (or an SMTP capture tool such as MailHog) for notification testing.
5 At least one SLA matrix configuration loaded with the default values from the FRD SLA table.
Badge Meaning
COULD Derived from a COULD priority requirement — execute when time permits.
TC-01-001 Successful Login with Valid Credentials and MFA Positive MUST
FR-01-01, FR-01-02 Operations Staff Active user account with MFA enrolled (TOTP)
TEST STEPS
1 Navigate to the system login URL. Verify the branded login page is displayed with bank security
disclaimer visible and no version/stack information exposed.
2 Enter a valid corporate email address and correct password. Click Login .
3 When the MFA prompt appears, enter the valid 6-digit TOTP code from the authenticator app.
E X P E C T E D R E S U LT
User is successfully authenticated, MFA challenge completes, and the user lands on the dashboard
appropriate to their role. No internal system information is visible on the login page. Authentication
event is logged in the audit trail with user ID, timestamp, IP address, and device/browser details.
Attempts
TEST STEPS
1 On the login page, enter a valid email and an incorrect Login . Note the error message
password. Click (attempt 1).
5 Log in as a System Administrator, User , locate the locked user, and manually unlock
navigate to Management the account.
E X P E C T E D R E S U LT
After 5 failures the account is locked for 30 minutes and login is denied with a clear message. A
lockout notification email is sent to the registered address. Correct credentials cannot bypass the
lock. Admin unlock restores access. All failed attempts and lockout event are recorded in the audit
trail.
PRECONDITION
Authenticated session active; test data: case draft with unsaved content
TEST STEPS
1 Log in and begin creating a case with raw notes text (do not save).
2 Leave the browser idle for 25 minutes (simulate via session timer manipulation in QA environment).
3 Observe that a warning modal appears at the 5-minute mark before timeout (i.e., at t=25 min
inactivity), offering the option to "Extend Session".
E X P E C T E D R E S U LT
Warning modal appears 5 minutes before the 30-minute timeout. Session expires after full inactivity
period and the user is redirected to login. Upon re-authentication, the unsaved draft content is
restored from server-side temporary storage (24-hour preservation window).
Admin Panel
TEST STEPS
1 Log in as Operations Staff. Observe the navigation menu and confirm no "Admin" or "System
Settings" link is visible.
3 Attempt to view a case belonging to a different team/branch by directly navigating to its case detail
URL.
4 Attempt a direct API call to a privileged endpoint (e.g., user management) using the active session
token.
E X P E C T E D R E S U LT
Admin panel link is hidden from the navigation. Direct URL navigation to /admin returns HTTP
403 and a user-friendly access denied message. Cross-team case access is denied. Privileged API
calls return HTTP 403. No internal system information is revealed in error responses.
TEST STEPS
E X P E C T E D R E S U LT
Browser B presents a choice: terminate the existing session or cancel. Selecting terminate
invalidates the Browser A session — any subsequent action on Browser A redirects to the login
page with a "session terminated" message. Browser B session remains active. The forced session
termination is recorded in the audit log.
TC-02-001 Create New Case — All Required Fields, Valid Data Positive MUST
6 Enter 250 characters of raw notes in the text area. Verify the live character count indicator updates
in real time.
10 Verify the calculated SLA Target Date is displayed (1 business day for High Complaint).
E X P E C T E D R E S U LT
Case is saved as Draft. A unique, immutable Case ID is generated in the correct format. SLA Target
Date is automatically calculated as 1 business day from the Interaction Date (excluding
weekends/holidays). Case creator is set as the assigned agent. All field values are persisted
correctly.
TC-02-002 Raw Notes Minimum Validation — Less Than 20 Characters Negative MUST
TEST STEPS
1 Open the new case creation form. Fill in all mandatory metadata fields.
E X P E C T E D R E S U LT
The "Generate AI Case Note" button remains disabled/greyed out when Raw Notes contain fewer
than 20 characters. An inline validation message indicates the minimum character requirement. The
draft save should either be blocked or saved without the ability to generate AI notes until the
threshold is met.
TC-02-003 Future Date Not Permitted for Interaction Date Negative MUST
TEST STEPS
E X P E C T E D R E S U LT
The system displays a validation error preventing future dates for the Interaction Date/Time field.
Future dates must be blocked both client-side (UI disables/highlights future calendar dates) and
server-side (API returns an appropriate validation error if bypassed).
REQUIREMENT(S) ROLE
PRECONDITION
At least one existing case with known Customer Reference ID on today's date
TEST STEPS
1 Create a new case. Enter the same Customer Reference ID as an existing case created today. Set
the Interaction Date to today.
4 Confirm the system does not block the save (warning only).
E X P E C T E D R E S U LT
A non-blocking warning message appears indicating a potential duplicate (e.g., "A case for this
Customer Reference ID already exists for today"). The save is not blocked — the user can
acknowledge and proceed. The new case is saved successfully with its own unique Case ID.
TC-02-005 CSV File Import with Field Mapping and Validation Report Positive MUST
REQUIREMENT(S) ROLE
PRECONDITION
Test CSV file prepared: 5 valid rows, 2 rows with missing mandatory fields, 1 row with
invalid Priority value
TEST STEPS
1 Navigate to Import . Upload the prepared CSV test file (under 10MB).
2 The field mapping UI appears — map source columns to system fields: Customer Reference ID,
Interaction Type, Channel, Priority, Raw Notes, Interaction Date.
5 Verify the report shows 5 valid records, 2 error records (missing mandatory fields), and 1 error
record (invalid Priority).
6 Download the error report CSV. Verify it lists the 3 rejected records with reasons.
E X P E C T E D R E S U LT
Field mapping UI renders correctly and the named template is saved. Validation summary correctly
identifies 5 valid and 3 error records. Error report CSV is downloadable with row-level error details.
The 5 valid records are imported and appear as Draft cases in the case register with system-
generated Case IDs. Error records are not imported.
REQUIREMENT(S) ROLE
PRECONDITION
Draft case with ≥20 characters in Raw Notes; LLM API available
TEST STEPS
1 Open a draft case with 100+ characters of raw notes. Generate AI Case button is
Verify the Note enabled.
2 Click the button. Observe that it becomes disabled immediately and a loading indicator with
estimated processing time is shown.
6 Verify that 2–6 suggested tag chips appear below the generated note.
E X P E C T E D R E S U LT
AI generation completes successfully. Output is structured into exactly three sections. Each section
can be independently edited. Tag suggestions (2–6) are displayed as clickable chips. The
generation button is re-enabled after completion. The Raw Notes field remains unchanged and
immutable.
REQUIREMENT(S) ROLE
PRECONDITION
Two draft cases: identical raw notes, one typed Complaint and one typed Inquiry;
distinct prompt templates configured for each
TEST STEPS
1 Generate AI note on the Complaint case. Record the prompt template ID shown in the explainability
metadata.
2 Generate AI note on the Inquiry case. Record its prompt template ID.
3 Compare the generated outputs for language tone, structure, and tone.
E X P E C T E D R E S U LT
The two cases use distinct prompt template IDs. Generated outputs differ in tone and structure: the
Complaint case note uses empathy/resolution language while the Inquiry note uses
informational/clarification language. Explainability metadata records the correct prompt template ID
and version for each generation.
REQUIREMENT(S) ROLE
PRECONDITION
TEST STEPS
1 Click Regenerate . Enter feedback: "Make the tone more formal and focus on the fee dispute."
Submit regeneration (attempt 2).
2 Verify a new generation is produced and stored alongside the previous version.
3 Repeat regeneration (with different feedback each time) until attempt 5 is used.
E X P E C T E D R E S U LT
Regenerations 2–5 succeed with each feedback instruction logged in the audit trail (feedback text,
prior output, new output). On the 6th attempt, the Regenerate button is disabled and a message
states the maximum regeneration limit (5) has been reached. The case can still be manually edited.
TC-03-004 LLM API Failure — Graceful Degradation and Manual Negative MUST
Fallback
REQUIREMENT(S) ROLE
PRECONDITION
LLM API endpoint configured to return a 503 timeout error (QA mock)
TEST STEPS
1 Open a draft case with sufficient raw notes. Click Generate AI Case Note .
5 Verify the user can manually type content into the three case note sections without AI generation.
E X P E C T E D R E S U LT
A user-friendly error message appears (no technical stack trace). A Retry button is available. The
case draft and all entered data are preserved. The user can manually author all three case note
sections and save without requiring AI generation. The system remains fully functional for manual
note creation.
TC-03-005 PII Detection — Account Number Masked Before LLM Positive SHOULD
Transmission
REQUIREMENT(S) ROLE
PRECONDITION
PII detection enabled; Raw Notes containing text with a simulated account number (e.g.,
"Account 1234567890")
TEST STEPS
1 Create a draft case with raw notes containing a simulated account number: "The customer's
account 1234567890 was debited incorrectly."
3 After generation, review the AI output for any trace of the original account number.
4 Check the system audit log or LLM request log for the payload sent to [ACCOUNT_NUMBER] ).
the LLM API to verify the account number was masked (should show
E X P E C T E D R E S U LT
The account number is replaced with [ACCOUNT_NUMBER] in the LLM API request payload. The
unmasked raw notes remain intact in the encrypted database field. The AI-generated note does not
contain the literal account number. The PII masking event is logged in the audit trail.
// SECTION 5 · MODULE TC-04
REQUIREMENT(S)
ROLE
PRECONDITION
Draft case with AI-generated or manually authored case note (all three sections ≥100
characters)
TEST STEPS
1 As Operations Staff, open the draft case. Verify all three note sections contain Mark as .
content. Click Reviewed
2 Confirm the status changes Reviewed . Verify an in-app notification is sent to the case
to creator.
4 The finalisation confirmation modal appears. Verify it shows Case ID, Customer Reference ID,
Interaction Type, and all three note section previews.
5 Tick the confirmation checkbox: "I confirm this case note is accurate and Finalise button
complete." The activates.
E X P E C T E D R E S U LT
Status transitions correctly follow Draft Reviewed Finalized. Notifications fire at each step. The
finalisation modal enforces the mandatory checkbox before enabling the Finalise button. Once
Finalized, all fields are read-only and no edit option is accessible for any role. All status changes are
logged in the audit trail with the actor's identity and timestamp.
TC-04-002 Reverse Status Transition Blocked — Finalized Cannot Negative MUST
Revert
TEST STEPS
2 Look for any "Revert to Draft" or "Revert to Reviewed" button or option in the UI — confirm none are
present.
4 Attempt to force a status change via direct API call status: on a finalized case
with "Draft" ID.
E X P E C T E D R E S U LT
No backward transition controls are visible in the UI for any role. The API rejects the reverse
transition with an appropriate error (e.g., HTTP 422 "Invalid status transition"). The Finalized status
is permanent and immutable through all access paths.
FR-04-01 · BR-05 Operations Staff Draft case assigned to the Operations Staff user
TEST STEPS
3 Attempt to directly call the status transition API to set status to "Finalized".
E X P E C T E D R E S U LT
The Finalise button is not rendered in the UI for Operations Staff. The direct API call returns HTTP
403 Forbidden. Operations Staff can only transition cases to Reviewed status.
TEST STEPS
1 Open the AI-generated Interaction section, change one sentence (delete 10 words,
case note. In the Summary add a new phrase). Save.
3 Locate the edit history entry for the Interaction Summary change.
4 Open the diff view and verify that deletions are highlighted in red and additions in green at the
character level.
5 Confirm the editor identity and timestamp are recorded alongside the diff.
E X P E C T E D R E S U LT
A versioned snapshot is created for each saved edit. The diff view correctly shows the exact
characters removed (red) and added (green). The editor's display name and edit timestamp are
visible. Previous versions are preserved and accessible in the edit history.
Acceptance
REQUIREMENT(S) ROLE
PRECONDITION
Tag taxonomy loaded with at least 5 tags across 2 categories; AI generation completed
with tag suggestions returned
TEST STEPS
1 After AI generation, observe the AI-suggested tag chips displayed. Accept one chip and decline
another.
2 Click the tag input field. Type the first 3 letters of a known taxonomy tag. Verify the typeahead
dropdown appears with matching tags.
3 Verify that AI-suggested tags in the typeahead list are visually differentiated (e.g., different colour or
icon).
4 Type a completely new tag name not in the taxonomy. Select it to add as a custom tag.
5 Save the case. Log in as Admin and verify the new custom tag appears in the "Awaiting Approval"
queue.
E X P E C T E D R E S U LT
AI-suggested tags can be individually accepted or declined. Typeahead returns taxonomy matches
with AI tags visually differentiated. Custom tags are created and immediately placed in the Admin's
pending taxonomy approval queue. Each case can hold up to 10 tags (boundary: verify 11th tag is
blocked).
TC-05-001 SLA Date Auto-Calculation Respecting Business Days and Positive MUST
Holidays
REQUIREMENT(S) ROLE
PRECONDITION
Holiday calendar loaded with at least one upcoming bank holiday; SLA matrix loaded with
defaults
TEST STEPS
1 Create a case with Interaction Type = "Service Request", Priority = "Medium". Set Interaction Date
to the Friday before a Monday bank holiday.
2 Save the draft. Record the calculated SLA Target Date displayed.
3 Verify the SLA is 3 business days from the Interaction Date, skipping Saturday, Sunday, and
Monday (bank holiday).
4 Confirm the SLA Target Date field is not manually editable by the agent (BR-08).
E X P E C T E D R E S U LT
The SLA Target Date = Interaction Date + 3 business days, correctly excluding the weekend and the
bank holiday. The SLA date field is read-only to the user. The SLA calculation is based on the
Interaction Date/Time, not the system entry time.
TC-05-002 SLA Recalculation on Priority Override — Audit Logged Positive MUST
REQUIREMENT(S) ROLE
PRECONDITION
TEST STEPS
1 As Senior Reviewer, open the draft case. Change Priority from "Low" to "High".
2 The system prompts for a mandatory override reason. Enter reason text: "Customer escalated via
Branch Manager."
4 Verify the SLA Target Date has been recalculated to the High-priority SLA (1 business day for
Complaint).
5 Open the Audit View for the case and verify the priority override entry shows old priority, new
priority, reason, actor, and timestamp.
E X P E C T E D R E S U LT
Priority change requires a mandatory justification reason from a Senior Reviewer. SLA Target Date
is recalculated based on the new priority. The audit trail records the override with the old value, new
value, reason, actor identity, and timestamp. Operations Staff cannot perform this override.
TEST STEPS
1 Open a Add . Enter a description ("Call customer to confirm refund posted") and a
case. Click Follow- due date 2 business days from today.
up
2 Save the follow-up. Verify it appears in the case's follow-up list with status "Open".
3 Mark the follow-up Completed . Enter a completion remark: "Customer confirmed refund
as received on 15th."
4 Verify the completed follow-up moves to the "Completed Follow-ups" collapsible panel, retaining the
remark, completion timestamp, and completing user.
5 Verify that completing a follow-up with fewer than 10 characters in the remark is blocked.
E X P E C T E D R E S U LT
Follow-up is created and displayed as Open. Completion requires a remark of ≥10 characters
(boundary enforced). Upon completion, the follow-up moves to the completed panel with all
metadata preserved. The follow-up creation and completion are logged in the case audit trail.
TC-06-001 Global Search — Full-Text Search Across Case ID and Positive MUST
Notes
REQUIREMENT(S) ROLE
PRECONDITION
At least 10 cases exist; one case has a unique keyword "mortgagereview2025" in its raw
notes
TEST STEPS
1 Navigate to the Case Register. Enter "mortgagereview2025" in the global search bar.
3 Verify search results highlight the matching keyword in context within the results list.
4 Verify results are scoped to the user's data access level (no cases from other teams appear).
E X P E C T E D R E S U LT
Search returns the correct case within 2 seconds. Matching terms are highlighted in the result
context. Results respect team/branch data scoping. Searching by exact Case ID returns a direct
match. No results are shown for data outside the user's scope.
TC-06-002 Advanced Filter — Multi-Select and SLA Breach Quick Filter Positive MUST
REQUIREMENT(S) ROLE
PRECONDITION
Cases exist across multiple statuses, priorities, and SLA states (including at least 2
SLA-breached cases)
TEST STEPS
1 Open the Advanced Filter panel. Select Status: "Draft" and "Reviewed" (multi-select). Select
Priority: "High". Apply filters.
2 Verify applied filters appear as removable chips above the register. Verify the result set matches the
criteria.
4 Clear all filters. Click the SLA Breached quick-filter button in the toolbar.
5 Verify the badge on the button shows the count of breached cases. Verify the register shows only
cases where SLA date has passed and status is not Finalized.
E X P E C T E D R E S U LT
Multi-select filters work correctly and are displayed as removable chips. The named view is saved
and reloadable. The SLA Breached quick filter returns only non-Finalized cases past their SLA date.
The badge accurately reflects the current count of breached cases at all times.
TC-06-003 Row Actions — Context Menus Respect Role and Status Positive MUST
REQUIREMENT(S) ROLE
PRECONDITION
TEST STEPS
1 As Operations Staff, open the row actions menu on a Draft case. Note available options.
2 Open the row actions menu on a Finalized case. Note available options.
3 Log in as Senior Reviewer. Open the row actions menu on the same Finalized case. Note options.
4 Verify that "Export to PDF" is only visible for Finalized cases and only for eligible roles.
E X P E C T E D R E S U LT
Row action menus dynamically reflect role and case status. Options unavailable for a given
role/status are hidden (not greyed out). "Export to PDF" only appears for Finalized cases when
accessed by authorised roles (Senior Reviewer, Compliance Officer, Admin). Operations Staff do not
see the export option.
REQUIREMENT(S) ROLE
PRECONDITION
Known number of cases in each status, known SLA-breached count, known open follow-up
count
TEST STEPS
2 Record the values shown on all KPI tiles: Total Active Cases, Draft Count, Reviewed Count,
Finalized Count, SLA Compliance Rate, SLA At Risk count, SLA Breached count, Open Follow-ups,
Cases Received Today.
3 Cross-validate each count against the case register (use filters to verify).
4 Create one new case and save as Draft. Reload the dashboard. Verify "Total Active Cases" and
"Draft Count" each increment by 1, and "Cases Received Today" increments by 1.
E X P E C T E D R E S U LT
All KPI tile values match the counts verifiable in the case register. Period-on-period trend arrows are
displayed. After creating a new Draft case, the relevant KPI tiles update to reflect the new counts.
Data is real-time (or within the configured auto-refresh interval).
Register
REQUIREMENT(S) ROLE
PRECONDITION
TEST STEPS
2 Verify navigation to the Case Register with a "High Priority" filter automatically applied.
3 Confirm a breadcrumb is displayed showing the drill-down filter context (e.g., "Dashboard
Priority: High").
4 Return to dashboard. Click an SLA At Risk KPI tile and verify it drills down to cases with SLA status
= "At Risk".
E X P E C T E D R E S U LT
Clicking a chart segment or KPI tile navigates to the Case Register with the correct filter pre-applied.
Breadcrumb trail shows the active filter context. The filtered register matches the clicked segment's
data exactly. All clickable dashboard elements support this drill-down pattern.
TC-07-003 Dashboard Auto-Refresh Does Not Interrupt Active User Positive MUST
Input
TEST STEPS
2 Open a filter panel on the dashboard and begin entering filter criteria without submitting.
4 Verify the dashboard background data refreshes but the open filter panel and its entered values
remain intact and undisturbed.
5 Verify the "Last Updated" timestamp on chart tiles updates after the refresh.
E X P E C T E D R E S U LT
Auto-refresh updates the chart data and "Last Updated" timestamp without closing open modals,
panels, or interrupting text being entered. User interaction state is fully preserved through the
background refresh cycle.
TC-08-001 PDF Export of Finalized Case Note — Content and Positive MUST
Watermark
REQUIREMENT(S) ROLE
PRECONDITION
At least one Finalized case with all three note sections and tags applied
TEST STEPS
2 Open the downloaded PDF. Verify it contains: bank header/logo, Case ID, Customer Reference ID,
Interaction Type, Channel, Priority, SLA Date, Finalized Date, Finalized By identity, all three note
sections, applied tags, digital watermark with exporting user's name and export timestamp, and
audit reference footer.
5 Navigate to the Audit Log and verify the export event is recorded with Case ID, format, user,
timestamp, and IP address.
E X P E C T E D R E S U LT
PDF contains all required elements. The digital watermark displays the exporting user's name and
timestamp. The PDF is not editable. Operations Staff cannot access the export function (hidden or
403). The export action is immutably logged in the audit trail.
TEST STEPS
2 Look for an "Export to PDF" option — confirm it is not available in the UI for this status.
3 Attempt the export via direct API call using the Draft case ID.
E X P E C T E D R E S U LT
The Export to PDF option is hidden for Draft and Reviewed cases at the UI level. The direct API call
returns an appropriate error (e.g., HTTP 422 or 403) stating that only Finalized cases can be
exported. No PDF file is generated.
REQUIREMENT(S) ROLE
PRECONDITION
A Finalized case that went through: creation → AI generation → manual edit → review →
finalization
TEST STEPS
2 Verify the timeline includes events: Case Created, Raw Notes Saved, AI Generation Triggered (with
prompt template ID, model version, input/output token counts), AI Output Received (snapshot),
User Edit (with diff), Status Transition (Draft Reviewed, actor), Status Transition
(Reviewed Finalized, actor).
3 Open the Side-by-Side Comparison panel. Verify three columns: Left = Raw Notes (original), Middle
= First AI-generated output, Right = Final case note content.
4 Confirm no edit or deletion controls are present on any audit log entry.
E X P E C T E D R E S U LT
The audit timeline is complete and chronologically correct for all events. The three-panel comparison
correctly shows Raw Notes, first AI output, and final approved note. AI explainability metadata
(model name, version, prompt template ID, token counts, timestamp, duration) is visible. No audit
records can be edited or deleted through the interface.
Notification Engine
TC-09-001 In-App Notification Bell — Unread Count and Status- Positive MUST
Change Alert
REQUIREMENT(S) ROLE
PRECONDITION
TEST STEPS
1 As Senior Reviewer (Session B), transition a Draft case (owned by the Reviewed status.
Operations Staff user) to
3 Click the bell. Verify the notification panel opens and shows a notification for the status change with:
title, case reference, notification type icon, timestamp, and unread state.
E X P E C T E D R E S U LT
The notification bell badge updates in real time (or near real time). The notification panel shows
correct case reference and notification type. Clicking navigates to the case. Marking as read
updates the unread count. Notifications older than 90 days are auto-archived (verify via test data).
TC-09-002 SLA Breach — Critical Notification Delivered Despite DND Negative MUST
Schedule
REQUIREMENT(S) ROLE
PRECONDITION
User has configured a Do Not Disturb schedule covering the current test time; a case is
configured to breach SLA during this window
TEST STEPS
1 Configure the Operations Staff user's notification preferences to set a DND schedule covering the
next 2 hours.
2 Trigger an SLA breach event (set a case SLA date to the past in QA environment).
3 Verify an SLA Breach email notification is delivered to the user's inbox despite the DND schedule.
4 Trigger a non-critical notification (e.g., a routine status change) during the same DND window.
E X P E C T E D R E S U LT
Critical SLA Breach notifications are delivered immediately regardless of the DND schedule. Non-
critical notifications are correctly batched and delivered outside the DND window. This confirms the
DND bypass rule for critical alerts works as specified.
System Administration
TEST STEPS
2 Save and verify the new user appears in the user list.
3 Change the user's role to "Senior Reviewer". Save and verify the change is reflected.
4 Simulate the user reporting a lost authenticator device. Click Reset MFA for the user.
5 Verify the user's MFA is cleared and they are prompted to re-enrol on next login.
6 Deactivate the user account. Verify deactivated accounts cannot log in.
E X P E C T E D R E S U LT
User is successfully created and assigned. Role changes take effect immediately. MFA reset clears
the enrolled device and forces re-enrolment. Deactivated user login returns a "deactivated account"
message with HR contact information. All admin actions are logged in the system audit trail.
TC-10-002 SLA Matrix Configuration — Changes Apply Only to New Positive MUST
Cases
REQUIREMENT(S) ROLE
PRECONDITION
One existing Draft case created with current SLA matrix values; admin panel accessible
TEST STEPS
2 In the Admin Panel SLA Configuration, change the "Complaint / High" SLA from 1 business day
to 2 business days using the grid editor. Save.
4 Check the existing Draft case — its SLA Target Date should remain unchanged.
5 Create a new case with Interaction Type = "Complaint", Priority = "High". Verify its SLA Target Date
now reflects the new 2-business-day rule.
E X P E C T E D R E S U LT
SLA configuration change is saved and audit-logged. Existing cases retain their original SLA dates
(no retroactive change). New cases created after the configuration change use the updated SLA
values. The grid editor correctly saves and displays the updated matrix.
TC-10-003 Tag Taxonomy — Approve Pending Custom Tag from User Positive MUST
REQUIREMENT(S) ROLE
PRECONDITION
TEST STEPS
1 As Admin, navigate to Tag Taxonomy Management. Open the "Awaiting Approval" queue.
4 Verify the tag is now active in the taxonomy and appears in typeahead suggestions for all users.
5 Deactivate an existing active tag. Verify it no longer appears in typeahead or AI tag suggestions for
new cases, but remains visible on existing cases that use it.
E X P E C T E D R E S U LT
Custom tag approval moves the tag from pending to active in the taxonomy. Approved tags
immediately appear in typeahead for all users. Deactivated tags are removed from suggestions but
preserved on existing case records. All taxonomy changes are audit-logged.
// SECTION 12
TRACEABILITY SCOPE
The matrix below maps each Functional Requirement ID from FRD-BCCNG-001 to the test cases in this
document that provide coverage. Requirements marked with a Covered indicator have at least one
test case. Business Rules (BR) are mapped where test cases explicitly validate them.
Req
Requirement Title Priority Test Case(s) Coverage
ID
FR-
01- Secure Login Page MUST TC-01-001 Covered
01
FR-
Multi-Factor Authentication
01- MUST TC-01-001 · TC-10-001 Covered
(MFA)
02
FR-
Single Sign-On (SSO) Not in
01- SHOULD —
Integration Scope
03
FR-
01- Failed Login Lockout MUST TC-01-002 Covered
04
FR-
01- Session Timeout MUST TC-01-003 Covered
05
FR-
Concurrent Session
01- MUST TC-01-005 Covered
Control
06
FR-
Security
01- Password Policy MUST —
Testing
07
FR-
01- User Status Verification MUST TC-10-001 Covered
08
FR-
Role-Based Permissions TC-01-004 · TC-04-003 · TC-
01- MUST Covered
Matrix 06-003 · TC-08-001
09
FR-
01- Data Scoping — Team & MUST TC-01-004 · TC-06-001 Covered
10 Branch Isolation
FR-
Audit Log for TC-01-001 · TC-01-002 · TC-
01- MUST Covered
Authentication Events 01-005
11
FR-02-
Customer Reference ID MUST TC-02-004 Covered
02
FR-02-
Channel Selection MUST TC-02-001 Covered
04
FR-02-
Multi-Source File Import MUST TC-02-005 Covered
09
FR-02-
Import Field Mapping MUST TC-02-005 Covered
10
FR-03-
Structured Output Sections MUST TC-03-001 Covered
04
FR-03-
Regeneration with Feedback MUST TC-03-003 Covered
06
FR-03-
AI Generation Failure Handling MUST TC-03-004 Covered
07
FR-03-
PII Detection & Masking SHOULD TC-03-005 Covered
08
FR-
Finalisation Confirmation MUST TC-04-001 Covered
04-03
FR-
Status Change Notifications MUST TC-04-001 · TC-09-001 Covered
04-04
FR-
Edit History with Diff View MUST TC-04-004 Covered
04-05
FR-
Predefined Tag Taxonomy MUST TC-04-005 · TC-10-003 Covered
04-07
FR-05-
Automatic SLA Date Calculation MUST TC-05-001 Covered
01
FR-05-
SLA Breach / At-Risk Notifications MUST TC-09-002 Covered
03
FR-05-
Follow-up Creation MUST TC-05-003 Covered
05
FR-05-
Follow-up Escalation MUST TC-09-002 Covered
06
FR-05-
Follow-up Completion MUST TC-05-003 Covered
07
FR-05-
Follow-up Due Date Reminders MUST TC-09-001 Covered
08
FR-06-
Global Search MUST TC-06-001 Covered
02
FR-06-
Advanced Filter Panel MUST TC-06-002 Covered
03
FR-06-
SLA Breach Filter MUST TC-06-002 Covered
04
FR-06-
Row Actions MUST TC-06-003 Covered
06
Test
Req ID Requirement Title Priority Coverage
Case(s)
FR-07-
Summary KPI Tiles MUST TC-07-001 Covered
01
FR-07-
Case Volume Over Time Chart MUST TC-07-001 Covered
02
FR-07-
SLA Performance Gauge MUST TC-07-001 Covered
04
FR-07-
SLA Approaching & Breach List MUST TC-06-002 Covered
05
FR-07-
Dashboard Drill-Down MUST TC-07-002 Covered
07
FR-07-
Dashboard Refresh & Auto-Refresh MUST TC-07-003 Covered
08
FR-07-
Top Tags Analysis COULD — Nice-to-Have
09
FR-08-
Plain Text Export MUST TC-08-001 Covered
02
FR-08-
Bulk Case Register Export SHOULD — Not in Scope v1
03
FR-08-
Export Logging MUST TC-08-001 Covered
04
FR-08-
Tamper-Evident Audit Logs MUST TC-08-003 Covered
07
Rule
Business Rule Summary Validated By Coverage
ID
BR- TC-03-001 ·
Raw Notes are immutable after first save Covered
02 TC-04-004
BR-
Maximum 5 LLM regeneration attempts per case TC-03-003 Covered
07
BR- SLA date not manually editable; changes only via formal Priority TC-05-001 ·
Covered
08 override TC-05-002
BR- TC-01-004 ·
Agent may only be assigned cases within team/branch scope Covered
09 TC-06-001
BR- TC-08-001 ·
PDF export restricted to Finalized cases only Covered
10 TC-08-002
BR- Bulk deletion not permitted; only archiving of Finalized cases Admin
—
11 with justification Testing
// SECTION 13
Coverage Summary
55 44
TEST CASES WRITTEN REQUIREMENTS COVERED
10 10
OUT OF SCOPE / SPECIALISED BUSINESS RULES VALIDATED
13.1 Out-of-Scope Requirements
The following requirements are excluded from this functional test document as they fall under specialised
test domains:
Recommended
Req ID Reason for Exclusion
Test Type
FR-06-05 (Pagination Requires 100,000+ record datasets and load testing Performance
Performance) tools (e.g., JMeter) Testing
This document (TST-BCCNG-001 v1.0) provides 55 functional test cases covering all MUST-priority
requirements traceable to FRD-BCCNG-001. Upon stakeholder sign-off, these test scripts should be
imported into the project's test management tool and executed against the application build. Defects
raised should reference the TC ID and FR ID for full traceability back to this document and the FRD.
TST-BCCNG-001 v1.0 | Bank Customer Complaints Case Note Generator | Functional Test Scripts & Traceability Matrix
| Classification: Confidential | © BankOps Suite — All Rights Reserved
This document is intended solely for authorised recipients. Unauthorised distribution or reproduction is prohibited.