Simple example of decoupling decision-making and execution logic