Paso 4 Refactor para separar responsabilidades