MinAI - Về trang chủ
Hướng dẫn
8/131.5 giờ
Đang tải...

Branch Performance

So sánh hiệu quả chi nhánh: Regional Benchmarking, Network Optimization

0

🎯 Mục tiêu bài học

TB5 min
Sau bài học này, bạn sẽ:
  • Xây dựng Branch Scorecard so sánh hiệu quả chi nhánh
  • Phân tích regional performance (Bắc, Trung, Nam)
  • Benchmark branch productivity theo các KPIs
  • Xác định chi nhánh under-performing cần cải thiện
📋 Thông tin bài học
Thông tinChi tiết
⏱️ Thời lượng1.5 giờ
📖 Chủ đề chínhBranch Scorecard, Regional Analysis, Benchmarking
💡 Kiến thức cần cóBài 05, SQL Window Functions
🎯 OutputBranch Performance Scorecard
1

📖 Thuật ngữ quan trọng

TB5 min
Thuật ngữTiếng ViệtMô tả
Branch ScorecardThẻ điểm chi nhánhBảng đánh giá tổng hợp hiệu quả chi nhánh
BenchmarkChuẩn so sánhMức chuẩn để so sánh (thường là trung bình)
ProductivityNăng suấtKPI / Số nhân viên hoặc per branch
Peer GroupNhóm so sánhNhóm chi nhánh tương đồng để so sánh
NetworkMạng lướiHệ thống chi nhánh toàn ngân hàng
FootfallLưu lượng kháchSố KH đến chi nhánh
Market ShareThị phần% thị trường tại khu vực
Under-performerDưới chuẩnChi nhánh có kết quả thấp hơn benchmark

Checkpoint

Branch Scorecard tổng hợp nhiều KPIs: loan volume, default rate, customer growth, transaction count. Benchmark với peer group (cùng region, cùng branch_type) thay vì so sánh tuyệt đối. Under-performing branches cần action plan cải thiện hoặc restructure.

2

📊 Branch Overview & Regional Analysis

TB5 min

Phân bố mạng lưới

SQL
1-- 1. Branch distribution
2SELECT
3 b.region,
4 b.branch_type,
5 COUNT(*) AS branch_count,
6 ROUND(COUNT(*) * 100.0 / SUM(COUNT(*)) OVER(), 1) AS pct
7FROM dim_branch b
8GROUP BY b.region, b.branch_type
9ORDER BY b.region, branch_count DESC;

Regional Loan Performance

SQL
1-- 2. Loan performance theo region
2SELECT
3 b.region,
4 COUNT(DISTINCT b.branch_id) AS branches,
5 COUNT(l.application_id) AS total_applications,
6 ROUND(COUNT(l.application_id) * 1.0 / COUNT(DISTINCT b.branch_id), 0) AS apps_per_branch,
7 SUM(l.loan_amount) AS total_loan_amount,
8 ROUND(SUM(l.loan_amount) / COUNT(DISTINCT b.branch_id), 0) AS amount_per_branch,
9 ROUND(AVG(CASE WHEN l.status = 'Approved' THEN 1.0 ELSE 0 END) * 100, 1) AS approval_rate,
10 ROUND(AVG(l.default_flag) * 100, 2) AS default_rate
11FROM dim_branch b
12JOIN fact_loan_application l ON b.branch_id = l.branch_id
13GROUP BY b.region
14ORDER BY total_loan_amount DESC;

Top & Bottom Branches

SQL
1-- 3. Top 10 branches theo loan volume
2SELECT TOP 10
3 b.branch_id,
4 b.branch_name,
5 b.region,
6 b.city,
7 b.branch_type,
8 COUNT(l.application_id) AS total_loans,
9 SUM(l.loan_amount) AS total_amount,
10 ROUND(AVG(l.default_flag) * 100, 2) AS default_rate
11FROM dim_branch b
12JOIN fact_loan_application l ON b.branch_id = l.branch_id
13WHERE l.status = 'Approved'
14GROUP BY b.branch_id, b.branch_name, b.region, b.city, b.branch_type
15ORDER BY total_amount DESC;
SQL
1-- 4. Bottom 10 branches — under-performers
2SELECT TOP 10
3 b.branch_id,
4 b.branch_name,
5 b.region,
6 b.city,
7 COUNT(l.application_id) AS total_loans,
8 SUM(l.loan_amount) AS total_amount,
9 ROUND(AVG(l.default_flag) * 100, 2) AS default_rate
10FROM dim_branch b
11JOIN fact_loan_application l ON b.branch_id = l.branch_id
12WHERE l.status = 'Approved'
13GROUP BY b.branch_id, b.branch_name, b.region, b.city
14ORDER BY total_amount ASC;
3

📋 Branch Scorecard

TB5 min

Xây dựng Scorecard tổng hợp

SQL
1-- 5. Branch Scorecard
2WITH branch_metrics AS (
3 SELECT
4 b.branch_id,
5 b.branch_name,
6 b.region,
7 b.city,
8 b.branch_type,
9 -- Loan metrics
10 COUNT(l.application_id) AS total_loans,
11 SUM(l.loan_amount) AS total_amount,
12 ROUND(AVG(CASE WHEN l.status = 'Approved' THEN 1.0 ELSE 0 END) * 100, 1) AS approval_rate,
13 ROUND(AVG(l.default_flag) * 100, 2) AS default_rate,
14 -- Product mix
15 COUNT(DISTINCT l.product_id) AS product_diversity,
16 -- Customer mix
17 COUNT(DISTINCT l.customer_id) AS unique_customers
18 FROM dim_branch b
19 LEFT JOIN fact_loan_application l ON b.branch_id = l.branch_id
20 GROUP BY b.branch_id, b.branch_name, b.region, b.city, b.branch_type
21),
22ranked AS (
23 SELECT
24 *,
25 -- Ranking
26 RANK() OVER (ORDER BY total_amount DESC) AS rank_amount,
27 RANK() OVER (ORDER BY default_rate ASC) AS rank_quality,
28 RANK() OVER (ORDER BY unique_customers DESC) AS rank_customers,
29 -- Percentiles within region
30 PERCENT_RANK() OVER (PARTITION BY region ORDER BY total_amount) AS pctile_amount_region
31 FROM branch_metrics
32)
33SELECT
34 branch_id,
35 branch_name,
36 region,
37 city,
38 branch_type,
39 total_loans,
40 total_amount,
41 approval_rate,
42 default_rate,
43 unique_customers,
44 rank_amount,
45 rank_quality,
46 rank_customers,
47 -- Overall score (simple weighted average of ranks)
48 ROUND(
49 (rank_amount * 0.4 + rank_quality * 0.3 + rank_customers * 0.3)
50 , 1) AS composite_score,
51 CASE
52 WHEN pctile_amount_region >= 0.75 THEN 'Top Performer'
53 WHEN pctile_amount_region >= 0.25 THEN 'Average'
54 ELSE 'Under-performer'
55 END AS performance_tier
56FROM ranked
57ORDER BY composite_score ASC;

Branch Performance by Type

SQL
1-- 6. Performance theo branch type
2SELECT
3 b.branch_type,
4 COUNT(DISTINCT b.branch_id) AS branches,
5 ROUND(AVG(loan_count), 0) AS avg_loans_per_branch,
6 ROUND(AVG(loan_amount), 0) AS avg_amount_per_branch,
7 ROUND(AVG(default_rate), 2) AS avg_default_rate
8FROM dim_branch b
9JOIN (
10 SELECT
11 branch_id,
12 COUNT(*) AS loan_count,
13 SUM(loan_amount) AS loan_amount,
14 AVG(default_flag) * 100 AS default_rate
15 FROM fact_loan_application
16 WHERE status = 'Approved'
17 GROUP BY branch_id
18) stats ON b.branch_id = stats.branch_id
19GROUP BY b.branch_type
20ORDER BY avg_amount_per_branch DESC;
Sử dụng Branch Scorecard

Branch Scorecard giúp:

  1. Ban lãnh đạo: Đánh giá mạng lưới, quyết định expand/consolidate
  2. Regional managers: So sánh chi nhánh trong vùng
  3. Branch managers: Biết vị trí so với peers, focus cải thiện
  4. HR: Đánh giá performance-based compensation

Checkpoint

Branch Performance Analysis: Regional comparison (Bắc-Trung-Nam), Top/Bottom performers, Branch Scorecard tổng hợp nhiều KPIs với weighted ranking. Performance tier (Top/Average/Under) dựa trên percentile trong region. Branch type (Main > Sub > Kiosk) ảnh hưởng đến scale — cần benchmark theo peer group cùng type.

4

📋 Tổng kết

TB5 min

Kiến thức đã học

Chủ đềNội dung chính
Regional ComparisonBắc - Trung - Nam, so sánh volume & quality
Top/Bottom AnalysisXác định chi nhánh xuất sắc và cần cải thiện
Branch ScorecardWeighted scoring đa tiêu chí
Performance TiersTop / Average / Underperforming theo percentile
Branch TypesMain / Sub / Kiosk — benchmark theo peer group

Key Takeaways

  1. Branch Scorecard tổng hợp nhiều KPIs — không chỉ nhìn volume
  2. Quality tier (default rate) cần trọng số cao vì ảnh hưởng trực tiếp P&L
  3. Peer group comparison theo branch type mới công bằng
  4. Regional insights giúp quyết định expand/consolidate mạng lưới

Câu hỏi tự kiểm tra

  1. Tại sao không nên đánh giá chi nhánh chỉ bằng volume?
  2. Branch Scorecard tổng hợp những tiêu chí nào?
  3. Tại sao cần benchmark theo branch type (Main vs Sub vs Kiosk)?
  4. Performance tier được xác định dựa trên gì?

Bài tiếp theo: Customer 360 View →

🎉 Tuyệt vời! Bạn đã thành thạo Branch Performance Analysis!

Nhớ: Branch Scorecard = công cụ quản lý mạng lưới. Volume + Quality + Efficiency = đánh giá toàn diện!