CardDemo is a credit card account management system for financial institutions. It automates the complete lifecycle of credit card operations including:
Why developers need to know this: Understanding the business domain helps you make better technical decisions. When you modify transaction processing code, you need to know that credit limits must be enforced (business rule) and that overlimit transactions must be rejected with proper error codes.
Customer-facing staff who:
Back-office personnel who:
Scheduled system jobs that:
Why developers need to know this: Different user types have different security requirements. When implementing new features, consider whether the function should be available to regular users, admins only, or both. Screen layouts and workflows should match how customer service reps actually use the system during live calls.
Real-Time Account Management
Credit Card Lifecycle Management
Transaction Processing and Authorization
Payment Processing and Account Balancing
Automated Statement Generation and Reporting
Why developers need to know this: These capabilities drive the system architecture. Transaction processing requires immediate consistency (VSAM), authorization needs high throughput (MQ), and statements need bulk processing (batch). When adding features, ensure they align with these core capabilities and don't break existing business workflows.
Process Flow Explanation:
Online Operations:
Batch Operations:
Why developers need to know this: This map shows the system's major workflows and data dependencies. When debugging issues, trace through this flow to understand where data comes from and where it goes. When adding features, identify which part of the flow is affected and ensure proper integration with existing processes.
Domain Knowledge is Critical: Credit card processing has strict business rules (credit limits, authorization codes, fraud detection) that must be enforced in code. Don't bypass validation logic.
Data Integrity Matters: Account balances, credit limits, and transaction records must always be consistent. Understand transaction boundaries and file locking.
Real-Time vs. Batch: Know which operations run online (immediate user feedback) vs. batch (high volume processing). Different performance and error handling requirements.
Security by Design: User authentication and role-based authorization are fundamental. Never expose admin functions to regular users.
Audit Trail Requirements: Every transaction must be timestamped and traceable. Don't delete transaction records, mark them as voided instead.