Financial entities shall put in place, maintain and periodically test appropriate ICT business continuity plans, notably with regard to critical or important functions outsourced or contracted through arrangements with ICT third-party service providers.
Comprehensive business continuity plan covering ICT systems, including scenario-based recovery procedures, resource requirements, and testing schedules as required by DORA Article 12.
ict-bcpGenerated example artifact using the default institution profile (COMMON availability, synthetic data only).
ICT BUSINESS CONTINUITY PLAN
Nordvik Bank AG
Plan Reference: BCP-ICT-2025-001
Version 4.1 | Approved: 12 January 2025 | Next Review: 12 January 2026
Plan Owner: Business Continuity Manager
Classification: Confidential
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
BUSINESS IMPACT ANALYSIS
1.1 BIA Summary
The Business Impact Analysis ("BIA") was last conducted on 5 December 2024 and
covers all business functions supported by ICT systems. The BIA identifies 8
critical business functions and 6 important business functions requiring ICT
continuity arrangements.
1.2 Critical Business Functions
Function Max Tolerable RTO RPO ICT Dependencies
Downtime
─────────────────────────────────────────────────────────────────────────────
Payment Processing 2 hours 2h 30min T24, SWIFT, Oracle DB
Core Banking Operations 4 hours 4h 1h T24, Oracle DB
Digital Banking Channels 4 hours 4h 1h AWS, T24 API
AML/CFT Screening 4 hours 4h 1h Actimize, Oracle DB
Security Monitoring 1 hour 1h 0 Splunk, Network
Treasury Operations 4 hours 4h 1h T24, Bloomberg
Customer Onboarding 8 hours 8h 4h T24, Document Mgmt
Interbank Settlement 4 hours 4h 1h T24, SWIFT
1.3 Financial Impact Assessment
Downtime Duration Estimated Financial Impact (CHF)
─────────────────────────────────────────────────────────────────────────────
0–2 hours 50,000 – 200,000 (operational costs, SLA penalties)
2–4 hours 200,000 – 1,000,000 (revenue loss, customer impact)
4–8 hours 1,000,000 – 5,000,000 (significant revenue loss,
regulatory attention)
8–24 hours 5,000,000 – 20,000,000 (major financial impact,
reputational damage, regulatory action)
>24 hours >20,000,000 (severe financial and reputational damage,
potential systemic impact)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
RECOVERY STRATEGY
2.1 Primary Strategy: Active-Passive Data Centre Failover
The Bank operates two data centres:
— Primary: Zurich DC-1 (production workloads)
— Secondary: Geneva DC-2 (disaster recovery, warm standby)
Database replication via Oracle Data Guard provides near-zero RPO for critical
databases. Application servers at Geneva DC-2 are maintained in warm standby
with automated failover scripts tested quarterly.
2.2 Cloud Recovery Strategy
Digital banking services hosted on AWS eu-central-1 leverage:
— Multi-AZ deployment for high availability
— Cross-region replication to eu-west-1 for disaster recovery
— Automated scaling and self-healing infrastructure
2.3 Alternative Processing Arrangements
— Manual payment processing procedures documented for SWIFT outages
— Branch-based customer service procedures for digital channel outages
— Paper-based transaction recording for core banking system outages
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
SCENARIO-BASED PROCEDURES
3.1 Scenario: Complete Data Centre Loss (Zurich DC-1)
Phase 1 — Assessment (0–30 minutes)
— Confirm DC-1 unavailability via monitoring and physical assessment
— Activate Crisis Management Team
— Notify all stakeholders per communication plan
Phase 2 — Failover (30 minutes – 4 hours)
— Initiate Oracle Data Guard failover to Geneva DC-2
— Start application servers from warm standby
— Redirect network traffic (DNS, BGP)
— Verify core banking and payment processing
Phase 3 — Stabilisation (4–8 hours)
— Restore remaining important functions
— Verify data integrity across all recovered systems
— Establish ongoing monitoring at DR site
Phase 4 — Recovery (days/weeks)
— Plan and execute return to primary site when available
— Conduct post-incident review
3.2 Scenario: Cyber Attack (Ransomware)
Phase 1 — Containment (0–2 hours)
— Isolate affected systems
— Preserve forensic evidence
— Assess scope of compromise
Phase 2 — Eradication (2–24 hours)
— Remove malware from all affected systems
— Reset compromised credentials
— Patch exploited vulnerabilities
Phase 3 — Recovery (24–72 hours)
— Restore from clean backups (immutable/air-gapped)
— Rebuild systems from known-good images
— Verify system integrity before reconnection
3.3 Scenario: Third-Party Provider Failure
— Activate contractual recovery provisions
— Implement manual workarounds per documented procedures
— Engage alternative providers if available
— Monitor provider recovery progress
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
RESOURCE REQUIREMENTS
4.1 Personnel
Role Required During Crisis Backup Available
─────────────────────────────────────────────────────────────────────────────
Crisis Manager 1 Yes
Business Continuity Manager 1 Yes
Database Administrator 2 Yes (1 on-call)
System Administrator 3 Yes (2 on-call)
Network Engineer 2 Yes (1 on-call)
Security Analyst 2 Yes (SOC 24/7)
Communications Officer 1 Yes
4.2 Technical Resources
— Geneva DC-2: Sufficient capacity for all critical workloads
— Network bandwidth: Dedicated 10Gbps link between DC-1 and DC-2
— Backup media: Air-gapped backup tapes stored at third-party vault
— Emergency hardware: Pre-positioned replacement equipment at DC-2
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
COMMUNICATION PLAN
Stakeholder Notification Method Timeline
─────────────────────────────────────────────────────────────────────────────
Crisis Management Team Phone tree + Teams Immediate
Executive Management Phone + email Within 1 hour
Board of Directors Email + phone (Chair) Within 4 hours
Competent Authority Regulatory portal Per DORA Art. 19
Customers Portal + app + social Within 2 hours
Staff Email + intranet Within 1 hour
Media Press statement As needed
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
TESTING AND MAINTENANCE SCHEDULE
Test Type Frequency Last Conducted Next Scheduled
─────────────────────────────────────────────────────────────────────────────
Tabletop Exercise Semi-annual 15 Nov 2024 15 May 2025
Walkthrough Test Annual 20 Jun 2024 20 Jun 2025
Live Failover (DR) Annual 18 Oct 2024 18 Oct 2025
Communication Test Semi-annual 15 Nov 2024 15 May 2025
Backup Restoration Quarterly 10 Dec 2024 10 Mar 2025
Test Frequency: Semi-annual (combining tabletop and live exercises)
All Critical Functions Tested: Yes (last full cycle completed October 2024)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Document History:
v4.1 12 Jan 2025 Updated for DORA compliance; added third-party scenarios
v4.0 15 Jan 2024 Annual review; updated BIA and recovery strategies
v3.5 01 Jul 2023 Interim update; added cloud recovery procedures
v3.0 12 Jan 2023 Major revision; restructured scenario procedures
Approved by: Board of Directors
Signature: [COO]
Date: 12 January 2025
Example structured facts that Detrixa would extract from this evidence (synthetic data, deterministic seed).
ict_bcp_status — fs-ict-bcp-status
{
"factId": "c1d2e3f4-a5b6-7890-cdef-100000000013",
"evidenceId": "a0b1c2d3-e4f5-6789-abcd-100000000013",
"evidenceClassId": "ict-bcp",
"factType": "ict_bcp_status",
"data": {
"bcp_version": "4.1",
"approval_date": "2025-01-12",
"bia_date": "2024-12-05",
"critical_functions_count": 8,
"functions_with_recovery_plan": 8,
"last_test_date": "2024-11-15",
"test_frequency": "semi-annual",
"all_critical_functions_tested": true
},
"provenance": "deterministic",
"extractorVersion": "dora-test-generator/0.1.0",
"extractedAt": "2025-01-15T09:00:00Z",
"supersededBy": null
}
bcp_test_results — fs-bcp-test-results
{
"factId": "c1d2e3f4-a5b6-7890-cdef-100000000014",
"evidenceId": "a0b1c2d3-e4f5-6789-abcd-100000000014",
"evidenceClassId": "bcp-test-results",
"factType": "bcp_test_results",
"data": {
"test_date": "2024-11-15",
"scenario_type": "tabletop",
"systems_tested_count": 8,
"test_passed": true,
"rto_achieved": true,
"rpo_achieved": true,
"gaps_identified_count": 4,
"remediation_actions_count": 6
},
"provenance": "deterministic",
"extractorVersion": "dora-test-generator/0.1.0",
"extractedAt": "2025-01-15T09:00:00Z",
"supersededBy": null
}
CSV register of business continuity plan test executions, including test scenarios, outcomes, identified gaps, and remediation actions.
bcp-test-resultsGenerated example artifact using the default institution profile (COMMON availability, synthetic data only).
test_id,test_date,scenario,scenario_type,systems_tested,systems_tested_count,outcome,rto_target_hours,rto_achieved_hours,rto_achieved,rpo_target_hours,rpo_achieved_hours,rpo_achieved,gaps_identified,gap_description,remediation_actions,remediation_deadline,remediation_status BCP-TEST-2024-001,2024-10-18,Data Centre Failover (Zurich DC-1 to Geneva DC-2),live_failover,"T24 Core Banking, Oracle DB, SWIFT Gateway",3,Pass,4,3.2,Yes,1,0.25,Yes,1,DR site network throughput 15% below expected during peak load,Upgrade Geneva DC-2 network links from 10Gbps to 25Gbps,2025-03-31,In Progress BCP-TEST-2024-002,2024-10-18,Payment Processing Recovery,live_failover,"SWIFT Alliance Gateway, T24 Payment Module",2,Pass,2,1.8,Yes,0.5,0.25,Yes,0,,,, BCP-TEST-2024-003,2024-11-15,Ransomware Attack — Core Banking,tabletop,"T24 Core Banking, Oracle DB, Backup Systems",3,Pass,4,N/A,N/A,1,N/A,N/A,2,"Immutable backup restore procedure not documented for Oracle 19c; Air-gapped backup tape retrieval time estimated at 6 hours exceeding RTO","Document Oracle 19c immutable backup restore procedure; Negotiate faster tape retrieval SLA with vault provider",2025-02-28,In Progress BCP-TEST-2024-004,2024-11-15,Digital Channel Outage (AWS Region Failure),tabletop,"Internet Banking, Mobile Banking, AWS Infrastructure",3,Partial Pass,4,N/A,N/A,1,N/A,N/A,1,No automated multi-region failover for AWS-hosted services; manual DNS switch estimated at 45 minutes,Implement automated Route 53 health-check failover for digital channels,2025-06-30,Not Started BCP-TEST-2024-005,2024-11-15,Third-Party Provider Failure (Temenos),tabletop,"T24 Core Banking, Temenos Support",1,Pass,8,N/A,N/A,4,N/A,N/A,1,Manual workaround procedures for core banking not tested with current staff,Schedule hands-on training for manual payment processing procedures,2025-03-31,Not Started BCP-TEST-2024-006,2024-06-20,Full BCP Walkthrough — All Critical Functions,walkthrough,"All 8 critical business functions",8,Pass,4,N/A,N/A,1,N/A,N/A,3,"Communication plan contact list outdated; AML system recovery procedure missing step for sanctions list reload; Branch fallback procedures not communicated to new branch staff","Update contact list quarterly; Update AML recovery procedure; Include BCP briefing in branch staff onboarding",2024-12-31,Completed BCP-TEST-2024-007,2024-12-10,Backup Restoration — Core Banking Database,simulation,"Oracle DB 19c, T24 Core Banking",2,Pass,4,2.5,Yes,1,0.75,Yes,0,,,,
Example structured facts that Detrixa would extract from this evidence (synthetic data, deterministic seed).
ict_bcp_status — fs-ict-bcp-status
{
"factId": "c1d2e3f4-a5b6-7890-cdef-100000000013",
"evidenceId": "a0b1c2d3-e4f5-6789-abcd-100000000013",
"evidenceClassId": "ict-bcp",
"factType": "ict_bcp_status",
"data": {
"bcp_version": "4.1",
"approval_date": "2025-01-12",
"bia_date": "2024-12-05",
"critical_functions_count": 8,
"functions_with_recovery_plan": 8,
"last_test_date": "2024-11-15",
"test_frequency": "semi-annual",
"all_critical_functions_tested": true
},
"provenance": "deterministic",
"extractorVersion": "dora-test-generator/0.1.0",
"extractedAt": "2025-01-15T09:00:00Z",
"supersededBy": null
}
bcp_test_results — fs-bcp-test-results
{
"factId": "c1d2e3f4-a5b6-7890-cdef-100000000014",
"evidenceId": "a0b1c2d3-e4f5-6789-abcd-100000000014",
"evidenceClassId": "bcp-test-results",
"factType": "bcp_test_results",
"data": {
"test_date": "2024-11-15",
"scenario_type": "tabletop",
"systems_tested_count": 8,
"test_passed": true,
"rto_achieved": true,
"rpo_achieved": true,
"gaps_identified_count": 4,
"remediation_actions_count": 6
},
"provenance": "deterministic",
"extractorVersion": "dora-test-generator/0.1.0",
"extractedAt": "2025-01-15T09:00:00Z",
"supersededBy": null
}
fs-ict-bcp-statusDORA-Art12-P1approval_datebia_datelast_test_date{
"properties": {
"all_critical_functions_tested": {
"type": "boolean"
},
"approval_date": {
"format": "date",
"type": "string"
},
"bcp_version": {
"type": "string"
},
"bia_date": {
"format": "date",
"type": "string"
},
"critical_functions_count": {
"minimum": 0,
"type": "integer"
},
"functions_with_recovery_plan": {
"minimum": 0,
"type": "integer"
},
"last_test_date": {
"format": "date",
"type": "string"
},
"test_frequency": {
"enum": [
"quarterly",
"semi-annual",
"annual"
],
"type": "string"
}
},
"required": [
"bcp_version",
"approval_date",
"bia_date",
"critical_functions_count",
"last_test_date"
],
"type": "object"
}
fs-bcp-test-resultsDORA-Art12-P1test_datesystems_tested_count{
"properties": {
"gaps_identified_count": {
"minimum": 0,
"type": "integer"
},
"remediation_actions_count": {
"minimum": 0,
"type": "integer"
},
"rpo_achieved": {
"type": "boolean"
},
"rto_achieved": {
"type": "boolean"
},
"scenario_type": {
"enum": [
"tabletop",
"walkthrough",
"simulation",
"live_failover"
],
"type": "string"
},
"systems_tested_count": {
"minimum": 1,
"type": "integer"
},
"test_date": {
"format": "date",
"type": "string"
},
"test_passed": {
"type": "boolean"
}
},
"required": [
"test_date",
"scenario_type",
"systems_tested_count",
"test_passed"
],
"type": "object"
}