System Overview - Payment strategy pattern
This system handles payments using different payment methods like credit cards, PayPal, and bank transfers. It allows users to choose their preferred payment method, and the system processes the payment accordingly. The key requirement is to support multiple payment options without changing the core payment processing logic.