You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
SentinelPay is an intelligent, real-time fraud detection and prevention engine designed for modern financial institutions and FinTech platforms. It combines streaming transaction processing, machine learning inference, behavioural analytics, and automated response orchestration to identify and neutralise fraudulent activity before it causes financial damage - at sub-100ms latency, at scale.
In 2026, card-not-present fraud, identity spoofing, and AI-generated synthetic identity attacks are the dominant threat vectors in digital payments. SentinelPay is architected specifically to combat these threats using an event-driven microservices backbone, ensemble ML models (gradient boosting + transformer-based anomaly detection), and a feedback loop that continuously retrains on confirmed fraud signals.
What SentinelPay Will Do Once Completed
Ingest live transaction streams from payment processors, mobile wallets, and banking APIs via Kafka event pipelines
Score every transaction in real time using a multi-model ML ensemble (XGBoost + Isolation Forest + fine-tuned DistilBERT for merchant text signals)
Enforce automated rule-based and ML-driven decisions: approve, flag for review, or block - with configurable thresholds per customer risk tier
Alert customers and fraud analysts instantly via push notification, SMS, and a case management dashboard
Learn continuously through an MLOps feedback loop - confirmed fraud cases retrain and redeploy models with zero downtime
Explain every decision via SHAP-based explainability reports, satisfying regulatory requirements (POPIA, PSD2, GDPR)
Audit all decisions with tamper-evident logs for compliance and forensic investigation
📁 Repository Structure
SentinelPay/
├── README.md ← Project overview (you are here)
│
├──── Assignment 3 ──
├── SPECIFICATION.md ← System specification
├── ARCHITECTURE.md ← C4 architectural diagrams - all 4 levels
│
├── ── Assignment 4 ──
├── STAKEHOLDER_ANALYSIS.md ← 8-stakeholder analysis
├── SRD.md ← System Requirements Document - 15 FRs + 18 NFRs
├── REFLECTION.md ← Requirements engineering reflection
│
├── ── Assignment 5 ──
├── USE_CASE_DIAGRAM.md ← UML use case diagram (Mermaid) - 7 actors, 14 use cases
├── USE_CASE_SPECIFICATIONS.md ← 8 detailed use case specifications
├── TEST_CASES.md ← 10 functional test cases + 2 NFR test scenarios
├── REFLECTION_A5.md ← Reflection on use case and test case development
│
├── ── Assignment 6 ──
├── AGILE_PLANNING.md ← User stories, product backlog, sprint plan
├── REFLECTION_A6.md ← Agile planning reflection
│
├── Assignment 7/
│ ├── template_analysis.md ← GitHub template comparison and justification
│ ├── kanban_explanation.md ← Kanban board definition and purpose
│ ├── reflection.md ← Lessons learned from Kanban implementation
│ └── screenshots/ ← Board screenshots (kanban_board_full.png, issue_detail.png)
│
├── Assignment 8/
│ ├── state_diagrams.md <- 8 UML state transition diagrams with explanations
│ ├── activity_diagrams.md <- 8 UML activity diagrams with swimlanes
│ └── a8_reflection.md <- Reflection on state and activity modeling
│
├── Assignment 9/
│ ├── domain_model.md <- Domain model - 7 entities with attributes, methods, business rules
│ ├── class_diagram.md <- Full Mermaid.js class diagram with UML relationships
│ └── a9_reflection.md <- Reflection on domain modeling and class diagram design
│
📄 Key Documents
Assignment 3 - System Specification & Architecture
The default Automated Kanban template was extended with 4 additional columns to match the SentinelPay development workflow:
Column
Purpose
WIP Limit
Sprint 2 Backlog
Should-have and Could-have stories deferred from Sprint 1
None
Sprint 1 - To Do
Must-have stories committed for Sprint 1 delivery
None
In Progress
Actively being developed
Max 2
Testing
Implementation complete, test cases being executed
Max 2
Blocked
Cannot proceed - dependency or blocker identified
None
In Review
Complete, under final self-review
Max 1
Done
Meets Definition of Done from AGILE_PLANNING.md
None
Why Automated Kanban: GitHub's automation rules (auto-move on issue open, close, reopen, PR merge) keep the board accurate without manual updates - critical for a solo developer managing 27 sprint tasks across 14 user stories.