Question 1
A financial services company is modernizing its monolithic core banking system. The primary architectural goals are to improve time-to-market for new features and enhance fault isolation between different banking functions (e.g., loans, accounts, transfers). The development team is highly skilled in Java but has limited experience with cloud-native technologies. Which architectural approach best balances these goals and constraints?
Answer and explanation
Correct answer: B
The Strangler Fig pattern is the optimal choice as it allows for an incremental, risk-managed migration. It directly addresses the goals of improving time-to-market and fault isolation by creating independent services. It also respects the team's Java skills (new services can be in Java) while allowing them to learn containerization gradually. A big-bang rewrite is too risky, a lift-and-shift doesn't solve the core architectural problems, and a modular monolith improves code structure but not independent deployability or fault isolation as effectively.